:root{font-family:"Source Sans 3",system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;color:#e8eaed;background:#0d1117;--home-bg: #0d1117;--home-surface: #161b22;--home-border: #2b3440;--home-text: #e8eaed;--home-muted: #a2adbb;--home-accent: #6cb6ff;--home-accent-soft: rgba(108, 182, 255, .16);--bf-bg: #0b0f14;--bf-surface: #111821;--bf-surface-2: #162130;--bf-border: #263241;--bf-border-strong: #3a4a5f;--bf-text: #edf2f7;--bf-muted: #9fb0c3;--bf-accent: #58a6ff;--bf-accent-strong: #2f81f7;--bf-good: #3fb950;--bf-bad: #ff6b6b;--bf-warning: #f2cc60;--lab-canvas: #08111e;--lab-surface: #101d2c;--lab-panel-bg: #101a28;--lab-terminal-bg: #1c2128;--lab-terminal-fg: #c9d1d9;--lab-border: #2a405b;--lab-border-strong: #365675;--lab-accent: #58a6ff;--lab-accent-soft: #132236;--lab-accent-hover: #263f5c;--lab-deep: #0a1422;--lab-card-bg: #0d1826;--lab-text: #f0f6fc;--lab-muted: #8fa3ba;--lab-success: #2ea043;--lab-success-soft: #3d6b47;--lab-danger: #f85149}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(120deg,rgba(20,83,117,.28),transparent 34%),linear-gradient(150deg,transparent 44%,rgba(22,33,48,.72) 100%),var(--bf-bg)}a{color:#58a6ff}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid rgba(108,182,255,.85);outline-offset:3px}button{cursor:pointer;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;background:#238636;color:#fff;transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .12s ease}button:not(:disabled):active{transform:translateY(1px)}button.secondary{border:1px solid var(--bf-border-strong);background:var(--bf-surface-2);color:var(--bf-text)}button.secondary:not(:disabled):hover{border-color:var(--bf-accent);background:#6cb6ff1f}button.danger{background:#da3633}button.danger:not(:disabled):hover{background:#f85149}button:disabled{opacity:.5;cursor:not-allowed}input{padding:.5rem .75rem;border-radius:6px;border:1px solid #30363d;background:#161b22;color:#e8eaed;width:100%;max-width:320px}.card{background:#161b22;border:1px solid #30363d;border-radius:8px;padding:1.25rem;margin-bottom:1rem}.layout{max-width:1100px;margin:0 auto;padding:1rem 1.5rem}.auth-page{min-height:calc(100vh - 96px);display:grid;place-items:center}.auth-shell{width:100%;max-width:420px}.auth-shell h1{margin-top:0}.auth-card{width:100%}.app-footer{margin-top:1.2rem;padding-top:.75rem;padding-bottom:1rem;border-top:1px solid #30363d}.app-footer-copy{margin:0;color:#a2adbb;font-size:.84rem}.nav{display:flex;gap:1rem;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap}.nav a{text-decoration:none;padding:.25rem .15rem;border-radius:6px}.nav a:hover{color:#8fd3ff;text-decoration:none}.nav a[aria-current=page]{color:var(--bf-text);background:#58a6ff24}.nav-guest-badge{border:1px solid #3a4a5f;border-radius:999px;padding:.15rem .55rem;font-size:.78rem;color:#9fb0c3}.nav-guest-links{margin-left:auto;display:inline-flex;gap:.85rem}.user-menu{position:relative;margin-left:auto}.user-menu-trigger{display:inline-flex;align-items:center;gap:.6rem;padding:.35rem .55rem;border-radius:10px;border:1px solid transparent;background:transparent;color:inherit;cursor:pointer}.user-menu-trigger:hover{border-color:#30363d;background:#f0f6fc0a}.user-menu-avatar{width:28px;height:28px;border-radius:999px;background:#0b1220;border:1px solid #30363d;display:grid;place-items:center;font-weight:700;color:#c9d1d9}.user-menu-dropdown{position:absolute;right:0;top:calc(100% + 8px);min-width:240px;z-index:50;border:1px solid #30363d;border-radius:12px;background:#0d1117;box-shadow:0 16px 40px #0000008c;padding:.5rem}.user-menu-title{padding:.4rem .5rem .6rem;border-bottom:1px solid #30363d;margin-bottom:.5rem}.user-menu-title strong{display:block}.user-menu-title span{display:block;opacity:.75;font-size:.88rem}.user-menu-item{width:100%;text-align:left;padding:.55rem .6rem;border-radius:10px;border:1px solid transparent;background:transparent;color:inherit;cursor:pointer}.user-menu-item:hover{border-color:#30363d;background:#f0f6fc0a}.user-menu-sep{height:1px;background:#30363d;margin:.5rem .35rem}.terminal-wrap{height:420px;border:1px solid var(--lab-border);border-radius:8px;overflow:hidden;background:var(--lab-terminal-bg)}.error{color:#f85149;font-size:.9rem}.welcome-card h1{margin-top:0}.welcome-lead{font-size:1.05rem;margin:.75rem 0 1rem}.home-page{color:var(--home-text)}.home-hero{display:grid;grid-template-columns:minmax(320px,1fr) minmax(280px,.9fr);gap:1.25rem;align-items:stretch;min-height:260px}.home-hero-content{display:flex;flex-direction:column;justify-content:center;gap:.75rem}.home-eyebrow{margin:0;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:700;color:var(--home-muted)}.home-title{margin:0;font-size:clamp(1.75rem,3.4vw,2.15rem);line-height:1.18;letter-spacing:-.02em}.home-lead{margin:0;color:var(--home-text);line-height:1.6}.home-sublead{margin:0;color:var(--home-muted);line-height:1.58;font-size:.97rem}.home-hero-art{border-radius:12px;border:1px solid var(--home-border);background:#101820;display:flex;overflow:hidden;box-shadow:0 10px 28px #0000003d}.home-hero-art img{width:100%;height:100%;aspect-ratio:16 / 10;object-fit:cover;object-position:center;display:block}.home-cta-row{margin-top:1rem}.home-cta-text{margin:0;color:var(--home-text)}.home-footer{margin-top:1.2rem;padding-top:.75rem;border-top:1px solid var(--home-border)}.home-details-fallback{margin:1rem 0 0;color:var(--home-muted);font-size:.92rem}.home-details{margin-top:1rem;opacity:0;transform:translateY(12px);transition:opacity .35s ease,transform .35s ease}.home-details-visible{opacity:1;transform:translateY(0)}.home-details-title{margin:0 0 .85rem;font-size:1.2rem}.home-details-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.8rem}.home-details-item{border:1px solid var(--home-border);border-radius:10px;background:#121820;padding:.85rem}.home-details-item h3{margin:0 0 .45rem;font-size:.98rem}.home-details-item p{margin:0;color:var(--home-muted);line-height:1.5;font-size:.92rem}.home-version{margin:0;color:var(--home-muted);font-size:.84rem}.home-version span{color:var(--home-accent);background:var(--home-accent-soft);border-radius:6px;padding:.08rem .4rem;font-weight:600}@media (max-width: 960px){.home-hero{grid-template-columns:1fr;min-height:auto}.home-hero-art img{max-height:260px}}@media (max-width: 640px){.layout{padding:.85rem 1rem}.auth-page{min-height:auto;display:block;padding-top:.25rem}.auth-shell{max-width:100%}.auth-shell h1{font-size:1.55rem;margin-bottom:.7rem}.auth-card{padding:1rem}.app-footer{margin-top:.8rem;padding-bottom:.8rem}.home-title{font-size:1.65rem}.home-lead,.home-sublead{font-size:.95rem}.home-hero{gap:.8rem}.home-hero-art img{max-height:220px}.home-details-grid{grid-template-columns:1fr}}.lab-victory{margin-top:1rem;padding:1rem 1.25rem;border-radius:8px;border:1px solid #238636;background:#2386361f}.lab-victory-title{margin:0 0 .35rem;font-size:1.35rem;font-weight:700;color:#3fb950}.lab-victory-sub{margin:0;font-size:.95rem;opacity:.95}.lab-victory-foot{margin:.55rem 0 0;font-size:.88rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#010409b8;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-card{max-width:420px;width:100%;background:#161b22;border:1px solid #30363d;border-radius:10px;padding:1.25rem 1.5rem;box-shadow:0 12px 48px #00000073}.modal-title{margin:0 0 .75rem;font-size:1.15rem}.modal-body{margin:0 0 .75rem;line-height:1.45}.modal-body:last-of-type{margin-bottom:1rem}.modal-muted{opacity:.75;font-size:.9em}.modal-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.guest-demo-banner{margin:0 0 .75rem;padding:.6rem .8rem;border:1px solid #3a4a5f;border-radius:10px;background:#6cb6ff17;color:#c9d1d9;font-size:.9rem}.path-course-page--light .guest-demo-banner{border-color:#b6d4fe;background:#eaf3ff;color:#b42318}.path-course-page--light .guest-demo-banner p{margin:0;color:#b42318;font-weight:600}.modal-actions .text-link-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:.5rem 1rem;border:1px solid #3a4a5f;border-radius:8px;color:#8fd3ff;text-decoration:none}.modal-actions .text-link-button:hover{border-color:#58a6ff;background:#58a6ff1a;text-decoration:none}.modal-actions>*+*{margin-left:.4rem}.port-preview-field{display:grid;gap:.35rem;margin:.9rem 0 1rem;color:#dce4ed;font-size:.92rem}.port-preview-field input,.port-preview-field select{width:100%;min-height:40px;padding:.45rem .55rem;border:1px solid #3a4a5f;border-radius:8px;background:#0d1117;color:#f0f6fc}.port-preview-hint{color:#9aa7b4;font-size:.82rem}.muted{opacity:.8;font-size:.9rem}.dashboard-page .dashboard-stats{margin-bottom:1rem;opacity:.9}.path-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}.path-tab{border-radius:999px;padding:.5rem 1.1rem;font-size:.9rem;background:#21262d;color:#e8eaed;border:1px solid #30363d}.path-tab-active{background:#238636;border-color:#238636;color:#fff}.dashboard-main{display:flex;flex-wrap:wrap;gap:1.25rem;align-items:flex-start;margin-bottom:1.5rem}.dashboard-intro{flex:1 1 260px;max-width:320px}.dashboard-intro-title{margin:0 0 .5rem;font-size:1.2rem}.dashboard-intro-text{margin:0 0 1rem;line-height:1.45}.dashboard-intro-sub{margin:.75rem 0 0}.dashboard-level-badge{display:inline-block;padding:.25rem .6rem;border-radius:6px;background:#238636;color:#fff;font-size:.8rem}.dashboard-lab-grid{flex:2 1 400px;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.lab-card{display:flex;flex-direction:column;min-height:100%;margin-bottom:0}.lab-card-thumb{height:100px;border-radius:6px;margin-bottom:.75rem;background:linear-gradient(135deg,#1f3d5c,#0d1117)}.lab-card-thumb-devops{background:linear-gradient(135deg,#238636,#0d419d)}.lab-card-thumb-troubleshooting{background:linear-gradient(135deg,#c9510c,#5c1f1f)}.lab-card-thumb-iac{background:linear-gradient(135deg,#6e40c9,#3d1f6e)}.lab-card-title{margin:0 0 .5rem;font-size:1rem}.lab-card-blurb{margin:0 0 .75rem;flex:1}.lab-card-progress{height:6px;background:#21262d;border-radius:3px;overflow:hidden;margin-bottom:.35rem}.lab-card-progress-bar{height:100%;background:#238636;border-radius:3px;transition:width .2s ease}.lab-card-progress-label{margin:0 0 .75rem;font-size:.8rem}a.lab-card-cta,.lab-card-cta{margin-top:auto;text-align:center;text-decoration:none;display:block;padding:.5rem 1rem;border-radius:8px;background:#238636;color:#fff!important;font-size:.9rem;border:none;width:100%}.lab-card-cta.stub{background:#30363d;color:#8b949e!important;cursor:not-allowed}.lab-card-stub{opacity:.92}.dashboard-recent h2{margin-top:0}.lab-steps-panel{margin-bottom:1rem}.lab-step-block{border:1px solid #30363d;border-radius:8px;padding:1rem;margin-bottom:.75rem;background:#0d1117}.lab-step-block h3{margin:0 0 .5rem;font-size:1rem}.lab-step-instruction{white-space:pre-wrap;font-size:.88rem;opacity:.9;margin:0 0 .75rem;line-height:1.45}.quiz-options{display:flex;flex-direction:column;gap:.35rem;margin:.5rem 0}.quiz-options label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9rem}.quiz-passed{color:#3fb950;font-size:.9rem;margin:.25rem 0 0}.dashboard-lead{margin-bottom:1.25rem;opacity:.9}.dashboard-path-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;margin-bottom:1.5rem;align-items:stretch}.path-entry-card{display:flex;flex-direction:column}.path-entry-card h2{margin-top:0}.path-entry-cta{display:inline-block;margin-top:auto;padding:.5rem 1rem;border-radius:8px;background:#238636;color:#fff!important;text-decoration:none;font-size:.9rem}.path-course-page{max-width:900px}.path-course-page--light .path-course-card{background:#fff;color:#1f2328;border-color:#d0d7de}.path-course-breadcrumb{margin-bottom:1rem;font-size:.9rem}.path-course-breadcrumb a{color:#58a6ff}.path-course-header{margin-bottom:1rem}.path-course-progress-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.path-course-pct{margin:0;font-weight:700;color:#1a7f37;font-size:1.1rem}.path-course-sub{margin:.25rem 0 0;font-size:.85rem}.path-course-badge-done{flex-shrink:0;padding:.35rem .85rem;border-radius:999px;background:#0969da;color:#fff;font-size:.85rem}.path-course-progress-bar-wrap{height:6px;background:#d8dee4;border-radius:3px;margin-top:.75rem;overflow:hidden}.path-course-progress-bar{height:100%;background:#1a7f37;border-radius:3px;transition:width .2s ease}.path-course-tabs-row{margin-bottom:.75rem}.path-course-tabs{display:flex;flex-wrap:wrap;gap:.5rem}.path-course-tab{padding:.4rem .9rem;border-radius:999px;border:1px solid #d0d7de;background:#f6f8fa;color:#1f2328;font-size:.9rem;cursor:pointer}.path-course-tab.active{border-color:#0969da;background:#ddf4ff;color:#0969da;font-weight:600}.path-course-tab-panel{margin-bottom:1.5rem}.path-course-about-title{margin-top:0;font-size:1.15rem}.path-course-about-body{line-height:1.55;font-size:.95rem}.path-course-about-body p{margin:0 0 .75rem}.lecture-rich .lecture-h1{margin:1.5rem 0 .65rem;padding-bottom:.45rem;font-size:1.38rem;font-weight:750;letter-spacing:-.025em;color:#0d1117;border-bottom:3px solid #0969da}.lecture-rich .lecture-h1:first-child{margin-top:0}.lecture-rich .lecture-h2{margin:1.2rem 0 .45rem;font-size:1.08rem;font-weight:650;color:#1f2328}.lecture-rich .lecture-h3{margin:1rem 0 .35rem;font-size:.98rem;font-weight:600;color:#24292f}.lecture-rich .lecture-p{margin:0 0 .85rem;white-space:pre-line;color:#24292f}.lecture-rich .lecture-ul{margin:0 0 .9rem;padding-left:1.25rem;color:#24292f}.lecture-rich .lecture-li{margin:.35rem 0;line-height:1.5}.lecture-rich .lecture-strong{font-weight:650;color:#0d1117}.lecture-rich .lecture-code-block-wrap{margin:.75rem 0 1.15rem}.lecture-rich .lecture-code-block--card{border-radius:12px;border:1px solid #d0d7de;overflow:hidden;background:linear-gradient(165deg,#f6f8fa,#eaeef2);box-shadow:0 1px #ffffffe6 inset,0 4px 14px #0f172a14}.lecture-rich .lecture-code-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.4rem .65rem .4rem .85rem;background:#ffffffb8;border-bottom:1px solid #d8dee4}.lecture-rich .lecture-code-lang{font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#57606a;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.lecture-rich .lecture-code-copy{flex-shrink:0;margin:0;padding:.22rem .6rem;border-radius:7px;border:1px solid #d0d7de;background:#fff;color:#24292f;font-size:.78rem;font-weight:550;cursor:pointer;font-family:inherit;box-shadow:0 1px 2px #0000000a}.lecture-rich .lecture-code-copy:hover{border-color:#0969da;color:#0969da;background:#f6f8fa}.lecture-rich .lecture-code-copy--done{border-color:#1a7f37;color:#1a7f37;background:#dafbe1}.lecture-rich .lecture-code-pre{margin:0;padding:.85rem 1rem 1rem;overflow-x:auto;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8125rem;line-height:1.55;color:#1f2328;white-space:pre;-moz-tab-size:4;tab-size:4;background:#ffffff8c}.lecture-rich .lecture-code-pre code.lecture-code-hl{font-family:inherit;font-size:inherit}.lecture-rich pre.lecture-code-pre code.hljs{display:block;padding:0;background:transparent}.path-course-modules-title{font-size:1.1rem;margin:0 0 .75rem}.path-module{margin-bottom:.75rem;padding:0;overflow:hidden}.path-module-head{width:100%;display:flex;align-items:center;gap:.5rem;padding:.85rem 1rem;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer;font-size:1rem}.path-module-caret{width:1.25rem;opacity:.7}.path-module-title{flex:1;font-weight:600}.path-module-meta{font-size:.85rem;color:#0969da}.path-module-list{list-style:none;margin:0;padding:0 1rem .75rem 2.5rem}.path-module-item{display:flex;align-items:center;gap:.5rem;padding:.35rem 0;font-size:.92rem}.path-module-icon{width:1.25rem;text-align:center;opacity:.75}.path-module-link{color:#0969da;text-decoration:none}.path-module-link:hover{text-decoration:underline}.path-module-stub,.path-module-link-disabled{opacity:.75}.primary-link-button,.text-link-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:8px;font-weight:700;text-decoration:none}.primary-link-button{padding:.72rem 1rem;color:#06101c!important;background:linear-gradient(180deg,#8fd3ff,#58a6ff);border:1px solid rgba(143,211,255,.65);box-shadow:0 10px 30px #2f81f738}.primary-link-button:hover{transform:translateY(-1px);box-shadow:0 14px 36px #2f81f74d}.text-link-button{padding:.7rem .2rem;color:var(--bf-accent)!important}.text-link-button:hover{text-decoration:underline}.page-kicker{margin:0 0 .35rem;color:var(--bf-accent);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.section-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin:0 0 .85rem}.section-head h2{margin:0;font-size:1.25rem}.section-head>span{color:var(--bf-muted);font-size:.92rem}.state-banner{display:flex;flex-wrap:wrap;gap:.75rem 1rem;align-items:center;padding:1rem;margin-bottom:1rem;border:1px solid var(--bf-border);border-radius:8px;background:var(--bf-surface);color:var(--bf-text)}.state-banner span{color:var(--bf-muted)}.state-banner--error{border-color:#ff6b6b73;background:#ff6b6b14}.status-good{color:var(--bf-good)}.status-bad{color:var(--bf-bad)}.mini-progress{height:8px;overflow:hidden;border-radius:999px;background:#243042}.mini-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--bf-good),var(--bf-accent))}.home-page{color:var(--bf-text)}.welcome-card{margin-bottom:1.2rem}.home-hero{min-height:min(620px,calc(100vh - 180px));padding:clamp(2rem,5vw,4.5rem) 0 2rem;border-bottom:1px solid var(--bf-border)}.home-title{letter-spacing:0}.home-lead{max-width:720px;font-size:clamp(1.35rem,2vw,1.75rem)}.home-sublead{max-width:660px}.home-hero-actions{display:flex;flex-wrap:wrap;gap:.85rem 1.1rem;align-items:center;margin-top:1.5rem}.home-hero-art{background:#0f1722;border-color:var(--bf-border);box-shadow:0 20px 60px #00000059}.home-basics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;margin:1.2rem 0 1rem}.home-basics article,.home-details-item{position:relative;min-height:100%;border:1px solid var(--bf-border);border-radius:8px;background:#111821db;padding:1rem}.home-basics span{color:var(--bf-accent);font-size:.75rem;font-weight:800;text-transform:uppercase}.home-basics h2{margin:.35rem 0 .4rem;font-size:1.2rem;line-height:1.12}.home-details-item h3{margin:.35rem 0 .4rem;font-size:1rem}.home-basics p,.home-details-item p{margin:0;color:var(--bf-muted)}.home-details{margin:1rem 0;padding:0;background:transparent;border:0}.home-details-title{margin-bottom:.85rem}.home-details-grid{gap:.85rem}.dashboard-page,.path-course-page,.learn-catalog-page{color:var(--bf-text)}.learn-catalog-hero{max-width:820px;margin-bottom:1.3rem}.learn-catalog-hero h1{margin:0 0 .55rem;font-size:clamp(2.2rem,5vw,4rem);line-height:1.02;letter-spacing:0}.learn-catalog-hero p{margin:0;color:var(--bf-muted);font-size:1.08rem}.learn-path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.learn-path-card{position:relative;display:grid;grid-template-rows:auto minmax(72px,auto) minmax(64px,auto) auto auto;min-height:400px;gap:1rem;padding:1.25rem;overflow:hidden;border:1px solid rgba(159,176,195,.2);border-radius:14px;color:var(--bf-text);text-decoration:none;background:var(--bf-surface);box-shadow:inset 0 1px #ffffff12}.learn-path-card:hover{transform:translateY(-2px);border-color:#8fd3ff6b;box-shadow:inset 0 1px #ffffff14,0 18px 48px #00000047}.learn-path-card--blue{background:linear-gradient(140deg,#2f81f74d,#111821f0 72%),var(--bf-surface)}.learn-path-card--green{background:linear-gradient(140deg,#58a6ff38,#111821f0 72%),var(--bf-surface)}.learn-path-card--violet{border-color:#f2cc606b;background:linear-gradient(140deg,#f2cc601f,#111821f0 72%),var(--bf-surface)}.learn-path-card-top,.learn-path-card-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.8rem}.learn-path-card-top>span:first-child{color:var(--bf-accent);font-weight:800;text-transform:uppercase}.learn-path-card-emoji{font-size:3rem;line-height:1;filter:drop-shadow(0 14px 26px rgba(0,0,0,.36))}.learn-path-card h2{display:flex;align-items:flex-start;max-width:320px;margin:0;font-size:2.35rem;line-height:1.08;letter-spacing:0}.learn-path-card-description{align-self:start;margin:0;color:#edf2f7b8}.learn-path-card-progress{display:grid;gap:.45rem;color:#edf2f7bd;font-size:.9rem}.learn-path-card-bottom{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 34px;align-content:end;color:#edf2f7c7;font-size:1rem;font-weight:650}.learn-path-card-bottom div{display:flex;flex-wrap:wrap;gap:.85rem}.learn-path-card-level{color:#edf2f7a3;font-size:.88rem}.learn-path-card-arrow{grid-column:2;grid-row:1 / span 2;align-self:center;justify-self:end;font-size:2rem}.dashboard-heading{margin-bottom:1rem}.catalog-preview-status{margin:0 0 1rem;padding:.65rem .8rem;border:1px solid var(--bf-border-strong);border-radius:8px;color:var(--bf-muted);background:#58a6ff14}.dashboard-heading h1{margin:0 0 .4rem;font-size:clamp(2rem,4vw,3rem);line-height:1.05;letter-spacing:0}.dashboard-heading p:last-child{max-width:680px;margin:0;color:var(--bf-muted)}.continue-panel,.path-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;margin-bottom:1rem;padding:clamp(1.1rem,3vw,1.5rem);border:1px solid var(--bf-border-strong);border-radius:8px;background:linear-gradient(135deg,#6cb6ff1f,#3fb9500f),var(--bf-surface)}.continue-label{margin:0 0 .35rem;color:var(--bf-accent);font-weight:800}.continue-panel h2,.path-hero h1{margin:0 0 .45rem;font-size:clamp(1.55rem,3vw,2.35rem);line-height:1.08;letter-spacing:0}.continue-panel p,.path-hero p{margin:0;color:var(--bf-muted)}.continue-action{min-width:150px}.dashboard-stats-row{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:1.6rem}.dashboard-stats-row span{padding:.45rem .7rem;border:1px solid var(--bf-border);border-radius:8px;background:#111821c2;color:var(--bf-muted)}.dashboard-stats-row strong{color:var(--bf-text)}.dashboard-section{margin-bottom:1.6rem}.dashboard-path-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.incident-strip{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}.path-entry-card{position:relative;gap:1rem;min-height:300px;margin:0;padding:1.25rem;border:1px solid rgba(159,176,195,.2);border-radius:14px;background:var(--bf-surface);overflow:hidden;box-shadow:inset 0 1px #ffffff12}.path-entry-card:hover{transform:translateY(-2px);border-color:#8fd3ff6b;box-shadow:inset 0 1px #ffffff14,0 18px 48px #00000047}.path-entry-card--blue{background:linear-gradient(140deg,#2f81f74d,#111821f0 72%),var(--bf-surface)}.path-entry-card--green{background:linear-gradient(140deg,#58a6ff38,#111821f0 72%),var(--bf-surface)}.path-entry-card--violet{background:linear-gradient(140deg,#f2cc601f,#111821f0 72%),var(--bf-surface)}.path-entry-card--incident{border-color:#f2cc606b}.path-entry-top{display:flex;justify-content:space-between;gap:1rem}.path-entry-emoji{font-size:3rem;line-height:1;filter:drop-shadow(0 14px 26px rgba(0,0,0,.36))}.path-entry-level{margin:0 0 .45rem;color:#edf2f7b8;font-size:.9rem;font-weight:700}.path-entry-card h3{margin:0 0 .45rem;max-width:300px;font-size:clamp(2rem,4vw,2.75rem);line-height:1.08;letter-spacing:0}.path-entry-description{margin:0;max-width:410px;color:#edf2f7b8}.path-card-progress{display:grid;gap:.45rem;color:#edf2f7bd;font-size:.9rem}.path-entry-bottom{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:auto;color:#edf2f7c7;font-size:1rem;font-weight:650}.path-entry-cta{display:flex;justify-content:space-between;gap:1rem;width:100%;margin-top:.25rem;border:1px solid rgba(237,242,247,.2);background:#0b0f1452;color:var(--bf-text)!important}.path-entry-cta:hover{background:#edf2f71c}.dashboard-recent{padding:.9rem 1rem;border:1px solid var(--bf-border);border-radius:8px;background:#111821b8}.dashboard-recent summary{cursor:pointer;color:var(--bf-text);font-weight:800}.dashboard-recent h2{display:none}.dashboard-recent ul{margin-bottom:0}.path-course-page{max-width:1040px}.sandbox-page{color:var(--bf-text)}.sandbox-hero{margin-bottom:1.2rem;padding:clamp(1.4rem,4vw,2rem);border:1px solid var(--bf-border-strong);border-radius:14px;background:linear-gradient(135deg,#58a6ff24,#16213066),var(--bf-surface)}.sandbox-hero h1{max-width:720px;margin:0 0 .55rem;font-size:clamp(2rem,5vw,3.4rem);line-height:1.02;letter-spacing:0}.sandbox-hero p{max-width:680px;margin:0;color:var(--bf-muted);font-size:1.06rem}.sandbox-actions{display:flex;flex-wrap:wrap;gap:.85rem 1rem;margin-top:1.35rem}.sandbox-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}.sandbox-preview article{padding:1rem;border:1px solid var(--bf-border);border-radius:8px;background:#111821cc}.sandbox-preview span{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--bf-border);border-radius:8px;color:var(--bf-accent);font-weight:800}.sandbox-preview h2{margin:.7rem 0 .35rem;font-size:1.05rem}.sandbox-preview p{margin:0;color:var(--bf-muted)}.path-course-breadcrumb{color:var(--bf-muted)}.path-course-breadcrumb a{color:var(--bf-accent)}.path-hero{grid-template-columns:minmax(0,1fr) minmax(220px,280px);align-items:stretch}.path-hero-side{display:grid;align-content:center;gap:.8rem}.path-hero-progress{display:grid;gap:.4rem;padding:.9rem;border:1px solid var(--bf-border);border-radius:8px;background:#0b0f1473}.path-hero-progress strong{font-size:1.6rem}.path-hero-progress span{color:var(--bf-muted)}.path-next-line{margin-top:.8rem!important;color:var(--bf-text)!important}.path-course-modules,.incident-board,.path-info-section{margin-bottom:1.6rem}.path-module{border:1px solid var(--bf-border);border-radius:8px;background:var(--bf-surface)}.path-module+.path-module{margin-top:.75rem}.path-module-head{color:var(--bf-text)}.path-module-head:hover{background:#6cb6ff14}.path-module-caret{display:grid;width:28px;height:28px;place-items:center;border:1px solid var(--bf-border);border-radius:8px;color:var(--bf-accent);opacity:1}.path-module-meta{color:var(--bf-muted)}.path-module-list{display:grid;gap:.5rem;padding:0 1rem 1rem}.path-module-item{display:grid;grid-template-columns:32px minmax(0,1fr) auto auto;gap:.7rem;align-items:center;min-height:58px;padding:.65rem;border:1px solid var(--bf-border);border-radius:8px;background:#0d141d}.path-module-item--current{border-color:#6cb6ffb3;background:#6cb6ff17}.path-module-item--done{border-color:#3fb9507a}.path-module-icon{display:grid;width:30px;height:30px;place-items:center;border-radius:8px;background:#6cb6ff1f;color:var(--bf-accent);font-weight:800;opacity:1}.path-module-icon--lab{color:var(--bf-good);background:#3fb9501f}.path-module-item-main{display:grid;gap:.15rem;min-width:0}.path-module-type{color:var(--bf-muted);font-size:.78rem;font-weight:800;text-transform:uppercase}.path-module-link{color:var(--bf-text);font-weight:700}.path-module-link-disabled{color:var(--bf-muted)}.path-status{padding:.22rem .5rem;border-radius:999px;color:var(--bf-muted);background:#9fb0c317;font-size:.78rem;white-space:nowrap}.path-status--current{color:#06101c;background:var(--bf-accent)}.path-status--done{color:#06101c;background:var(--bf-good)}.path-status--soon{color:#06101c;background:var(--bf-warning)}.path-module-action,.incident-card-action{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:.45rem .7rem;border:1px solid var(--bf-border-strong);border-radius:8px;color:var(--bf-text);text-decoration:none;font-weight:700;white-space:nowrap}.path-module-action:hover,.incident-card-action:hover{border-color:var(--bf-accent);background:#6cb6ff1f}.path-info-section h2{margin:0 0 .8rem;font-size:1.15rem}.path-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.path-info-card{border:1px solid var(--bf-border);border-radius:8px;background:#111821b8;padding:.8rem .9rem}.path-info-card--primary{grid-column:1 / -1}.path-info-card h3{margin:0;color:var(--bf-text);font-size:.94rem;font-weight:800}.path-info-card p{margin:.45rem 0 0;color:var(--bf-muted);font-size:.92rem;line-height:1.55}.path-course-page--incident .path-hero{border-color:#f2cc6073;background:linear-gradient(135deg,#f2cc601f,#ff6b6b0f),var(--bf-surface)}.incident-group{border:1px solid var(--bf-border);border-radius:8px;background:var(--bf-surface);margin-bottom:.8rem;overflow:hidden}.incident-group-head{width:100%;display:flex;justify-content:space-between;gap:1rem;padding:.9rem 1rem;color:var(--bf-text);background:transparent}.incident-group-head:hover{background:#f2cc6014}.incident-list{display:grid;gap:.55rem;padding:0 1rem 1rem}.incident-row{display:grid;grid-template-columns:140px minmax(0,1fr) auto;gap:1rem;align-items:center;padding:.85rem;border:1px solid var(--bf-border);border-radius:8px;background:#0d141d}.incident-row--current{border-color:#f2cc609e}.incident-row--done{border-color:#3fb95080}.incident-row-city{display:grid;gap:.2rem}.incident-row-city h3,.incident-row-main h4{margin:0}.incident-row-city h3{font-size:1.15rem}.incident-row-kind{width:fit-content;padding:.12rem .38rem;border-radius:999px;color:#06101c;background:var(--bf-warning);font-size:.72rem;font-weight:800;text-transform:uppercase}.incident-row-main{display:grid;gap:.3rem}.incident-row-main h4{color:var(--bf-text);font-size:1rem}.incident-row-tags{display:flex;flex-wrap:wrap;gap:.35rem}.incident-row-tags span{padding:.12rem .38rem;border:1px solid var(--bf-border);border-radius:999px;color:var(--bf-muted);font-size:.76rem}.incident-row-side{display:grid;justify-items:end;gap:.55rem}.incident-card-action{margin-top:.2rem;width:fit-content}.incident-card-action--disabled{color:var(--bf-muted)}@media (max-width: 900px){.section-head,.continue-panel,.path-hero{grid-template-columns:1fr}.section-head{align-items:start}.dashboard-path-cards,.home-basics,.learn-path-grid,.sandbox-preview{grid-template-columns:1fr}.learn-path-card{grid-template-rows:auto minmax(58px,auto) auto auto auto;min-height:0}.learn-path-card h2{font-size:2rem}.path-info-grid{grid-template-columns:1fr}.path-info-card--primary{grid-column:auto}.incident-row{grid-template-columns:1fr;gap:.65rem}.incident-row-side{display:flex;flex-wrap:wrap;justify-content:space-between}.path-module-item{grid-template-columns:32px minmax(0,1fr)}.path-status,.path-module-action{grid-column:2;width:fit-content}.home-hero{min-height:auto}}.lab-page{max-width:1280px;margin:0 auto;padding:0 1rem 1.5rem;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.lab-page--landing{background:radial-gradient(ellipse 120% 80% at 50% 18%,#142338,#09111d 52%,#050910);min-height:calc(100vh - 2rem);border-radius:0}.lab-page--landing .lab-toolbar{background:var(--lab-surface);border:1px solid var(--lab-border);border-radius:10px;padding:.65rem 1rem;margin-bottom:.75rem}.lab-page--landing .lab-toolbar-title{color:#e8eaed}.lab-page--landing .lab-toolbar-back{color:var(--lab-accent)}.lab-main-wrap{position:relative;min-height:min(560px,calc(100vh - 160px))}.lab-page--immersive{--lab-viewport-height: 100vh;--lab-workspace-height: calc( var(--lab-viewport-height) - var(--lab-toolbar-height, 4.5rem) - 1.5rem );--lab-prompt-user: #7ee787;--lab-prompt-path: #79c0ff;--lab-prompt-arrow: #3fb950;--lab-task-title-size: 1.2rem;--lab-task-body-size: 1.05rem;--lab-task-muted-size: .98rem;background:linear-gradient(135deg,rgba(26,76,123,.16),transparent 36%),var(--lab-canvas);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box;max-width:none;width:100%;margin:0;padding:0 .75rem .75rem;height:var(--lab-viewport-height);min-height:0;display:flex;flex-direction:column;overflow:hidden}.lab-page--immersive .lab-current-step-title{font-size:var(--lab-task-title-size)}.lab-page--immersive .lab-step-instruction--panel{font-size:var(--lab-task-body-size);line-height:1.65}.lab-page--immersive .lab-task-muted,.lab-page--immersive .lab-check-fail{font-size:var(--lab-task-muted-size)}.lab-page--immersive .lab-quiz-question,.lab-page--immersive .quiz-pill{font-size:var(--lab-task-body-size)}.lab-page--immersive .lab-stepper-circle{font-size:.875rem}.lab-page--immersive .lab-freeform-task-title{font-size:1.15rem}.lab-page--immersive .lab-freeform-task-body,.lab-page--immersive .lab-freeform-hint-panel,.lab-page--immersive .lab-freeform-feedback{font-size:var(--lab-task-body-size);line-height:1.6}.lab-page--immersive .lab-toolbar,.lab-page--immersive .lab-freeform-hint{flex-shrink:0}.lab-page--immersive .lab-inline-copy.copied,.lab-page--immersive .lab-code-block-copy.copied{border-color:var(--lab-success-soft);background:#132818;color:#7ee787}.lab-page--immersive .lab-main-wrap{flex:1;min-height:0;height:auto;display:flex;flex-direction:column;overflow:hidden}.lab-page--immersive .lab-split-grid{flex:1;width:100%;height:100%;min-height:0;grid-template-columns:minmax(0,1fr) clamp(280px,32vw,440px)}.lab-page--immersive .lab-terminal-col{min-height:0;height:100%;overflow:hidden}.lab-page--immersive .lab-split-grid .terminal-wrap.lab-terminal-main{height:100%;min-height:0;flex:1}.lab-page--immersive .lab-terminal-tabs{min-height:0}.lab-page--immersive .lab-task-panel{max-height:none;height:100%;min-height:0}.lab-page--immersive .lab-freeform-grid{flex:1;height:100%;min-height:0}.lab-page--immersive .lab-freeform-task-panel .lab-freeform-task{margin-top:0}@media (min-width: 1600px){.lab-page--immersive .lab-split-grid{grid-template-columns:minmax(0,1fr) clamp(300px,28vw,480px)}}.lab-page--immersive .lab-split-grid--terminal-fullscreen,.lab-page--immersive .lab-split-grid--terminal-only{grid-template-columns:minmax(0,1fr)}@media (max-width: 960px){.lab-page--immersive .lab-split-grid{grid-template-columns:1fr;grid-template-rows:minmax(280px,min(55vh,55%)) auto;height:auto;min-height:calc(var(--lab-viewport-height) - var(--lab-toolbar-height, 4.5rem) - 1rem)}.lab-page--immersive .lab-terminal-col{min-height:280px}.lab-page--immersive .lab-task-panel{max-height:none;height:auto}.lab-toolbar-end{width:100%;margin-left:0}.lab-terminal-fullscreen-toggle span:last-child{display:none}}@media (max-width: 640px){.lab-page--immersive{padding:0 .45rem .45rem}.lab-toolbar{gap:.5rem .7rem;padding:.5rem}.lab-toolbar-context{min-width:130px}.lab-toolbar-title{font-size:.88rem}.lab-toolbar-session{margin-right:auto}.lab-toolbar-actions{width:100%}.lab-toolbar-primary,.lab-toolbar-secondary,.lab-toolbar-stop{flex:1 1 auto}.lab-landing-device-note{display:block}}.lab-main-wrap--intro .lab-split-grid,.lab-main-wrap--intro .lab-freeform-grid,.lab-main-wrap--intro .lab-terminal-fallback{opacity:0;visibility:hidden;pointer-events:none}.lab-landing-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:800;display:flex;align-items:center;justify-content:center;padding:5.5rem 1rem 1.5rem;background:radial-gradient(ellipse 120% 85% at 50% 22%,#172941,#09111d,#050910);box-sizing:border-box}.lab-landing-card{max-width:520px;width:100%;padding:2rem 1.75rem 2.25rem;background:var(--lab-surface);border:1px solid var(--lab-border-strong);border-radius:14px;box-shadow:0 16px 48px #00000080;text-align:center}.lab-landing-brand{margin:0 0 .85rem;font-size:clamp(1.15rem,3.2vw,1.4rem);font-weight:900;letter-spacing:-.03em;line-height:1.2}.lab-landing-brand-accent{color:#3fb950}.lab-landing-brand-tld{color:var(--lab-accent)}.lab-landing-kicker{margin:0 0 .5rem;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#8b949e}.lab-landing-heading{margin:0 0 1rem;font-size:clamp(1.7rem,4.2vw,2.25rem);font-weight:800;line-height:1.18;color:#f0f3f6;letter-spacing:-.02em;word-break:break-word;overflow-wrap:anywhere;display:flex;flex-direction:column;gap:.2rem}.lab-landing-heading-label{margin:0;font-size:clamp(1.8rem,4.3vw,2.3rem);font-weight:800;color:#f0f3f6}.lab-landing-heading-name{display:inline;color:var(--lab-accent);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:700;line-height:1.2;background:#0b1524;border:1px solid #2c3e5a;border-radius:8px;padding:.06em .28em;box-decoration-break:clone;-webkit-box-decoration-break:clone}.lab-landing-lead{margin:0 0 1.5rem;font-size:.92rem;line-height:1.55;color:#8b949e}.lab-landing-device-note{display:none;margin:-.65rem 0 1.25rem;color:#c9d1d9;font-size:.82rem;line-height:1.45}.lab-landing-cta{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;padding:.85rem 1.75rem;font-size:1.05rem;font-weight:700;color:#fff;background:#238636;border:none;border-radius:999px;cursor:pointer;box-shadow:0 4px 20px #23863666;transition:background .15s ease,transform .1s ease}.lab-landing-cta:hover{background:#2ea043}.lab-landing-cta:active{transform:scale(.98)}.lab-landing-cta-icon{display:flex;align-items:center;justify-content:center;color:#fff}.lab-landing-resume-note{margin:.7rem 0 0;font-size:.84rem;line-height:1.45;color:#8b949e}.lab-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem .9rem;margin-bottom:.6rem;padding:.55rem .7rem;border:1px solid var(--lab-border);border-radius:10px;background:var(--lab-surface);box-shadow:0 8px 30px #00000040}.lab-page .lab-toolbar{position:relative;z-index:920}.lab-toolbar-back{display:inline-flex;align-items:center;gap:.35rem;color:var(--lab-accent);text-decoration:none;font-size:.9rem}.lab-toolbar-context{display:grid;flex:1;min-width:160px;gap:.08rem}.lab-toolbar-kicker{color:var(--lab-muted);font-size:.68rem;font-weight:800;text-transform:uppercase}.lab-toolbar-title{font-weight:700;color:var(--lab-text)}.lab-toolbar-actions{display:flex;flex-wrap:wrap;gap:.4rem}.lab-toolbar-end{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-left:auto}.lab-toolbar-session{display:inline-flex;align-items:center;gap:.4rem;color:#9fc6a8;font-size:.78rem;font-weight:700;white-space:nowrap}.lab-toolbar-session-dot{width:8px;height:8px;border-radius:50%;background:#3fb950;box-shadow:0 0 0 3px #3fb95024}.lab-toolbar-timer{display:inline-flex;align-items:center;gap:.38rem;font-variant-numeric:tabular-nums;font-weight:700;font-size:.88rem;padding:.3rem .55rem;border-radius:8px;border:1px solid var(--lab-border);background:var(--lab-deep);color:#e8eaed}.lab-toolbar-timer-label{color:var(--lab-muted);font-size:.72rem;font-weight:600}.lab-toolbar-primary,.lab-toolbar-secondary,.lab-toolbar-stop{min-height:34px;padding:.38rem .66rem;font-size:.82rem;font-weight:700}.lab-toolbar-primary{background:var(--lab-success)}.lab-toolbar-primary:hover{background:#2ea043}.lab-toolbar-secondary{border:1px solid var(--lab-border);background:var(--lab-accent-soft);color:var(--lab-terminal-fg)}.lab-toolbar-secondary:hover{border-color:var(--lab-accent);background:var(--lab-accent-hover);color:var(--lab-text)}.lab-toolbar-stop{border:1px solid rgba(248,81,73,.42);background:transparent;color:#ff9b97}.lab-toolbar-stop:hover{border-color:var(--lab-danger);background:#f851491a}.lab-toolbar-status-wrap{animation:lab-toolbar-status-in .22s ease-out}@keyframes lab-toolbar-status-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.lab-toolbar-status,.lab-toolbar-error{margin:.25rem 0 .5rem;font-size:.9rem}.lab-toolbar-status-success{display:inline-block;padding:.45rem .7rem;border-radius:8px;border:1px solid #2ea043;background:#2ea04329;color:#7ee787;font-weight:600;box-shadow:0 4px 18px #2ea04333}.lab-toolbar-status-error{display:inline-block;padding:.45rem .7rem;border-radius:8px;border:1px solid #f85149;background:#f8514929;color:#ff8e8e;font-weight:600;box-shadow:0 4px 18px #f8514933}.lab-toolbar-status-detail{margin:.35rem 0 .5rem;font-size:.88rem;color:#ff8e8e;white-space:pre-line}.lab-toolbar-loading{margin:.25rem 0 .5rem;font-size:.9rem;color:#8b949e}.lab-freeform-hint{padding:.65rem 1rem;border-radius:8px;background:var(--lab-accent-soft);border:1px solid var(--lab-border);font-size:.9rem;margin-bottom:.75rem}.lab-victory--bar{margin-bottom:.75rem}.lab-check-button.is-loading{opacity:.85}.lab-check-button.is-loading:after{content:"";display:inline-block;width:.9em;height:.9em;margin-left:.45rem;border-radius:50%;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;animation:lab-check-spin .8s linear infinite;vertical-align:-.15em}@keyframes lab-check-spin{to{transform:rotate(360deg)}}.lab-confetti-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;pointer-events:none;overflow:hidden}.lab-confetti-layer:before{content:"";position:absolute;left:50%;top:28%;width:10px;height:10px;margin-left:-5px;margin-top:-5px;border-radius:999px;background:#ffffffe6;box-shadow:0 0 #58a6ff73,0 0 24px #58a6ffa6;animation:lab-burst-flash .52s ease-out forwards}.lab-confetti-final:before{animation-duration:.76s}.lab-confetti-layer span{position:absolute;left:50%;top:28%;width:9px;height:9px;border-radius:2px;transform:translate(-50%,-50%);opacity:.95;animation:lab-confetti-burst .82s cubic-bezier(.18,.84,.3,1) forwards}.lab-confetti-step span{animation-duration:1.3s}.lab-confetti-final span{width:11px;height:11px;animation-duration:1.85s}.lab-confetti-layer span:nth-child(4n+1){background:var(--lab-accent)}.lab-confetti-layer span:nth-child(4n+2){background:#3fb950}.lab-confetti-layer span:nth-child(4n+3){background:#f2cc60}.lab-confetti-layer span:nth-child(4n+4){background:#f778ba}.lab-confetti-layer span:nth-child(1){--dx: -170px;--dy: -140px;animation-delay:0ms}.lab-confetti-layer span:nth-child(2){--dx: -140px;--dy: -80px;animation-delay:15ms}.lab-confetti-layer span:nth-child(3){--dx: -185px;--dy: -20px;animation-delay:30ms}.lab-confetti-layer span:nth-child(4){--dx: -130px;--dy: 45px;animation-delay:45ms}.lab-confetti-layer span:nth-child(5){--dx: -75px;--dy: -145px;animation-delay:8ms}.lab-confetti-layer span:nth-child(6){--dx: -40px;--dy: -95px;animation-delay:22ms}.lab-confetti-layer span:nth-child(7){--dx: -55px;--dy: 40px;animation-delay:38ms}.lab-confetti-layer span:nth-child(8){--dx: -18px;--dy: -30px;animation-delay:54ms}.lab-confetti-layer span:nth-child(9){--dx: 22px;--dy: -150px;animation-delay:10ms}.lab-confetti-layer span:nth-child(10){--dx: 55px;--dy: -95px;animation-delay:24ms}.lab-confetti-layer span:nth-child(11){--dx: 74px;--dy: -28px;animation-delay:40ms}.lab-confetti-layer span:nth-child(12){--dx: 95px;--dy: 34px;animation-delay:56ms}.lab-confetti-layer span:nth-child(13){--dx: 130px;--dy: -150px;animation-delay:16ms}.lab-confetti-layer span:nth-child(14){--dx: 165px;--dy: -90px;animation-delay:34ms}.lab-confetti-layer span:nth-child(15){--dx: 150px;--dy: -20px;animation-delay:48ms}.lab-confetti-layer span:nth-child(16){--dx: 175px;--dy: 35px;animation-delay:62ms}@keyframes lab-burst-flash{0%{opacity:.9;transform:scale(.4)}65%{opacity:.45;transform:scale(1.65)}to{opacity:0;transform:scale(2.2)}}@keyframes lab-confetti-burst{0%{opacity:0;transform:translate(-50%,-50%) scale(.35) rotate(0)}18%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--dx, 0px)),calc(-50% + var(--dy, -60px))) scale(.9) rotate(240deg)}}@media (prefers-reduced-motion: reduce){.home-details{transition:none;transform:none;opacity:1}.lab-check-button.is-loading:after{animation:none}.lab-confetti-layer{display:none}}.lab-split-grid{display:grid;width:100%;grid-template-columns:minmax(0,1fr) minmax(300px,420px);border:1px solid var(--lab-border);border-radius:14px;overflow:hidden;min-height:520px;background:#09121f;box-shadow:0 18px 50px #0006}.lab-split-grid--resizable{width:100%}.lab-split-grid--terminal-only{grid-template-columns:minmax(0,1fr)}.lab-split-grid--dragging{cursor:col-resize;-webkit-user-select:none;user-select:none}.lab-split-grid--dragging .lab-terminal-col,.lab-split-grid--dragging .lab-task-panel{pointer-events:none}.lab-split-handle{position:relative;z-index:30;flex-shrink:0;width:14px;margin:0 -3px;cursor:col-resize;touch-action:none;pointer-events:auto;background:transparent;border:none;transition:background .15s ease}.lab-split-handle:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:8px;transform:translate(-50%);border-radius:4px;background:linear-gradient(90deg,transparent 0%,#263040 20%,#263040 80%,transparent 100%);border-left:1px solid #1b2432;border-right:1px solid #1b2432;opacity:.7}.lab-split-handle:after{content:"";position:absolute;top:50%;left:50%;width:4px;height:32px;transform:translate(-50%,-50%);border-radius:2px;background:repeating-linear-gradient(to bottom,#8b949e 0,#8b949e 3px,transparent 3px,transparent 6px);opacity:.55;pointer-events:none}.lab-split-handle:hover,.lab-split-handle:focus-visible{background:linear-gradient(90deg,transparent 0%,var(--lab-border-strong) 45%,var(--lab-border-strong) 55%,transparent 100%)}.lab-split-handle:hover:before,.lab-split-handle:focus-visible:before{opacity:.9}.lab-split-grid--resizable .lab-task-panel{border-left:none;width:100%;min-width:0;max-width:none}.lab-terminal-col{min-width:0;min-height:520px;display:flex;flex-direction:column;background:var(--lab-terminal-bg);padding:8px}.lab-terminal-tabs{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;min-height:520px;height:100%}.lab-terminal-tabs-bar{display:flex;flex-wrap:wrap;align-items:center;gap:4px;flex-shrink:0;padding:0 0 6px}.lab-terminal-toolbar-actions{display:inline-flex;align-items:center;gap:.35rem;margin-left:auto}.lab-terminal-tab-wrap{display:inline-flex;align-items:stretch;max-width:100%}.lab-terminal-tab{font:inherit;font-size:.75rem;line-height:1.2;padding:4px 10px;border:1px solid var(--lab-border);border-radius:6px 0 0 6px;background:var(--lab-accent-soft);color:var(--lab-terminal-fg);cursor:pointer}.lab-terminal-tab-wrap:has(.lab-terminal-tab-close) .lab-terminal-tab{border-radius:6px 0 0 6px}.lab-terminal-tab-wrap:not(:has(.lab-terminal-tab-close)) .lab-terminal-tab{border-radius:6px}.lab-terminal-tab--active{background:var(--lab-terminal-bg);border-color:var(--lab-accent);color:#e6edf3}.lab-terminal-tab-close{font:inherit;font-size:.85rem;line-height:1;padding:4px 6px;border:1px solid var(--lab-border);border-left:none;border-radius:0 6px 6px 0;background:var(--lab-accent-soft);color:var(--lab-muted);cursor:pointer}.lab-terminal-tab-close:hover{color:var(--lab-danger);background:var(--lab-accent-hover)}.lab-terminal-tab-add{font:inherit;font-size:1rem;line-height:1;width:28px;height:28px;padding:0;border:1px dashed var(--lab-border);border-radius:6px;background:transparent;color:var(--lab-terminal-fg);cursor:pointer}.lab-terminal-tab-add:disabled{opacity:.35;cursor:not-allowed}.lab-terminal-tab-add:not(:disabled):hover{border-color:var(--lab-accent);color:var(--lab-accent)}.lab-terminal-fullscreen-toggle{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:28px;padding:4px 10px;border:1px solid var(--lab-border);border-radius:6px;background:#ffffff0a;color:var(--lab-terminal-fg);font:inherit;font-size:.75rem;line-height:1.2;cursor:pointer}.lab-terminal-fullscreen-toggle:hover,.lab-terminal-fullscreen-toggle:focus-visible{border-color:var(--lab-accent);color:#e6edf3;background:var(--lab-accent-soft)}.lab-terminal-fullscreen-toggle[aria-pressed=true]{border-color:var(--lab-accent);color:#e6edf3;background:#54aeff1f}.lab-terminal-fullscreen-icon{display:inline-flex;align-items:center;justify-content:center;width:1rem;font-size:.9rem;line-height:1}.lab-terminal-tabs-body{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden}.lab-terminal-tab-pane{position:relative;flex:1;min-height:0;min-width:0;max-width:100%;height:100%;border-radius:10px;border:1px solid var(--lab-border);background:var(--lab-terminal-bg);overflow:hidden}.lab-terminal-copy-scissors{position:absolute;z-index:30;pointer-events:none;color:var(--lab-accent);filter:drop-shadow(0 1px 4px rgba(0,0,0,.55));transform:translate(-50%,-100%);opacity:0}.lab-terminal-copy-scissors--snip{animation:lab-terminal-scissors-snip .72s ease-out forwards}@keyframes lab-terminal-scissors-snip{0%{opacity:0;transform:translate(-50%,-100%) scale(.55) rotate(0)}12%{opacity:1;transform:translate(-50%,-108%) scale(1.15) rotate(-14deg)}28%{transform:translate(-50%,-112%) scale(1) rotate(10deg)}42%{transform:translate(-50%,-114%) scale(1.05) rotate(-8deg)}58%{opacity:1;transform:translate(-50%,-116%) scale(1) rotate(4deg)}to{opacity:0;transform:translate(-50%,-128%) scale(.8) rotate(0)}}.lab-terminal-main{flex:1;min-height:520px;height:100%;border-radius:10px;border:1px solid var(--lab-border);background:var(--lab-terminal-bg)}.lab-terminal-tabs.lab-terminal-main,.lab-terminal-tabs.lab-terminal-freeform,.lab-terminal-tabs.lab-terminal-fallback{border:none;background:transparent;min-height:520px}.lab-terminal-tabs .lab-terminal-tab-pane .xterm,.lab-terminal-main .xterm{box-sizing:border-box;max-width:100%;overflow:hidden;padding:0;font-variant-ligatures:none;font-feature-settings:"liga" 0,"calt" 0}.lab-terminal-tabs .xterm-screen,.lab-terminal-tabs .xterm-viewport{max-width:100%}.lab-split-grid--terminal-fullscreen .lab-terminal-col{min-height:520px}.lab-task-panel{background:var(--lab-panel-bg);color:#dce4ed;padding:1rem 1.1rem;overflow-y:auto;max-height:80vh;border-left:1px solid var(--lab-border);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.lab-task-panel-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:-.15rem 0 .8rem;padding-bottom:.7rem;border-bottom:1px solid var(--lab-border)}.lab-task-panel-kicker,.lab-task-panel-progress{margin:0}.lab-task-panel-kicker{color:var(--lab-accent);font-size:.72rem;font-weight:800;text-transform:uppercase}.lab-task-panel-progress{margin-top:.16rem;color:var(--lab-muted);font-size:.82rem}.lab-step-instruction--panel{white-space:pre-wrap;font-size:.9rem;line-height:1.65;margin:0 0 1rem;color:#dce4ed}.lab-instruction-strong{font-weight:650;color:#f2f6fb}.lab-inline-copy{display:inline-block;margin:0 .18rem;padding:.08rem .42rem;border-radius:6px;border:1px solid #375174;background:#17263a;color:#a8d1ff;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.83em;line-height:1.35;cursor:pointer}.lab-inline-copy:hover{border-color:#4f89cc;background:#1d3554}.lab-inline-copy.copied{border-color:#3fb950;background:#163320;color:#80e29a}.lab-code-block{margin:.65rem 0 .85rem;border-radius:10px;border:1px solid #2a3a52;background:linear-gradient(180deg,#0a1018,#070c12);box-shadow:0 4px 18px #00000040;overflow:hidden}.lab-code-block-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.35rem .55rem .35rem .75rem;border-bottom:1px solid #243044;background:#142030a6}.lab-code-block-lang{font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#7aa2c8;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.lab-code-block-copy{flex-shrink:0;margin:0;padding:.2rem .55rem;border-radius:6px;border:1px solid #375174;background:#152232;color:#b6d7ff;font-size:.75rem;font-weight:500;cursor:pointer;font-family:inherit}.lab-code-block-copy:hover{border-color:#4f89cc;background:#1a2d45;color:#d8e9ff}.lab-code-block-copy.copied{border-color:#3fb950;background:#132818;color:#7ee2a8}.lab-code-block-pre{margin:0;padding:.65rem .85rem .75rem;overflow-x:auto;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8rem;line-height:1.5;color:#d8e4f0;white-space:pre;-moz-tab-size:4;tab-size:4}.lab-code-block-pre code{font-family:inherit;font-size:inherit;color:inherit}.lab-step-helpers-row{display:flex;gap:.5rem;margin:0 0 .75rem}.lab-task-muted{font-size:.88rem;color:#9fb0c4;margin:.5rem 0}.lab-stepper{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin-bottom:1rem}.lab-stepper-arrow{width:28px;height:28px;border-radius:6px;border:1px solid #33445c;background:#161f2d;color:#c4d2e2;cursor:pointer;font-size:1rem;line-height:1}.lab-stepper-arrow:disabled{opacity:.35;cursor:not-allowed}.lab-stepper-circle{width:30px;height:30px;border-radius:50%;border:2px solid var(--lab-border);background:var(--lab-accent-soft);color:var(--lab-muted);font-size:.8rem;font-weight:600;cursor:pointer;padding:0}.lab-stepper-circle.active{border-color:var(--lab-accent);background:#152232;color:var(--lab-accent);box-shadow:0 0 0 2px #58a6ff2e}.lab-stepper-circle.done{border-color:var(--lab-success-soft);background:#132818;color:#7ee787}.lab-current-step-title{margin:0 0 .5rem;font-size:1.05rem;color:#f0f6fc}.lab-quiz-question{font-weight:600;margin:0 0 .75rem;line-height:1.4}.quiz-pills{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.quiz-pill{width:100%;text-align:left;padding:.65rem 1rem;border-radius:999px;border:2px solid #2f81f7;background:#12243a;color:#9ecbff;font-size:.92rem;cursor:pointer}.quiz-pill.selected{background:#1f6feb;color:#fff}.lab-quiz-submit{margin-top:.25rem}.lab-check-fail{margin-top:1rem;font-size:.88rem;color:#ff8e8e;white-space:pre-line}.lab-step-transition-panel{min-height:220px;display:flex;align-items:center;justify-content:center;padding:1rem 0}.lab-step-transition-gear{display:inline-block;font-size:10.75rem;line-height:1;color:var(--lab-accent);text-shadow:0 0 34px rgba(88,166,255,.42);animation:lab-gear-spin 1s linear infinite}@keyframes lab-gear-spin{to{transform:rotate(360deg)}}.lab-freeform-body{display:flex;flex-direction:column;gap:1rem}.lab-freeform-steps h3{margin-top:0}.lab-freeform-task{margin-top:.75rem}.lab-freeform-task-title{margin:0 0 .5rem;font-size:1rem}.lab-freeform-task-body{font-size:.92rem;line-height:1.5}.lab-freeform-hint-panel{margin-top:.75rem;padding:.65rem .85rem;border-radius:8px;background:#58a6ff14;border:1px solid rgba(88,166,255,.35);font-size:.88rem}.lab-freeform-feedback{margin-top:.75rem;padding:.65rem .85rem;border-radius:8px;font-size:.88rem}.lab-freeform-feedback--error{background:#f851491f;border:1px solid rgba(248,81,73,.45);color:#ff8e8e}.lab-freeform-feedback--success{background:#2ea0431f;border:1px solid rgba(46,160,67,.45);color:#7ee787}.lab-freeform-feedback-title{margin:0;font-weight:600}.lab-freeform-feedback-detail{margin:.35rem 0 0;white-space:pre-line}.lab-scenario-brief-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:flex-start;justify-content:center;padding:2rem 1rem 3rem;overflow-y:auto;background:#030912f0}.lab-page--landing .lab-scenario-brief-overlay{top:0;bottom:0;padding-top:calc(var(--lab-toolbar-height, 4.25rem) + 1.5rem);scroll-padding-top:calc(var(--lab-toolbar-height, 4.25rem) + 1.5rem)}.lab-scenario-brief-card{width:min(720px,100%);padding:1.75rem 2rem;border-radius:12px;border:1px solid var(--lab-border-strong);background:var(--lab-card-bg)}.lab-scenario-brief-kicker{margin:0 0 .35rem;font-size:.85rem;color:var(--lab-muted);text-transform:uppercase;letter-spacing:.04em}.lab-scenario-brief-title{margin:0 0 1rem;font-size:1.5rem}.lab-scenario-brief-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}.lab-scenario-brief-badge{padding:.2rem .55rem;border-radius:999px;font-size:.78rem;border:1px solid var(--lab-border);background:var(--lab-accent-soft);color:var(--lab-terminal-fg)}.lab-scenario-brief-section{margin-bottom:1.1rem}.lab-scenario-brief-section h3{margin:0 0 .4rem;font-size:.95rem;color:var(--lab-muted)}.lab-scenario-brief-section .lab-scenario-brief-prose.lab-step-instruction--panel{white-space:normal;margin:0;line-height:1.6;font-size:.92rem}.lab-scenario-brief-prose .lab-code-block{margin:.75rem 0 1rem}.lab-scenario-brief-actions{display:flex;flex-direction:column;gap:.65rem;margin-top:1.5rem}.lab-scenario-brief-cta{padding:.75rem 1.25rem;font-size:1rem;font-weight:600}.lab-freeform-body .terminal-wrap{flex-shrink:0}.lab-terminal-freeform{flex:none;height:420px;min-height:420px;width:100%;overflow:hidden}.lab-terminal-viewport-page{display:flex;flex-direction:column;min-height:100vh;background:var(--lab-canvas)}.lab-terminal-viewport-toolbar{display:flex;align-items:center;gap:.75rem;padding:.5rem .85rem;border-bottom:1px solid var(--lab-border);background:var(--lab-surface);flex-shrink:0}.lab-terminal-viewport-toolbar a{color:var(--lab-accent);text-decoration:none;font-size:.9rem}.lab-terminal-viewport-toolbar a:hover{text-decoration:underline}.lab-terminal-viewport-title{flex:1;font-weight:600;font-size:.95rem;color:#e8eaed}.lab-terminal-viewport-host .lab-terminal-tab-pane,.lab-terminal-viewport-host{position:relative}.lab-terminal-viewport-host{flex:1;min-height:0;padding:.35rem}.lab-terminal-viewport-host .terminal-wrap{height:100%;min-height:calc(100vh - 3.25rem)}.lab-terminal-viewport-error{margin:1rem;color:#ff8e8e}.lab-terminal-fallback{min-height:420px;margin-top:.5rem}.lab-boot-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:950;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:radial-gradient(ellipse 120% 80% at 50% 20%,#172941,#050910 58%);animation:lab-boot-overlay-in .35s ease-out both}@keyframes lab-boot-overlay-in{0%{opacity:0}to{opacity:1}}.lab-boot-fullscreen{position:relative;z-index:1;width:100%;max-width:960px;text-align:center;color:#e8eaed}.lab-boot-domain{margin:0 0 .75rem;font-size:clamp(2.25rem,10vw,4.75rem);font-weight:900;line-height:1.05;letter-spacing:-.04em;text-shadow:0 4px 32px rgba(0,0,0,.45)}.lab-boot-domain-accent{color:#3fb950}.lab-boot-domain-tld{color:var(--lab-accent)}.lab-boot-loading-title{margin:0 0 1rem;font-size:clamp(1.75rem,6vw,2.75rem);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#f0f3f6;animation:lab-boot-loading-pulse 1.4s ease-in-out infinite}@keyframes lab-boot-loading-pulse{0%,to{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.02)}}.lab-boot-phase{margin:0 0 .75rem;font-size:clamp(.95rem,2.5vw,1.1rem);color:#8b949e;line-height:1.4}.lab-boot-hint{margin:0 0 1.75rem;font-size:clamp(.85rem,2.2vw,1rem);color:#6e7681;line-height:1.5;max-width:36rem;margin-left:auto;margin-right:auto;min-height:3rem}.lab-boot-spinner{display:flex;justify-content:center;flex-wrap:wrap;gap:.5rem}.lab-boot-spinner--large span{width:14px;height:14px}.lab-boot-spinner span{border-radius:50%;background:#0969da;animation:lab-boot-bounce .9s ease-in-out infinite both}.lab-boot-spinner span:nth-child(2){animation-delay:.1s;background:#3fb950}.lab-boot-spinner span:nth-child(3){animation-delay:.2s;background:var(--lab-accent)}.lab-boot-spinner span:nth-child(4){animation-delay:.3s;background:#d29922}.lab-boot-spinner span:nth-child(5){animation-delay:.4s;background:#f778ba}@keyframes lab-boot-bounce{0%,80%,to{transform:scale(.55);opacity:.45}40%{transform:scale(1.15);opacity:1}}.lab-step-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:940;background:#010409c7;display:flex;align-items:center;justify-content:center;padding:1rem;box-sizing:border-box}.lab-step-modal-card{width:100%;max-width:540px;max-height:min(88vh,760px);overflow:auto;background:#161b22;border:1px solid #30363d;border-radius:12px;padding:1.35rem 1.4rem 1.25rem;box-shadow:0 20px 56px #0000008c}.lab-step-modal-title{margin:0 0 1rem;font-size:1.2rem;font-weight:700;color:#f0f3f6;line-height:1.3}.lab-step-modal-body{white-space:pre-wrap;font-size:.9rem;line-height:1.55;color:#c9d1d9;margin:0 0 1.35rem}.lab-step-modal-actions{display:flex;justify-content:flex-end}.lab-step-modal-ok{min-width:7rem;padding:.55rem 1.25rem;font-weight:700;font-size:1rem;background:var(--lab-success);color:#fff;border:none;border-radius:8px;cursor:pointer}.lab-step-modal-ok:hover{background:#3fb950}
