@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800;900&display=swap";@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--bg-primary:#0a0a0f;--bg-secondary:#12121a;--bg-tertiary:#1a1a2e;--accent-cyan:#00f0ff;--accent-purple:#7b2ff7;--accent-emerald:#00ff9d;--accent-pink:#ff2d75;--accent-gradient:linear-gradient(135deg, var(--accent-cyan), var(--accent-purple));--accent-gradient-reverse:linear-gradient(135deg, var(--accent-purple), var(--accent-emerald));--text-primary:#fff;--text-secondary:#a0a0b8;--text-muted:#6b6b80;--border-subtle:#ffffff14;--border-accent:#00f0ff4d;--shadow-glow-cyan:0 0 20px #00f0ff4d, 0 0 60px #00f0ff1a;--shadow-glow-purple:0 0 20px #7b2ff74d, 0 0 60px #7b2ff71a;--shadow-card:0 8px 32px #0006;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--radius-full:9999px;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.3s cubic-bezier(.4, 0, .2, 1);--transition-slow:.5s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:var(--bg-primary);color:var(--text-secondary);min-height:100vh;font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;overflow-x:hidden}.glass-panel{-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:var(--space-lg);transition:all var(--transition-base);background:#ffffff08}.glass-panel:hover{border-color:var(--border-accent);box-shadow:var(--shadow-glow-cyan)}.gradient-text{background:var(--accent-gradient);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text;font-weight:700}.gradient-text-alt{background:var(--accent-gradient-reverse);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text;font-weight:700}.glow-effect{box-shadow:var(--shadow-glow-cyan);transition:box-shadow var(--transition-base)}.glow-effect:hover{box-shadow:0 0 30px #00f0ff80,0 0 90px #00f0ff33}.glow-purple{box-shadow:var(--shadow-glow-purple)}.glow-emerald{box-shadow:0 0 20px #00ff9d4d,0 0 60px #00ff9d1a}.container{width:100%;max-width:1200px;padding:0 var(--space-xl);margin:0 auto}.container-narrow{max-width:800px}.btn{justify-content:center;align-items:center;gap:var(--space-sm);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-base);border:none;padding:.75rem 1.5rem;font-family:Outfit,sans-serif;font-size:1rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background:var(--accent-gradient);color:var(--text-primary);box-shadow:0 4px 15px #00f0ff4d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 25px #00f0ff80}.btn-secondary{color:var(--accent-cyan);border:1px solid var(--accent-cyan);background:0 0}.btn-secondary:hover{box-shadow:var(--shadow-glow-cyan);background:#00f0ff1a}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-weight:700;line-height:1.2}h1{font-size:clamp(2rem,5vw,3.5rem)}h2{font-size:clamp(1.5rem,4vw,2.5rem)}h3{font-size:clamp(1.25rem,3vw,1.75rem)}h4{font-size:1.25rem}a{color:var(--accent-cyan);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--accent-emerald)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--accent-purple)}::selection{color:var(--text-primary);background:#00f0ff4d}:focus-visible{outline:2px solid var(--accent-cyan);outline-offset:2px}.flex-center{justify-content:center;align-items:center;display:flex}.grid{gap:var(--space-lg);display:grid}.grid-2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mt-xl{margin-top:var(--space-xl)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mb-xl{margin-bottom:var(--space-xl)}.p-sm{padding:var(--space-sm)}.p-md{padding:var(--space-md)}.p-lg{padding:var(--space-lg)}.p-xl{padding:var(--space-xl)}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bg-orb{border-radius:var(--radius-full);filter:blur(120px);pointer-events:none;z-index:-1;position:fixed}.bg-orb--cyan{background:#00f0ff14;width:600px;height:600px;top:-200px;right:-200px}.bg-orb--purple{background:#7b2ff714;width:500px;height:500px;bottom:-150px;left:-150px}.bg-orb--emerald{background:#00ff9d0f;width:400px;height:400px;top:50%;left:50%;transform:translate(-50%,-50%)}.vertical-card{gap:var(--space-md);flex-direction:column;height:100%;display:flex}.vertical-card__icon{border-radius:var(--radius-md);background:var(--bg-tertiary);border:1px solid var(--accent-cyan);justify-content:center;align-items:center;width:60px;height:60px;display:flex}.vertical-card__icon svg{color:var(--accent-cyan)}.vertical-card__title{color:var(--text-primary);font-size:1.25rem;font-weight:600}.vertical-card__description{color:var(--text-secondary);flex:1;line-height:1.6}.vertical-card__progress{gap:var(--space-xs);flex-direction:column;display:flex}.vertical-card__progress-header{color:var(--text-secondary);justify-content:space-between;font-size:.85rem;display:flex}.vertical-card__progress-label{font-weight:500}.vertical-card__progress-value{color:var(--accent-cyan);font-weight:700}.vertical-card__progress-track{border-radius:var(--radius-sm);background:var(--bg-secondary);width:100%;height:8px;overflow:hidden}.vertical-card__progress-fill{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--accent-cyan), var(--accent-purple));height:100%;transition:width .5s ease-out;box-shadow:0 0 10px #00ffff4d}.vertical-card__btn{align-self:flex-start}.vertical-detail__header{padding:var(--space-3xl);text-align:center;max-width:900px;margin:0 auto var(--space-xl)}.vertical-detail__title{font-size:2.5rem}.vertical-detail__description{font-size:1.2rem}.vertical-detail__master-progress{max-width:500px;margin:var(--space-lg) auto 0;padding:var(--space-lg);background:var(--bg-tertiary);border-radius:var(--radius-lg);border:1px solid var(--accent-cyan)}.vertical-detail__master-progress-header{margin-bottom:var(--space-xs);color:var(--text-primary);justify-content:space-between;font-size:.9rem;font-weight:700;display:flex}.vertical-detail__master-progress-label{font-weight:600}.vertical-detail__master-progress-value{color:var(--accent-cyan)}.vertical-detail__master-progress-track{border-radius:var(--radius-md);background:var(--bg-secondary);width:100%;height:12px;overflow:hidden}.vertical-detail__master-progress-fill{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--accent-cyan), var(--accent-purple));height:100%;transition:width .5s ease-out;box-shadow:0 0 15px #0ff6}.vertical-detail__back-btn{display:inline-flex}.vertical-detail__tasks-section{max-width:900px;margin:0 auto}.vertical-detail__tasks-title{font-size:1.5rem}.vertical-detail__tasks-list{gap:var(--space-md);flex-direction:column;display:flex}.vertical-task{padding:var(--space-lg);cursor:pointer;transition:all var(--transition-base);border:1px solid var(--border-subtle);align-items:center;gap:var(--space-md);display:flex}.vertical-task:hover{border-color:var(--border-accent);transform:translateY(-4px);box-shadow:0 10px 30px #00ffff26}.vertical-task--completed{border:1px solid var(--accent-cyan);opacity:.75}.vertical-task--completed:hover{opacity:.9}.vertical-task__checkmark{border-radius:var(--radius-sm);border:2px solid var(--accent-cyan);width:28px;height:28px;transition:all var(--transition-base);background:0 0;flex-shrink:0;justify-content:center;align-items:center;display:flex}.vertical-task--completed .vertical-task__checkmark{background:var(--accent-cyan);box-shadow:0 0 10px #00ffff80}.vertical-task__title{color:var(--text-primary);transition:all var(--transition-base);flex:1;font-size:1.1rem}.vertical-task--completed .vertical-task__title{color:var(--text-secondary);text-decoration:line-through}.vertical-task__badge{color:var(--accent-cyan);white-space:nowrap;font-size:.8rem;font-weight:700}.fde-dashboard{gap:var(--space-xl);flex-direction:column;max-width:1100px;margin:0 auto;display:flex}.fde-stats-grid{gap:var(--space-lg);grid-template-columns:2fr 1fr;display:grid}@media (width<=768px){.fde-stats-grid{grid-template-columns:1fr}}.fde-main-progress-card{padding:var(--space-xl);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.circular-progress-wrapper{width:120px;height:120px;margin-bottom:var(--space-md);position:relative}.modules-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.module-card{aspect-ratio:1.1;padding:var(--space-md);border-radius:var(--radius-md);cursor:pointer;border:1px solid var(--border-subtle);transition:all var(--transition-base);background:#ffffff05;flex-direction:column;justify-content:space-between;display:flex;position:relative;overflow:hidden}.module-card:hover{border-color:var(--accent-cyan);box-shadow:var(--shadow-glow-cyan);background:#ffffff0a;transform:translateY(-4px)scale(1.02)}.module-card--active{border-color:var(--accent-purple);box-shadow:var(--shadow-glow-purple);background:#7b2ff70d!important}.module-card__badge{text-transform:uppercase;color:var(--accent-cyan);margin-bottom:var(--space-xs);font-size:.75rem;font-weight:700}.module-card__title{color:var(--text-primary);margin-bottom:var(--space-sm);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.95rem;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.module-card__footer{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.module-card__progress-text{color:var(--text-secondary);font-size:.8rem;font-weight:600}.module-card__mini-ring{width:36px;height:36px;position:relative}.module-drawer{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-xl);margin-top:var(--space-md);box-shadow:var(--shadow-card);background:#ffffff05;animation:.4s ease-out fadeIn}.module-drawer__header{margin-bottom:var(--space-lg);border-bottom:1px solid var(--border-subtle);padding-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.module-drawer__title{color:var(--text-primary);font-size:1.5rem}.module-drawer__progress-bar{background:var(--bg-secondary);border-radius:var(--radius-full);width:100%;height:6px;margin-bottom:var(--space-lg);overflow:hidden}.module-drawer__progress-fill{background:linear-gradient(90deg, var(--accent-cyan), var(--accent-emerald));height:100%;transition:width var(--transition-base)}.module-drawer__tasks{gap:var(--space-sm);flex-direction:column;display:flex}.drawer-task-row{align-items:center;gap:var(--space-md);padding:var(--space-md);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:#ffffff03;display:flex}.drawer-task-row:hover{border-color:var(--border-accent);background:#ffffff08}.drawer-task-row__checkbox{border:2px solid var(--text-muted);width:22px;height:22px;transition:all var(--transition-fast);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.drawer-task-row--completed .drawer-task-row__checkbox{border-color:var(--accent-emerald);background:var(--accent-emerald);box-shadow:0 0 8px #00ff9d66}.drawer-task-row__title{color:var(--text-primary);transition:all var(--transition-fast);flex-grow:1;font-size:1rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.nav-link,.nav-dropdown-btn{align-items:center;gap:var(--space-xs);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;padding:.5rem .85rem;font-family:Outfit,sans-serif;font-size:.95rem;font-weight:500;text-decoration:none;display:inline-flex}.nav-link:hover,.nav-dropdown-btn:hover{color:var(--text-primary);border-color:var(--border-subtle);background:#ffffff0d}.nav-link.active,.nav-dropdown-btn.active{color:var(--accent-cyan);border-color:var(--border-accent);background:#00f0ff14}.dropdown-chevron{transition:transform var(--transition-fast)}.dropdown-chevron.open{transform:rotate(180deg)}.nav-dropdown-wrapper{margin-bottom:-16px;padding-bottom:16px;position:relative}.nav-dropdown-menu{-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-accent);border-radius:var(--radius-md);min-width:240px;box-shadow:0 10px 30px #00000080, var(--shadow-glow-cyan);padding:var(--space-xs);z-index:1050;background:#12121af2;animation:.2s cubic-bezier(.16,1,.3,1) dropdownFadeIn;position:absolute;top:100%;left:0}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.nav-dropdown-item{align-items:center;gap:var(--space-md);color:var(--text-primary);border-radius:var(--radius-sm);transition:all var(--transition-fast);padding:.65rem .85rem;text-decoration:none;display:flex}.nav-dropdown-item:hover{color:var(--accent-cyan);background:#00f0ff1a;transform:translate(3px)}.dropdown-item-icon{border-radius:var(--radius-sm);background:var(--bg-tertiary);border:1px solid var(--border-subtle);width:32px;height:32px;color:var(--accent-cyan);flex-shrink:0;justify-content:center;align-items:center;display:flex}.nav-dropdown-item:hover .dropdown-item-icon{border-color:var(--accent-cyan);box-shadow:0 0 10px #00f0ff4d}.dropdown-item-title{font-size:.95rem;font-weight:600;line-height:1.2}.dropdown-item-desc{color:var(--text-muted);margin-top:2px;font-size:.75rem}.ingest-modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:2000;background-color:#c8cdd799;justify-content:center;align-items:center;padding:2rem;font-family:Inter,sans-serif;animation:.3s ease-out fadeIn;display:flex;position:fixed;inset:0;overflow-y:auto}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.ingest-modal-panel{background:#fff;border:1px solid #e2e8f0;border-radius:24px;flex-direction:column;gap:1.5rem;width:100%;max-width:850px;padding:2.5rem;animation:.4s cubic-bezier(.16,1,.3,1) slideUp;display:flex;position:relative;box-shadow:0 20px 40px #00000014,0 1px 3px #0000000d}.ingest-modal-header{justify-content:space-between;align-items:flex-start;display:flex}.ingest-header-left{align-items:center;gap:1.25rem;display:flex}.ingest-header-icon{color:#3b82f6;background:#eff6ff;border:1px solid #bfdbfe;border-radius:16px;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.ingest-header-text h2{color:#1e293b;letter-spacing:-.02em;margin:0;font-size:1.5rem;font-weight:600}.ingest-header-text p{color:#64748b;margin:.25rem 0 0;font-size:.95rem}.ingest-close-btn{color:#64748b;cursor:pointer;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:10px;justify-content:center;align-items:center;padding:.5rem;transition:all .2s;display:flex}.ingest-close-btn:hover{color:#ef4444;background:#fee2e2;border-color:#fecaca;transform:scale(1.05)}.ingest-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:20px;flex-direction:column;gap:1.25rem;padding:1.5rem;display:flex;position:relative}.ingest-section-title{color:#334155;margin:0;font-size:.95rem;font-weight:600}.ingest-radio-group{gap:2.5rem;display:flex}.ingest-radio-label{cursor:pointer;color:#475569;align-items:center;gap:.75rem;font-size:.95rem;transition:color .2s;display:flex}.ingest-radio-label:hover{color:#1e293b}.ingest-radio-label input[type=radio]{appearance:none;cursor:pointer;background:#fff;border:2px solid #cbd5e1;border-radius:50%;width:18px;height:18px;margin:0;transition:all .2s;position:relative}.ingest-radio-label input[type=radio]:checked{background:#eff6ff;border-color:#3b82f6}.ingest-radio-label input[type=radio]:checked:after{content:"";background:#3b82f6;border-radius:50%;width:8px;height:8px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ingest-radio-icon{color:#3b82f6}.ingest-radio-icon.create-new{color:#10b981}.ingest-input{color:#1e293b;background:#fff;border:1px solid #cbd5e1;border-radius:12px;width:100%;padding:.85rem 1.25rem;font-family:inherit;font-size:.95rem;transition:all .3s}.ingest-input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f626}.ingest-input::placeholder{color:#94a3b8}.ingest-dual-input{background:#fff;border:1px dashed #cbd5e1;border-radius:20px;flex-direction:column;gap:1rem;padding:1rem;display:flex}.ingest-dropzone{text-align:center;cursor:pointer;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:14px;flex-direction:column;align-items:center;gap:.75rem;padding:2.5rem 1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.ingest-dropzone:hover,.ingest-dropzone.active{background:#eff6ff;border-color:#93c5fd;transform:translateY(-2px)}.ingest-dropzone-icon{color:#3b82f6;margin-bottom:.5rem;transition:transform .3s}.ingest-dropzone:hover .ingest-dropzone-icon{transform:scale(1.1)}.ingest-dropzone-title{color:#334155;font-size:1.05rem;font-weight:600}.ingest-dropzone-subtitle{color:#64748b;font-size:.85rem}.ingest-dropzone-subtitle code{color:#3b82f6;background:#eff6ff;border-radius:6px;padding:.2rem .4rem;font-family:Consolas,monospace}.ingest-textarea{color:#1e293b;resize:vertical;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;width:100%;min-height:160px;padding:1.25rem;font-family:Consolas,Monaco,monospace;font-size:.9rem;line-height:1.6;transition:border-color .3s}.ingest-textarea:focus{background:#fff;border-color:#93c5fd;outline:none}.ingest-stats-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:20px;padding:1.5rem}.ingest-stats-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:flex-end;margin-bottom:1.25rem;padding-bottom:1rem;display:flex}.ingest-stats-title-wrap{flex-direction:column;gap:.35rem;display:flex}.ingest-stats-label{color:#3b82f6;letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:700}.ingest-stats-title{color:#1e293b;margin:0;font-size:1.15rem;font-weight:600}.ingest-stats-summary{color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:.4rem .8rem;font-size:.85rem;font-weight:500}.ingest-stats-body{grid-template-columns:1fr 280px;gap:1.5rem;display:grid}.ingest-tree{color:#334155;flex-direction:column;gap:.4rem;max-height:250px;padding:.5rem .5rem .5rem 0;font-size:.9rem;display:flex;overflow-y:auto}.ingest-tree::-webkit-scrollbar{width:6px}.ingest-tree::-webkit-scrollbar-track{background:#f1f5f9;border-radius:10px}.ingest-tree::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.ingest-tree-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:space-between;align-items:center;padding:.5rem .75rem;transition:background .2s;display:flex}.ingest-tree-item:hover{background:#f8fafc}.ingest-tree-item-content{align-items:center;gap:.6rem;display:flex}.ingest-tree-item.root{color:#1e293b;background:#eff6ff;border-color:#bfdbfe;font-weight:500}.ingest-tree-module{margin-left:1.5rem;position:relative}.ingest-tree-module:before{content:"";background:#cbd5e1;width:.75rem;height:1px;position:absolute;top:50%;left:-.75rem}.ingest-tree-module:after{content:"";background:#cbd5e1;width:1px;height:150%;position:absolute;top:-100%;left:-.75rem}.ingest-tree-task{background:0 0;border-color:#0000;margin-left:3rem;padding:.35rem .75rem;position:relative}.ingest-tree-task:hover{background:#f8fafc}.ingest-tree-task:before{content:"";background:#e2e8f0;width:.75rem;height:1px;position:absolute;top:50%;left:-.75rem}.ingest-tree-task:after{content:"";background:#e2e8f0;width:1px;height:150%;position:absolute;top:-100%;left:-.75rem}.ingest-tree-depth{color:#64748b;text-align:right;font-size:.7rem;line-height:1.2}.ingest-tree-depth strong{color:#334155}.ingest-insight-card{background:linear-gradient(135deg,#eff6ff,#f0fdf4);border:1px solid #bfdbfe;border-radius:16px;flex-direction:column;gap:.85rem;padding:1.25rem;display:flex;position:relative;overflow:hidden}.ingest-insight-icon{color:#3b82f6;background:#fff;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;display:flex;box-shadow:0 4px 6px #0000000d}.ingest-insight-title{color:#1e293b;font-size:.95rem;font-weight:600;line-height:1.3}.ingest-insight-text{color:#475569;font-size:.85rem;line-height:1.6}.ingest-actions{justify-content:flex-end;gap:1rem;margin-top:1rem;display:flex}.ingest-btn{cursor:pointer;border:none;border-radius:12px;align-items:center;gap:.6rem;padding:.85rem 1.75rem;font-family:inherit;font-size:.95rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.ingest-btn-cancel{color:#475569;background:#f1f5f9;border:1px solid #cbd5e1}.ingest-btn-cancel:hover{color:#1e293b;background:#e2e8f0}.ingest-btn-submit{color:#fff;background:#3b82f6;box-shadow:0 4px 6px #3b82f633}.ingest-btn-submit:hover{background:#2563eb;transform:translateY(-1px);box-shadow:0 6px 12px #3b82f64d}.ingest-btn-submit:active{transform:translateY(0)}.ingest-btn-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}@keyframes spin{to{transform:rotate(360deg)}}.ai-navbar{z-index:1000;background:#fff;border:1px solid #e2e8f0;border-radius:9999px;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto 2rem;padding:.75rem 1.5rem;transition:all .3s;display:flex;position:sticky;top:1.5rem;box-shadow:0 4px 15px #0000000d}.ai-navbar:hover{box-shadow:0 6px 20px #00000014}.ai-nav-brand{color:#1e293b;align-items:center;gap:.75rem;font-size:1.25rem;font-weight:700;text-decoration:none;display:flex}.ai-nav-brand .brand-icon{color:#1e293b;transition:transform .3s}.ai-nav-brand:hover .brand-icon{transform:rotate(30deg)}.ai-nav-brand-text{color:#1e293b}.ai-nav-links{align-items:center;gap:.5rem;display:flex}.ai-nav-link{color:#475569;cursor:pointer;background:0 0;border:none;border-radius:9999px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-family:inherit;font-size:.95rem;font-weight:500;text-decoration:none;transition:all .3s;display:flex}.ai-nav-link:hover{color:#1e293b;background:#f1f5f9}.ai-nav-link.active{color:#1e293b;background:#e2e8f0;font-weight:600}.ai-nav-dropdown-wrapper{position:relative}.ai-nav-dropdown-menu{transform-origin:top;background:#fff;border:1px solid #e2e8f0;border-radius:16px;min-width:240px;padding:.5rem;animation:.2s forwards slide-up;position:absolute;top:calc(100% + 1rem);right:0;box-shadow:0 10px 40px #00000014}.ai-nav-dropdown-menu:before{content:"";width:100%;height:1.5rem;position:absolute;top:-1.5rem;left:0}@keyframes slide-up{0%{opacity:0;transform:translateY(10px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.ai-dropdown-item{color:#475569;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:12px;align-items:flex-start;gap:.75rem;width:100%;padding:.75rem 1rem;text-decoration:none;transition:all .2s;display:flex}.ai-dropdown-item:hover{background:#f8fafc}.ai-dropdown-item-icon{color:#1e293b;background:#f1f5f9;border-radius:8px;justify-content:center;align-items:center;padding:.5rem;display:flex}.ai-dropdown-item:hover .ai-dropdown-item-icon{background:#e2e8f0}.ai-dropdown-item-title{color:#1e293b;margin-bottom:.2rem;font-size:.95rem;font-weight:600}.ai-dropdown-item-desc{color:#64748b;font-size:.8rem}.ai-dropdown-chevron{transition:transform .3s}.ai-dropdown-chevron.open{transform:rotate(180deg)}@media (width<=768px){.ai-navbar{border-radius:16px;flex-direction:column;align-items:stretch;gap:1rem;margin:1rem}.ai-nav-links{flex-direction:column;align-items:stretch}.ai-nav-dropdown-menu{box-shadow:none;background:#f8fafc;border:none;margin-top:.5rem;position:static}}.layout-container{color:#1e293b;background-color:#f8f9fa;min-height:100vh;position:relative;overflow:hidden}.layout-main-content{z-index:1;position:relative}.home-dashboard-light{color:#1e293b;z-index:1;background-color:#f8f9fa;min-height:100vh;padding:2.5rem;font-family:Inter,system-ui,-apple-system,sans-serif;position:relative;overflow:hidden}.dashboard-grid{grid-template-columns:1fr 1fr;gap:2rem;max-width:1400px;margin:0 auto;display:grid}@media (width<=1024px){.dashboard-grid{grid-template-columns:1fr}}.dashboard-solid-panel{background:#fff;border:1px solid #e2e8f0;border-radius:1.5rem;padding:2.5rem;transition:transform .3s,box-shadow .3s;box-shadow:0 4px 15px #0000000d}.dashboard-solid-panel:hover{transform:translateY(-4px);box-shadow:0 10px 25px #00000014}.panel-title{color:#0f172a;align-items:center;gap:.75rem;margin-top:0;margin-bottom:2rem;font-size:1.4rem;font-weight:700;display:flex}.title-icon{color:#3b82f6}.panel-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.panel-header .panel-title{margin-bottom:0}.chart-container-pie{justify-content:center;align-items:center;padding:1rem 0;display:flex;position:relative}.pie-center-text{text-align:center;pointer-events:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pie-percentage{color:#0f172a;font-size:3.5rem;font-weight:800;line-height:1.1;display:block}.pie-label{color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-top:.5rem;font-size:.85rem;font-weight:600;display:block}.chart-container-radar{justify-content:center;align-items:center;padding:1rem 0;display:flex}.solid-refresh-btn{color:#334155;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:.75rem;align-items:center;gap:.5rem;padding:.6rem 1.2rem;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.solid-refresh-btn:hover{background:#e2e8f0;border-color:#94a3b8}.spin{animation:1s linear infinite spin}.verticals-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;display:grid}.home-dashboard-light .vertical-card{background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 2px 10px #00000005!important}.home-dashboard-light .vertical-card h3{color:#0f172a!important}.home-dashboard-light .vertical-card p{color:#475569!important}.home-dashboard-light .vertical-card:hover{border-color:#cbd5e1!important;box-shadow:0 8px 24px #0000000f!important}.insights-content{flex-direction:column;gap:1.5rem;display:flex}.insight-card{background:#f8fafc;border:1px solid #e2e8f0;border-left:4px solid #3b82f6;border-radius:1rem;padding:1.5rem;transition:transform .3s,box-shadow .3s}.insight-card:hover{transform:translate(6px);box-shadow:0 4px 15px #0000000d}.insight-card h4{color:#0f172a;margin:0 0 .75rem;font-size:1.1rem;font-weight:600}.insight-card p{color:#475569;margin:0;font-size:.95rem;line-height:1.6}.loading-state,.empty-state{text-align:center;color:#64748b;padding:3rem}.icon-solid{color:#3b82f6}.java-dashboard{gap:var(--space-xl);margin-top:var(--space-md);flex-direction:column;display:flex}.java-header-card{background:var(--surface,#fff);border:1px solid #e2e8f0;border-radius:14px;padding:24px 28px;box-shadow:0 4px 20px #0000000a}.java-header-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.java-title-group h1{color:#0f172a;margin:0 0 6px;font-size:1.65rem;font-weight:700}.java-subtitle{color:#64748b;font-size:.88rem}.java-header-actions{align-items:center;gap:12px;display:flex}.java-btn-action{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:.85rem;font-weight:600;transition:all .2s;display:inline-flex}.java-btn-action:hover{background:#f1f5f9;border-color:#94a3b8}.java-btn-primary{color:#fff;background:#2563eb;border:none}.java-btn-primary:hover{background:#1d4ed8}.java-progress-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-top:16px;padding:16px 20px}.java-stat-text{color:#1e293b;justify-content:space-between;align-items:center;font-size:1.15rem;font-weight:700;display:flex}.java-stat-text small{color:#64748b;font-size:.88rem;font-weight:500}.java-bar-track{background:#e2e8f0;border-radius:99px;height:10px;margin-top:10px;overflow:hidden}.java-bar-fill{background:#10b981;border-radius:99px;height:100%;transition:width .4s}.java-nav-chips{flex-wrap:wrap;gap:10px;margin:10px 0;display:flex}.java-chip{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:99px;align-items:center;gap:8px;padding:7px 14px;font-size:.85rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.java-chip:hover{color:#2563eb;border-color:#2563eb;transform:translateY(-1px)}.java-chip.active{color:#1d4ed8;background:#eff6ff;border-color:#2563eb;font-weight:600}.java-chip-dot{background:#94a3b8;border-radius:99px;width:8px;height:8px}.java-chip.pass .java-chip-dot{background:#10b981}.java-chip.fail .java-chip-dot{background:#ef4444}.java-chip-badge{color:#64748b;margin-left:4px;font-size:.72rem}.java-study-guide{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;box-shadow:0 2px 10px #00000008}.java-study-guide-header{cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;justify-content:space-between;align-items:center;padding:16px 22px;transition:background .2s;display:flex}.java-study-guide-header:hover{background:#f8fafc}.java-study-guide-title{color:#1e293b;align-items:center;gap:10px;font-size:1.05rem;font-weight:600;display:flex}.java-study-guide-body{background:#fafafa;border-top:1px solid #e2e8f0;max-height:650px;padding:20px 24px;overflow-y:auto}.java-topics-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}.java-topic-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:16px;transition:all .2s}.java-topic-card:hover{border-color:#94a3b8;box-shadow:0 4px 12px #0000000d}.java-topic-title{color:#0f172a;align-items:center;gap:6px;margin-bottom:8px;font-size:.98rem;font-weight:600;display:flex}.java-topic-body{color:#475569;white-space:pre-wrap;font-size:.85rem;line-height:1.5}.java-problem-card{background:#fff;border:1px solid #e2e8f0;border-left:5px solid #94a3b8;border-radius:12px;transition:all .2s;overflow:hidden;box-shadow:0 4px 15px #0000000a}.java-problem-card.pass{border-left-color:#10b981}.java-problem-card.pending{border-left-color:#f59e0b}.java-card-head{background:#fff;border-bottom:1px solid #e2e8f0;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 24px;display:flex}.java-card-eyebrow{letter-spacing:.06em;text-transform:uppercase;color:#64748b;margin-bottom:4px;font-size:.72rem;font-weight:700}.java-card-title{color:#0f172a;margin:0 0 6px;font-size:1.25rem;font-weight:700}.java-card-meta{color:#64748b;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.8rem}.java-card-meta code{color:#334155;background:#f1f5f9;border-radius:4px;padding:2px 6px}.java-card-status{align-items:center;gap:10px;display:flex}.java-pill{color:#fff;cursor:pointer;background:#94a3b8;border:none;border-radius:99px;align-items:center;gap:6px;padding:6px 14px;font-size:.8rem;font-weight:700;transition:all .2s;display:inline-flex}.java-pill.pass{background:#10b981}.java-pill.pass:hover{background:#059669}.java-pill.pending{background:#64748b}.java-pill.pending:hover{background:#475569}.java-diff-tag{color:#0369a1;background:#e0f2fe;border-radius:6px;padding:3px 8px;font-size:.75rem;font-weight:600}.java-split-pane{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:0;display:grid}@media (width<=960px){.java-split-pane{grid-template-columns:1fr}}.java-statement-pane{background:#fff;min-width:0;padding:24px}.java-result-pane{background:#f8fafc;border-left:1px solid #e2e8f0;min-width:0;padding:24px}@media (width<=960px){.java-result-pane{border-top:1px solid #e2e8f0;border-left:none}}.java-section-header{text-transform:uppercase;letter-spacing:.05em;color:#475569;align-items:center;gap:8px;margin-bottom:12px;font-size:.95rem;font-weight:700;display:flex}.java-statement-text{color:#334155;white-space:pre-wrap;margin-bottom:18px;font-size:.92rem;line-height:1.65}.java-code-block{color:#f8fafc;background:#0f172a;border-radius:8px;margin:12px 0;padding:14px 16px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.85rem;line-height:1.5;position:relative;overflow-x:auto}.java-code-copy-btn{color:#e2e8f0;cursor:pointer;background:#ffffff1a;border:none;border-radius:4px;padding:4px 8px;font-size:.72rem;transition:background .2s;position:absolute;top:8px;right:8px}.java-code-copy-btn:hover{background:#ffffff40}.java-hints-drawer{color:#92400e;background:#fffbeb;border:1px solid #fef3c7;border-radius:8px;margin-top:16px;padding:12px 16px;font-size:.86rem}.java-tests-list{margin:0;padding:0;list-style:none}.java-test-item{border-bottom:1px solid #e2e8f0;align-items:flex-start;gap:10px;padding:10px 0;font-size:.85rem;display:flex}.java-test-item:last-child{border-bottom:none}.java-test-ico{flex-shrink:0;margin-top:2px}.java-test-name{color:#1e293b;font-family:ui-monospace,monospace;font-weight:600}.java-test-desc{color:#64748b;margin-top:2px;font-size:.8rem}.java-quick-info{color:#1e40af;background:#eff6ff;border:1px solid #dbeafe;border-radius:8px;margin-top:18px;padding:14px;font-size:.85rem}.vertical-detail-wrapper{--accent-primary:#3b82f6;--accent-secondary:#8b5cf6;--accent-success:#10b981;--panel-bg:#fff;--panel-border:#e2e8f0;--text-main:#1e293b;--text-muted:#64748b;--bg-main:#f8fafc;min-height:calc(100vh - 60px);color:var(--text-main);background-color:var(--bg-main);padding-bottom:3rem;animation:.6s ease-out fadeIn}.text-accent{color:var(--accent-primary)}.text-secondary{color:var(--text-muted)}.text-lg{font-size:1.5rem}.text-sm{font-size:.8rem}.text-xs{font-size:.7rem}.font-weight-bold{font-weight:700}.d-flex{display:flex}.flex-column{flex-direction:column}.justify-content-between{justify-content:space-between}.align-items-center{align-items:center}.gap-md{gap:1rem}.mx-auto{margin-left:auto;margin-right:auto}.mr-sm{margin-right:.5rem}.ml-sm{margin-left:.5rem}.mt-xs{margin-top:.25rem}.text-center{text-align:center}.hero-section{z-index:10;padding:2rem 0;position:relative}.hero-badge{color:var(--accent-primary);letter-spacing:1px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:20px;padding:.35rem 1rem;font-size:.8rem;font-weight:700;display:inline-block}.hero-title{letter-spacing:-1px;color:var(--text-main);margin-top:1rem;font-size:clamp(2.5rem,5vw,4rem)}.hero-subtitle{max-width:700px;color:var(--text-muted);margin:1rem auto 0;font-size:1.1rem;line-height:1.6}.dashboard-top-row{grid-template-columns:1fr 1.5fr;gap:2rem;display:grid}@media (width<=900px){.dashboard-top-row{grid-template-columns:1fr}}.light-panel{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:16px;padding:1.5rem;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}.maturity-panel{flex-direction:column;display:flex}.panel-title{color:var(--text-main);border-bottom:1px solid var(--panel-border);margin-bottom:1rem;padding-bottom:1rem;font-size:1.1rem;font-weight:600}.dials-container{flex:1;justify-content:space-around;align-items:center;padding:1rem 0;display:flex}.dial-wrapper{text-align:center;flex-direction:column;align-items:center;gap:1rem;display:flex}.dial-label{color:var(--text-muted);max-width:120px;font-size:.85rem;line-height:1.4}.dial-label strong{color:var(--text-main)}.circular-progress-wrapper{position:relative}.dial-large{width:130px;height:130px}.dial-small{width:100px;height:100px}.circular-progress-svg{width:100%;height:100%;transform:rotate(-90deg)}.circular-progress-bg{fill:none;stroke:#f1f5f9;stroke-width:6px}.circular-progress-bar{fill:none;stroke:var(--accent-primary);stroke-width:6px;stroke-linecap:round;transition:stroke-dashoffset 1s cubic-bezier(.4,0,.2,1)}.circular-progress-bar.bar-purple{stroke:var(--accent-secondary)}.circular-progress-text{color:var(--text-main);font-size:2rem;font-weight:800;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.dial-small .circular-progress-text{font-size:1.5rem}.radar-panel{flex-direction:column;display:flex}.radar-container{flex:1;width:100%;min-height:250px;margin-top:1rem}.specializations-section{margin-top:2rem}.section-title{color:var(--text-main);margin-bottom:1.5rem;font-size:1.5rem}.spec-card{cursor:pointer;flex-direction:column;padding:1.5rem;transition:all .3s;display:flex;position:relative;overflow:hidden}.spec-card--active{background:#faf5ff;border-color:#c4b5fd;box-shadow:0 4px 6px -1px #8b5cf61a}.spec-card--active:before{background:linear-gradient(90deg, var(--accent-secondary), var(--accent-primary))}.spec-badge{color:var(--text-muted);text-transform:uppercase;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:1rem;padding:.2rem .8rem;font-size:.7rem;font-weight:600;display:inline-block}.spec-card--active .spec-badge{color:var(--accent-secondary);background:#ede9fe;border-color:#ddd6fe}.spec-title{color:var(--text-main);font-size:1.1rem;font-weight:600;line-height:1.4}.spec-progress-text{color:var(--text-muted);font-size:.8rem;font-weight:500}.module-drawer{border-radius:20px;margin-top:2rem;padding:2rem;animation:.4s cubic-bezier(.16,1,.3,1) slideUp}.module-drawer__header{border-bottom:1px solid var(--panel-border);justify-content:space-between;align-items:flex-start;padding-bottom:1.5rem;display:flex}.module-drawer__title{color:var(--text-main);font-size:1.5rem;font-weight:700}.module-drawer__tasks{flex-direction:column;gap:1rem;margin-top:1.5rem;display:flex}.drawer-task-row{border:1px solid var(--panel-border);cursor:pointer;background:#f8fafc;border-radius:12px;align-items:center;padding:1.25rem;transition:all .2s;display:flex}.drawer-task-row:hover{background:#f1f5f9;border-color:#cbd5e1;transform:translate(4px)}.drawer-task-row--completed{background:#f0fdf4;border-color:#bbf7d0}.drawer-task-row__checkbox{border:2px solid #cbd5e1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;margin-right:1.25rem;transition:all .2s;display:flex}.drawer-task-row--completed .drawer-task-row__checkbox{border-color:var(--accent-success);background:#dcfce7}.drawer-task-row__content{flex-direction:column;flex:1;gap:.5rem;display:flex}.drawer-task-row__title{color:var(--text-main);font-size:1.05rem;font-weight:500;transition:color .2s}.drawer-task-row--completed .drawer-task-row__title{color:var(--text-muted);text-decoration:line-through}.skill-depth-container{align-items:center;gap:1rem;display:flex}.skill-depth-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem}.skill-depth-track{background:#e2e8f0;border-radius:3px;flex:1;max-width:200px;height:6px;overflow:hidden}.skill-depth-fill{background:linear-gradient(90deg, var(--accent-secondary), var(--accent-primary));border-radius:3px;height:100%;transition:width .5s ease-out}.drawer-task-row--completed .skill-depth-fill{background:var(--accent-success)}.lab-projects-container.light-mode{color:#1e293b;background:#f8fafc;flex-direction:column;align-items:center;min-height:100vh;padding:2rem;font-family:Inter,Roboto,sans-serif;display:flex;position:relative;overflow-x:hidden}.content-wrapper{flex-direction:column;gap:2rem;width:100%;max-width:1200px;padding-top:1rem;display:flex}.light-panel{background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}.light-panel-inner{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px}.light-btn{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:9999px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:inline-flex;box-shadow:0 1px 2px #0000000d}.light-btn:hover{color:#0f172a;background:#f1f5f9}.icon-btn{border-radius:12px;padding:.5rem}.hero-section{grid-template-columns:1fr 1.5fr;gap:1.5rem;display:grid}.panel-title{color:#475569;letter-spacing:.05em;text-transform:uppercase;margin-bottom:1.5rem;font-size:1rem;font-weight:600}.maturity-card{padding:2rem}.maturity-content{justify-content:space-between;align-items:center;height:100%;display:flex}.score-block{flex-direction:column;flex:1;gap:.5rem;display:flex}.dial-value{color:#0f172a;font-size:2.5rem;font-weight:700;line-height:1}.dial-value .max-val{color:#64748b;font-size:1.25rem;font-weight:500}.dial-value.highlight{background:linear-gradient(135deg,#0ea5e9,#6366f1);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:3rem}.dial-value-small{color:#1e293b;font-size:1.75rem;font-weight:600}.dial-label{color:#64748b;margin-top:.5rem;font-size:.875rem}.subtext{color:#64748b;max-width:90%;margin-top:1rem;font-size:.75rem;line-height:1.5}.score-visual{flex:.8;justify-content:center;align-items:center;display:flex}.network-flow-mock{width:100px;height:200px;position:relative}.flow-bubble{color:#0ea5e9;z-index:10;background:#fff;border:1px solid #0ea5e9;border-radius:99px;padding:.25rem .5rem;font-size:.75rem;font-weight:600;position:absolute;top:0;left:50%;transform:translate(-50%,-50%)}.flow-svg{width:100%;height:100%;overflow:visible}.competence-card{flex-direction:column;padding:2rem;display:flex}.radar-container{flex:1;position:relative}.path-status{margin-top:1rem}.path-labels{color:#64748b;justify-content:space-between;margin-bottom:.5rem;font-size:.75rem;display:flex}.path-labels.sub{color:#94a3b8;margin-top:.5rem;margin-bottom:0}.progress-bar-bg{background:#e2e8f0;border-radius:3px;width:100%;height:6px;overflow:hidden}.progress-bar-fill{background:linear-gradient(90deg,#0ea5e9,#8b5cf6);border-radius:3px;height:100%}.specializations-section{flex-direction:column;gap:1.5rem;display:flex}.section-header{justify-content:space-between;align-items:center;display:flex}.header-title-wrap{align-items:center;gap:.75rem;display:flex}.header-title-wrap h2{color:#0f172a;margin:0;font-size:1.5rem;font-weight:600}.header-icon{color:#0ea5e9}.nav-arrows{gap:.5rem;display:flex}.specializations-grid{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.spec-card{cursor:pointer;flex-direction:column;gap:1rem;padding:1.5rem;transition:all .3s;display:flex;position:relative;overflow:hidden}.spec-card:before{content:"";background:#e2e8f0;height:3px;transition:all .3s;position:absolute;top:0;left:0;right:0}.spec-card:hover{transform:translateY(-4px);box-shadow:0 10px 15px -3px #0000001a}.spec-card.active{border-color:#bae6fd;box-shadow:0 10px 15px -3px #0ea5e91a}.spec-card.active:before{background:#0ea5e9}.spec-module{color:#64748b;letter-spacing:.1em;font-size:.7rem;font-weight:700}.spec-title{color:#1e293b;flex:1;margin:0;font-size:1rem;font-weight:600;line-height:1.4}.spec-metrics{flex-direction:column;gap:.5rem;display:flex}.adherence{flex-direction:column;gap:.25rem;display:flex}.adherence .label{color:#64748b;font-size:.75rem}.mini-chart{width:100%}.spec-footer{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.progress-text{color:#64748b;font-size:.75rem;font-weight:500}.progress-ring{border:2px solid #e2e8f0;border-radius:50%;width:16px;height:16px}.progress-ring.started{border-color:#e2e8f0 #0ea5e9 #0ea5e9;transform:rotate(45deg)}.focus-panel{flex-direction:column;gap:2rem;padding:2rem;display:flex}.focus-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:flex-end;padding-bottom:1.5rem;display:flex}.focus-subtitle{color:#64748b;letter-spacing:.1em;margin-bottom:.5rem;font-size:.75rem;font-weight:600}.focus-title{color:#0f172a;margin:0;font-size:1.5rem;font-weight:700}.focus-progress{color:#64748b;font-size:.875rem;font-weight:500}.focus-content{grid-template-columns:2fr 1fr;gap:2rem;display:grid}.lessons-list{flex-direction:column;gap:.75rem;display:flex}.lesson-item{justify-content:space-between;align-items:center;padding:.75rem 1rem;transition:background .2s;display:flex}.lesson-item:hover{background:#f1f5f9}.lesson-info{align-items:center;gap:1rem;display:flex}.checkbox{background:#fff;border:1px solid #cbd5e1;border-radius:4px;width:16px;height:16px}.lesson-title{color:#334155;font-size:.95rem;font-weight:500}.lesson-stats{align-items:center;gap:1.5rem;display:flex}.skill-label{flex-direction:column;align-items:flex-end;line-height:1.1;display:flex}.skill-text{color:#64748b;text-transform:uppercase;font-size:.65rem}.skill-val{color:#0f172a;font-size:.85rem;font-weight:600}.skill-chart{width:80px}.arrow-icon{color:#94a3b8}.insight-panel-container{flex-direction:column;display:flex}.insight-panel{background:#fff;border:1px solid #bae6fd;border-radius:16px;padding:1.5rem;position:relative;overflow:hidden;box-shadow:0 4px 6px -1px #0ea5e91a}.insight-panel:before{content:"";background:linear-gradient(#0ea5e9,#8b5cf6);width:4px;height:100%;position:absolute;top:0;left:0}.insight-header{margin-bottom:1rem}.insight-title{color:#0f172a;margin:0;font-size:1rem;font-weight:700;line-height:1.4}.insight-text{color:#334155;margin:0;font-size:.9rem;line-height:1.6}@media (width<=1024px){.hero-section{grid-template-columns:1fr}.specializations-grid{grid-template-columns:repeat(2,1fr)}.focus-content{grid-template-columns:1fr}}@media (width<=768px){.specializations-grid{grid-template-columns:1fr}}
