:root{--bg:#070b12;--bg-elevated:#0f1623;--bg-card:#141e30b8;--glass-border:#94a3b81f;--text:#f1f5f9;--text-muted:#94a3b8;--accent:#6366f1;--accent-hover:#4f46e5;--success:#34d399;--border:#94a3b826;--radius:14px;--radius-lg:20px;--font:"DM Sans", system-ui, sans-serif;--font-mono:"JetBrains Mono", Consolas, monospace;--max-width:1440px;--shadow:0 8px 32px #00000059;--header-h:64px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font);background:var(--bg);color:var(--text);background-image:radial-gradient(80% 50% at 50% -20%,#6366f12e,#0000),radial-gradient(60% 40% at 100% 0,#e34c2614,#0000),radial-gradient(50% 30% at 0 100%,#264de414,#0000);min-height:100vh;margin:0;line-height:1.65}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{letter-spacing:-.02em;margin-top:0;font-weight:700;line-height:1.2}#root{min-height:100vh}.text-gradient{background:linear-gradient(135deg,#818cf8,#38bdf8,#34d399);color:#0000;-webkit-background-clip:text;background-clip:text}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--accent);margin:0 0 .5rem;font-size:.8rem;font-weight:600}.section-desc{color:var(--text-muted);margin:-.5rem 0 1.5rem}.card-glass{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:1.75rem}.app-shell{flex-direction:column;min-height:100vh;display:flex}.site-header{height:var(--header-h);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--glass-border);z-index:100;background:#0f1623d9;align-items:center;gap:1.5rem;padding:0 1.75rem;display:flex;position:sticky;top:0}.logo{color:var(--text);align-items:center;gap:.5rem;font-size:1.2rem;font-weight:700;text-decoration:none;display:flex}.logo-mark{width:2rem;height:2rem;font-family:var(--font-mono);color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:8px;justify-content:center;align-items:center;font-size:.75rem;display:inline-flex}.main-nav{flex:1;gap:.25rem;display:flex}.nav-link{color:var(--text-muted);border-radius:10px;padding:.45rem .9rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:color .15s,background .15s}.nav-link.active,.nav-link:hover{color:var(--text);background:#6366f126;text-decoration:none}.header-actions{align-items:center;gap:.5rem;display:flex}.user-greeting{color:var(--text-muted);margin-right:.25rem;font-size:.88rem}.site-main{width:100%;max-width:var(--max-width);flex:1;margin:0 auto;padding:2rem 1.75rem 3rem}.site-footer{border-top:1px solid var(--glass-border);text-align:center;color:var(--text-muted);padding:1.5rem;font-size:.88rem}.footer-meta{opacity:.65;margin-top:.35rem;font-size:.78rem}.btn{cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;padding:.55rem 1.1rem;font-family:inherit;font-size:.92rem;font-weight:600;text-decoration:none;transition:transform .12s,box-shadow .15s,background .15s;display:inline-flex}.btn:active{transform:scale(.98)}.btn-primary{color:#fff;background:linear-gradient(135deg,#6366f1,#4f46e5);box-shadow:0 4px 14px #6366f159}.btn-primary:hover{color:#fff;text-decoration:none;box-shadow:0 6px 20px #6366f173}.btn-glass{border:1px solid var(--glass-border);color:var(--text);background:#ffffff0f}.btn-glass:hover{color:var(--text);background:#ffffff1a;text-decoration:none}.btn-outline{border:1px solid var(--border);color:var(--text);background:0 0}.btn-outline:hover{border-color:var(--accent);color:var(--text);text-decoration:none}.btn-ghost{color:var(--text-muted);background:0 0}.btn-ghost:hover{color:var(--text);background:#ffffff0d}.btn-sm{padding:.35rem .75rem;font-size:.85rem}.btn-lg{padding:.8rem 1.6rem;font-size:1rem}.page-loading,.page-error{text-align:center;color:var(--text-muted);padding:4rem}.hero{text-align:center;padding:2rem 0 3.5rem;position:relative;overflow:hidden}.hero-glow{pointer-events:none;background:radial-gradient(circle,#6366f140,#0000 70%);height:400px;position:absolute;inset:-40% 10% auto}.hero-tag{color:var(--text-muted);letter-spacing:.04em;font-size:.88rem;position:relative}.hero h1{max-width:800px;margin:.75rem auto 1rem;font-size:clamp(2rem,5vw,3.25rem);position:relative}.hero-lead{color:var(--text-muted);max-width:560px;margin:0 auto 2rem;font-size:1.05rem;position:relative}.hero-stats{justify-content:center;gap:2.5rem;margin-bottom:2rem;display:flex;position:relative}.hero-stats div{flex-direction:column;align-items:center;display:flex}.hero-stats strong{color:var(--text);font-size:2rem;line-height:1}.hero-stats span{color:var(--text-muted);font-size:.85rem}.hero-actions{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex;position:relative}.home-path{margin:2rem 0 3rem}.home-path h2{margin-bottom:.25rem}.features-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;display:grid}.feature-card{background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:1.5rem;transition:border-color .2s,transform .2s}.feature-card:hover{border-color:#6366f159;transform:translateY(-2px)}.feature-icon{font-family:var(--font-mono);color:var(--accent);margin-bottom:.75rem;font-size:1.25rem;font-weight:700}.feature-card h3{margin-bottom:.5rem;font-size:1.1rem}.feature-card p{color:var(--text-muted);margin:0;font-size:.92rem}.learning-path{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding:1rem 0;display:flex}.path-item{align-items:center;gap:.75rem;display:flex;position:relative}.path-node{width:48px;height:48px;font-family:var(--font-mono);background:var(--bg-elevated);border:2px solid;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:.7rem;font-weight:700;display:flex}.path-info{flex-direction:column;min-width:120px;display:flex}.path-info strong{font-size:.95rem}.path-info span{color:var(--text-muted);font-size:.78rem}.path-line{background:linear-gradient(90deg, var(--border), transparent);width:32px;height:2px;margin:0 .25rem}.path-cta{margin-left:auto}.courses-page .learning-path{background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius-lg);margin-bottom:2.5rem;padding:1.25rem 1.5rem}.track-section{border-top:1px solid var(--glass-border);margin-bottom:3rem;padding-top:.5rem}.track-section:first-of-type{border-top:none}.track-header{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.track-icon{width:52px;height:52px;font-family:var(--font-mono);border-radius:14px;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex}.track-header h2{margin:0;font-size:1.5rem}.track-header p{color:var(--text-muted);margin:.15rem 0 0;font-size:.9rem}.track-stats{color:var(--text-muted);gap:1rem;margin-left:auto;font-size:.85rem;display:flex}.courses-hero{margin-bottom:.5rem}.courses-hero h1{font-size:clamp(1.75rem,4vw,2.5rem)}.page-header p{color:var(--text-muted);max-width:640px}.courses-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem;display:grid}.course-card{background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius-lg);border-left:3px solid var(--card-accent,var(--accent));flex-direction:column;gap:.65rem;padding:1.35rem;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex}.course-card:hover{border-color:var(--card-accent,var(--accent));transform:translateY(-3px);box-shadow:0 12px 40px #00000040}.course-card-top{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.course-step{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-right:auto;font-size:.72rem}.course-lang{font-size:.72rem;font-weight:700;font-family:var(--font-mono);border-radius:6px;padding:.2rem .55rem}.course-card-badge,.badge{color:#a5b4fc;background:#6366f133;border-radius:999px;padding:.2rem .55rem;font-size:.72rem;display:inline-block}.badge-outline{border:1px solid var(--border);color:var(--text-muted);border-radius:999px;padding:.2rem .55rem;font-size:.72rem}.course-card h3{margin:0;font-size:1.1rem}.course-card p{color:var(--text-muted);flex:1;margin:0;font-size:.9rem;line-height:1.5}.course-card-progress{color:var(--text-muted);align-items:center;gap:.75rem;font-size:.82rem;display:flex}.mini-track{background:#ffffff14;border-radius:3px;flex:1;height:5px;overflow:hidden}.mini-fill{border-radius:3px;height:100%;transition:width .35s}.progress-block{margin:1rem 0}.progress-label{color:var(--text-muted);margin-bottom:.4rem;font-size:.88rem}.progress-track{vertical-align:middle;background:#ffffff14;border-radius:4px;width:calc(100% - 3rem);height:8px;display:inline-block;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#6366f1,#34d399);border-radius:4px;height:100%;transition:width .4s}.progress-percent{color:var(--text-muted);margin-left:.5rem;font-size:.85rem}.breadcrumb{color:var(--text-muted);margin-bottom:1.25rem;font-size:.88rem}.breadcrumb a{color:var(--text-muted)}.breadcrumb a:hover{color:var(--text)}.course-detail-header{margin-bottom:2rem}.course-detail-badges{flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;display:flex}.course-detail-header h1{font-size:clamp(1.5rem,3vw,2rem)}.course-prereq{color:var(--text-muted);font-size:.9rem}.module-section{margin-bottom:1.25rem}.module-section h2{color:var(--text);align-items:center;gap:.75rem;margin-bottom:.85rem;font-size:1rem;display:flex}.module-num{color:#a5b4fc;background:#6366f133;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;font-size:.85rem;display:inline-flex}.lessons-list{margin:0;padding:0;list-style:none}.lessons-list li{border:1px solid var(--glass-border);border-radius:10px;margin-bottom:.45rem;transition:border-color .15s;overflow:hidden}.lessons-list li.done{background:#34d3990d;border-color:#34d39959}.lessons-list a{color:var(--text);align-items:center;gap:.65rem;padding:.8rem 1rem;font-size:.95rem;text-decoration:none;display:flex}.lessons-list a:hover{background:#ffffff08}.lesson-num{color:var(--text-muted);min-width:1.25rem;font-size:.75rem}.lesson-status{color:var(--success);font-weight:700}.course-nav-footer{flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:2rem;display:flex}.lesson-breadcrumb{padding:0 1.75rem}.lesson-layout{min-height:calc(100vh - var(--header-h) - 48px);grid-template-columns:minmax(300px,380px) 1fr;display:grid}.lesson-sidebar{background:var(--bg-elevated);border-right:1px solid var(--glass-border);border-top:3px solid var(--track-color,var(--accent));padding:1.5rem;overflow-y:auto}.lesson-track-badge{font-size:.75rem;font-weight:600;font-family:var(--font-mono);border-radius:6px;margin-bottom:.5rem;padding:.25rem .6rem;display:inline-block}.lesson-module-topic{color:var(--text-muted);border-left:2px solid var(--track-color,var(--accent));margin:0 0 .5rem;padding-left:.5rem;font-size:.82rem}.lesson-nav-prev,.lesson-nav-next{text-align:left;white-space:normal;font-size:.82rem;line-height:1.35}.module-section .module-topic-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-right:.5rem;font-size:.75rem}.lesson-sidebar h1{margin-bottom:1rem;font-size:1.35rem}.lesson-content{color:var(--text-muted);font-size:.92rem}.lesson-content code{font-family:var(--font-mono);color:#e2e8f0;background:#00000059;border-radius:4px;padding:.12rem .4rem;font-size:.85em}.task-hint{border-left:3px solid var(--track-color,var(--accent));background:#6366f11a;border-radius:10px;margin-top:1rem;padding:1rem;font-size:.88rem}.lesson-nav-buttons{flex-direction:column;gap:.5rem;margin-top:1.5rem;display:flex}.lesson-editor{background:#0d1117;min-width:0}.editor-layout{height:100%;min-height:calc(100vh - var(--header-h) - 48px);flex-direction:column;display:flex}.editor-panes{border-bottom:1px solid var(--glass-border);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));max-height:42vh;display:grid}.editor-pane{border-right:1px solid var(--glass-border);flex-direction:column;display:flex}.editor-pane label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.7rem;font-family:var(--font-mono);background:#161b22;padding:.4rem .85rem}.editor-pane textarea{color:#e6edf3;min-height:160px;font-family:var(--font-mono);resize:vertical;background:#0d1117;border:none;outline:none;flex:1;padding:.85rem;font-size:.82rem;line-height:1.5}.preview-pane{flex-direction:column;flex:1;display:flex}.preview-header{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);border-bottom:1px solid var(--glass-border);font-size:.7rem;font-family:var(--font-mono);background:#161b22;padding:.4rem .85rem}.code-preview{background:#fff;border:none;flex:1;width:100%;min-height:240px}.auth-page{justify-content:center;padding-top:1rem;display:flex}.auth-card label{color:var(--text-muted);margin-bottom:1rem;font-size:.88rem;display:block}.auth-card input{border:1px solid var(--glass-border);background:var(--bg);width:100%;color:var(--text);border-radius:10px;margin-top:.35rem;padding:.7rem .85rem;font-family:inherit;font-size:1rem;display:block}.auth-card input:focus{border-color:#0000;outline:2px solid #6366f180}.auth-sub{color:var(--text-muted);font-size:.85rem}.auth-footer{text-align:center;margin-top:1rem;font-size:.9rem}.form-error{color:#f87171;font-size:.9rem}.form-success{color:var(--success)}.form-hint{color:var(--text-muted);font-size:.85rem}.dashboard-summary{margin-bottom:2rem}.track-progress-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.track-progress-card{border-top:3px solid var(--track-color)}.track-progress-head{align-items:center;gap:.65rem;margin-bottom:.75rem;display:flex}.track-icon-sm{width:36px;height:36px;font-family:var(--font-mono);border-radius:10px;justify-content:center;align-items:center;font-size:.65rem;font-weight:700;display:flex}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;display:grid}.stat-card{text-align:center}.stat-value{background:linear-gradient(135deg,#818cf8,#38bdf8);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:2.25rem;font-weight:700;display:block}.stat-label{color:var(--text-muted);font-size:.88rem}.admin-note{color:var(--text-muted);font-size:.9rem}.api-error-banner{border-radius:var(--radius-lg);background:#f871711a;border:1px solid #f8717159;max-width:520px;margin:2rem auto;padding:1.5rem 1.75rem}.api-error-banner p{color:var(--text-muted);margin:.5rem 0}.api-error-hint code{font-family:var(--font-mono);background:#00000059;border-radius:4px;padding:.15rem .4rem;font-size:.85em}.page-decor{inset:var(--header-h) 0 0;pointer-events:none;z-index:0;position:fixed;overflow:hidden}.page-decor__side{flex-direction:column;justify-content:center;gap:2rem;width:min(220px,12vw);padding:2rem 0;display:flex;position:absolute;top:0;bottom:0}.page-decor__side--left{left:max(0px, calc((100% - var(--max-width)) / 2 - 240px))}.page-decor__side--right{right:max(0px, calc((100% - var(--max-width)) / 2 - 240px));align-items:flex-end}.page-decor__card{border:1px solid var(--glass-border);border-radius:var(--radius);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:.7;background:#141e308c;flex-direction:column;gap:.5rem;padding:1rem;display:flex}.page-decor__card--offset{transform:translate(12px)}.page-decor__side--right .page-decor__card--offset{transform:translate(-12px)}.page-decor__card code{font-family:var(--font-mono);color:var(--text-muted);font-size:.72rem}.page-decor__card img{border-radius:8px}.page-decor__tag{color:var(--text-muted);background:#6366f133;border-radius:6px;padding:.2rem .5rem;font-size:.75rem}.site-main{z-index:1;position:relative}.track-icon{object-fit:contain;display:block}.timeline-path__dot--logo{padding:6px}.timeline-path__dot--logo .track-icon{width:28px;height:28px}.theory-layout{grid-template-columns:300px 1fr;align-items:start;gap:1.5rem;display:grid}.theory-sidebar{top:calc(var(--header-h) + 1rem);max-height:calc(100vh - var(--header-h) - 2rem);padding:1.25rem;position:sticky;overflow-y:auto}.theory-tracks{flex-direction:column;gap:.35rem;margin:0 0 1rem;padding:0;list-style:none;display:flex}.theory-tracks button{width:100%;color:var(--text-muted);font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.theory-tracks button.active,.theory-tracks button:hover{color:var(--text);background:#6366f126}.theory-search{gap:.5rem;margin-bottom:1rem;display:flex}.theory-search input{border:1px solid var(--border);background:var(--bg-elevated);color:var(--text);font:inherit;border-radius:8px;flex:1;padding:.45rem .65rem}.theory-index,.theory-search-results{flex-direction:column;gap:.2rem;margin:0;padding:0;list-style:none;display:flex}.theory-index button,.theory-search-results button{text-align:left;width:100%;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.35rem .5rem;font-size:.85rem}.theory-index button.active,.theory-index button:hover,.theory-search-results button:hover{color:var(--text);background:#6366f11f}.theory-content{min-height:400px;padding:1.5rem 2rem}.theory-welcome{text-align:center;padding:3rem 1rem}.theory-welcome h2{margin:1rem 0 .5rem}.theory-attribution{color:var(--text-muted);margin:0 0 1rem;font-size:.82rem}.theory-article{font-size:.95rem;line-height:1.7}.theory-article h1,.theory-article h2,.theory-article h3{margin-top:1.5rem}.theory-article code{font-family:var(--font-mono);background:#0000004d;border-radius:4px;padding:.1rem .35rem;font-size:.88em}.theory-article pre{background:var(--bg-elevated);border-radius:var(--radius);padding:1rem;overflow-x:auto}.exam-header,.exam-locked,.exam-result,.exam-cert-banner{margin-bottom:1.5rem;padding:1.5rem}.exam-locked{text-align:center}.exam-locked__icon{font-size:2.5rem}.exam-question{border:none;margin-bottom:1rem;padding:1.25rem}.exam-question legend{margin-bottom:.75rem;padding:0;font-weight:600}.exam-option{cursor:pointer;align-items:center;gap:.5rem;padding:.4rem 0;display:flex}.exam-result--pass{background:#34d39914;border:1px solid #34d39966}.exam-result--fail{border:1px solid #f8717159}.course-exam-block{margin-bottom:1rem;padding:1.25rem 1.5rem}.course-exam-block__head{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.course-exam-block__head h3{margin:0}.badge--success{color:var(--success);background:#34d39933}.badge--locked{color:#f87171;background:#f8717126}.badge--ready{color:#818cf8;background:#6366f133}.certificate{max-width:720px;margin:0 auto 1.5rem;padding:2rem}.certificate__border{border:3px solid var(--track-color,var(--accent));border-radius:var(--radius-lg);text-align:center;padding:2.5rem}.certificate__header h1{margin:.25rem 0;font-size:2rem}.certificate__name{color:var(--track-color,var(--accent));margin:1.5rem 0 .5rem;font-size:1.75rem}.certificate__course{color:var(--text-muted);font-size:1.1rem}.certificate-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.admin-layout{grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem;display:grid}.admin-panel{padding:1.25rem}.admin-panel--wide{grid-column:1/-1}.admin-panel h2{margin:0 0 1rem;font-size:1.05rem}.admin-form{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.admin-form input,.admin-form select,.admin-form textarea{border:1px solid var(--border);background:var(--bg-elevated);color:var(--text);font:inherit;border-radius:8px;padding:.5rem .65rem}.admin-form label{color:var(--text-muted);flex-direction:column;gap:.25rem;font-size:.82rem;display:flex}.admin-code-fields{grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}.admin-form-actions{gap:.5rem;display:flex}.admin-list,.admin-lesson-list{flex-direction:column;gap:.35rem;max-height:280px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.admin-list li,.admin-lesson-list li{background:#00000026;border-radius:8px;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.admin-list li.active{background:#6366f133}.admin-list button:first-child{text-align:left;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:none;flex:1;padding:.45rem .65rem}.admin-del{color:#f87171;cursor:pointer;background:0 0;border:none;padding:0 .5rem;font-size:1.2rem}.admin-lesson-list li{padding:.45rem .65rem}.admin-hint{color:var(--text-muted);font-size:.9rem}.admin-flash{color:var(--success);background:#34d39926;border-radius:8px;margin-bottom:1rem;padding:.65rem 1rem}@media print{.site-header,.site-footer,.page-decor,.certificate-actions{display:none!important}.certificate{box-shadow:none;border:none}}@media (width<=1400px){.page-decor{display:none}}@media (width<=1024px){.theory-layout{grid-template-columns:1fr}.theory-sidebar{max-height:none;position:static}.admin-layout,.admin-code-fields{grid-template-columns:1fr}}@media (width<=900px){.site-header{flex-wrap:wrap;gap:.75rem;height:auto;padding:.75rem 1rem}.main-nav{order:3;width:100%}.path-line{display:none}.learning-path{flex-direction:column;align-items:stretch}.path-cta,.track-stats{width:100%;margin-left:0}.lesson-page{width:calc(100% + 2rem);margin:0 -1rem}.lesson-layout{grid-template-columns:1fr}.site-main{padding:1.25rem 1rem 2rem}.user-greeting{display:none}}.track-icon-wrapper{background:#ffffff0d;border:2px solid #0000;border-radius:12px;justify-content:center;align-items:center;width:56px;height:56px;transition:all .3s;display:flex;position:relative;overflow:hidden}.track-icon-wrapper.html{border-color:#e74a3b99;box-shadow:0 0 20px #e74a3b33}.track-icon-wrapper.html:hover{border-color:#e94b3b;transform:translateY(-2px);box-shadow:0 0 30px #e74a3b66}.track-icon-wrapper.css{border-color:#2f73f499;box-shadow:0 0 20px #2f73f433}.track-icon-wrapper.css:hover{border-color:#2f73f4;transform:translateY(-2px);box-shadow:0 0 30px #2f73f466}.track-icon-wrapper.javascript{border-color:#f0db4f99;box-shadow:0 0 20px #f0db4f33}.track-icon-wrapper.javascript:hover{border-color:#f0db4f;transform:translateY(-2px);box-shadow:0 0 30px #f0db4f66}.track-icon{object-fit:contain;filter:drop-shadow(0 2px 4px #0000004d);width:32px;height:32px;transition:transform .3s}.track-icon-wrapper:hover .track-icon{transform:scale(1.1)}.track-icon-wrapper.active{background:#ffffff1a}@media (width<=768px){.track-icon-wrapper{width:48px;height:48px}.track-icon{width:28px;height:28px}}:root{--max-width-wide:1440px;--max-width-full:100%}.site-main--flush{max-width:none;padding:0}.logo-text .logo-accent{color:#a5b4fc}.logo--footer{margin-bottom:.75rem}.user-chip{border:1px solid var(--glass-border);background:#ffffff0a;border-radius:999px;align-items:center;gap:.5rem;padding:.25rem .25rem .25rem .35rem;display:flex}.user-chip__avatar{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.85rem;font-weight:700;display:flex}.user-chip__name{color:var(--text-muted);margin-right:.25rem;font-size:.88rem}.site-footer{text-align:left;padding:2.5rem 1.75rem 1.5rem}.footer-grid{max-width:var(--max-width-wide);grid-template-columns:2fr 1fr 1fr;gap:2rem;margin:0 auto 2rem;display:grid}.footer-brand p{color:var(--text-muted);max-width:280px;font-size:.9rem}.footer-grid h4{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.75rem;font-size:.8rem}.footer-grid a{color:var(--text-muted);margin-bottom:.35rem;text-decoration:none;display:block}.footer-grid a:hover{color:var(--text)}.footer-tag{color:#a5b4fc;background:#6366f126;border-radius:6px;margin:0 .25rem .25rem 0;padding:.2rem .5rem;font-size:.75rem;display:inline-block}.footer-copy{text-align:center;max-width:var(--max-width-wide);border-top:1px solid var(--glass-border);margin:0 auto;padding-top:1.5rem}.page-hero{margin-bottom:2.5rem}.page-hero--split,.page-hero{align-items:center;gap:2rem;display:grid}.page-hero--split{grid-template-columns:1fr 1fr}.page-hero__desc{color:var(--text-muted);max-width:540px;font-size:1.05rem;line-height:1.7}.page-hero__aside{justify-content:center;display:flex}.page-hero h1{margin-bottom:.75rem;font-size:clamp(1.85rem,4vw,2.75rem)}.hero-preview{border:1px solid var(--glass-border);border-radius:14px;width:100%;max-width:420px;overflow:hidden;transform:perspective(800px)rotateY(-4deg)rotateX(2deg);box-shadow:0 24px 60px #00000073,0 0 0 1px #ffffff0d}.hero-preview__chrome{background:#161b22;border-bottom:1px solid #30363d;align-items:center;gap:6px;padding:10px 12px;display:flex}.hero-preview__chrome span{background:#484f58;border-radius:50%;width:10px;height:10px}.hero-preview__chrome span:first-child{background:#ff5f57}.hero-preview__chrome span:nth-child(2){background:#febc2e}.hero-preview__chrome span:nth-child(3){background:#28c840}.hero-preview__url{color:#8b949e;font-size:.7rem;font-family:var(--font-mono);background:#0d1117;border-radius:6px;flex:1;margin-left:8px;padding:4px 10px}.hero-preview__body{grid-template-columns:1fr 1fr;min-height:200px;display:grid}.hero-preview__pane{background:#0d1117;border-right:1px solid #30363d}.hero-preview__pane--view{background:#fff;border-right:none}.hero-preview__tab{text-transform:uppercase;color:#8b949e;font-size:.65rem;font-family:var(--font-mono);border-bottom:1px solid #30363d;padding:6px 10px}.hero-preview__tab.active{color:#58a6ff;border-bottom-color:#58a6ff}.hero-preview__pane pre{font-size:.68rem;line-height:1.5;font-family:var(--font-mono);color:#c9d1d9;margin:0;padding:12px}.tok-tag{color:#7ee787}.hero-preview__mock-page{color:#1e293b;padding:1.25rem}.hero-preview__mock-page h3{color:#264de4;margin:0 0 .35rem}.hero-pills{flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem;display:flex}.pill{color:#c7d2fe;background:#6366f11f;border:1px solid #6366f140;border-radius:999px;padding:.35rem .75rem;font-size:.78rem}.pill--html{color:#fdba74;background:#e34c261a;border-color:#e34c2659}.pill--css{color:#93c5fd;background:#264de41a;border-color:#264de459}.pill--js{color:#fde047;background:#c9a2271a;border-color:#c9a22759}.hero-stats--row{grid-template-columns:repeat(4,1fr);gap:.75rem;max-width:480px;margin-bottom:1.5rem;display:grid}.stat-tile{border:1px solid var(--glass-border);text-align:center;background:#ffffff0a;border-radius:12px;padding:.85rem}.stat-tile strong{font-size:1.5rem;line-height:1.1;display:block}.stat-tile span{color:var(--text-muted);font-size:.75rem}.stat-tile--accent{background:#6366f11a;border-color:#6366f166}.section-block{margin-bottom:3rem}.section-head h2{font-size:1.65rem}.bento-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.bento--wide{grid-column:1/-1}.bento{position:relative;overflow:hidden}.bento__icon{font-family:var(--font-mono);margin-bottom:.75rem;font-size:1.25rem;font-weight:700;display:block}.bento h3{margin-bottom:.5rem;font-size:1.1rem}.bento p{color:var(--text-muted);margin:0;font-size:.92rem}.bento__logos{gap:.75rem;margin-bottom:.75rem;display:flex}.timeline-path{flex-direction:column;gap:0;display:flex}.timeline-path__item{grid-template-columns:56px 1fr;gap:1rem;display:grid}.timeline-path__rail{flex-direction:column;align-items:center;display:flex}.timeline-path__dot{background:var(--bg-elevated);width:48px;height:48px;font-family:var(--font-mono);border:2px solid;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;font-size:.7rem;font-weight:700;display:flex}.timeline-path__line{background:linear-gradient(180deg, var(--glass-border), transparent);flex:1;width:2px;min-height:24px;margin:4px 0}.timeline-path__card{margin-bottom:1.25rem}.timeline-path__head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.35rem;display:flex}.timeline-path__head h3{margin:0;font-size:1.15rem}.timeline-path__step{color:var(--text-muted);white-space:nowrap;font-size:.72rem}.timeline-path__meta{color:var(--text-muted);gap:1rem;margin:.5rem 0 .75rem;font-size:.85rem;display:flex}.timeline-path__cta{align-self:flex-start;margin-top:.5rem}.section-block--path{border:1px solid var(--glass-border);border-radius:var(--radius-lg);background:#0f162380;padding:2rem}.cta-band{border-radius:var(--radius-lg);background:linear-gradient(135deg,#6366f140,#38bdf81f);border:1px solid #6366f159;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;margin-top:2rem;padding:2rem 2.25rem;display:flex}.cta-band h2{margin-bottom:.35rem}.cta-band p{color:var(--text-muted);margin:0}.courses-layout{grid-template-columns:280px 1fr;align-items:start;gap:2rem;display:grid}.courses-sidebar{top:calc(var(--header-h) + 1rem);position:sticky}.courses-sidebar h3{margin-bottom:1rem;font-size:.95rem}.track-nav{flex-direction:column;gap:.35rem;margin-bottom:1.5rem;display:flex}.track-nav__btn{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:.75rem;padding:.65rem .75rem;font-family:inherit;transition:background .15s,border-color .15s;display:flex}.track-nav__btn:hover,.track-nav__btn.active{border-color:var(--tn-color,var(--glass-border));background:#ffffff0d}.track-nav__btn.active strong{color:var(--tn-color,var(--accent))}.track-nav__icon{width:36px;height:36px;font-family:var(--font-mono);background:#ffffff0d;border-radius:8px;justify-content:center;align-items:center;font-size:.65rem;font-weight:700;display:flex}.track-nav__btn small{color:var(--text-muted);font-size:.75rem;font-weight:400;display:block}.courses-sidebar__timeline .timeline-path__cta{display:none}.courses-sidebar__timeline .timeline-path__card{margin-bottom:.75rem;padding:1rem}.courses-sidebar__timeline .timeline-path__item{grid-template-columns:40px 1fr}.courses-sidebar__timeline .timeline-path__dot{width:36px;height:36px;font-size:.6rem}.track-header--rich{flex-wrap:wrap;gap:1.5rem}.track-header__left{flex:1;align-items:flex-start;gap:1rem;display:flex}.track-icon--lg{width:56px;height:56px;font-size:.85rem}.track-header__stats{gap:1.5rem;display:flex;padding:1rem 1.25rem!important}.track-header__stats div{text-align:center}.track-header__stats strong{font-size:1.35rem;display:block}.track-header__stats span{color:var(--text-muted);font-size:.75rem}.course-card{position:relative;overflow:hidden}.course-card__glow{background:var(--card-accent);opacity:.12;filter:blur(40px);pointer-events:none;width:120px;height:120px;position:absolute;top:-40%;right:-20%}.course-step-num{font-family:var(--font-mono);color:#ffffff14;font-size:2rem;font-weight:700;line-height:1}.course-card__cta{gap:.35rem;margin-top:auto}.course-card--done{border-color:#34d39959}.courses-grid--stagger .course-card:nth-child(odd){transform:translateY(4px)}.breadcrumb-nav{flex-wrap:wrap;align-items:center;gap:.25rem;margin-bottom:1.25rem;font-size:.88rem;display:flex}.breadcrumb-nav a{color:var(--text-muted);text-decoration:none}.breadcrumb-nav a:hover{color:var(--text)}.breadcrumb-nav__sep{color:var(--text-muted);opacity:.5;margin:0 .15rem}.breadcrumb-nav__current{color:var(--text)}.course-detail-layout{grid-template-columns:260px 1fr;align-items:start;gap:1.5rem;display:grid}.course-syllabus{top:calc(var(--header-h) + 1rem);position:sticky}.course-syllabus__title{margin-bottom:1rem;font-size:1rem}.syllabus-mini{margin:0;padding:0;list-style:none}.syllabus-mini li{margin-bottom:.25rem}.syllabus-mini a{color:var(--text-muted);border:1px solid #0000;border-radius:8px;gap:.65rem;padding:.5rem .65rem;font-size:.85rem;text-decoration:none;display:flex}.syllabus-mini li.current a{color:var(--text);background:#6366f11f;border-color:#6366f14d}.syllabus-mini__n{font-family:var(--font-mono);color:var(--accent);min-width:1.25rem;font-weight:600}.course-detail-header__top{justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:1rem;display:flex}.modules-accordion{flex-direction:column;gap:.75rem;margin-top:1.5rem;display:flex}.module-panel{overflow:hidden;padding:0!important}.module-panel__head{cursor:pointer;align-items:center;gap:.75rem;padding:1rem 1.25rem;list-style:none;display:flex}.module-panel__head::-webkit-details-marker{display:none}.module-panel__title{flex:1;font-weight:600}.module-panel__count{color:var(--text-muted);font-size:.78rem}.lessons-list--rich a{border-top:1px solid var(--glass-border);padding:.85rem 1.25rem}.lesson-pill{background:#6366f126;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.8rem;font-weight:600;display:flex}.lesson-list__body{flex-direction:column;flex:1;gap:.15rem;display:flex}.lesson-list__body strong{font-size:.92rem;font-weight:500}.lesson-list__body small{color:var(--text-muted);font-size:.75rem}.course-nav-footer{grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem;display:grid;overflow:hidden;padding:0!important}.nav-card-link{color:var(--text);border:1px solid #0000;padding:1rem 1.25rem;text-decoration:none;transition:background .15s}.nav-card-link:hover{background:#ffffff0a;text-decoration:none}.nav-card-link small{color:var(--text-muted);margin-bottom:.25rem;font-size:.75rem;display:block}.nav-card-link--next{text-align:right;border-left:1px solid var(--glass-border)}.progress-ring{display:inline-flex;position:relative}.progress-ring__bg{stroke:#ffffff14}.progress-ring__fill{stroke:#6366f1;transition:stroke-dashoffset .5s}.progress-ring__label{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.progress-ring__label strong{font-size:1.35rem}.progress-ring__label span{color:var(--text-muted);font-size:.72rem}.progress-ring__label small{color:var(--text-muted);font-size:.65rem}.dashboard-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.dashboard-panel--wide{grid-column:1/-1}.dashboard-panel h2,.dashboard-panel h3{margin-bottom:1rem;font-size:1.1rem}.dashboard-panel__head{align-items:center;gap:.65rem;margin-bottom:.75rem;display:flex}.dashboard-panel__ring{justify-content:center;margin-bottom:.75rem;display:flex}.dashboard-quick{grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.25rem;display:grid}.quick-stat{text-align:center;background:#0003;border-radius:10px;padding:1rem}.quick-stat strong{font-size:1.5rem;display:block}.quick-stat span{color:var(--text-muted);font-size:.8rem}.btn-block{width:100%}.auth-layout{min-height:calc(100vh - var(--header-h) - 80px);grid-template-columns:1fr 1fr;max-width:none;margin:-2rem -1.75rem 0;display:grid}.auth-brand{border-right:1px solid var(--glass-border);background:linear-gradient(160deg,#6366f133,#0f1623f2);flex-direction:column;justify-content:center;padding:3rem;display:flex}.auth-brand h2{margin:1.5rem 0 .75rem;font-size:1.75rem}.auth-brand p{color:var(--text-muted);max-width:360px}.auth-brand__list{color:var(--text-muted);margin:1.5rem 0 0;padding-left:1.25rem}.auth-form-wrap{justify-content:center;align-items:center;padding:2rem;display:flex}.auth-card{width:100%;max-width:400px}.lesson-workspace{min-height:calc(100vh - var(--header-h));background:#0a0e14;flex-direction:column;display:flex}.lesson-toolbar{border-bottom:1px solid var(--glass-border);background:#0f1623f2;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.25rem;display:flex}.lesson-toolbar .breadcrumb-nav{margin:0}.lesson-toolbar__right{align-items:center;gap:.75rem;display:flex}.lesson-toolbar__progress{color:var(--text-muted);background:#ffffff0d;border-radius:8px;padding:.35rem .75rem;font-size:.85rem}.lesson-workspace .lesson-layout{flex:1;grid-template-columns:minmax(320px,380px) 1fr;width:100%;min-height:0;margin:0}.lesson-sidebar.card-glass{border-radius:var(--radius-lg);border-top:3px solid var(--track-color);max-height:calc(100vh - var(--header-h) - 80px);background:var(--bg-card);flex-direction:column;margin:1rem;display:flex}.lesson-content-scroll{flex:1;margin-bottom:1rem;padding-right:.5rem;overflow-y:auto}.lesson-sidebar__actions{border-top:1px solid var(--glass-border);flex-direction:column;gap:.5rem;padding-top:1rem;display:flex}.lesson-editor-panel{border-radius:var(--radius-lg);border:1px solid var(--glass-border);flex-direction:column;margin:1rem 1rem 1rem 0;display:flex;overflow:hidden}.editor-chrome{background:#161b22;border-bottom:1px solid #30363d;align-items:center;gap:6px;padding:8px 12px;display:flex}.editor-chrome__dot{background:#484f58;border-radius:50%;width:10px;height:10px}.editor-chrome__dot:first-child{background:#ff5f57}.editor-chrome__dot:nth-child(2){background:#febc2e}.editor-chrome__dot:nth-child(3){background:#28c840}.editor-chrome__title{color:#8b949e;font-size:.72rem;font-family:var(--font-mono);margin-left:8px}.task-hint__label{text-transform:uppercase;letter-spacing:.08em;color:var(--track-color,var(--accent));margin-bottom:.35rem;font-size:.7rem;font-weight:600;display:block}.lesson-loading{min-height:50vh}.home-page .hero{text-align:left;padding:0}@media (width<=1024px){.page-hero--split{grid-template-columns:1fr}.hero-preview{max-width:100%;transform:none}.courses-layout,.course-detail-layout{grid-template-columns:1fr}.courses-sidebar,.course-syllabus{position:static}.dashboard-grid,.footer-grid{grid-template-columns:1fr}.auth-layout{grid-template-columns:1fr;margin:0}.auth-brand{display:none}.bento-grid{grid-template-columns:1fr}.hero-stats--row{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.lesson-workspace .lesson-layout{grid-template-columns:1fr}.lesson-editor-panel{min-height:360px;margin:0 1rem 1rem}}
