@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap);body{margin:0}code{font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace}::selection{background-color:#3b82f6}::-moz-selection{background-color:#3b82f6}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.home-container{background:#fff;overflow-x:hidden;padding:0}.hero-section{align-items:center;background:linear-gradient(135deg,#1e40af,#0f766e);display:flex;justify-content:space-between;margin-bottom:0;min-height:85vh;overflow:hidden;padding:6rem 2rem 5rem;position:relative}.hero-section:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 320'%3E%3Cpath fill='%23fff' fill-opacity='.1' d='m0 96 48 16c48 16 144 48 240 48s192-32 288-37.3c96-5.7 192 16.3 288 32 96 16.3 192 26.3 288 16 96-10.7 192-42.7 240-58.7l48-16v224H0Z'/%3E%3C/svg%3E") no-repeat bottom;background-size:cover;bottom:0;content:"";height:150px;left:0;position:absolute;right:0}.hero-section:after{animation:pulse 4s ease-in-out infinite;background:radial-gradient(circle,#ffffff1a 0,#0000 70%);border-radius:50%;content:"";height:500px;position:absolute;right:0;top:0;width:500px}.hero-content{flex:1 1;max-width:650px;z-index:2}.hero-badge{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff26;border:1px solid #ffffff40;border-radius:50px;display:inline-block;font-size:.8125rem;font-weight:500;letter-spacing:.02em;padding:.5rem 1.125rem;text-transform:uppercase}.hero-badge,.hero-title{color:#fff;margin-bottom:1.5rem}.hero-title{font-family:Inter,sans-serif;font-size:3.5rem;font-weight:700;letter-spacing:-.02em;line-height:1.2;text-shadow:0 2px 20px #0000001a}.gradient-text{-webkit-text-fill-color:#0000;animation:textShimmer 3s ease-in-out infinite;background:linear-gradient(135deg,#fff,#f0f9ff);-webkit-background-clip:text;background-clip:text;display:inline-block}@keyframes textShimmer{0%,to{opacity:1}50%{opacity:.95}}.hero-subtitle{color:#fffffff2;font-size:1.25rem;font-weight:400;letter-spacing:-.01em;line-height:1.7;margin-bottom:2.5rem;max-width:600px;text-shadow:0 1px 8px #00000014}.hero-buttons{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:3rem}.btn-large{box-shadow:0 4px 15px #0003;font-size:1.125rem;gap:.5rem;padding:1rem 2rem}.btn-icon{transition:transform .3s ease}.btn:hover .btn-icon{transform:translateX(3px)}.btn:hover .btn-icon-right{transform:translateX(5px)}.hero-stats{align-items:center;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffff1f;border:1px solid #ffffff2e;border-radius:20px;display:flex;gap:2.5rem;max-width:-webkit-fit-content;max-width:fit-content;padding:1.75rem 2.25rem}.stat-item{text-align:center}.stat-number{color:#fff;font-size:2.25rem;font-weight:700;letter-spacing:-.02em;line-height:1;margin-bottom:.375rem}.stat-label{color:#ffffffd9;font-size:.8125rem;font-weight:500;letter-spacing:.01em}.stat-divider{background:#ffffff4d;height:40px;width:1px}.hero-decoration{align-items:center;display:flex;flex:0.8 1;height:500px;justify-content:center;position:relative}.floating-card{align-items:center;animation:float 3s ease-in-out infinite;background:#fff;border-radius:16px;box-shadow:0 10px 40px #00000026;display:flex;gap:.75rem;padding:1.25rem 1.75rem;position:absolute}.floating-card.card-1{animation-delay:0s;left:10%;top:10%}.floating-card.card-2{animation-delay:1s;right:5%;top:45%}.floating-card.card-3{animation-delay:2s;bottom:15%;left:20%}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.mini-icon{font-size:1.75rem}.mini-text{color:#333;font-size:.875rem;font-weight:600}.features-section,.how-it-works-section{background:#fff;margin:0 auto;max-width:1280px;padding:6rem 2rem}.section-header{margin-bottom:4.5rem;text-align:center}.section-badge{background:linear-gradient(135deg,#3b82f6,#14b8a6);border-radius:50px;color:#fff;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.05em;margin-bottom:1.25rem;padding:.5rem 1.25rem;text-transform:uppercase}.section-title{color:#0f172a;font-size:2.5rem;font-weight:700;letter-spacing:-.02em;line-height:1.25;margin-bottom:1rem}.section-subtitle{color:#64748b;font-size:1.125rem;font-weight:400;letter-spacing:-.01em;line-height:1.7;margin:0 auto;max-width:650px}.features-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.feature-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 1px 3px #0000000d,0 1px 2px #00000008;overflow:hidden;padding:2.5rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.feature-card:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:5px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.4,0,.2,1)}.feature-card:after{background:radial-gradient(circle,#667eea0d 0,#0000 70%);content:"";height:200%;left:-50%;opacity:0;position:absolute;top:-50%;transition:opacity .5s ease;width:200%}.feature-card:hover:before{transform:scaleX(1)}.feature-card:hover:after{opacity:1}.feature-card:hover{border-color:#cbd5e1;box-shadow:0 10px 25px #3b82f61f,0 4px 10px #0000000d;transform:translateY(-4px)}.feature-card.featured{background:linear-gradient(135deg,#3b82f6,#14b8a6);border:none;color:#fff;transform:scale(1.02)}.feature-card.featured:hover{transform:scale(1.08) translateY(-10px)}.feature-card.featured h3,.feature-card.featured p{color:#fff}.featured-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff40;border:1px solid #ffffff4d;border-radius:50px;color:#fff;font-size:.75rem;font-weight:700;letter-spacing:.5px;padding:.35rem .85rem;position:absolute;right:1rem;text-transform:uppercase;top:1rem}.feature-icon-wrapper{align-items:center;background:linear-gradient(135deg,#667eea15,#764ba215);border-radius:16px;display:flex;height:70px;justify-content:center;margin-bottom:1.5rem;transition:all .3s ease;width:70px}.feature-card.featured .feature-icon-wrapper{background:#fff3}.feature-card:hover .feature-icon-wrapper{transform:rotateY(1turn)}.feature-icon{stroke:#667eea;height:36px;width:36px}.feature-card.featured .feature-icon{stroke:#fff}.feature-card h3{color:#0f172a;font-size:1.375rem;font-weight:600;letter-spacing:-.01em;margin-bottom:.875rem}.feature-card p{color:#64748b;font-size:.9375rem;font-weight:400;line-height:1.7;margin-bottom:1.5rem}.feature-tags{display:flex;flex-wrap:wrap;gap:.5rem}.tag{background:#f1f5f9;border-radius:50px;color:#475569;font-size:.75rem;font-weight:600;padding:.35rem .85rem}.feature-card.featured .tag{background:#ffffff40;border:1px solid #ffffff4d;color:#fff}.how-it-works-section{background:linear-gradient(180deg,#f8fafc,#fff);padding:5rem 2rem}.steps-container{grid-gap:1rem;align-items:center;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr);margin:0 auto;max-width:1200px}.step-card{background:#fff;border-radius:20px;box-shadow:0 4px 20px #0000000f;padding:2.5rem 2rem;position:relative;text-align:center;transition:all .3s ease}.step-card:hover{box-shadow:0 12px 40px #667eea26;transform:translateY(-10px)}.step-icon-wrapper{margin-bottom:1.5rem;position:relative}.step-number{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 4px 15px #667eea66;color:#fff;display:flex;font-size:1.125rem;font-weight:800;height:45px;justify-content:center;position:absolute;right:50%;top:-10px;transform:translateX(50%);width:45px;z-index:2}.step-icon{stroke:#667eea;background:linear-gradient(135deg,#667eea10,#764ba210);border-radius:16px;height:70px;margin:0 auto;padding:1.25rem;transition:all .3s ease;width:70px}.step-card:hover .step-icon{background:linear-gradient(135deg,#667eea20,#764ba220);transform:scale(1.1)}.step-card h3{color:#1e293b;font-size:1.25rem;font-weight:700;margin-bottom:.75rem}.step-card p{color:#64748b;font-size:.95rem;line-height:1.6}.step-connector{background:linear-gradient(90deg,#667eea,#764ba2);height:2px;opacity:.3;position:relative}.step-connector:after{color:#667eea;content:"→";font-size:1.25rem;font-weight:700;position:absolute;right:-8px;top:50%;transform:translateY(-50%)}.cta-section{background:linear-gradient(135deg,#1e40af,#0f766e);margin:0;overflow:hidden;padding:6rem 2rem;position:relative}.cta-section:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 320'%3E%3Cpath fill='%23fff' d='m0 96 48 16c48 16 144 48 240 48s192-32 288-37.3c96-5.7 192 16.3 288 32 96 16.3 192 26.3 288 16 96-10.7 192-42.7 240-58.7l48-16V0H0Z'/%3E%3C/svg%3E") no-repeat top;background-size:cover;content:"";height:150px;left:0;position:absolute;right:0;top:0}.cta-content{margin:0 auto;max-width:700px;position:relative;text-align:center;z-index:2}.cta-title{color:#fff;font-size:2.5rem;font-weight:700;letter-spacing:-.02em;line-height:1.25;margin-bottom:1rem;text-shadow:0 2px 8px #00000040,0 4px 16px #0003}.cta-subtitle{color:#fffffffa;font-size:1.125rem;font-weight:500;letter-spacing:-.01em;line-height:1.7;margin-bottom:2.5rem;text-shadow:0 2px 6px #0003,0 1px 3px #00000026}@media (max-width:1024px){.hero-section{flex-direction:column;min-height:auto;text-align:center}.hero-decoration{display:none}.hero-content{max-width:100%}.steps-container{grid-template-columns:repeat(2,1fr)}.step-connector{display:none}}.languages-section{background:#f8fafc;margin:0 auto;max-width:1280px;padding:6rem 2rem}.languages-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:3rem auto;max-width:1200px}.language-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 1px 3px #0000000d,0 1px 2px #00000008;cursor:pointer;padding:2rem 1.5rem;text-align:center;transition:all .3s ease}.language-card:hover{border-color:#cbd5e1;box-shadow:0 8px 20px #3b82f61a,0 4px 8px #0000000d;transform:translateY(-4px)}.language-icon{display:block;font-size:3rem;margin-bottom:1rem}.language-card h4{color:#1e293b;font-size:1.25rem;font-weight:700;margin-bottom:.5rem}.language-card p{color:#64748b;font-size:.9rem;margin-bottom:1rem}.language-badge{background:#3b82f61a;border-radius:20px;color:#3b82f6;display:inline-block;font-size:.75rem;font-weight:600;padding:.375rem .75rem}.languages-more{margin-top:3rem;text-align:center}.languages-more .btn{font-size:1.1rem;padding:1rem 2.5rem}@media (max-width:768px){.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.125rem}.hero-buttons{align-items:stretch;flex-direction:column}.hero-stats{flex-direction:column;gap:1.5rem}.stat-divider{height:1px;width:100%}.section-title{font-size:2rem}.section-subtitle{font-size:1.125rem}.features-grid{grid-template-columns:1fr}.feature-card.featured{transform:scale(1)}.steps-container{grid-template-columns:1fr}.cta-title{font-size:2rem}.cta-subtitle{font-size:1.125rem}.languages-grid{gap:1rem;grid-template-columns:repeat(2,1fr)}.language-card{padding:1.5rem 1rem}.language-icon{font-size:2.5rem}}.pathways-section{background:#fff;margin:0 auto;max-width:1280px;padding:6rem 2rem}.pathways-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin:3rem 0}.pathway-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;border-top:3px solid #3b82f6;border-top:3px solid var(--pathway-color,#3b82f6);box-shadow:0 1px 3px #0000000d,0 1px 2px #00000008;cursor:pointer;overflow:hidden;padding:2rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.pathway-card:before{background:linear-gradient(90deg,#667eea,#764ba2);background:linear-gradient(90deg,var(--pathway-color,#667eea) 0,var(--pathway-color,#764ba2) 100%);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transform-origin:left;transition:transform .4s ease}.pathway-card:hover{border-color:#cbd5e1;box-shadow:0 10px 25px #3b82f61f,0 4px 10px #0000000d;transform:translateY(-4px)}.pathway-card:hover:before{transform:scaleX(1)}.pathway-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1.5rem}.pathway-icon{font-size:3rem;line-height:1}.pathway-featured-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50px;color:#fff;font-size:.75rem;font-weight:700;letter-spacing:.5px;padding:.35rem .85rem;text-transform:uppercase}.pathway-title{color:#0f172a;font-size:1.375rem;font-weight:600;letter-spacing:-.01em;line-height:1.3;margin-bottom:.75rem}.pathway-description{color:#64748b;font-size:.9375rem;font-weight:400;line-height:1.7;margin-bottom:1.5rem;min-height:3rem}.pathway-meta{border-bottom:1px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;padding-bottom:1.5rem}.pathway-meta-item{align-items:center;color:#475569;display:flex;font-size:.875rem;font-weight:500;gap:.5rem}.pathway-meta-item svg{stroke:#64748b;flex-shrink:0}.pathway-footer{align-items:center;display:flex;justify-content:space-between}.pathway-level-badge{border-radius:50px;font-size:.75rem;font-weight:600;padding:.4rem .9rem;text-transform:capitalize}.pathway-level-badge.level-basic{background:#dcfce7;color:#166534}.pathway-level-badge.level-intermediate{background:#dbeafe;color:#1e40af}.pathway-level-badge.level-advanced{background:#fce7f3;color:#9f1239}.pathway-cta{color:#667eea;color:var(--pathway-color,#667eea);font-size:.9rem;font-weight:600;transition:transform .3s ease}.pathway-card:hover .pathway-cta{transform:translateX(5px)}.pathways-placeholder{background:#fff;border-radius:20px;box-shadow:0 4px 20px #00000014;padding:4rem 2rem;text-align:center}.placeholder-icon{font-size:4rem;margin-bottom:1rem}.pathways-placeholder h3{color:#1e293b;font-size:1.75rem;font-weight:700;margin-bottom:.75rem}.pathways-placeholder p{color:#64748b;font-size:1.125rem;margin-bottom:2rem;margin-left:auto;margin-right:auto;max-width:500px}.pathways-more{margin-top:3rem;text-align:center}.cta-buttons{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}@media (max-width:768px){.pathways-grid{gap:1.5rem;grid-template-columns:1fr}.pathway-card{padding:1.5rem}.pathway-meta{flex-direction:column;gap:.75rem}.cta-buttons{align-items:stretch;flex-direction:column}}.certifications-section{background:linear-gradient(180deg,#f8fafc,#fff);padding:6rem 2rem}.certifications-grid{max-width:1200px}.certification-card:before{background:radial-gradient(circle,#667eea 0,#0000 70%);background:radial-gradient(circle,var(--cert-color,#667eea) 0,#0000 70%);border-radius:50%;height:100px;opacity:.05;transition:all .3s ease;width:100px}.certification-card:hover:before{opacity:.08;transform:scale(1.5)}.cert-header{margin-bottom:1.25rem}.cert-provider{border-radius:6px}.cert-hot-badge{background:#fee2e2;color:#dc2626;padding:.25rem .625rem}.cert-title{font-size:1.375rem;margin-bottom:.5rem}.cert-code{font-family:Courier New,monospace;margin-bottom:1rem}.cert-description{font-size:1rem;margin-bottom:1.5rem}.cert-stats{margin-bottom:1.25rem;padding:1.25rem 0}.cert-stat-label{color:#64748b;display:block;font-weight:600;margin-bottom:.375rem}.cert-stat-value{display:block}.cert-level-badge{background:#f1f5f9;font-size:.875rem;padding:.5rem 1rem}.cert-level-badge.level-beginner{background:#dbeafe;color:#1e40af}.cert-level-badge.level-intermediate{background:#fef3c7;color:#92400e}.cert-level-badge.level-advanced{background:#fecaca;color:#991b1b}.cert-level-badge.level-expert{background:#f3e8ff;color:#6b21a8}.cert-cta{transition:transform .2s ease}@media (max-width:1024px){.certifications-grid{gap:1.5rem;grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.certifications-section{padding:4rem 1.5rem}.certifications-grid{gap:1.5rem;grid-template-columns:1fr}.certification-card{padding:1.5rem}.cert-title{font-size:1.25rem}.cert-stats{gap:.75rem}.cert-stat-value{font-size:1rem}}.impact-section{background:linear-gradient(135deg,#667eea,#764ba2);overflow:hidden;padding:6rem 2rem;position:relative}.impact-section:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z' fill='%23fff' fill-opacity='.05' fill-rule='evenodd'/%3E%3C/svg%3E");bottom:0;content:"";left:0;opacity:.1;position:absolute;right:0;top:0}.impact-section .section-header{position:relative;z-index:1}.impact-section .section-badge{background:#fff3;color:#fff}.impact-section .section-subtitle,.impact-section .section-title{color:#fff}.impact-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:0 auto;max-width:1200px;position:relative;z-index:1}.impact-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:16px;padding:2.5rem 2rem;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1)}.impact-card:hover{background:#ffffff26;border-color:#ffffff4d;box-shadow:0 12px 32px #0003;transform:translateY(-8px)}.impact-icon{filter:drop-shadow(0 4px 8px rgba(0,0,0,.1));font-size:3rem;margin-bottom:1rem}.impact-stat{color:#fff;font-size:2.75rem;font-weight:800;line-height:1;margin-bottom:.5rem;text-shadow:0 2px 8px #0003}.impact-label{color:#fffffff2;font-size:1.125rem;font-weight:600;letter-spacing:.3px;margin-bottom:1rem}.impact-desc{color:#ffffffd9;font-size:.9375rem;line-height:1.6;margin:0}@media (max-width:768px){.impact-section{padding:4rem 1.5rem}.impact-grid{gap:1.5rem;grid-template-columns:1fr}.impact-card{padding:2rem 1.5rem}.impact-stat{font-size:2.25rem}.hero-stats{flex-wrap:wrap;gap:1.5rem}.stat-divider{display:none}}.topic-management{background:#f8f9fa;margin:0 auto;max-width:1200px;min-height:100vh;padding:16px}.page-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;justify-content:space-between;margin-bottom:16px;padding:20px 24px}.page-header h1{color:#1a1a1a;font-size:28px;font-weight:700;letter-spacing:-.02em;margin:0 0 6px}.page-header .subtitle{color:#666;font-size:14px;font-weight:400;margin:0}.topics-count{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;font-size:14px;font-weight:600;padding:8px 16px}.filters-section{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;flex-wrap:wrap;gap:16px;margin-bottom:16px;padding:16px 20px}.filters-section,.level-filter{align-items:center;display:flex}.level-filter{gap:10px}.level-filter label{color:#333;font-size:14px;font-weight:600;white-space:nowrap}.level-select{-webkit-appearance:none;appearance:none;background:#f8f9fa;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23333' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;font-size:14px;min-width:150px;outline:none;padding:8px 32px 8px 12px;transition:all .2s}.level-select:focus,.level-select:hover{background-color:#fff;border-color:#667eea}.level-select:focus{box-shadow:0 0 0 3px #667eea1a}.search-box{align-items:center;display:flex;flex:1 1;max-width:600px;position:relative}.search-icon{font-size:18px;left:14px;opacity:.5;pointer-events:none;position:absolute}.search-input{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;outline:none;padding:12px 40px 12px 44px;transition:all .2s;width:100%}.search-input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.search-input::placeholder{color:#999}.clear-search{background:#0000;border:none;border-radius:4px;color:#999;cursor:pointer;font-size:18px;padding:4px 8px;position:absolute;right:10px;transition:all .2s}.clear-search:hover{background:#f0f0f0;color:#667eea}.no-results{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:60px 20px;text-align:center}.no-results-icon{font-size:48px;margin-bottom:16px;opacity:.5}.no-results h3{color:#1a1a1a;font-size:20px;font-weight:600;margin:0 0 8px}.no-results p{color:#666;font-size:14px;margin:0}.topics-grid{grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.topic-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;padding:18px 20px;position:relative;transition:all .2s}.topic-card:before{background:linear-gradient(135deg,#667eea,#764ba2);content:"";height:0;left:0;position:absolute;top:0;transition:height .3s ease;width:4px}.topic-card:hover:before{height:100%}.topic-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea33;transform:translateY(-2px)}.topic-card-header{align-items:center;display:flex;gap:10px;margin-bottom:10px}.topic-icon{flex-shrink:0;font-size:24px}.topic-card h3{color:#1a1a1a;font-size:17px;font-weight:600;line-height:1.3;margin:0}.topic-card p{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:#666;display:-webkit-box;flex:1 1;font-size:13px;line-height:1.5;margin:0 0 12px;overflow:hidden}.topic-card-footer{border-top:1px solid #f0f0f0;padding-top:10px}.view-details{align-items:center;color:#667eea;display:inline-flex;font-size:13px;font-weight:600;gap:4px;transition:all .2s}.topic-card:hover .view-details{color:#764ba2;transform:translateX(2px)}.topic-details{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;padding:2rem}.topic-details>h2{border-bottom:2px solid #e0e0e0;color:#333;padding-bottom:1rem}.section,.topic-details>h2{margin-bottom:2rem}.section-header{margin-bottom:1rem}.section-header h3{color:#333}.documents-list,.quizzes-list{display:flex;flex-direction:column;gap:1rem}.document-item{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;justify-content:space-between;padding:1rem}.doc-type{background:#667eea;border-radius:4px;color:#fff;font-size:.875rem;padding:.25rem .75rem}.quiz-item{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;justify-content:space-between;padding:1.5rem}.quiz-item h4{color:#333;margin-bottom:.5rem}.quiz-item p{color:#666;font-size:.875rem}.separator{color:#999;margin:1.5rem 0;position:relative;text-align:center}.separator:after,.separator:before{background:#ddd;content:"";height:1px;position:absolute;top:50%;width:45%}.separator:before{left:0}.separator:after{right:0}.form-actions{display:flex;gap:1rem}@media (max-width:768px){.topic-management{padding:12px}.page-header{align-items:flex-start;flex-direction:column;gap:12px;padding:16px}.page-header h1{font-size:24px}.topics-count{align-self:flex-start}.search-section{padding:12px 16px}.search-box{max-width:100%}.search-input{font-size:16px}.topics-grid{grid-template-columns:1fr}.topic-card{padding:16px}.quiz-item{flex-direction:column;gap:1rem;text-align:center}.no-results{padding:40px 20px}.no-results-icon{font-size:36px}}.level-badge{border-radius:12px;font-size:11px;font-weight:600;letter-spacing:.5px;margin-left:auto;padding:4px 10px;text-transform:uppercase}.level-badge.level-basic{background:#e3f2fd;color:#1976d2}.level-badge.level-intermediate{background:#fff3e0;color:#f57c00}.level-badge.level-advanced{background:#fce4ec;color:#c2185b}.no-metaphor-badge{background:#f5f5f5;border-radius:4px;color:#999;font-size:11px;margin-right:8px;padding:4px 8px}.topic-card-footer{align-items:center;display:flex;justify-content:flex-end}.topic-details{background:#f8f9fa;margin:0 auto;max-width:1200px;min-height:100vh;padding:16px}.loading{font-size:16px;padding:60px 20px}.topic-header-compact{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:16px;padding:20px 24px}.btn-back{align-items:center;background:#0000;border:none;color:#667eea;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:4px;margin-bottom:12px;padding:6px 0;transition:all .2s}.btn-back:hover{color:#764ba2;transform:translateX(-2px)}.header-content{align-items:flex-start;display:flex;gap:20px;justify-content:space-between}.header-main h1{color:#1a1a1a;font-size:28px;font-weight:700;line-height:1.2;margin:0 0 12px}.header-meta{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.category-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;color:#fff;font-size:12px;font-weight:600;padding:4px 12px}.category-badge,.meta-item{align-items:center;display:inline-flex}.meta-item{color:#666;font-size:13px;font-weight:500}.btn-start{flex-shrink:0;font-size:15px;padding:12px 28px;white-space:nowrap}.summary-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:16px;padding:20px 24px}.summary-section h3{color:#333;font-size:16px;font-weight:600;margin:0 0 12px}.summary-section p{color:#666;font-size:14px;line-height:1.6;margin:0}.content-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:16px;padding:20px 24px}.section-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.section-header h2{align-items:center;color:#1a1a1a;display:flex;font-size:18px;font-weight:600;gap:8px;margin:0}.section-count{color:#666;font-size:13px;font-weight:500}.materials-grid{display:flex;flex-direction:column;gap:12px}.material-card{align-items:center;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;padding:16px;position:relative;transition:all .2s}.material-card:hover{background:#fff;border-color:#667eea;box-shadow:0 2px 8px #667eea26;transform:translateX(4px)}.material-card-hover{display:none}.material-header{align-items:center;display:flex;flex:1 1;gap:16px}.material-number{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;display:flex;flex-shrink:0;font-size:16px;font-weight:600;height:40px;justify-content:center;min-width:40px}.material-title-group{flex:1 1;min-width:0}.module-label{display:none}.material-header h3{color:#1a1a1a;font-size:15px;font-weight:600;line-height:1.3;margin:0 0 4px}.material-preview{color:#666;font-size:13px;line-height:1.4;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.material-footer{align-items:center;display:flex;gap:12px;margin-left:auto}.feature-badge{background:linear-gradient(135deg,#667eea1a,#764ba21a);border:1px solid #667eea33;border-radius:12px;color:#667eea;font-size:11px;font-weight:600;padding:4px 10px;white-space:nowrap}.read-time{color:#666;font-size:13px;font-weight:500;white-space:nowrap}.file-type-badge{display:none}.quizzes-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.quiz-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;padding:16px 20px;transition:all .2s}.quiz-card:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea26;transform:translateX(4px)}.quiz-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:10px}.quiz-header h3{color:#1a1a1a;flex:1 1;font-size:16px;font-weight:600;margin:0}.difficulty-badge{border-radius:6px;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 10px;text-transform:uppercase;white-space:nowrap}.difficulty-badge.easy{background:linear-gradient(135deg,#4caf50,#66bb6a);color:#fff}.difficulty-badge.medium{background:linear-gradient(135deg,#ff9800,#ffa726);color:#fff}.difficulty-badge.hard{background:linear-gradient(135deg,#f44336,#e57373);color:#fff}.quiz-meta{color:#666;display:flex;font-size:13px;gap:16px;margin-bottom:12px}.quiz-meta span{align-items:center;display:inline-flex;gap:4px}.quiz-meta strong{color:#667eea;font-weight:600}.btn-full{font-size:14px;font-weight:600;padding:10px;width:100%}.tips-card{background:#fff;border:2px solid #e0e0e0}.tips-list{list-style:none;margin:0;padding:0}.tips-list li{background:#667eea08;border-radius:6px;color:#555;font-size:15px;line-height:1.6;margin-bottom:8px;padding:12px 16px;transition:all .2s}.tips-list li:hover{background:#667eea14;transform:translateX(4px)}.tips-list li:last-child{margin-bottom:0}.empty-state{background:#667eea08;border-radius:12px;color:#999;padding:40px 30px;text-align:center}.empty-state p{font-size:16px;margin:0}.btn{border-radius:8px;font-size:14px;gap:8px;padding:12px 24px;transition:all .3s}.btn-primary:hover{box-shadow:0 6px 20px #667eea66}.btn-secondary{background:#fff;border:2px solid #667eea;color:#667eea}.btn-secondary:hover{background:#667eea;color:#fff}.card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:25px}.alert-error{border:2px solid #fcc}@media (max-width:768px){.topic-details{padding:10px}.topic-header{padding:20px}.topic-header h1{font-size:24px}.content-section h2{font-size:20px}.materials-grid,.quizzes-grid{grid-template-columns:1fr}.material-card,.quiz-card{padding:15px}}.analogy-visualization-container{border-radius:10px;box-shadow:0 4px 6px #0000001a;height:100%;min-height:400px;overflow:hidden;position:relative;width:100%}.babylon-canvas{display:block;height:100%;outline:none;width:100%}.component-info-panel{animation:slideIn .3s ease-out;background:#fffffff2;border-radius:10px;box-shadow:0 4px 8px #0003;max-width:300px;padding:20px;position:absolute;right:20px;top:20px}.component-info-panel h3{color:#2c3e50;font-size:1.2em;margin:0 0 10px}.component-info-panel p{color:#555;line-height:1.5;margin:8px 0}.component-info-panel strong{color:#2c3e50}.analogy-info-panel{background:#ffffffe6;border-radius:10px;bottom:20px;box-shadow:0 4px 8px #0003;left:20px;max-width:400px;padding:15px 20px;position:absolute}.analogy-info-panel h2{color:#2c3e50;font-size:1.3em;margin:0 0 10px}.controls-hint{margin-top:10px}.controls-hint p{color:#666;font-size:.9em;margin:5px 0}@media (max-width:768px){.analogy-info-panel,.component-info-panel{left:5%;max-width:90%;right:5%}.component-info-panel{top:10px}.analogy-info-panel{bottom:10px}}.analogy-2d-visualization-container{background:#f8f9fa;border-radius:8px;display:flex;flex-direction:column;height:100%;min-height:400px;position:relative;width:100%}.analogy-2d-canvas{display:block;flex:1 1;min-height:300px;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;width:100%}.component-info-panel-2d{animation:fadeInScale .2s ease-out;background:#fff;border:2px solid #667eea;border-radius:12px;box-shadow:0 6px 20px #0003;max-width:320px;padding:16px 20px;pointer-events:none;position:absolute;right:20px;top:20px;z-index:100}.component-info-panel-2d.hover-panel{background:linear-gradient(135deg,#667eea,#764ba2);border:none;box-shadow:0 8px 24px #667eea66;color:#fff}.component-info-panel-2d .close-btn{background:none;border:none;color:#95a5a6;cursor:pointer;font-size:24px;height:30px;line-height:1;padding:0;pointer-events:auto;position:absolute;right:10px;top:10px;transition:color .2s;width:30px}.component-info-panel-2d .close-btn:hover{color:#e74c3c}.component-info-panel-2d h3{color:#2c3e50;font-size:17px;font-weight:700;margin:0 0 12px;padding-right:0;text-shadow:0 1px 2px #0000001a}.component-info-panel-2d.hover-panel h3{color:#fff;margin-bottom:10px;text-shadow:0 2px 4px #0003}.component-info-panel-2d p{color:#555;font-size:13px;line-height:1.5;margin:6px 0}.component-info-panel-2d.hover-panel p{color:#fffffff2;font-size:13px}.component-info-panel-2d strong{color:#2c3e50;font-weight:600}.component-info-panel-2d.hover-panel strong{color:#ffffffe6;font-weight:700}.analogy-info-panel-2d{align-items:flex-start;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;border:1px solid #667eea33;border-radius:8px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;gap:2px;left:12px;max-width:320px;padding:8px 14px;pointer-events:none;position:absolute;top:12px;z-index:5}.analogy-info-panel-2d h2{color:#667eea;font-size:13px;font-weight:700}.analogy-info-panel-2d h2,.diagram-hint{margin:0;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.diagram-hint{color:#7f8c8d;font-size:10px}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.play-controls-2d{background:#fff;border-top:1px solid #e0e7ff;flex-wrap:wrap;gap:12px;justify-content:space-between;min-height:60px;padding:12px 20px;position:relative}.play-btn,.play-controls-2d{align-items:center;display:flex}.play-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .2s}.play-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.play-btn.playing{background:linear-gradient(135deg,#f39c12,#e67e22)}.play-btn:active{transform:translateY(0)}.reset-layout-btn{align-items:center;background:linear-gradient(135deg,#95a5a6,#7f8c8d);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:10px 18px;transition:all .2s}.reset-layout-btn:hover{background:linear-gradient(135deg,#e74c3c,#c0392b);box-shadow:0 4px 12px #e74c3c66;transform:translateY(-2px)}.reset-layout-btn:active{transform:translateY(0)}.mute-btn{align-items:center;background:linear-gradient(135deg,#3498db,#2980b9);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:10px 16px;transition:all .2s}.mute-btn:hover{box-shadow:0 4px 12px #3498db66;transform:translateY(-2px)}.mute-btn.muted{background:linear-gradient(135deg,#95a5a6,#7f8c8d)}.voice-indicator{align-items:center;animation:pulse 1.5s ease-in-out infinite;color:#e74c3c;display:flex;font-size:13px;font-weight:600;gap:4px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.step-indicator-2d{color:#667eea;flex:1 1;font-size:13px;font-weight:600;min-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.play-controls-left{flex-wrap:wrap}.download-controls-left,.play-controls-left,.play-controls-right{align-items:center;display:flex;gap:10px}.download-controls-left{flex-wrap:wrap}@media (max-width:768px){.component-info-panel-2d{bottom:140px;max-width:calc(100% - 20px);right:10px;top:auto}.analogy-info-panel-2d{align-items:flex-start;bottom:80px;flex-direction:column;gap:6px;left:10px;max-width:none;right:10px;transform:none}.analogy-info-panel-2d h2,.diagram-hint{white-space:normal}.diagram-hint{border-left:none;border-top:1px solid #e0e0e0;padding-left:0;padding-top:6px}.play-controls-2d{align-items:stretch;bottom:10px;flex-direction:column;left:10px;right:10px}.step-indicator-2d{max-width:none;text-align:center}.download-controls-2d{align-items:stretch;bottom:10px;flex-direction:column;left:10px;right:10px}}.download-controls-2d{align-items:center;background:#fff;border-top:1px solid #e0e7ff;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;min-height:60px;padding:12px 20px;position:relative}.download-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:20px;box-shadow:0 2px 8px #667eea4d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 16px;transition:all .3s ease;white-space:nowrap}.download-btn:hover:not(:disabled){box-shadow:0 4px 12px #667eea80;transform:translateY(-2px)}.download-btn:active:not(:disabled){transform:translateY(0)}.download-btn:disabled{background:linear-gradient(135deg,#ccc,#999);cursor:not-allowed;opacity:.6}.download-btn:disabled:hover{box-shadow:0 2px 8px #667eea4d;transform:none}.voice-settings-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 8px #667eea4d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-left:10px;padding:8px 16px;transition:all .3s ease}.voice-settings-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.voice-settings-btn:active{transform:translateY(0)}.voice-settings-panel{animation:slideIn .3s ease;background:#fff;border:2px solid #667eea;border-radius:12px;box-shadow:0 8px 32px #0003;padding:20px;position:absolute;right:20px;top:60px;width:320px;z-index:1000}.voice-settings-header{align-items:center;border-bottom:2px solid #667eea;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:10px}.voice-settings-header h3{color:#667eea;font-size:18px;font-weight:700;margin:0}.close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#999;cursor:pointer;display:flex;font-size:28px;height:30px;justify-content:center;padding:0;transition:all .2s ease;width:30px}.close-btn:hover{background:#f0f0f0;color:#667eea}.voice-setting{margin-bottom:20px}.voice-setting label{color:#333;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.voice-setting select{background:#fff;border:2px solid #e0e0e0;border-radius:8px;color:#333;cursor:pointer;font-size:14px;padding:10px;transition:border-color .2s ease;width:100%}.voice-setting select:hover{border-color:#667eea}.voice-setting select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.voice-setting input[type=range]{-webkit-appearance:none;appearance:none;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:3px;height:6px;margin-top:8px;outline:none;width:100%}.voice-setting input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#fff;border:3px solid #667eea;border-radius:50%;box-shadow:0 2px 4px #0003;cursor:pointer;height:18px;-webkit-transition:all .2s ease;transition:all .2s ease;width:18px}.voice-setting input[type=range]::-webkit-slider-thumb:hover{box-shadow:0 3px 6px #0000004d;transform:scale(1.2)}.voice-setting input[type=range]::-moz-range-thumb{background:#fff;border:3px solid #667eea;border-radius:50%;box-shadow:0 2px 4px #0003;cursor:pointer;height:18px;-moz-transition:all .2s ease;transition:all .2s ease;width:18px}.voice-setting input[type=range]::-moz-range-thumb:hover{box-shadow:0 3px 6px #0000004d;transform:scale(1.2)}.test-voice-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 8px #667eea4d;color:#fff;cursor:pointer;font-size:15px;font-weight:600;margin-top:10px;padding:12px;transition:all .3s ease;width:100%}.test-voice-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.test-voice-btn:active{transform:translateY(0)}.visual-description-container{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000f;margin:1.5rem 0;padding:1.5rem}.visual-description-title{border-bottom:2px solid #e2e8f0;color:#1e293b;font-size:1.2em;font-weight:700;margin-bottom:1rem;padding-bottom:.75rem}.visual-description-content{width:100%}.visual-flow-diagram{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #e2e8f0;border-radius:12px;padding:1.5rem;width:100%}.flow-diagram-container{align-items:center;display:flex;flex-direction:column;gap:1.5rem;width:100%}.flow-layer{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;padding:1rem;width:100%}.flow-node{align-items:center;border-radius:12px;box-shadow:0 4px 12px #0000001a;display:flex;flex-direction:column;gap:.5rem;min-width:180px;padding:1.25rem 1.75rem;text-align:center;transition:all .3s ease}.flow-node:hover{box-shadow:0 8px 20px #00000026;transform:translateY(-4px)}.client-node{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border:2px solid #3b82f6;color:#1e40af}.server-node{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border:2px solid #6366f1;color:#3730a3}.process-node{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;color:#92400e}.data-node{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border:2px solid #10b981;color:#065f46}.node-icon{font-size:2em;margin-bottom:.25rem}.node-label{font-size:.95em;font-weight:600;line-height:1.4;word-break:break-word}.flow-arrow{align-items:center;display:flex;justify-content:center;padding:.5rem 0;position:relative;width:100%}.arrow-line{background:linear-gradient(90deg,#3b82f6,#06b6d4);border-radius:2px;flex:1 1;height:3px}.arrow-head{color:#3b82f6;font-size:1.5em;font-weight:700;margin-left:.5rem}.visual-relationship-diagram{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #e2e8f0;border-radius:12px;padding:1.5rem;width:100%}.relationship-diagram-container{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:1rem}.relationship-node{align-items:center;display:flex;justify-content:center}.concept-badge{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:2px solid #3b82f6;border-radius:12px;box-shadow:0 4px 12px #3b82f633;color:#1e40af;font-size:.95em;font-weight:600;padding:1rem 1.5rem;text-align:center;transition:all .3s ease}.concept-badge:hover{box-shadow:0 6px 20px #3b82f64d;transform:scale(1.05)}.relationship-connection{align-items:center;display:flex;justify-content:center;position:relative}.connection-line{background:linear-gradient(90deg,#3b82f6,#06b6d4);border-radius:2px;height:2px;width:100%}.connection-label{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;font-size:.75em;padding:.25rem .75rem;position:absolute}.visual-text-diagram{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;overflow-x:auto;padding:1.5rem;width:100%}.diagram-text{word-wrap:break-word;color:#1e293b;font-family:Courier New,Monaco,Menlo,monospace;font-size:.9em;line-height:1.6;margin:0;white-space:pre-wrap}@media (max-width:768px){.flow-layer{align-items:stretch;flex-direction:column}.flow-node{min-width:100%}.relationship-diagram-container{grid-template-columns:1fr}.visual-description-container{padding:1rem}}.table-wrapper{background:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014;margin:1.5rem 0;overflow-x:auto;padding:1rem;width:100%}@media (prefers-color-scheme:dark){.table-wrapper{background:#1a1a1a;box-shadow:0 4px 12px #0006}}.markdown-table{background-color:#fff;border-collapse:collapse;border-radius:8px;box-shadow:0 2px 8px #0000000d;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:.95rem;overflow:hidden;width:100%}@media (prefers-color-scheme:dark){.markdown-table{background-color:#2a2a2a}}.markdown-table thead{background:linear-gradient(135deg,#667eea,#764ba2)!important;color:#fff!important}.markdown-table thead tr{box-shadow:0 2px 4px #0000001a}.markdown-table th{background:#0000!important;border:none;color:#fff!important;font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:1rem 1.25rem;position:relative;text-transform:uppercase}.markdown-table th:after{background:#ffffff4d;bottom:0;content:"";height:2px;left:0;position:absolute;right:0}.markdown-table tbody tr{border-bottom:1px solid #e9ecef;transition:all .3s ease}@media (prefers-color-scheme:dark){.markdown-table tbody tr{border-bottom:1px solid #404040}}.markdown-table tbody tr:hover{background-color:#f0f4ff;box-shadow:0 2px 8px #667eea26;transform:scale(1.01)}@media (prefers-color-scheme:dark){.markdown-table tbody tr:hover{background-color:#383838}}.markdown-table tbody tr:last-child{border-bottom:none}.markdown-table td{border:none;color:#2c3e50;padding:1rem 1.25rem}@media (prefers-color-scheme:dark){.markdown-table td{color:#e8e8e8}}.markdown-table tbody tr:nth-child(2n){background-color:#667eea0a}@media (prefers-color-scheme:dark){.markdown-table tbody tr:nth-child(2n){background-color:#667eea14}}.markdown-table code{background-color:#f1f3f5;border-radius:4px;color:#e83e8c;font-family:Courier New,monospace;font-size:.9em;padding:.2rem .4rem}@media (prefers-color-scheme:dark){.markdown-table code{background-color:#1a1a1a;color:#ff6b9d}}.markdown-table a{color:#667eea;font-weight:500;text-decoration:none;transition:color .2s ease}.markdown-table a:hover{color:#764ba2;text-decoration:underline}@media (max-width:768px){.table-wrapper{border-radius:0;margin:1rem -1rem;padding:.5rem}.markdown-table{font-size:.85rem}.markdown-table td,.markdown-table th{padding:.75rem .5rem}.markdown-table th{font-size:.75rem}}.table-wrapper::-webkit-scrollbar{height:8px}.table-wrapper::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.table-wrapper::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:4px}.table-wrapper::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#764ba2,#667eea)}.markdown-table{animation:tableAppear .5s ease-out}@keyframes tableAppear{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.markdown-table td:first-child{color:#1a1a1a;font-weight:600}@media (prefers-color-scheme:dark){.markdown-table td:first-child{color:#f5f5f5}}.markdown-table .badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .5rem}.markdown-table .status-active{color:#28a745;font-weight:600}.markdown-table .status-inactive{color:#dc3545;font-weight:600}.markdown-table .status-pending{color:#ffc107;font-weight:600}.markdown-table .icon{font-size:1.2rem;vertical-align:middle}.markdown-table.compact td,.markdown-table.compact th{padding:.5rem .75rem}.markdown-table.striped tbody tr:nth-child(odd){background-color:#00000005}@media (prefers-color-scheme:dark){.markdown-table.striped tbody tr:nth-child(odd){background-color:#ffffff05}}.markdown-table.bordered{border:1px solid #dee2e6}@media (prefers-color-scheme:dark){.markdown-table.bordered{border:1px solid #404040}}.markdown-table.bordered td,.markdown-table.bordered th{border:1px solid #dee2e6}@media (prefers-color-scheme:dark){.markdown-table.bordered td,.markdown-table.bordered th{border:1px solid #404040}}.reading-mode-dark .table-wrapper{background:#2a2a2a!important;box-shadow:0 4px 12px #00000080!important}.reading-mode-dark .markdown-table{background-color:#333!important}.reading-mode-dark .markdown-table td{color:#e8e8e8!important}.reading-mode-dark .markdown-table td:first-child{color:#fff!important}.reading-mode-dark .markdown-table tbody tr{border-bottom:1px solid #4a4a4a!important}.reading-mode-dark .markdown-table tbody tr:hover{background-color:#404040!important}.reading-mode-dark .markdown-table tbody tr:nth-child(2n){background-color:#667eea1a!important}.reading-mode-dark .markdown-table code{background-color:#1a1a1a!important;color:#ff79c6!important}@media print{.table-wrapper{background:#fff}.markdown-table,.table-wrapper{box-shadow:none}.markdown-table thead{background:#667eea!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.markdown-table tbody tr:hover{background-color:initial;transform:none}}.module-view{margin:0 auto;max-width:1400px;padding:12px 20px}.module-header{background:linear-gradient(135deg,#667eea0a,#764ba20a);border:1px solid #667eea14;border-radius:10px;margin-bottom:0;padding:8px 16px}.back-icon-btn{align-items:center;background:#667eea1a;border:none;border-radius:6px;color:#667eea;cursor:pointer;display:flex;font-size:16px;height:28px;justify-content:center;padding:0;transition:all .2s;width:28px}.back-icon-btn:hover{background:#667eea;color:#fff;transform:scale(1.05)}.module-breadcrumb{align-items:center;background:#0000;border-radius:0;display:flex;font-size:11px;gap:6px;opacity:1;padding:0;width:-webkit-fit-content;width:fit-content}.btn-link{background:none;border:none;border-radius:0;color:#667eea;cursor:pointer;font-size:11px;font-weight:500;padding:0;text-decoration:none;transition:all .2s}.btn-link:hover{color:#764ba2}.separator{color:#ccc;font-weight:300;margin:0 2px}.current{color:#667eea;font-weight:600}.current,.module-progress-container{background:#0000;border-radius:0;padding:0}.module-progress-container{border:none;margin:12px 0 8px}.progress-info{align-items:center;color:#555;font-size:11px;font-weight:500;gap:12px;margin-bottom:6px}.reading-controls,.top-nav-buttons{align-items:center;display:flex;gap:6px}.reading-controls{background:#fff;border-radius:8px;box-shadow:0 1px 4px #0000001a;padding:4px 8px}.reading-icon-btn{align-items:center;background:#0000;border:1px solid #0000;border-radius:6px;color:#666;cursor:pointer;display:flex;font-size:14px;height:28px;justify-content:center;padding:0;transition:all .2s;width:28px}.reading-icon-btn.font-btn{font-family:system-ui,-apple-system,sans-serif;font-size:13px}.reading-icon-btn:hover{background:#667eea1a;border-color:#667eea4d;transform:scale(1.1)}.reading-icon-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;box-shadow:0 2px 6px #667eea66;color:#fff}.reading-controls .divider{background:#e0e0e0;height:20px;margin:0 4px;width:1px}.nav-btn-compact{background:#fff;border:1px solid #667eea;border-radius:6px;color:#667eea;cursor:pointer;font-size:11px;font-weight:600;padding:4px 12px;transition:all .2s;white-space:nowrap}.nav-btn-compact:hover:not(:disabled){background:#667eea;box-shadow:0 2px 6px #667eea4d;color:#fff;transform:translateY(-1px)}.nav-btn-compact:disabled{border-color:#ddd;color:#999;cursor:not-allowed;opacity:.4}.progress-bar{background:#e8e8e8;box-shadow:inset 0 1px 2px #0000000f;height:5px;position:relative}.progress-fill{box-shadow:0 0 10px #667eea80;transition:width .4s cubic-bezier(.4,0,.2,1)}.reading-time{align-items:center;color:#667eea;display:inline-flex;font-size:11px;font-weight:600;gap:4px}.module-layout{grid-gap:20px;display:grid;gap:20px;grid-template-columns:300px 1fr;margin-top:3px}.module-sidebar{background:#fff;border:1px solid #667eea14;border-radius:12px;box-shadow:0 1px 3px #00000014,0 4px 12px #667eea14;height:-webkit-fit-content;height:fit-content;max-height:calc(100vh - 40px);overflow-y:auto;padding:20px;position:-webkit-sticky;position:sticky;top:20px}.module-sidebar h3{border-bottom:2px solid #0000;border-image:linear-gradient(90deg,#667eea,#764ba2);border-image-slice:1;color:#1a1a1a;font-size:17px;font-weight:700;letter-spacing:-.3px;margin:0 0 16px;padding-bottom:12px}.module-list{gap:8px}.module-item{background:#f8f9fa;border-radius:10px;gap:12px;overflow:hidden;padding:11px 14px;position:relative;text-align:left;transition:all .25s cubic-bezier(.4,0,.2,1);width:100%}.module-item:before{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px 0 0 10px;bottom:0;content:"";left:0;position:absolute;top:0;transition:width .3s cubic-bezier(.4,0,.2,1);width:0}.module-item:hover{background:#e9ecef;box-shadow:0 2px 8px #667eea26;transform:translateX(6px)}.module-item:hover:before{width:4px}.module-item.active{border-color:#0000;box-shadow:0 4px 12px #667eea66;transform:translateX(6px)}.module-item.active:before{width:0}.module-item.completed{background:linear-gradient(135deg,#4caf5014,#4caf501f);border-color:#4caf5033}.module-item.completed .module-icon{background:linear-gradient(135deg,#4caf50,#45a049);box-shadow:0 2px 6px #4caf504d;color:#fff}.module-icon{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #00000014;display:flex;font-size:18px;height:36px;justify-content:center;min-width:36px;position:relative;transition:all .2s;z-index:1}.module-item.active .module-icon{background:#ffffff40;box-shadow:0 2px 8px #ffffff4d;transform:scale(1.05)}.module-item-content{display:flex;flex:1 1;flex-direction:column;gap:2px}.module-label{font-size:11px;font-weight:600;opacity:.8;text-transform:uppercase}.module-name{font-size:13px;font-weight:500;line-height:1.3}.module-content{background:#fff;border:1px solid #667eea14;border-radius:12px;box-shadow:0 1px 3px #00000014,0 4px 12px #667eea14;min-height:600px;padding:28px 40px}.module-title-section{margin-bottom:0}.module-badge{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:25px;box-shadow:0 4px 12px #667eea4d;display:inline-flex;font-size:14px;gap:8px;margin-bottom:18px;padding:10px 18px;transition:transform .2s,box-shadow .2s}.module-badge:hover{box-shadow:0 6px 16px #667eea66;transform:translateY(-2px)}.module-title-section h1{color:#333;font-size:32px;line-height:1.3;margin:0}.markdown-content{color:#333;font-size:16px;line-height:1.8;margin-bottom:40px}.markdown-content h1{border-bottom:3px solid #0000;border-image:linear-gradient(90deg,#667eea,#764ba2);border-image-slice:1;color:#1a1a1a;font-size:30px;font-weight:700;letter-spacing:-.5px;margin:8px 0 20px;padding-bottom:12px}.markdown-content h1:first-child{margin-top:0}.markdown-content h2{color:#2a2a2a;font-size:22px;font-weight:600;margin:28px 0 14px;padding-left:12px;position:relative}.markdown-content h2:before{background:linear-gradient(180deg,#667eea,#764ba2);border-radius:2px;bottom:4px;content:"";left:0;position:absolute;top:4px;width:4px}.markdown-content h3{color:#3a3a3a;font-size:19px;font-weight:600;margin:22px 0 12px}.markdown-content h4{color:#555;font-size:18px;margin:18px 0 10px}.markdown-content p{line-height:1.8;margin:15px 0}.markdown-content ol,.markdown-content ul{margin:15px 0;padding-left:30px}.markdown-content li{line-height:1.7;margin:8px 0}.markdown-content code{background:#f4f4f4;border-radius:4px;color:#e83e8c;font-family:Courier New,monospace;font-size:14px;padding:2px 6px}.markdown-content pre{background:#1e1e1e;border:2px solid #667eea;border-radius:12px;box-shadow:0 6px 20px #667eea33;clear:both;color:#f8f8f2;margin:32px 0;overflow-x:auto;padding:32px 24px 24px;position:relative;width:100%}.markdown-content pre:before{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:25px;box-shadow:0 3px 12px #667eea66;color:#fff;content:"💻 Code Example";font-size:13px;font-weight:700;left:20px;letter-spacing:.5px;padding:6px 20px;position:absolute;top:-14px}.markdown-content pre code{background:none;color:inherit;font-size:14px;padding:0}.markdown-content blockquote{border-left:4px solid #667eea;color:#555;font-style:italic;margin:20px 0;padding-left:20px}.markdown-content a{color:#667eea;font-weight:500;text-decoration:none}.markdown-content a:hover{color:#764ba2;text-decoration:underline}.markdown-content strong{color:#222;font-weight:600}.markdown-content table{border-collapse:collapse;margin:20px 0;width:100%}.markdown-content td,.markdown-content th{border:1px solid #e0e0e0;padding:12px;text-align:left}.markdown-content th{background:#f8f9fa;font-weight:600}.no-content{color:#999;font-style:italic;padding:40px;text-align:center}.module-content.reading-mode-light{background:#fff;color:#333}.module-content.reading-mode-sepia{background:#f4ecd8;color:#5c4a2a}.module-content.reading-mode-sepia .markdown-content h1,.module-content.reading-mode-sepia .markdown-content h2,.module-content.reading-mode-sepia .markdown-content h3,.module-content.reading-mode-sepia .markdown-content h4{color:#5c4a2a}.module-content.reading-mode-sepia .module-badge{background:linear-gradient(135deg,#8b7355,#6b5644)}.module-content.reading-mode-sepia .markdown-content code{background:#e8dcc4;color:#5c4a2a}.module-content.reading-mode-sepia .markdown-content pre{background:#3a3228;color:#f4ecd8}.module-content.reading-mode-dark{background:#1a1a1a;color:#e0e0e0}.module-content.reading-mode-dark .markdown-content h1,.module-content.reading-mode-dark .markdown-content h2,.module-content.reading-mode-dark .markdown-content h3,.module-content.reading-mode-dark .markdown-content h4,.module-content.reading-mode-dark .module-title-section h1{color:#fff}.module-content.reading-mode-dark .markdown-content li,.module-content.reading-mode-dark .markdown-content p{color:#d0d0d0}.module-content.reading-mode-dark .markdown-content code{background:#2d2d2d;color:#ff79c6}.module-content.reading-mode-dark .markdown-content pre{background:#0d0d0d;color:#f8f8f2}.module-content.reading-mode-dark .markdown-content blockquote{border-left-color:#667eea;color:#b0b0b0}.module-content.reading-mode-dark .markdown-content th{background:#2d2d2d;color:#fff}.module-content.reading-mode-dark .markdown-content td{border-color:#3d3d3d}.module-content.font-size-small .markdown-content{font-size:14px}.module-content.font-size-small .markdown-content h1{font-size:24px}.module-content.font-size-small .markdown-content h2{font-size:20px}.module-content.font-size-small .markdown-content h3{font-size:18px}.module-content.font-size-medium .markdown-content{font-size:16px}.module-content.font-size-medium .markdown-content h1{font-size:28px}.module-content.font-size-medium .markdown-content h2{font-size:22px}.module-content.font-size-medium .markdown-content h3{font-size:20px}.module-content.font-size-large .markdown-content{font-size:18px}.module-content.font-size-large .markdown-content h1{font-size:32px}.module-content.font-size-large .markdown-content h2{font-size:26px}.module-content.font-size-large .markdown-content h3{font-size:22px}.module-content.content-width-narrow .markdown-content{margin-left:auto;margin-right:auto;max-width:600px}.module-content.content-width-normal .markdown-content{margin-left:auto;margin-right:auto;max-width:800px}.module-content.content-width-wide .markdown-content{max-width:100%}.module-navigation{border-top:2px solid #e0e0e0;gap:20px;justify-content:space-between;margin-top:40px;padding-top:30px}.nav-btn{flex:1 1;font-size:16px;font-weight:500;max-width:250px;padding:12px 24px}.nav-btn:disabled{cursor:not-allowed;opacity:.5}.loading{color:#666;font-size:18px;padding:100px 20px;text-align:center}.alert{border-radius:8px;margin-bottom:20px;padding:20px}@media (max-width:1024px){.module-layout{gap:20px;grid-template-columns:250px 1fr}.module-sidebar{width:250px}.module-content{padding:30px}}@media (max-width:768px){.module-view{padding:10px}.module-header{align-items:flex-start;flex-direction:column;gap:15px}.module-layout{gap:20px;grid-template-columns:1fr}.module-sidebar{max-height:300px;position:relative;top:0;width:100%}.module-content{padding:20px}.module-title-section h1{font-size:24px}.markdown-content{font-size:15px}.module-navigation{flex-direction:column}.nav-btn{max-width:100%}.progress-info{flex-wrap:wrap;gap:8px}.reading-controls{flex-wrap:wrap;justify-content:center;padding:6px;width:100%}.reading-icon-btn{font-size:15px;height:32px;width:32px}.reading-controls .divider{display:none}.reading-time{margin-top:4px;text-align:center;width:100%}.analogy-panel{height:calc(100vh - 60px);position:fixed;right:0;top:60px;width:100%;z-index:999}}.analogy-btn{align-items:center;display:flex;font-size:13px!important;gap:4px;padding:4px 12px!important;width:auto!important}.analogy-panel{animation:slideInRight .3s ease-out;background:#fff;border-left:2px solid #e0e0e0;box-shadow:-4px 0 20px #0000001a;height:100vh;overflow-y:auto;position:fixed;right:0;top:0;width:400px;z-index:100}@keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}.analogy-panel-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;padding:16px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.analogy-panel-header h3{font-size:18px;font-weight:600;margin:0}.analogy-panel-header .close-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;line-height:1;padding:0;transition:all .2s;width:32px}.analogy-panel-header .close-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.analogy-panel-content{padding:20px}.concept-selection{margin-bottom:15px}.concept-selection label{color:#333;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.concept-select{background:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;font-size:14px;padding:10px 12px;transition:all .2s;width:100%}.concept-select:hover{border-color:#667eea}.concept-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.analogy-visualization-container{margin-top:20px}.analogy-visualization-container h4{color:#333;font-size:16px;font-weight:600;margin:0}.analogy-details{background:#f8f9fa;border-radius:8px;margin-top:15px;padding:15px}.detail-section{margin-bottom:15px}.detail-section:last-child{margin-bottom:0}.detail-section strong{color:#667eea;display:block;font-size:13px;margin-bottom:6px}.detail-section p,.detail-section ul{color:#555;font-size:13px;line-height:1.6;margin:0}.detail-section ul{padding-left:20px}.detail-section li{margin-bottom:6px}.analogies-list{border-top:1px solid #e0e0e0;margin-top:20px;padding-top:15px}.analogies-list strong{color:#333;display:block;font-size:13px;margin-bottom:10px}.analogy-item-btn{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:8px;color:#333;cursor:pointer;display:flex;font-size:13px;justify-content:space-between;margin-bottom:8px;padding:10px 12px;text-align:left;transition:all .2s;width:100%}.analogy-item-btn:hover{background:#f8f9fa;border-color:#667eea}.analogy-item-btn.active{background:linear-gradient(135deg,#667eea1a,#764ba21a);border-color:#667eea;color:#667eea;font-weight:600}.badge-small{background:#667eea;border-radius:12px;color:#fff;font-size:11px;font-weight:500;padding:2px 8px}.placeholder-message{color:#888;font-size:14px}.placeholder-message p{margin:8px 0}.analogy-panel-content .alert{border-radius:6px;font-size:13px;padding:10px 12px}.alert-error{background:#fee;border:1px solid #fcc;color:#c33}.analogy-panel-content .btn-full{width:100%}.analogy-panel-content .btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 16px;transition:all .2s}.analogy-panel-content .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.analogy-panel-content .btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.analogy-panel-content .btn-primary:disabled{cursor:not-allowed;opacity:.6}.concept-header-wrapper{align-items:center;display:flex;gap:12px;margin-bottom:12px;margin-top:24px}.concept-header-wrapper.h3-wrapper{margin-top:18px}.concept-header-wrapper h2,.concept-header-wrapper h3{flex:1 1;margin:0}.inline-metaphor-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:18px;box-shadow:0 2px 8px #667eea4d;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px;transition:all .2s;white-space:nowrap}.inline-metaphor-btn:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.inline-metaphor-btn:disabled{cursor:not-allowed;opacity:.6}.inline-metaphor-btn.has-metaphor{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 2px 8px #10b9814d}.inline-metaphor-btn.has-metaphor:hover:not(:disabled){box-shadow:0 4px 12px #10b98166}.inline-metaphor-btn.expanded{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 2px 8px #f59e0b4d}.inline-metaphor-btn.small{font-size:11px;padding:4px 10px}.inline-analogy-container{animation:slideDown .3s ease-out;background:linear-gradient(135deg,#667eea08,#764ba208);border:3px solid #667eea33;border-radius:16px;box-shadow:0 8px 24px #667eea1a;clear:both;display:flex;flex-direction:column;gap:24px;margin:40px 0;padding:32px;width:100%}.inline-analogy-container.compact{margin:12px 0 18px;padding:15px}.inline-analogy-header{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:0;order:-1}.inline-analogy-header h4{border-bottom:3px solid #e0e7ff;color:#667eea;font-size:24px;font-weight:700;margin:0;padding-bottom:16px;text-align:center;width:100%}.analogy-controls{background:#fff;border:1px solid #e0e7ff;border-radius:10px;box-shadow:0 2px 12px #00000014;flex-wrap:nowrap;gap:16px;justify-content:center;margin-bottom:16px;order:0;padding:14px 24px}.analogy-controls,.viz-toggle{align-items:center;display:flex}.viz-toggle{background:#f3f6ff;border:1px solid #e0e7ff;border-radius:8px;gap:6px;padding:4px}.viz-btn{background:#fff;border:none;border-radius:6px;box-shadow:none;color:#475569;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .2s;white-space:nowrap}.viz-btn:hover{background:#e0e7ff;color:#667eea}.viz-btn.active{background:#667eea;box-shadow:0 2px 6px #667eea40;color:#fff}.viz-btn.small{font-size:11px;padding:4px 8px}.viz-toggle.small{gap:2px;padding:2px}.inline-analogy-details-wrapper{border-top:3px solid #e0e7ff;display:flex;flex-direction:column;gap:16px;margin-bottom:0;margin-top:24px;order:2;padding-top:20px}.inline-analogy-details-wrapper:before{color:#667eea;content:"📚 Explanation";display:block;font-size:18px;font-weight:700;margin-bottom:16px;margin-top:-8px}.analogy-code-example-section{background:#fff;border:2px solid #667eea;border-radius:12px;box-shadow:0 4px 16px #667eea26;margin:0 0 24px;order:.5;overflow:hidden;padding:0;width:100%}.code-example-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:flex-start;padding:12px 24px}.code-badge{color:#fff;font-size:14px;font-weight:700;letter-spacing:1px}.analogy-code-block{background:#1e1e1e;border:none;border-radius:0;box-shadow:none;color:#f8f8f2;font-family:Courier New,Consolas,monospace;font-size:14px;line-height:1.6;margin:0;overflow-x:auto;padding:24px}.analogy-code-block code{background:#0000;color:inherit;font-size:inherit;padding:0}.code-explanation{background:#f8f9fa;border-top:1px solid #e0e7ff;color:#555;font-size:14px;line-height:1.6;margin:0;padding:16px 24px}.analogy-visualization-section{margin:0;order:1;padding:0;width:100%}.analogy-visualization-section:before{border-bottom:3px solid #e0e7ff;color:#667eea;content:"🎨 Visual Analogy";display:block;font-size:18px;font-weight:700;margin-bottom:16px;padding-bottom:8px}.inline-3d-viz{background:#fff;border:2px solid #667eea;border-radius:10px;box-shadow:0 4px 16px #0000001f;height:65vh;margin:0;max-height:800px;min-height:500px;overflow:auto;position:relative;width:100%}.inline-3d-viz.small{height:45vh;max-height:550px;min-height:350px}.inline-3d-viz::-webkit-scrollbar{height:8px;width:8px}.inline-3d-viz::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.inline-3d-viz::-webkit-scrollbar-thumb{background:#667eea;border-radius:4px}.inline-3d-viz::-webkit-scrollbar-thumb:hover{background:#5568d3}.inline-3d-viz::-webkit-scrollbar-corner{background:#f1f1f1}.inline-detail-section{background:#fff;border:1px solid #e0e7ff;border-radius:10px;box-shadow:0 1px 3px #0000000d;overflow:hidden;transition:all .3s ease;width:100%}.inline-detail-section.collapsible,.inline-detail-section:last-child{margin-bottom:0}.detail-section-header{align-items:center;background:#f8f9fc;border-bottom:1px solid #e0e7ff;cursor:pointer;display:flex;justify-content:space-between;padding:12px 16px;transition:all .2s ease;-webkit-user-select:none;user-select:none}.detail-section-header:hover{background:#e0e7ff}.detail-section-header strong{color:#667eea;font-size:13px;font-weight:600;margin:0}.toggle-icon{color:#667eea;font-size:12px;font-weight:700;transition:transform .3s ease}.detail-section-content{animation:slideDown .3s ease;background:#fff;padding:16px}.detail-section-content p,.detail-section-content ul{color:#555;font-size:14px;line-height:1.6;margin:0}.detail-section-content ul{padding-left:20px}.detail-section-content li{margin-bottom:6px}@media (max-width:768px){.concept-header-wrapper{align-items:flex-start;flex-direction:column;gap:8px}.inline-analogy-details-wrapper{flex-direction:column}.inline-detail-section{width:100%}.inline-3d-viz{height:350px;min-height:300px}.inline-3d-viz.small{height:250px;min-height:200px}.inline-analogy-container{margin:24px 0;padding:20px}.inline-metaphor-btn{text-align:center;width:100%}.analogy-controls{flex-wrap:wrap;gap:10px;padding:12px 16px}.viz-toggle{width:100%}.viz-btn{flex:1 1}.analogy-visualization-section:before{font-size:16px}.inline-analogy-header h4{font-size:20px}}.inline-analogy-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.inline-analogy-header.compact{justify-content:flex-end;margin-bottom:8px}.maximize-btn{background:#667eea;border:none;border-radius:6px;box-shadow:0 2px 6px #667eea40;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s;white-space:nowrap}.maximize-btn:hover{box-shadow:0 3px 10px #667eea66;transform:translateY(-1px)}.maximize-btn.small{font-size:14px;padding:4px 8px}.regenerate-btn{background:#f59e0b;border:none;border-radius:6px;box-shadow:0 2px 6px #f59e0b40;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s;white-space:nowrap}.regenerate-btn:hover:not(:disabled){background:#dc8c0b;box-shadow:0 4px 12px #f59e0b59;transform:translateY(-1px)}.regenerate-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.regenerate-btn.small{font-size:13px;padding:4px 8px}.metaphor-fullscreen-modal{align-items:center;animation:fadeIn .2s ease-out;background:#000000d9;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:9999}.metaphor-fullscreen-content{animation:slideUp .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #00000080;display:flex;flex-direction:column;height:90vh;max-width:1400px;overflow:hidden;width:95%}.metaphor-fullscreen-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;padding:20px 30px}.metaphor-fullscreen-header h2{flex:1 1;font-size:24px;font-weight:600;margin:0}.fullscreen-controls{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.toggle-panel-btn{background:#fff3;border:2px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s ease;white-space:nowrap}.toggle-panel-btn:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-1px)}.toggle-panel-btn.active{background:#fff;border-color:#fff;color:#667eea}.fullscreen-controls .viz-toggle{background:#ffffff26;border:1px solid #fff3}.fullscreen-controls .viz-btn{background:#ffffff1a;border:1px solid #fff3;color:#fff;font-weight:500}.fullscreen-controls .viz-btn:hover{background:#ffffff40;border-color:#ffffff4d;color:#fff}.fullscreen-controls .viz-btn.active{background:#fff;border-color:#fff;color:#667eea}.close-fullscreen-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:28px;height:40px;justify-content:center;line-height:1;padding:0;transition:all .2s;width:40px}.close-fullscreen-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.metaphor-fullscreen-body{grid-gap:24px;background:#f8f9fc;display:grid;flex:1 1;gap:24px;grid-template-columns:320px 1fr;min-height:0;overflow:hidden;padding:24px 30px;transition:grid-template-columns .3s ease}.metaphor-fullscreen-body.panel-hidden{grid-template-columns:1fr;padding:30px}.fullscreen-analogy-details{display:flex;flex-direction:column;gap:12px;min-height:0;overflow-x:hidden;overflow-y:auto;padding-right:8px}.fullscreen-analogy-details::-webkit-scrollbar{width:6px}.fullscreen-analogy-details::-webkit-scrollbar-track{background:#0000000d;border-radius:3px}.fullscreen-analogy-details::-webkit-scrollbar-thumb{border-radius:3px}.fullscreen-analogy-details::-webkit-scrollbar-thumb:hover{background:#5568d3}.fullscreen-3d-viz{background:#fff;border:1px solid #e0e7ff;border-radius:12px;box-shadow:0 4px 16px #0000001a;height:100%;min-height:400px;overflow:auto;width:100%}.fullscreen-3d-viz::-webkit-scrollbar{height:10px;width:10px}.fullscreen-3d-viz::-webkit-scrollbar-track{background:#e0e0e0;border-radius:5px}.fullscreen-3d-viz::-webkit-scrollbar-thumb{background:#667eea;border-radius:5px}.fullscreen-3d-viz::-webkit-scrollbar-thumb:hover{background:#5568d3}.fullscreen-3d-viz::-webkit-scrollbar-corner{background:#e0e0e0}.fullscreen-analogy-details::-webkit-scrollbar{width:8px}.fullscreen-analogy-details::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.fullscreen-analogy-details::-webkit-scrollbar-thumb{background:#667eea;border-radius:4px}.fullscreen-analogy-details::-webkit-scrollbar-thumb:hover{background:#764ba2}.fullscreen-detail-section{background:#fff;border:2px solid #e0e0e0;border-radius:12px;flex-shrink:0;overflow:hidden;transition:all .3s ease}.fullscreen-detail-section.collapsible,.fullscreen-detail-section:last-child{margin-bottom:0}.fullscreen-detail-section .detail-section-header{background:linear-gradient(135deg,#667eea,#764ba2);padding:14px 18px}.fullscreen-detail-section .detail-section-header:hover{background:linear-gradient(135deg,#5568d3,#6a3f8f)}.fullscreen-detail-section .detail-section-header strong{color:#fff;font-size:15px;font-weight:600;margin:0}.fullscreen-detail-section .toggle-icon{color:#fff;font-size:14px}.fullscreen-detail-section .detail-section-content{background:#f8f9fa;padding:16px 18px}.fullscreen-detail-section .detail-section-content p{color:#333;font-size:15px;line-height:1.7;margin:0}.fullscreen-detail-section .detail-section-content ul{color:#333;font-size:15px;line-height:1.7;margin:0;padding-left:24px}.fullscreen-detail-section .detail-section-content li{margin-bottom:8px}@media (max-width:1024px){.metaphor-fullscreen-body{grid-template-columns:1fr!important;grid-template-rows:auto 1fr}.fullscreen-analogy-details{max-height:200px}.toggle-panel-btn{font-size:12px;padding:6px 12px}}@media (max-width:768px){.metaphor-fullscreen-content{border-radius:0;height:100vh;width:100%}.metaphor-fullscreen-header{padding:15px 20px}.metaphor-fullscreen-header h2{font-size:18px}.metaphor-fullscreen-body{padding:15px 20px}.fullscreen-analogy-details{max-height:180px}.fullscreen-controls{gap:8px}.fullscreen-detail-section{padding:15px}}.quiz-start-screen{align-items:center;display:flex;justify-content:center;min-height:60vh}.start-card{max-width:500px;text-align:center}.start-card h1{color:#333;margin-bottom:1rem}.quiz-info{background:#f8f9fa;border-radius:8px;line-height:1.8;margin-bottom:2rem;padding:1rem}.quiz-taking{margin:0 auto;max-width:1000px;padding:3rem 2rem}.quiz-header{background:#fff;border:1px solid #e2e8f0cc;border-radius:20px;box-shadow:0 4px 20px #00000014;margin-bottom:2.5rem;overflow:hidden;padding:2.5rem;position:relative}.quiz-header:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:4px;left:0;position:absolute;right:0;top:0}.quiz-header h2{color:#1e293b;font-size:2rem;font-weight:800;letter-spacing:-.02em;margin-bottom:1.5rem}.quiz-progress{margin-top:1rem}.progress-bar{background:#e2e8f080;border-radius:10px;box-shadow:inset 0 2px 4px #0000000f;height:10px;margin-bottom:.75rem}.progress-fill{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 0 12px #667eea66;position:relative;transition:width .5s cubic-bezier(.4,0,.2,1)}.progress-fill:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#ffffff4d 50%,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.progress-text{color:#64748b;font-size:.9375rem;font-weight:600}.question-card,.question-text{margin-bottom:2rem}.question-text{font-size:1.25rem}.options-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.option-item{align-items:center;background:#fff;border:2px solid #e2e8f0cc;border-radius:16px;cursor:pointer;display:flex;gap:1.125rem;overflow:hidden;padding:1.25rem 1.5rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.option-item:before{background:linear-gradient(135deg,#667eea,#764ba2);bottom:0;content:"";left:0;position:absolute;top:0;transform:scaleY(0);transition:transform .3s cubic-bezier(.4,0,.2,1);width:4px}.option-item:hover:before{transform:scaleY(1)}.option-item:hover{background:#667eea0a;border-color:#667eea80;box-shadow:0 4px 12px #667eea26;transform:translateX(8px)}.option-item.selected{background:linear-gradient(135deg,#667eea1f,#764ba21f);border-color:#667eea;box-shadow:0 4px 16px #667eea40;transform:translateX(8px)}.option-item.selected:before{transform:scaleY(1)}.option-radio{align-items:center;border:2px solid #667eea;border-radius:50%;display:flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.radio-dot{background:#667eea;border-radius:50%;height:12px;width:12px}.option-content{display:flex;flex:1 1;gap:.75rem}.option-id{color:#667eea;font-weight:700;min-width:24px}.option-text{color:#333;line-height:1.5}.question-navigation{display:flex;gap:1rem;justify-content:space-between}.question-grid{grid-gap:.75rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(50px,1fr));padding:2rem}.question-number{align-items:center;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;height:50px;justify-content:center;transition:all .3s;width:50px}.question-number:hover{background:#667eea1a;border-color:#667eea}.question-number.current{background:#667eea;border-color:#667eea;color:#fff}.question-number.answered{background:#10b981;border-color:#10b981;color:#fff}@media (max-width:768px){.quiz-taking{padding:1rem}.question-card{padding:1.5rem}.question-navigation{flex-direction:column}.question-grid{grid-template-columns:repeat(auto-fill,minmax(40px,1fr))}.question-number{height:40px;width:40px}}.quiz-results{margin:0 auto;max-width:1000px;padding:3rem 2rem}.results-header{background:#fff;border:1px solid #e2e8f0cc;border-radius:24px;box-shadow:0 8px 32px #00000014;margin-bottom:4rem;overflow:hidden;padding:3rem 2rem;position:relative;text-align:center}.results-header:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:5px;left:0;position:absolute;right:0;top:0}.results-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:#1e293b;font-size:2.5rem;font-weight:800;letter-spacing:-.02em;margin-bottom:2.5rem}.score-display{gap:3rem;margin-bottom:2rem}.score-circle,.score-display{align-items:center;display:flex;flex-direction:column}.score-circle{animation:scoreReveal .8s cubic-bezier(.4,0,.2,1);background:linear-gradient(135deg,#667eea0d,#764ba20d);border:10px solid;border-radius:50%;box-shadow:0 12px 40px #667eea33;gap:.5rem;height:240px;justify-content:center;position:relative;width:240px}@keyframes scoreReveal{0%{opacity:0;transform:scale(.8) rotate(-10deg)}to{opacity:1;transform:scale(1) rotate(0deg)}}.score-percentage{font-size:3.5rem;font-weight:900;letter-spacing:-.03em}.score-label{color:#64748b;font-size:1.125rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.score-details{display:flex;gap:3rem}.score-item{align-items:center;display:flex;flex-direction:column;gap:.5rem}.score-value{color:#333;font-size:2rem;font-weight:700}.score-text{color:#666;font-size:.875rem}.result-meta{background:#f8f9fa;border-radius:8px;margin-bottom:1.5rem;padding:1rem;text-align:left}.result-meta p{color:#666;margin:.5rem 0}.result-actions{display:flex;gap:1rem;justify-content:center}.answer-key h2{color:#333;margin-bottom:1.5rem;text-align:center}.answer-item{background:#fff;border-left:5px solid;border-radius:16px;box-shadow:0 4px 16px #0000000f;margin-bottom:2rem;padding:1.75rem 2rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.answer-item:hover{box-shadow:0 8px 24px #0000001a;transform:translateX(8px)}.answer-item.correct{background:linear-gradient(135deg,#10b98108,#10b98103);border-left-color:#10b981}.answer-item.incorrect{background:linear-gradient(135deg,#ef444408,#ef444403);border-left-color:#ef4444}.answer-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.question-number{color:#666;font-weight:600}.result-badge{border-radius:6px;font-size:.875rem;font-weight:600;padding:.5rem 1rem}.result-badge.correct{background:#d1fae5;color:#065f46}.result-badge.incorrect{background:#fee2e2;color:#991b1b}.question-text{color:#333;font-size:1.125rem;line-height:1.6;margin-bottom:1rem}.answer-details{background:#f8f9fa;border-radius:8px;margin-bottom:1rem;padding:1rem}.answer-row{display:flex;justify-content:space-between;padding:.5rem 0}.answer-label{color:#666;font-weight:600}.answer-value{border-radius:4px;font-weight:600;padding:.25rem .75rem}.answer-value.correct{background:#d1fae5;color:#065f46}.answer-value.incorrect{background:#fee2e2;color:#991b1b}.explanation-box{background:#dbeafe;border-left:4px solid #3b82f6;border-radius:8px;padding:1.5rem}.explanation-box h4{color:#1e40af;margin-bottom:.5rem}.explanation-box p{color:#1e3a8a;line-height:1.6;margin:0}@media (max-width:768px){.quiz-results{padding:1rem}.score-circle{height:150px;width:150px}.score-percentage{font-size:2rem}.score-label{font-size:1rem}.score-details{gap:1.5rem}.score-value{font-size:1.5rem}.answer-row,.result-actions{flex-direction:column}.answer-row{gap:.5rem}}.code-viz-2d-container{animation:backgroundShift 20s ease infinite;background:linear-gradient(135deg,#0f172a,#1e293b 50%,#334155);background-size:200% 200%;border-radius:20px;box-shadow:0 20px 60px #00000080,0 8px 20px #0000004d;color:#e2e8f0;display:grid;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans,Helvetica,Arial,sans-serif;grid-template-rows:70px 1fr 90px;height:100%;min-height:800px;overflow:hidden;position:relative}.code-viz-2d-container.old-format-display{background:linear-gradient(135deg,#f8fafc,#f1f5f9 50%,#e2e8f0);color:#1e293b;display:flex;grid-template-rows:none;overflow-y:auto;padding:2rem}.old-format-content{margin:0 auto;max-width:1200px;width:100%}.old-format-header{border-bottom:2px solid #e2e8f0;margin-bottom:2.5rem;padding-bottom:2rem}.old-format-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#06b6d4);-webkit-background-clip:text;background-clip:text;color:#1e293b;font-size:2em;font-weight:800;margin-bottom:1rem}.old-format-description{color:#475569;font-size:1.1em;line-height:1.8;margin-bottom:1.5rem}.old-format-example{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-left:4px solid #3b82f6;border-radius:12px;margin-top:1.5rem;padding:1.25rem 1.5rem}.old-format-example strong{color:#1e40af;display:block;font-size:1em;margin-bottom:.75rem}.old-format-example p{color:#1e293b;line-height:1.7;margin:0}.old-format-section{margin-bottom:2.5rem}.old-format-section h3{border-bottom:2px solid #e2e8f0;color:#1e293b;font-size:1.5em;font-weight:700;margin-bottom:1.5rem;padding-bottom:.75rem}.components-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin-top:1.25rem}.component-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 12px #00000014;padding:1.5rem;transition:all .3s ease}.component-card:hover{border-color:#3b82f6;box-shadow:0 8px 20px #3b82f633;transform:translateY(-4px)}.component-icon{align-items:center;background:linear-gradient(135deg,#3b82f6,#06b6d4);border-radius:12px;color:#fff;display:flex;font-size:1.5em;font-weight:700;height:48px;justify-content:center;margin-bottom:1rem;width:48px}.component-card h4{color:#1e293b;font-size:1.1em;font-weight:700;margin-bottom:.5rem}.component-represents{color:#3b82f6;font-size:.9em;font-weight:600;margin-bottom:.75rem}.component-description{color:#64748b;font-size:.9em;line-height:1.6;margin:0}.learning-points-list{grid-gap:1rem;display:grid;gap:1rem;list-style:none;margin:0;padding:0}.learning-points-list li{background:#fff;border-left:4px solid #10b981;border-radius:12px;box-shadow:0 2px 8px #0000000f;color:#475569;line-height:1.7;padding:1.25rem 1.5rem 1.25rem 2.5rem;position:relative}.learning-points-list li:before{color:#10b981;content:"✓";font-size:1.2em;font-weight:700;left:1rem;position:absolute}.interactive-elements-list{grid-gap:1rem;display:grid;gap:1rem}.interactive-element{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:1.25rem 1.5rem}.interactive-element strong{color:#3b82f6;display:block;font-size:1em;margin-bottom:.5rem}.interactive-element p{color:#64748b;line-height:1.7;margin:0}.upgrade-notice{align-items:flex-start;background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;border-radius:16px;display:flex;gap:1.25rem;margin-top:2.5rem;padding:1.5rem}.upgrade-icon{flex-shrink:0;font-size:2.5em}.upgrade-content h4{color:#92400e;font-size:1.2em;font-weight:700;margin-bottom:.5rem}.upgrade-content p{color:#78350f;line-height:1.7;margin:0}.code-viz-empty{color:#c9d1d9;padding:50px;text-align:center}@keyframes backgroundShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.code-viz-2d-container:before{animation:particleMove 25s ease-in-out infinite;background-image:radial-gradient(circle at 20% 30%,#6366f11a 0,#0000 50%),radial-gradient(circle at 80% 70%,#a78bfa14 0,#0000 50%),radial-gradient(circle at 50% 50%,#58a6ff0f 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:0}@keyframes particleMove{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-30px) scale(1.05)}66%{transform:translate(-30px,30px) scale(.95)}}.code-viz-header{align-items:center;animation:slideDown .6s ease-out;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff0d;border-bottom:1px solid #ffffff1a;box-shadow:0 4px 30px #0003;display:flex;justify-content:space-between;padding:18px 35px;position:relative;z-index:2}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.code-viz-header:before{background:linear-gradient(135deg,#6366f11a,#a78bfa1a);content:"";height:100%;left:0;pointer-events:none;position:absolute;right:0;top:0}.code-viz-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff,#c7d2fe);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:26px;font-weight:800;letter-spacing:-.5px;margin:0;position:relative;text-shadow:0 2px 10px #6366f14d;z-index:1}.step-indicator{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:20px;box-shadow:0 4px 15px #0003;color:#fffffff2;font-size:15px;font-weight:700;padding:8px 18px;position:relative;z-index:1}.code-viz-content{display:flex;flex-direction:column;gap:0;height:100%;overflow:hidden;position:relative;z-index:1}.visualization-area-full{flex:1 1!important;max-width:100%!important;width:100%!important}.code-panel{animation:slideInLeft .6s ease-out;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff08;border-bottom:2px solid #ffffff26;display:none;flex-shrink:0;max-height:40vh;overflow-y:auto;padding:25px;position:relative}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-100%)}to{opacity:1;transform:translateX(0)}}.code-panel:before{background:linear-gradient(90deg,#6366f1,#a78bfa);bottom:0;content:"";height:2px;left:0;opacity:.7;position:absolute;width:100%}.code-panel::-webkit-scrollbar{width:8px}.code-panel::-webkit-scrollbar-track{background:#ffffff0d;border-radius:10px}.code-panel::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#6366f1,#a78bfa);border:2px solid #ffffff0d;border-radius:10px}.code-panel::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#a78bfa,#6366f1)}.code-panel h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#6366f1,#a78bfa);-webkit-background-clip:text;background-clip:text;color:#a78bfa;font-size:17px;font-weight:800;letter-spacing:2px;margin:0 0 20px;text-transform:uppercase}.code-display{font-family:Consolas,Monaco,Courier New,monospace}.code-line{align-items:center;background:#ffffff08;border-left:3px solid #0000;border-radius:10px;display:flex;font-size:14px;margin:6px 0;overflow:hidden;padding:10px 14px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.code-line:before{background:linear-gradient(90deg,#6366f133,#0000);content:"";height:100%;left:0;position:absolute;top:0;transition:width .3s ease;width:0}.code-line:hover:before{width:100%}.code-line:hover{background:#ffffff0f;transform:translateX(5px)}.code-line.active{animation:activePulse 2s ease-in-out infinite;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#6366f133;border-left-color:#6366f1;box-shadow:0 0 0 2px #6366f14d,0 4px 15px #6366f133;transform:translateX(8px) scale(1.02)}@keyframes activePulse{0%,to{box-shadow:0 0 0 2px #6366f14d,0 4px 15px #6366f133}50%{box-shadow:0 0 0 4px #6366f166,0 6px 20px #6366f14d}}.code-line .line-number{color:#64748b;display:inline-block;font-weight:600;margin-right:15px;min-width:35px;text-align:right;-webkit-user-select:none;user-select:none}.code-line.active .line-number{color:#6366f1;font-weight:700}.code-line .line-content{color:#cbd5e1;flex:1 1;white-space:pre}.code-line.active .line-content{color:#fff;font-weight:600}.visualization-area{animation:fadeIn .8s ease-out;background:#0003;flex:1 1;min-height:0;overflow:auto;padding:45px;position:relative}.visualization-area::-webkit-scrollbar{height:10px;width:10px}.visualization-area::-webkit-scrollbar-track{background:#ffffff0d;border-radius:10px}.visualization-area::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#6366f1,#a78bfa);border-radius:10px}.step-info{animation:slideInDown .6s ease-out;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);background:#ffffff14;border:1px solid #ffffff26;border-radius:15px;box-shadow:0 8px 30px #0006;left:25px;padding:20px 25px;position:absolute;right:25px;top:25px;z-index:10}@keyframes slideInDown{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}.step-info:before{background:linear-gradient(135deg,#6366f11a,#a78bfa1a);border-radius:15px;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.step-info h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#a78bfa,#c7d2fe);-webkit-background-clip:text;background-clip:text;color:#c7d2fe;font-size:20px;font-weight:800;margin:0 0 8px}.step-info h2,.step-info p{position:relative;z-index:1}.step-info p{color:#cbd5e1;font-size:15px;line-height:1.7;margin:0}.canvas-2d{margin-top:120px;min-height:650px;position:relative;width:100%}.visual-element{align-items:center;animation:elementAppear .6s cubic-bezier(.34,1.56,.64,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid #ffffff4d;border-radius:12px;box-shadow:0 8px 25px #00000080,0 4px 10px #0000004d;color:#fff;cursor:pointer;display:flex;font-size:18px;font-weight:700;justify-content:center;position:absolute;transition:all .5s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none}@keyframes elementAppear{0%{opacity:0;transform:scale(.5) rotate(-10deg)}to{opacity:1;transform:scale(1) rotate(0deg)}}.visual-element:before{background:linear-gradient(135deg,#ffffff4d,#fff0);border-radius:12px;bottom:-2px;content:"";left:-2px;opacity:0;pointer-events:none;position:absolute;right:-2px;top:-2px;transition:opacity .3s ease}.visual-element:hover{border-color:#ffffff80;box-shadow:0 12px 35px #0009,0 8px 15px #0006;transform:scale(1.08) translateY(-5px)}.visual-element:hover:before{opacity:1}.visual-element.highlight{animation:highlightPulse 2s ease-in-out infinite;border-color:#6366f1;box-shadow:0 0 0 4px #6366f180,0 0 0 8px #6366f14d,0 8px 30px #6366f180;transform:scale(1.12) translateY(-8px)}@keyframes highlightPulse{0%,to{box-shadow:0 0 0 4px #6366f180,0 0 0 8px #6366f14d,0 8px 30px #6366f180}50%{box-shadow:0 0 0 8px #6366f199,0 0 0 16px #6366f133,0 12px 40px #6366f199}}.visual-element .label{line-height:1.4;padding:12px;position:relative;text-align:center;text-shadow:0 2px 8px #0009;white-space:pre-line;z-index:1}.connection{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%}.arrow-head,.arrow-path{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));transition:all .5s cubic-bezier(.4,0,.2,1)}.arrow-label{animation:labelFloat 3s ease-in-out infinite;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fbbf24f2;border:2px solid #ffffff4d;border-radius:10px;box-shadow:0 4px 15px #fbbf2466,0 2px 8px #0000004d;color:#1e293b;font-size:14px;font-weight:700;padding:8px 16px;pointer-events:none;position:absolute;white-space:nowrap}@keyframes labelFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.controls{align-items:center;animation:slideUp .6s ease-out;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff0d;border-top:1px solid #ffffff1a;display:flex;gap:18px;justify-content:center;padding:18px 35px;position:relative;z-index:2}.controls:before{background:linear-gradient(135deg,#6366f114,#a78bfa14);content:"";height:100%;left:0;pointer-events:none;position:absolute;right:0;top:0}.control-btn{background:linear-gradient(135deg,#10b981,#059669);border:2px solid #fff3;border-radius:12px;box-shadow:0 6px 20px #10b98166;color:#fff;cursor:pointer;font-size:15px;font-weight:700;min-width:130px;overflow:hidden;padding:14px 28px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:1}.control-btn:before{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease;width:0}.control-btn:active:before{height:300px;width:300px}.control-btn:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);border-color:#fff6;box-shadow:0 8px 30px #10b98180;transform:translateY(-3px)}.control-btn:active:not(:disabled){transform:translateY(-1px)}.control-btn:disabled{cursor:not-allowed;opacity:.5;transform:none!important}.control-btn.secondary{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;box-shadow:0 4px 15px #0003;min-width:110px}.control-btn.secondary:hover:not(:disabled){background:#ffffff26;box-shadow:0 6px 20px #6366f166}.control-btn.primary{background:linear-gradient(135deg,#6366f1,#4f46e5);box-shadow:0 6px 20px #6366f180}.control-btn.primary:hover:not(:disabled){background:linear-gradient(135deg,#4f46e5,#4338ca);box-shadow:0 8px 30px #6366f199}.step-buttons{border-left:1px solid #ffffff26;display:flex;gap:10px;margin-left:25px;padding-left:25px}.step-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:2px solid #ffffff26;border-radius:50%;color:#cbd5e1;cursor:pointer;display:flex;font-size:15px;font-weight:700;height:40px;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);width:40px}.step-btn:hover{background:#ffffff26;border-color:#6366f1;box-shadow:0 4px 15px #6366f14d;color:#6366f1;transform:scale(1.1)}.step-btn.active{background:linear-gradient(135deg,#6366f1,#a78bfa);border-color:#ffffff4d;box-shadow:0 0 0 4px #6366f14d,0 4px 15px #6366f180;color:#fff;transform:scale(1.15)}.code-viz-empty{align-items:center;animation:fadeIn .6s ease-out;color:#94a3b8;display:flex;font-size:17px;font-weight:600;height:100%;justify-content:center}@media (max-width:1024px){.code-viz-content{grid-template-columns:1fr}.code-panel{border-bottom:1px solid #ffffff1a;border-right:none;max-height:320px}.step-buttons{display:none}.controls{flex-wrap:wrap;padding:15px 20px}.step-info{left:0;margin-bottom:20px;position:relative;right:0;top:0}.canvas-2d{margin-top:20px}}@media (max-width:768px){.code-viz-header{flex-direction:column;gap:10px;padding:15px 20px}.code-viz-header h1{font-size:20px}.control-btn{font-size:14px;min-width:100px;padding:12px 20px}}.analogy-explorer-v2{background-color:#f3f4f6;color:#1f2937;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;min-height:100vh;padding:2rem 1rem}.analogy-container{background-color:#fff;border-radius:12px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;margin:0 auto;max-width:1200px;overflow:hidden}.ae-header{background-color:#4f46e5;border-bottom:1px solid #e5e7eb;color:#fff;padding:2.5rem 2.5rem 2rem;text-align:center}.ae-header h1{font-size:2.25rem;font-weight:700;margin:0 0 .5rem}.ae-header p{color:#e0e7ff;font-size:1.125rem;margin:0}.ae-content{padding:2.5rem}.ae-analogy-display-vertical{display:flex;flex-direction:column;gap:24px}.ae-info-bar{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 12px #667eea4d;flex-wrap:wrap;gap:20px;justify-content:space-between;padding:20px 30px}.ae-info-bar,.ae-info-item{align-items:center;display:flex}.ae-info-item{color:#fff;gap:8px}.ae-info-label{font-size:14px;font-weight:700;opacity:.9}.ae-info-value{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:20px;font-size:16px;font-weight:600;padding:6px 16px}.ae-controls-inline{display:flex;gap:12px;margin-left:auto}.ae-frame{background:#fff;border:2px solid #e0e7ff;border-radius:16px;box-shadow:0 4px 16px #0000001a;overflow:hidden}.ae-frame-header{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:3px solid #667eea;display:flex;justify-content:space-between;padding:20px 30px}.ae-frame-header h2{color:#667eea;font-size:22px;font-weight:700;margin:0}.ae-frame-controls{align-items:center;display:flex;gap:10px}.ae-icon-btn{align-items:center;background:#fff;border:2px solid #667eea;border-radius:8px;color:#667eea;cursor:pointer;display:flex;font-size:20px;height:40px;justify-content:center;transition:all .2s;width:40px}.ae-icon-btn:hover{background:#667eea;color:#fff;transform:scale(1.1)}.ae-icon-btn:active{transform:scale(.95)}.ae-controls-divider{background:#e0e7ff;height:30px;margin:0 8px;width:2px}.ae-analogy-frame{min-height:600px;transition:all .3s ease}.ae-analogy-frame.maximized{animation:zoomIn .3s ease-out;border-radius:0;bottom:0;height:100vh;left:0;margin:0;min-height:100vh;position:fixed;right:0;top:0;width:100vw;z-index:9999}@keyframes zoomIn{0%{opacity:.8;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.ae-analogy-frame.maximized .ae-visualization-container{height:calc(100vh - 80px)}.ae-analogy-frame .ae-visualization-container{background:#0000;padding:0}.ae-code-frame{border-color:#667eea}.ae-code-content{padding:0}.ae-code-block{background:#1e1e1e;color:#f8f8f2;font-family:Courier New,Consolas,monospace;font-size:14px;line-height:1.6;margin:0;padding:30px}.ae-code-block code{background:#0000;color:inherit}.ae-code-explanation{background:#f8f9fa;border-top:1px solid #e0e7ff;padding:24px 30px}.ae-code-explanation p{color:#555;font-size:15px;line-height:1.7;margin:0}.ae-explanation-frame{border-color:#10b981}.ae-explanation-frame .ae-frame-header{border-bottom-color:#10b981}.ae-explanation-frame .ae-frame-header h2{color:#10b981}.ae-explanation-content{padding:30px}.ae-description-section,.ae-example-section,.ae-metaphor-section{margin-bottom:24px}.ae-description-section:last-child,.ae-example-section:last-child,.ae-metaphor-section:last-child{margin-bottom:0}.ae-explanation-content h3{border-bottom:2px solid #e0e7ff;color:#1f2937;font-size:18px;font-weight:700;margin:0 0 12px;padding-bottom:8px}.ae-explanation-content p{color:#4b5563;font-size:15px;line-height:1.8;margin:0}.ae-step{margin-bottom:2.5rem}.ae-step-header{align-items:center;display:flex;gap:1rem;margin-bottom:1.5rem}.ae-step-number{align-items:center;background-color:#4f46e5;border-radius:50%;color:#fff;display:flex;font-size:1.125rem;font-weight:600;height:40px;justify-content:center;width:40px}.ae-step-title{color:#374151;font-size:1.5rem;font-weight:600}.ae-list{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.ae-list-item{background-color:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;padding:1rem 1.25rem;text-align:center;transition:all .2s ease-in-out}.ae-list-item:hover{background-color:#f0f2ff;border-color:#4f46e5;box-shadow:0 4px 10px #0000000d;transform:translateY(-2px)}.ae-list-item.selected{background-color:#4f46e5;border-color:#4f46e5;color:#fff;font-weight:600}.ae-list-item h4{font-size:1rem;margin:0}.ae-concept-input{border:1px solid #d1d5db;border-radius:8px;font-size:1rem;padding:.75rem 1rem;width:100%}.ae-concept-input:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e533;outline:none}.ae-display-grid{grid-gap:2.5rem;align-items:flex-start;display:grid;gap:2.5rem;grid-template-columns:2fr 1fr}.ae-display-main{min-height:500px}.ae-display-sidebar{position:-webkit-sticky;position:sticky;top:2.5rem}.ae-visualization-container{align-items:center;background-color:#f3f4f6;border:1px solid #e5e7eb;border-radius:8px;display:flex;justify-content:center;margin-bottom:2rem;min-height:500px;overflow:hidden}.ae-analogy-details h2{color:#374151;font-size:1.5rem;font-weight:600;margin-bottom:1rem}.ae-analogy-details .metaphor{background-color:#eef2ff;border-left:4px solid #4f46e5;border-radius:0 8px 8px 0;margin-bottom:2rem;padding:1.5rem}.ae-analogy-details .metaphor p{font-size:1.125rem;line-height:1.6;margin:0}.ae-selection-summary{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-around;margin-bottom:2rem;padding:1.5rem}.ae-selection-summary p{color:#4b5563;font-size:1rem;margin:0}.ae-selection-summary p strong{color:#1f2937;font-weight:600}.ae-section{margin-bottom:2rem}.ae-section h3{border-bottom:1px solid #e5e7eb;font-size:1.25rem;font-weight:600;margin-bottom:1rem;padding-bottom:.5rem}.ae-code-block{background-color:#1f2937;border-radius:8px;color:#f9fafb;font-family:SF Mono,Fira Code,Fira Mono,Roboto Mono,monospace;overflow-x:auto;padding:1.5rem}.ae-steps-list .step{border-bottom:1px solid #e5e7eb;display:flex;gap:1.5rem;padding:1rem 0}.ae-steps-list .step:last-child{border-bottom:none}.ae-steps-list .step-number{color:#4f46e5;font-size:1.25rem;font-weight:600}.ae-steps-list .step-description{flex-grow:1}.ae-steps-list .step-code{background:#e5e7eb;border-radius:4px;font-family:SF Mono,Fira Code,Fira Mono,Roboto Mono,monospace;font-size:.9rem;padding:.25rem .5rem}.ae-controls{border-top:1px solid #e5e7eb;display:flex;gap:1rem;justify-content:center;margin-top:2rem;padding-top:2rem}.ae-button{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:background-color .2s}.ae-button.primary{background-color:#4f46e5;color:#fff}.ae-button.primary:hover{background-color:#4338ca}.ae-button.primary:disabled{background-color:#a5b4fc;cursor:not-allowed}.ae-button.secondary{background-color:#e5e7eb;color:#374151}.ae-button.secondary:hover{background-color:#d1d5db}.ae-placeholder{background-color:#f9fafb;border:2px dashed #e5e7eb;border-radius:8px;padding:4rem 2rem;text-align:center}.ae-placeholder h3{color:#4b5563;font-weight:500}.ae-error{background-color:#fee2e2;border-radius:8px;color:#ef4444;margin:1rem 0;padding:1rem;text-align:center}@media (max-width:768px){.ae-content{padding:1.5rem}.ae-header{padding:2rem 1.5rem}.ae-list{grid-template-columns:1fr}}.pathways-page{background:#fff;margin:0 auto;max-width:1280px;padding:3rem 2rem}.pathways-header{margin-bottom:4rem;text-align:center}.pathways-header-content h1{color:#0f172a;font-size:2.75rem;font-weight:700;letter-spacing:-.02em;line-height:1.25;margin-bottom:1rem}.pathways-subtitle{color:#64748b;font-size:1.125rem;font-weight:400;letter-spacing:-.01em;line-height:1.7;margin:0 auto;max-width:700px}.pathways-filters{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 1px 3px #0000000d,0 1px 2px #00000008;display:flex;justify-content:space-between;margin-bottom:3rem;padding:1.5rem}.category-filter{align-items:center;display:flex;gap:1rem}.category-filter label{color:#475569;font-size:.95rem;font-weight:600}.category-select{background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#1e293b;cursor:pointer;font-size:1rem;min-width:200px;padding:.75rem 1.25rem;transition:all .3s ease}.category-select:hover{border-color:#3b82f6}.category-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.pathways-count{color:#475569;font-size:1rem;font-weight:600}.pathways-loading{padding:4rem 2rem;text-align:center}.loading-spinner{border:4px solid #f3f4f6;border-top-color:#3b82f6;margin:0 auto 1rem}.pathways-empty{background:#fff;border-radius:20px;box-shadow:0 4px 20px #00000014;padding:4rem 2rem;text-align:center}.empty-icon{margin-bottom:1rem}.pathways-empty h3{color:#1e293b;font-size:1.75rem;font-weight:700;margin-bottom:.75rem}.pathways-empty p{color:#64748b;font-size:1.125rem;margin-bottom:2rem}.pathways-grid-page{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.pathway-card-page{background:#fff;border:1px solid #e2e8f0;border-radius:16px;border-top:3px solid #3b82f6;border-top:3px solid var(--pathway-color,#3b82f6);box-shadow:0 1px 3px #0000000d,0 1px 2px #00000008;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.pathway-card-page:hover{border-color:#cbd5e1;box-shadow:0 10px 25px #3b82f61f,0 4px 10px #0000000d;transform:translateY(-4px)}.pathway-header-page{align-items:flex-start;display:flex;justify-content:space-between;padding:2rem 2rem 1rem}.pathway-icon-page{font-size:3.5rem;line-height:1}.pathway-badges{align-items:flex-end;display:flex;flex-direction:column;gap:.5rem}.pathway-featured-badge-page{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50px;color:#fff;font-size:.75rem;font-weight:700;letter-spacing:.5px;padding:.35rem .85rem;text-transform:uppercase}.pathway-level-badge-page{border-radius:50px;font-size:.75rem;font-weight:600;padding:.4rem .9rem;text-transform:capitalize}.pathway-level-badge-page.level-basic{background:#dcfce7;color:#166534}.pathway-level-badge-page.level-intermediate{background:#dbeafe;color:#1e40af}.pathway-level-badge-page.level-advanced{background:#fce7f3;color:#9f1239}.pathway-content-page{flex:1 1;padding:0 2rem}.pathway-title-page{color:#0f172a;font-size:1.5rem;font-weight:600;letter-spacing:-.01em;line-height:1.3;margin-bottom:.5rem}.pathway-category-page{color:#667eea;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin-bottom:1rem;text-transform:uppercase}.pathway-description-page{color:#64748b;font-size:.9375rem;font-weight:400;line-height:1.7;margin-bottom:1.5rem}.pathway-meta-page{grid-gap:1rem;background:#f8fafc;border-radius:12px;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));margin-bottom:1.5rem;padding:1.5rem}.pathway-meta-item-page{align-items:flex-start;display:flex;gap:.75rem}.pathway-meta-item-page svg{stroke:#667eea;flex-shrink:0;margin-top:.25rem}.meta-label{color:#94a3b8;font-size:.75rem;letter-spacing:.5px;margin-bottom:.25rem;text-transform:uppercase}.meta-value{color:#1e293b;font-size:.95rem;font-weight:600}.pathway-objectives,.pathway-outcomes{margin-bottom:1.5rem}.pathway-objectives h4,.pathway-outcomes h4{color:#475569;font-size:.875rem;font-weight:600;letter-spacing:.5px;margin-bottom:.75rem;text-transform:uppercase}.pathway-objectives ul{list-style:none;margin:0;padding:0}.pathway-objectives li{color:#64748b;font-size:.9rem;line-height:1.5;padding:.5rem 0 .5rem 1.5rem;position:relative}.pathway-objectives li:before{color:#667eea;content:"✓";font-weight:700;left:0;position:absolute}.pathway-objectives .more-objectives{color:#667eea;font-weight:600}.outcomes-tags{display:flex;flex-wrap:wrap;gap:.5rem}.outcome-tag{background:#f1f5f9;border-radius:50px;color:#475569;font-size:.8rem;font-weight:500;padding:.4rem .85rem}.pathway-footer-page{border-top:1px solid #e2e8f0;margin-top:auto;padding:1.5rem 2rem 2rem}.pathway-footer-page .btn{justify-content:center;width:100%}.alert{border-radius:12px;margin-bottom:2rem;padding:1rem 1.5rem}.alert-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}@media (max-width:1024px){.pathways-grid-page{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}}@media (max-width:768px){.pathways-page{padding:1rem}.pathways-header-content h1{font-size:2rem}.pathways-subtitle{font-size:1.125rem}.pathways-filters{gap:1rem}.category-filter,.pathways-filters{align-items:stretch;flex-direction:column}.category-select{width:100%}.pathway-meta-page,.pathways-grid-page{grid-template-columns:1fr}}.pathway-details-page{background:linear-gradient(180deg,#f8f9fc,#fff 50%);margin:0;max-width:none;min-height:100vh;padding:0}.back-button{background:#fffffff2;border-radius:12px;box-shadow:0 2px 8px #00000014;color:#475569;font-size:.95rem;font-weight:600;gap:.6rem;margin:2rem 2rem 0;padding:.9rem 1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.back-button:hover{background:#fff;box-shadow:0 4px 16px #667eea33;color:#667eea;transform:translateX(-4px)}.pathway-error,.pathway-loading{padding:6rem 2rem;text-align:center}.loading-spinner{animation:spin .8s linear infinite;border:5px solid #f3f4f6}.error-icon{font-size:5rem;margin-bottom:1.5rem;opacity:.7}.pathway-error h3{color:#1e293b;font-size:2rem;font-weight:700;margin-bottom:2rem}.pathway-hero{background:linear-gradient(135deg,#667eea,#764ba2f2);background:linear-gradient(135deg,var(--pathway-color,#667eea) 0,#764ba2f2 100%);border-radius:0;box-shadow:0 20px 60px #00000026;color:#fff;margin:2rem 0 0;overflow:hidden;padding:4rem 2rem 5rem;position:relative}.pathway-hero:before{background:radial-gradient(circle,#ffffff1f 0,#0000 70%);height:500px;right:-10%;top:-10%;width:500px}.pathway-hero:after,.pathway-hero:before{border-radius:50%;content:"";position:absolute}.pathway-hero:after{background:radial-gradient(circle,#ffffff14 0,#0000 70%);bottom:-15%;height:400px;left:-10%;width:400px}.pathway-hero-content{align-items:flex-start;display:flex;gap:3rem;margin:0 auto;max-width:1400px;position:relative;z-index:2}.pathway-hero-icon{filter:drop-shadow(0 8px 16px rgba(0,0,0,.2));flex-shrink:0;font-size:7rem;line-height:1}.pathway-hero-info{flex:1 1}.pathway-hero-badges{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.pathway-category-badge,.pathway-featured-badge,.pathway-level-badge{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fff3;border:2px solid #ffffff4d;border-radius:50px;box-shadow:0 4px 12px #0000001a;font-size:.85rem;font-weight:700;letter-spacing:1px;padding:.6rem 1.4rem;text-transform:uppercase;transition:all .3s ease}.pathway-featured-badge{background:#ffd7004d;border-color:#ffd70080}.pathway-hero-info h1{font-size:3.5rem;font-weight:800;letter-spacing:-1px;line-height:1.15;margin:0 0 1.5rem;text-shadow:0 4px 12px #0003}.pathway-hero-description{font-size:1.25rem;font-weight:400;line-height:1.7;margin:0 0 2.5rem;max-width:800px;opacity:.95}.pathway-hero-stats{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff26;border:2px solid #ffffff40;border-radius:20px;box-shadow:0 8px 24px #00000026;display:flex;gap:3rem;max-width:-webkit-fit-content;max-width:fit-content;padding:2rem 3rem}.hero-stat{text-align:center}.hero-stat-value{font-size:2.5rem;font-weight:800;line-height:1;margin-bottom:.5rem;text-shadow:0 2px 8px #0003}.hero-stat-label{font-size:.9rem;font-weight:600;letter-spacing:.8px;opacity:.9;text-transform:uppercase}.hero-stat-divider{background:#ffffff4d;border-radius:1px;height:50px;width:2px}.pathway-content{margin:-3rem auto 0;max-width:1400px;padding:0 2rem 4rem;position:relative;z-index:3}.pathway-section{background:#fff;border:1px solid #0000000d;border-radius:20px;box-shadow:0 4px 20px #0000000f;margin-bottom:2.5rem;padding:3rem;transition:all .3s ease}.pathway-section:hover{box-shadow:0 8px 30px #0000001a;transform:translateY(-2px)}.pathway-section h2{color:#1e293b;font-size:2rem;font-weight:700;letter-spacing:-.5px;margin:0 0 1rem}.section-description{color:#64748b;font-size:1.1rem;line-height:1.6;margin:0 0 2rem}.objectives-list,.prerequisites-list{grid-gap:1rem;display:grid;gap:1rem;list-style:none;margin:0;padding:0}.objectives-list li,.prerequisites-list li{align-items:flex-start;background:linear-gradient(135deg,#f8f9fc,#fff);border-left:4px solid #667eea;border-radius:12px;color:#334155;display:flex;font-size:1.05rem;gap:1rem;line-height:1.6;padding:1.25rem 1.5rem;transition:all .3s ease}.objectives-list li:hover,.prerequisites-list li:hover{background:linear-gradient(135deg,#eff2ff,#fff);box-shadow:0 4px 12px #667eea26;transform:translateX(8px)}.objectives-list li svg,.prerequisites-list li svg{color:#667eea;flex-shrink:0;margin-top:.2rem}.career-outcomes-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.career-outcome-card{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;box-shadow:0 4px 16px #667eea40;color:#fff;cursor:default;display:flex;font-size:1.05rem;font-weight:600;gap:1.5rem;padding:2rem;transition:all .3s ease}.career-outcome-card:hover{box-shadow:0 8px 24px #667eea59;transform:translateY(-4px)}.career-outcome-card svg{flex-shrink:0;height:32px;opacity:.9;width:32px}.topics-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-top:2rem}.topic-card-pathway{background:#fff;border:2px solid #e2e8f0;border-radius:16px;cursor:pointer;overflow:hidden;padding:2rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.topic-card-pathway:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.topic-card-pathway:hover:before{transform:scaleX(1)}.topic-card-pathway:hover{border-color:#667eea;box-shadow:0 12px 40px #667eea33;transform:translateY(-6px)}.topic-card-header-pathway{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.topic-card-header-pathway h3{color:#1e293b;flex:1 1;font-size:1.35rem;font-weight:700;line-height:1.3;margin:0}.topic-level-badge{border-radius:50px;font-size:.75rem;font-weight:700;letter-spacing:.5px;padding:.4rem 1rem;text-transform:uppercase;white-space:nowrap}.topic-level-badge.level-basic{background:#d1fae5;color:#065f46}.topic-level-badge.level-intermediate{background:#dbeafe;color:#1e40af}.topic-level-badge.level-advanced{background:#fce7f3;color:#9f1239}.topic-description-pathway{color:#64748b;font-size:1rem;line-height:1.6;margin:0 0 1.5rem}.topic-card-footer-pathway{align-items:center;display:flex;justify-content:space-between}.view-topic{color:#667eea;font-size:.95rem;font-weight:600;transition:all .3s ease}.topic-card-pathway:hover .view-topic{transform:translateX(4px)}.topics-empty{color:#94a3b8;font-size:1.1rem;padding:4rem 2rem;text-align:center}.pathway-cta-section{background:linear-gradient(135deg,#667eea,#764ba2);margin-top:3rem;overflow:hidden;padding:5rem 2rem;position:relative;text-align:center}.pathway-cta-section:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg width='100' height='100' xmlns='http://www.w3.org/2000/svg'%3E%3Cdefs%3E%3Cpattern id='a' width='40' height='40' patternUnits='userSpaceOnUse'%3E%3Cpath d='M40 0H0v40' fill='none' stroke='rgba(255,255,255,0.05)'/%3E%3C/pattern%3E%3C/defs%3E%3Cpath fill='url(%23a)' d='M0 0h100v100H0z'/%3E%3C/svg%3E");bottom:0;content:"";left:0;opacity:.5;position:absolute;right:0;top:0}.pathway-cta-content{margin:0 auto;max-width:700px;position:relative;z-index:2}.pathway-cta-content h2{color:#fff;font-size:2.5rem;font-weight:800;letter-spacing:-.5px;margin:0 0 1rem}.pathway-cta-content p{color:#fffffff2;font-size:1.25rem;line-height:1.6;margin:0 0 2.5rem}.btn-large{align-items:center;background:#fff;border:none;border-radius:50px;box-shadow:0 8px 24px #00000040;color:#667eea;cursor:pointer;display:inline-flex;font-size:1.1rem;font-weight:700;gap:.75rem;padding:1.25rem 3rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-large:hover{background:#f8f9fc;box-shadow:0 12px 32px #00000059;transform:translateY(-4px)}.btn-icon-right{transition:transform .3s ease}.btn-large:hover .btn-icon-right{transform:translateX(4px)}@media (max-width:1024px){.pathway-hero-content{gap:2rem}.pathway-hero-icon{font-size:5rem}.pathway-hero-info h1{font-size:2.75rem}.pathway-hero-stats{gap:2rem;padding:1.5rem 2rem}.topics-grid{gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (max-width:768px){.pathway-details-page{background:#fff}.back-button{margin:1.5rem 1.5rem 0}.pathway-hero{margin:1.5rem 0 0;padding:3rem 1.5rem 4rem}.pathway-hero-content{flex-direction:column;gap:1.5rem}.pathway-hero-icon{font-size:4rem}.pathway-hero-info h1{font-size:2.25rem}.pathway-hero-description{font-size:1.1rem}.pathway-hero-stats{flex-direction:column;gap:1.5rem;padding:1.5rem;width:100%}.hero-stat-divider{height:2px;width:80%}.pathway-content{margin-top:-2rem;padding:0 1.5rem 3rem}.pathway-section{margin-bottom:1.5rem;padding:2rem 1.5rem}.pathway-section h2{font-size:1.5rem}.topics-grid{gap:1.25rem}.career-outcomes-grid,.topics-grid{grid-template-columns:1fr}.pathway-cta-section{padding:3rem 1.5rem}.pathway-cta-content h2{font-size:1.75rem}.pathway-cta-content p{font-size:1rem}.btn-large{justify-content:center;width:100%}}.certifications-container{background:linear-gradient(180deg,#f8fafc 0,#fff);min-height:100vh}.certifications-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;overflow:hidden;padding:4rem 2rem 3rem;position:relative;text-align:center}.certifications-header:before{background:radial-gradient(circle at 20% 50%,#ffffff1a 0,#0000 50%),radial-gradient(circle at 80% 80%,#ffffff1a 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.header-content{margin:0 auto;max-width:800px;position:relative;z-index:1}.header-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:30px;display:inline-block;font-size:.875rem;font-weight:500;margin-bottom:1rem;padding:.5rem 1.25rem}.header-title{font-size:3rem;font-weight:800;line-height:1.2;margin:0 0 1rem}.header-subtitle{font-size:1.125rem;line-height:1.6;margin:0;opacity:.95}.certifications-filters{margin:-2rem auto 3rem;max-width:1400px;padding:0 2rem;position:relative;z-index:10}.filter-group{align-items:center;background:#fff;border-radius:16px;box-shadow:0 10px 40px #0000001a;display:flex;flex-wrap:wrap;gap:1rem;padding:1.5rem}.filter-search{border:2px solid #e2e8f0;border-radius:12px;flex:1 1;font-size:1rem;min-width:250px;padding:.875rem 1.25rem;transition:all .3s ease}.filter-search:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.filter-select{background:#fff;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;font-size:1rem;min-width:180px;padding:.875rem 1.25rem;transition:all .3s ease}.filter-select:hover{border-color:#cbd5e0}.filter-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.filter-clear{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:.9375rem;font-weight:600;padding:.875rem 1.5rem;transition:all .3s ease;white-space:nowrap}.filter-clear:hover{box-shadow:0 8px 20px #667eea4d;transform:translateY(-2px)}.results-info{margin:0 auto 1.5rem;max-width:1400px;padding:0 2rem}.results-info p{color:#64748b;font-size:.9375rem;margin:0}.certifications-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin:0 auto;max-width:1400px;padding:0 2rem 4rem}.certification-card{background:#fff;border-radius:16px;border-top:4px solid #667eea;border-top:4px solid var(--cert-color,#667eea);box-shadow:0 2px 8px #0000000f;cursor:pointer;overflow:hidden;padding:1.75rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.certification-card:before{background:linear-gradient(180deg,#667eea 0,#0000);background:linear-gradient(to bottom,var(--cert-color,#667eea) 0,#0000 100%);content:"";height:100%;left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .3s ease}.certification-card:hover{box-shadow:0 12px 24px #0000001f;transform:translateY(-8px)}.certification-card:hover:before{opacity:.03}.cert-header{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:1rem}.cert-provider{background:#667eea;background:var(--cert-color,#667eea);border-radius:8px;font-weight:700;letter-spacing:.5px;padding:.375rem .875rem}.cert-hot-badge,.cert-provider{color:#fff;display:inline-block;font-size:.75rem}.cert-hot-badge{background:linear-gradient(135deg,#f59e0b,#ef4444);border-radius:6px;font-weight:600;padding:.25rem .75rem}.cert-title{color:#1e293b;font-size:1.25rem;font-weight:700;line-height:1.3;margin:0 0 .5rem}.cert-code{color:#64748b;font-family:Monaco,Courier New,monospace;font-size:.875rem;margin:0 0 1rem}.cert-description{color:#475569;font-size:.9375rem;line-height:1.6;margin:0 0 1.5rem;min-height:60px}.cert-stats{grid-gap:1rem;border-bottom:1px solid #e2e8f0;border-top:1px solid #e2e8f0;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin-bottom:1.5rem;padding:1rem 0}.cert-stat-item{display:flex;flex-direction:column;text-align:center}.cert-stat-label{color:#94a3b8;font-size:.75rem;letter-spacing:.5px;margin-bottom:.25rem;text-transform:uppercase}.cert-stat-value{color:#1e293b;font-size:1.125rem;font-weight:700}.cert-footer{align-items:center;display:flex;justify-content:space-between}.cert-level-badge{background:#e2e8f0;border-radius:8px;color:#475569;font-size:.75rem;font-weight:600;padding:.375rem .875rem;text-transform:capitalize}.cert-level-badge.level-foundational{background:#dbeafe;color:#1e40af}.cert-level-badge.level-associate{background:#d1fae5;color:#065f46}.cert-level-badge.level-professional{background:#fef3c7;color:#92400e}.cert-level-badge.level-expert{background:#fce7f3;color:#9f1239}.cert-level-badge.level-specialty{background:#e0e7ff;color:#3730a3}.cert-cta{color:#667eea;color:var(--cert-color,#667eea);font-size:.9375rem;font-weight:600;transition:transform .3s ease}.certification-card:hover .cert-cta{transform:translateX(4px)}.certifications-loading{margin:4rem auto;max-width:1400px;padding:0 2rem;text-align:center}.loading-spinner{border:4px solid #e2e8f0;height:60px;margin:0 auto 1.5rem;width:60px}.certifications-loading p{color:#64748b;font-size:1.125rem}.certifications-empty{background:#fff;border-radius:16px;box-shadow:0 4px 16px #00000014;margin:4rem auto;max-width:600px;padding:3rem 2rem;text-align:center}.empty-icon{font-size:4rem;margin-bottom:1.5rem}.certifications-empty h3{color:#1e293b;font-size:1.5rem;margin:0 0 .75rem}.certifications-empty p{color:#64748b;font-size:1.0625rem;line-height:1.6;margin:0 0 1.5rem}.btn{border-radius:12px;padding:.875rem 2rem;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2)}.btn-primary:hover{box-shadow:0 8px 20px #667eea4d}@media (max-width:1024px){.certifications-grid{gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (max-width:768px){.header-title{font-size:2rem}.header-subtitle{font-size:1rem}.certifications-filters{margin:-1.5rem auto 2rem}.filter-group{gap:.75rem;padding:1rem}.filter-search,.filter-select{min-width:100%;width:100%}.certifications-grid{grid-template-columns:1fr;padding:0 1rem 3rem}.cert-stats{gap:.75rem}.cert-stat-value{font-size:1rem}}.certification-details-page{margin:0 auto;max-width:1200px;padding:2rem}.back-button{align-items:center;background:none;border:none;color:#555;cursor:pointer;display:inline-flex;font-size:1rem;gap:.5rem;margin-bottom:2rem}.loading-spinner{border-top-color:#3498db;height:40px;width:40px}.certification-error{color:#d9534f;padding:4rem 0;text-align:center}.certification-hero{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;margin-bottom:2rem;padding:3rem;text-align:center}.certification-hero h1{color:#fff;font-size:2.5rem;margin-bottom:.5rem}.certification-hero p{color:#ffffffe6;font-size:1.1rem;margin:0 auto 2rem;max-width:800px}.certification-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin:2rem 0}.btn-primary{background:#fff;border:none;border-radius:8px;box-shadow:0 4px 12px #00000026;color:#667eea;cursor:pointer;font-size:1.1rem;font-weight:700;padding:1rem 2rem;transition:all .3s ease}.btn-primary:hover{box-shadow:0 6px 20px #0003;transform:translateY(-2px)}.start-learning-btn{font-size:1.2rem;padding:1.25rem 2.5rem}.btn-outline{background:#0000;border:2px solid #ffffff80;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 2rem;transition:all .3s ease}.btn-outline:hover{background:#ffffff1a;border-color:#fff}.certification-stats{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-left:auto;margin-right:auto;margin-top:2rem;max-width:800px}.stat-box{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:12px;display:flex;flex-direction:column;gap:.5rem;padding:1.5rem}.stat-icon,.stat-value{font-size:2rem}.stat-value{color:#fff}.stat-label{color:#fffc;font-size:.9rem}.certification-content{display:flex;flex-direction:column;gap:2rem}.certification-section h2{border-bottom:2px solid #eee;font-size:1.8rem;margin-bottom:1rem;padding-bottom:.5rem}.modules-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.module-card{background:#fff;border:1px solid #ddd;border-radius:8px;padding:1.5rem;position:relative;transition:box-shadow .3s ease,transform .3s ease,border-color .3s ease}.module-card:hover{border-color:#3498db;box-shadow:0 4px 12px #0000001a;transform:translateY(-5px)}.module-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.module-number{color:#3498db;text-transform:uppercase}.module-number,.module-weight{font-size:.85rem;font-weight:600}.module-weight{background:#e8f8f5;border-radius:4px;color:#27ae60;padding:.25rem .5rem}.module-card h3{color:#2c3e50;font-size:1.25rem;margin-bottom:.75rem}.module-card p{color:#555;font-size:.95rem;line-height:1.5;margin-bottom:1rem}.module-meta{align-items:center;border-top:1px solid #eee;margin-top:1rem;padding-top:1rem}.badge{border-radius:12px;font-size:.8rem;padding:.25rem .75rem;text-transform:capitalize}.badge-beginner{background:#d4edda;color:#155724}.badge-intermediate{background:#fff3cd;color:#856404}.badge-advanced{background:#f8d7da;color:#721c24}.study-time{color:#666;font-size:.85rem}.module-footer{border-top:1px solid #eee;margin-top:1rem;padding-top:.75rem}.click-hint{color:#3498db;font-size:.85rem;font-weight:500;opacity:0;transition:opacity .3s ease}.module-card:hover .click-hint{opacity:1}.no-modules{color:#999;font-size:1.1rem;padding:3rem;text-align:center}.modal-overlay{align-items:center;animation:fadeIn .3s ease;background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:slideUp .3s ease;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-height:90vh;max-width:800px;overflow-y:auto;width:100%}.modal-header{align-items:flex-start;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #eee;border-radius:12px 12px 0 0;color:#fff;display:flex;justify-content:space-between;padding:2rem}.modal-header h2{font-size:1.75rem;margin:.5rem 0 0}.module-badge{background:#fff3;border-radius:12px;display:inline-block;font-size:.85rem;font-weight:600;margin-bottom:.5rem;padding:.25rem .75rem;text-transform:uppercase}.close-button{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;height:36px;justify-content:center;transition:background .3s ease;width:36px}.close-button:hover{background:#ffffff4d}.modal-body{padding:2rem}.module-detail-section{margin-bottom:2rem}.module-detail-section:last-child{margin-bottom:0}.module-detail-section h3{border-bottom:2px solid #eee;color:#2c3e50;font-size:1.25rem;margin-bottom:1rem;padding-bottom:.5rem}.module-detail-section ul{list-style:none;padding:0}.module-detail-section ul li{line-height:1.6;padding:.5rem 0 .5rem 1.5rem;position:relative}.module-detail-section ul li:before{color:#3498db;content:"→";font-weight:700;left:0;position:absolute}.concepts-grid,.skills-grid{display:flex;flex-wrap:wrap;gap:.75rem}.concept-tag,.skill-tag{background:#f0f4ff;border:1px solid #d0e0ff;border-radius:20px;color:#3498db;font-size:.9rem;font-weight:500;padding:.5rem 1rem}.skill-tag{background:#f0fff4;border-color:#c6f6d5;color:#27ae60}.resources-list{display:flex;flex-direction:column;gap:1rem}.resource-item{align-items:center;background:#f8f9fa;border-left:3px solid #3498db;border-radius:8px;display:flex;gap:1rem;padding:1rem}.resource-type{background:#3498db;white-space:nowrap}.resource-title{flex:1 1;font-weight:500}.resource-item a{color:#3498db;font-weight:600;text-decoration:none;white-space:nowrap}.resource-item a:hover{text-decoration:underline}.module-stats{grid-gap:1.5rem;background:#f8f9fa;border-radius:8px;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));padding:1.5rem}.stat-item{display:flex;flex-direction:column;gap:.5rem}.stat-label{color:#666;font-size:.85rem;font-weight:600;text-transform:uppercase}.stat-value{color:#2c3e50;font-size:1.25rem;font-weight:700}.modal-footer{border-top:1px solid #eee;display:flex;gap:1rem;justify-content:flex-end;padding:1.5rem 2rem}.btn-secondary{background:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:background .3s ease}.btn-secondary:hover{background:#5a6268}.learning-page{background:#f5f7fa;min-height:100vh}.learning-header{align-items:center;background:#fff;border-bottom:1px solid #e1e4e8;box-shadow:0 2px 4px #0000000d;display:flex;gap:2rem;padding:1.5rem 2rem;position:-webkit-sticky;position:sticky;top:0;z-index:100}.back-btn{background:#f5f7fa;border:1px solid #e1e4e8;border-radius:6px;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.back-btn:hover{background:#e1e4e8}.cert-title{flex:1 1}.cert-title h2{font-size:1.5rem;margin:0 0 .25rem}.cert-code{color:#666;font-size:.9rem;font-weight:600}.progress-container{background:#fff;border-bottom:1px solid #e1e4e8;padding:1rem 2rem}.progress-info{color:#666;display:flex;font-size:.9rem;font-weight:600;justify-content:space-between;margin-bottom:.5rem}.progress-bar{background:#e1e4e8;border-radius:4px;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:4px;height:100%;transition:width .5s ease}.learning-content{grid-gap:0;display:grid;gap:0;grid-template-columns:300px 1fr;min-height:calc(100vh - 180px)}.modules-sidebar{background:#fff;border-right:1px solid #e1e4e8;height:calc(100vh - 130px);overflow-y:auto;padding:2rem 1rem;position:-webkit-sticky;position:sticky;top:130px}.modules-sidebar h3{font-size:1.25rem;margin:0 0 1.5rem;padding:0 .75rem}.module-list{display:flex;flex-direction:column;gap:.5rem}.module-item{align-items:center;border:2px solid #0000;border-radius:8px;cursor:pointer;display:flex;gap:.75rem;padding:1rem;transition:all .3s ease}.module-item:hover{background:#f5f7fa}.module-item.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff}.module-item.completed{opacity:.7}.module-num{align-items:center;background:#e1e4e8;border-radius:50%;color:#333;display:flex;flex-shrink:0;font-size:.9rem;font-weight:700;height:32px;justify-content:center;width:32px}.module-item.active .module-num{background:#ffffff4d;color:#fff}.module-title{flex:1 1;font-size:.9rem;font-weight:600;line-height:1.4}.check-mark{color:#27ae60;font-size:1.25rem;font-weight:700}.learning-main{margin:0 auto;max-width:1200px;padding:2rem 3rem}.module-header-learning{margin-bottom:2rem}.module-meta{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.difficulty-badge,.module-badge,.weight-badge{border-radius:20px;font-size:.85rem;font-weight:600;padding:.5rem 1rem;text-transform:uppercase}.module-badge{background:#667eea;color:#fff}.weight-badge{background:#27ae60;color:#fff}.difficulty-badge{background:#f39c12;color:#fff}.difficulty-badge.beginner{background:#27ae60}.difficulty-badge.intermediate{background:#f39c12}.difficulty-badge.advanced{background:#e74c3c}.module-header-learning h1{color:#2c3e50;font-size:2.5rem;margin:0 0 1rem}.module-desc{color:#666;font-size:1.1rem;line-height:1.6;margin-bottom:1.5rem}.study-time-info{align-items:center;background:#f5f7fa;border-radius:8px;color:#667eea;display:flex;font-weight:600;gap:.5rem;padding:1rem}.time-icon{font-size:1.25rem}.learning-actions{display:flex;flex-wrap:wrap;gap:1rem;margin:2rem 0}.action-btn{background:#fff;border:2px solid #e1e4e8;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 1.5rem;transition:all .3s ease}.action-btn:hover{background:#f5f7fa;border-color:#667eea}.action-btn.active{background:#667eea;border-color:#667eea;color:#fff}.exam-btn{background:#27ae60;border-color:#27ae60;color:#fff;margin-left:auto}.exam-btn:hover{background:#229954}.analogy-section{background:#fff;border:2px solid #667eea;border-radius:12px;margin:2rem 0;padding:2rem}.section-header h2{color:#667eea;font-size:1.75rem;margin:0 0 .5rem}.section-header p{color:#666;margin:0 0 1.5rem}.tab-content{background:#fff;border-radius:12px;margin:2rem 0;min-height:400px;padding:2rem}.content-section{margin-bottom:2.5rem}.content-section h2{border-bottom:2px solid #e1e4e8;color:#2c3e50;font-size:1.5rem;margin:0 0 1.5rem;padding-bottom:.75rem}.objectives-list{list-style:none;padding:0}.objectives-list li{background:#f8f9fa;border-radius:8px;line-height:1.6;margin-bottom:.75rem;padding:1rem 1rem 1rem 3rem;position:relative}.objectives-list li:before{content:"🎯";font-size:1.25rem;left:1rem;position:absolute}.concepts-grid-learning{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.concept-card{background:linear-gradient(135deg,#667eea15,#764ba215);border:2px solid #667eea30;border-radius:12px;color:#2c3e50;font-weight:600;padding:1rem 1.5rem;transition:all .3s ease}.concept-card:hover{box-shadow:0 4px 12px #667eea33;transform:translateY(-2px)}.skills-grid-learning{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.skill-card{background:linear-gradient(135deg,#27ae6015,#229954 15 100%);border:2px solid #27ae6030;border-radius:12px;color:#27ae60;font-weight:600;padding:1rem 1.5rem;transition:all .3s ease}.skill-card:hover{box-shadow:0 4px 12px #27ae6033;transform:translateY(-2px)}.exercises-list{list-style:none;padding:0}.exercise-item{background:#f8f9fa;border-left:4px solid #667eea;border-radius:8px;display:flex;gap:1rem;margin-bottom:1rem;padding:1.5rem}.exercise-num{align-items:center;background:#667eea;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-weight:700;height:32px;justify-content:center;width:32px}.resources-list-learning{grid-gap:1rem;display:grid;gap:1rem}.resource-card{background:#f8f9fa;border-left:4px solid #667eea;border-radius:8px;padding:1.5rem}.resource-type{background:#667eea;border-radius:12px;color:#fff;display:inline-block;font-size:.8rem;font-weight:600;margin-bottom:.75rem;padding:.25rem .75rem;text-transform:uppercase}.resource-card h3{font-size:1.1rem;margin:.5rem 0}.resource-card a{color:#667eea;font-weight:600;text-decoration:none}.resource-card a:hover{text-decoration:underline}.coming-soon{color:#999;font-size:1.1rem;line-height:1.8;padding:3rem;text-align:center}.exam-section{background:linear-gradient(135deg,#27ae6015,#22995415);border:2px solid #27ae60;border-radius:12px;margin:2rem 0;padding:2rem}.exam-section h2{color:#27ae60;margin:0 0 1rem}.module-navigation{border-top:2px solid #e1e4e8;display:flex;gap:1rem;margin-top:3rem;padding-top:2rem}.nav-btn{border-radius:8px;cursor:pointer;font-size:1rem;font-weight:700;padding:1rem 2rem;transition:all .3s ease}.next-btn,.prev-btn{background:#fff;border:2px solid #667eea;color:#667eea;flex:1 1}.next-btn:hover:not(:disabled),.prev-btn:hover:not(:disabled){background:#667eea;color:#fff}.next-btn:disabled,.prev-btn:disabled{cursor:not-allowed;opacity:.4}.mark-complete-btn{background:#27ae60;border:2px solid #27ae60;color:#fff}.mark-complete-btn:hover{background:#229954;border-color:#229954}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:50px;margin:4rem auto;width:50px}.error-message{padding:4rem;text-align:center}.error-message h3{color:#e74c3c;margin-bottom:1.5rem}.error-message button{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:1rem 2rem}.error-message button:hover{background:#5568d3}@media (max-width:968px){.learning-content{grid-template-columns:1fr}.modules-sidebar{border-bottom:1px solid #e1e4e8;border-right:none;height:auto;position:relative}.learning-main{padding:1.5rem}}.enriched-content-section{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;margin-top:2rem;padding:2rem}.enriched-content-section h3{font-size:1.5rem;margin-bottom:1.5rem;margin-top:0}.examples-section{margin-top:1.5rem}.examples-section h4{font-size:1.2rem;margin-bottom:1rem}.example-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;border-radius:8px;margin-bottom:1rem;padding:1.5rem}.example-card h5{font-size:1.1rem;margin-bottom:.5rem;margin-top:0}.example-card .badge{background:#ffffff4d;border-radius:12px;display:inline-block;font-size:.8rem;font-weight:600;margin-bottom:1rem;padding:.25rem .75rem}.example-card details{margin-top:1rem}.example-card summary{background:#ffffff1a;border-radius:4px;cursor:pointer;font-weight:600;margin-bottom:.5rem;padding:.5rem}.example-card pre{background:#1e1e1e;border-radius:6px;color:#d4d4d4;margin-top:.5rem;overflow-x:auto;padding:1rem}.example-card code{font-family:Consolas,Monaco,monospace;font-size:.9rem;line-height:1.5}.exam-preview{background:#fff3;border-radius:8px;margin-top:1.5rem;padding:1.5rem;text-align:center}.exam-preview h4{font-size:1.2rem;margin-top:0}.exam-preview .btn-primary{background:#fff;border:none;border-radius:6px;color:#667eea;cursor:pointer;font-weight:600;margin-top:1rem;padding:.75rem 2rem;transition:all .3s ease}.exam-preview .btn-primary:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}:root{--color-primary-50:#eff6ff;--color-primary-100:#dbeafe;--color-primary-200:#bfdbfe;--color-primary-300:#93c5fd;--color-primary-400:#60a5fa;--color-primary-500:#3b82f6;--color-primary-600:#2563eb;--color-primary-700:#1d4ed8;--color-primary-800:#1e40af;--color-primary-900:#1e3a8a;--color-secondary-500:#14b8a6;--color-secondary-600:#0d9488;--color-secondary-700:#0f766e;--color-neutral-50:#f8fafc;--color-neutral-100:#f1f5f9;--color-neutral-200:#e2e8f0;--color-neutral-300:#cbd5e1;--color-neutral-400:#94a3b8;--color-neutral-500:#64748b;--color-neutral-600:#475569;--color-neutral-700:#334155;--color-neutral-800:#1e293b;--color-neutral-900:#0f172a;--color-success-50:#f0fdf4;--color-success-500:#10b981;--color-success-600:#059669;--color-success-700:#047857;--color-danger-50:#fef2f2;--color-danger-500:#ef4444;--color-danger-600:#dc2626;--color-danger-700:#b91c1c;--color-info-50:#eff6ff;--color-info-500:#3b82f6;--color-info-600:#2563eb;--color-warning-50:#fffbeb;--color-warning-500:#f59e0b;--color-warning-600:#d97706;--gradient-primary:linear-gradient(135deg,#3b82f6,#14b8a6);--gradient-primary-hover:linear-gradient(135deg,#2563eb,#0d9488);--gradient-hero:linear-gradient(135deg,#1e40af,#0f766e);--gradient-background:linear-gradient(180deg,#fff,#f8fafc 50%,#f1f5f9);--gradient-card:linear-gradient(180deg,#fff,#fafbfc);--gradient-shimmer:linear-gradient(90deg,#0000,#ffffff4d 50%,#0000);--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--radius-sm:0.375rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--shadow-xs:0 1px 2px #0000000d;--shadow-sm:0 2px 4px #0000000f;--shadow-md:0 4px 8px #00000014;--shadow-lg:0 8px 16px #0000001a;--shadow-xl:0 12px 24px #0000001f;--shadow-2xl:0 20px 40px #00000026;--shadow-primary:0 4px 15px #667eea4d;--shadow-primary-lg:0 8px 25px #667eea80;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--font-mono:"SF Mono",Monaco,"Cascadia Code","Roboto Mono",Consolas,"Courier New",monospace;--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:200ms cubic-bezier(0.4,0,0.2,1);--transition-slow:300ms cubic-bezier(0.4,0,0.2,1);--transition-slower:500ms cubic-bezier(0.4,0,0.2,1);--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;color:#1e293b;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:16px;font-weight:400;letter-spacing:-.01em;line-height:1.7}.App,body{min-height:100vh}.navbar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background-color:#fff;border-bottom:1px solid #e2e8f0cc;box-shadow:0 1px 3px #0000000a,0 1px 2px #00000005;padding:1rem 0;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.nav-container{justify-content:space-between;margin:0 auto;max-width:1400px;padding:0 2rem}.nav-container,.nav-logo{align-items:center;display:flex}.nav-logo{text-decoration:none;transition:transform .3s ease}.nav-logo:hover{transform:scale(1.05)}.logo-image{height:110px;margin:-10px 0;transition:transform .3s ease,filter .3s ease;width:auto}.nav-logo:hover .logo-image{filter:brightness(1.1);transform:scale(1.05)}.nav-menu{align-items:center;display:flex;gap:.25rem;padding:0}.nav-item,.nav-menu{list-style:none;margin:0}.nav-link{align-items:center;border-radius:8px;color:#64748b;display:inline-flex;font-size:.9375rem;font-weight:500;gap:.5rem;letter-spacing:-.01em;padding:.625rem 1.125rem;position:relative;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1)}.nav-link:after{background:linear-gradient(90deg,#667eea,#764ba2);bottom:0;content:"";height:2px;left:0;position:absolute;right:0;transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.nav-link:hover{background:#667eea14;color:#667eea}.nav-link:hover:after{transform:scaleX(1)}.nav-link.active{color:#3b82f6;font-weight:600;text-decoration:underline;-webkit-text-decoration-color:#3b82f6;text-decoration-color:#3b82f6;text-decoration-thickness:2px;text-underline-offset:6px}.nav-link.active:after{background:#3b82f6;transform:scaleX(1)}.nav-link:hover{background:#3b82f60f;color:#3b82f6}.nav-icon{transition:transform .3s ease}.nav-link:hover .nav-icon{transform:translateY(-2px)}.main-content{margin:0 auto;max-width:1400px;padding:0}.btn{align-items:center;border:none;border-radius:1rem;border-radius:var(--radius-xl);cursor:pointer;display:inline-flex;font-family:inherit;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;line-height:1.5;overflow:hidden;padding:.75rem 1.75rem;position:relative;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-slow);white-space:nowrap}.btn:before{background:#ffffff40;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease;width:0}.btn:active:before{height:300px;width:300px}.btn-primary{background:linear-gradient(135deg,#3b82f6,#14b8a6);border:1px solid #0000;box-shadow:0 4px 12px #3b82f640;color:#fff;font-weight:600}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#0d9488);box-shadow:0 6px 20px #3b82f64d;transform:translateY(-2px)}.btn-primary:active:not(:disabled){transform:translateY(0) scale(.98)}.btn-secondary{background-color:#fff;border:1.5px solid #3b82f6;box-shadow:0 1px 3px #0000000d;color:#3b82f6;font-weight:600}.btn-secondary:hover:not(:disabled){background:linear-gradient(135deg,#3b82f6,#14b8a6);border-color:#0000;box-shadow:0 4px 12px #3b82f640;color:#fff;transform:translateY(-2px)}.btn-secondary:active:not(:disabled){transform:translateY(0)}.btn-danger{background-color:#ef4444;background-color:var(--color-danger-500);box-shadow:0 4px 15px #ef44444d;color:#fff}.btn-danger:hover:not(:disabled){background-color:#dc2626;background-color:var(--color-danger-600);box-shadow:0 8px 25px #ef444480;transform:translateY(-2px)}.btn-danger:active:not(:disabled){transform:translateY(0)}.btn-success{background-color:#10b981;background-color:var(--color-success-500);box-shadow:0 4px 15px #10b9814d;color:#fff}.btn-success:hover:not(:disabled){background-color:#059669;background-color:var(--color-success-600);box-shadow:0 8px 25px #10b98180;transform:translateY(-2px)}.btn-success:active:not(:disabled){transform:translateY(0)}.btn-outline{background-color:initial;border:2px solid #cbd5e1;border:2px solid var(--color-neutral-300);box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-xs);color:#334155;color:var(--color-neutral-700)}.btn-outline:hover:not(:disabled){background-color:#f8fafc;background-color:var(--color-neutral-50);border-color:#94a3b8;border-color:var(--color-neutral-400);transform:translateY(-1px)}.btn-ghost{background-color:initial;border:none;box-shadow:none;color:#3b82f6;color:var(--color-primary-500)}.btn-ghost:hover:not(:disabled){background-color:#eff6ff;background-color:var(--color-primary-50);color:#2563eb;color:var(--color-primary-600)}.btn:disabled{box-shadow:none!important;cursor:not-allowed;opacity:.5;transform:none!important}.btn-sm{border-radius:.75rem;border-radius:var(--radius-lg);font-size:.875rem;padding:.5rem 1rem}.btn-lg{border-radius:1rem;border-radius:var(--radius-xl);font-size:1.125rem;padding:1rem 2rem}.card{background-color:#fff;border:1px solid #e2e8f0;border:1px solid var(--color-neutral-200);border-radius:1.5rem;border-radius:var(--radius-2xl);box-shadow:0 4px 8px #00000014;box-shadow:var(--shadow-md);margin-bottom:2rem;margin-bottom:var(--spacing-xl);overflow:hidden;padding:3rem;padding:var(--spacing-2xl);position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-slow)}.card:before{background:linear-gradient(135deg,#3b82f6,#14b8a6);background:var(--gradient-primary);content:"";height:3px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s cubic-bezier(.4,0,.2,1);transition:opacity var(--transition-slow)}.card:hover{border-color:#bfdbfe;border-color:var(--color-primary-200);box-shadow:0 12px 24px #0000001f;box-shadow:var(--shadow-xl);transform:translateY(-4px)}.card:hover:before{opacity:1}.card-header{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#14b8a6);background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:#0f172a;color:var(--color-neutral-900);font-size:1.875rem;font-weight:800;letter-spacing:-.02em;line-height:1.2;margin-bottom:1.5rem;margin-bottom:var(--spacing-lg)}.form-group{margin-bottom:2rem;margin-bottom:var(--spacing-xl)}.form-label{color:#334155;color:var(--color-neutral-700);display:block;font-size:.9375rem;font-weight:600;letter-spacing:.01em;margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.form-input,.form-select,.form-textarea{background-color:#f8fafc;background-color:var(--color-neutral-50);border:2px solid #e2e8f0;border:2px solid var(--color-neutral-200);border-radius:1rem;border-radius:var(--radius-xl);color:#0f172a;color:var(--color-neutral-900);font-family:inherit;font-size:1rem;line-height:1.5;padding:.875rem 1.125rem;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-slow);width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{background-color:#fff;border-color:#3b82f6;border-color:var(--color-primary-500);box-shadow:0 0 0 4px #dbeafe,0 2px 4px #0000000f;box-shadow:0 0 0 4px var(--color-primary-100),var(--shadow-sm);outline:none;transform:translateY(-1px)}.form-input:hover:not(:focus),.form-select:hover:not(:focus),.form-textarea:hover:not(:focus){background-color:#fff;border-color:#cbd5e1;border-color:var(--color-neutral-300)}.form-input::placeholder,.form-textarea::placeholder{color:#94a3b8;color:var(--color-neutral-400)}.form-textarea{line-height:1.6;min-height:120px;resize:vertical}.form-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23667eea' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;cursor:pointer;padding-right:3rem}.form-help-text{color:#64748b;color:var(--color-neutral-500)}.form-error,.form-help-text{display:block;font-size:.875rem;margin-top:.5rem;margin-top:var(--spacing-sm)}.form-error{color:#dc2626;color:var(--color-danger-600);font-weight:500}.grid{grid-gap:2rem;display:grid;gap:2rem}.grid-2{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.loading{align-items:center;display:flex;justify-content:center;padding:3rem}.spinner{animation:spin .8s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;height:50px;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.alert{align-items:flex-start;animation:slideIn .4s cubic-bezier(.4,0,.2,1);border-left:4px solid;border-radius:1rem;border-radius:var(--radius-xl);box-shadow:0 2px 4px #0000000f;box-shadow:var(--shadow-sm);display:flex;font-size:.9375rem;font-weight:500;gap:1rem;gap:var(--spacing-md);line-height:1.6;margin-bottom:1.5rem;margin-bottom:var(--spacing-lg);padding:1.125rem 1.5rem}@keyframes slideIn{0%{opacity:0;transform:translateY(-12px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.alert-success{background-color:#f0fdf4;background-color:var(--color-success-50);border-left-color:#10b981;border-left-color:var(--color-success-500);color:#047857;color:var(--color-success-700)}.alert-error{background-color:#fef2f2;background-color:var(--color-danger-50);border-left-color:#ef4444;border-left-color:var(--color-danger-500);color:#b91c1c;color:var(--color-danger-700)}.alert-info{background-color:#eff6ff;background-color:var(--color-info-50);border-left-color:#3b82f6;border-left-color:var(--color-info-500);color:#2563eb;color:var(--color-info-600)}.alert-warning{background-color:#fffbeb;background-color:var(--color-warning-50);border-left-color:#f59e0b;border-left-color:var(--color-warning-500);color:#d97706;color:var(--color-warning-600)}.alert-icon{flex-shrink:0;height:20px;margin-top:2px;width:20px}@media (max-width:1024px){.nav-container{padding:0 1.5rem}.logo-image{height:95px;margin:-8px 0}}@media (max-width:768px){.nav-container{padding:0 1rem}.logo-image{height:80px;margin:-6px 0}.nav-menu{gap:.25rem}.nav-link{font-size:.875rem;padding:.5rem .85rem}.nav-icon{height:16px;width:16px}.main-content{padding:0}.card{border-radius:12px;padding:1.5rem}.card-header{font-size:1.5rem}.form-input,.form-select,.form-textarea{font-size:16px}.grid-2{grid-template-columns:1fr}}@media (max-width:480px){.nav-link span{display:none}.nav-link{padding:.5rem}}html{scroll-behavior:smooth}::selection{background-color:#667eea;color:#fff}::-moz-selection{background-color:#667eea;color:#fff}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:#f1f5f9;background:var(--color-neutral-100);border-radius:10px}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#3b82f6,#14b8a6);background:var(--gradient-primary);border:2px solid #f1f5f9;border:2px solid var(--color-neutral-100);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#2563eb,#0d9488);background:var(--gradient-primary-hover)}.mt-0{margin-top:0!important}.mt-1{margin-top:.5rem!important;margin-top:var(--spacing-sm)!important}.mt-2{margin-top:1rem!important;margin-top:var(--spacing-md)!important}.mt-3{margin-top:1.5rem!important;margin-top:var(--spacing-lg)!important}.mt-4{margin-top:2rem!important;margin-top:var(--spacing-xl)!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.5rem!important;margin-bottom:var(--spacing-sm)!important}.mb-2{margin-bottom:1rem!important;margin-bottom:var(--spacing-md)!important}.mb-3{margin-bottom:1.5rem!important;margin-bottom:var(--spacing-lg)!important}.mb-4{margin-bottom:2rem!important;margin-bottom:var(--spacing-xl)!important}.p-0{padding:0!important}.p-1{padding:.5rem!important;padding:var(--spacing-sm)!important}.p-2{padding:1rem!important;padding:var(--spacing-md)!important}.p-3{padding:1.5rem!important;padding:var(--spacing-lg)!important}.p-4{padding:2rem!important;padding:var(--spacing-xl)!important}.text-center{text-align:center!important}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-primary{color:#3b82f6!important;color:var(--color-primary-500)!important}.text-secondary{color:#14b8a6!important;color:var(--color-secondary-500)!important}.text-success{color:#10b981!important;color:var(--color-success-500)!important}.text-danger{color:#ef4444!important;color:var(--color-danger-500)!important}.text-info{color:#3b82f6!important;color:var(--color-info-500)!important}.font-bold{font-weight:700!important}.font-semibold{font-weight:600!important}.font-medium{font-weight:500!important}.d-none{display:none!important}.d-block{display:block!important}.d-flex{display:flex!important}.d-grid{display:grid!important}.flex-column{flex-direction:column!important}.flex-row{flex-direction:row!important}.align-center{align-items:center!important}.justify-center{justify-content:center!important}.justify-between{justify-content:space-between!important}.gap-1{gap:.5rem!important;gap:var(--spacing-sm)!important}.gap-2{gap:1rem!important;gap:var(--spacing-md)!important}.gap-3{gap:1.5rem!important;gap:var(--spacing-lg)!important}.fade-in{animation:fadeIn .5s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.slide-up{animation:slideUp .5s cubic-bezier(.4,0,.2,1)}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.scale-in{animation:scaleIn .4s cubic-bezier(.4,0,.2,1)}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.hover-lift{transition:transform .3s cubic-bezier(.4,0,.2,1);transition:transform var(--transition-slow)}.hover-lift:hover{transform:translateY(-4px)}.hover-glow{transition:box-shadow .3s cubic-bezier(.4,0,.2,1);transition:box-shadow var(--transition-slow)}.hover-glow:hover{box-shadow:0 0 20px #667eea66}.badge{align-items:center;border-radius:9999px;border-radius:var(--radius-full);display:inline-flex;font-size:.875rem;font-weight:600;line-height:1;padding:.375rem .875rem;white-space:nowrap}.badge-primary{background:linear-gradient(135deg,#3b82f6,#14b8a6);background:var(--gradient-primary);color:#fff}.badge-success{background-color:var(--color-success-100);border:1px solid var(--color-success-300);color:#047857;color:var(--color-success-700)}.badge-danger{background-color:var(--color-danger-100);border:1px solid var(--color-danger-300);color:#b91c1c;color:var(--color-danger-700)}.badge-info{background-color:var(--color-info-100);border:1px solid var(--color-info-300);color:var(--color-info-700)}.badge-outline{background-color:initial;border:1.5px solid #cbd5e1;border:1.5px solid var(--color-neutral-300);color:#334155;color:var(--color-neutral-700)}.tooltip{position:relative}.tooltip:after{background-color:#0f172a;background-color:var(--color-neutral-900);border-radius:.5rem;border-radius:var(--radius-md);bottom:100%;color:#fff;content:attr(data-tooltip);font-size:.875rem;left:50%;opacity:0;padding:.5rem .875rem;pointer-events:none;position:absolute;transform:translateX(-50%) translateY(-8px);transition:opacity .2s cubic-bezier(.4,0,.2,1);transition:opacity var(--transition-base);white-space:nowrap;z-index:1070;z-index:var(--z-tooltip)}.tooltip:hover:after{opacity:1}.divider{background:#e2e8f0;background:var(--color-neutral-200);height:1px}.divider,.divider-gradient{border:none;margin:2rem 0;margin:var(--spacing-xl) 0}.divider-gradient{background:linear-gradient(135deg,#3b82f6,#14b8a6);background:var(--gradient-primary);height:2px;opacity:.3}
/*# sourceMappingURL=main.5f4088be.css.map*/