: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)}*{box-sizing:border-box}body{margin:0;min-height:100vh}a{color:#58a6ff}button{cursor:pointer;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;background:#238636;color:#fff}button.secondary{background:#30363d}button.danger{background:#da3633}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}.nav a:hover{text-decoration:underline}.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, #30363d);border-radius:8px;overflow:hidden;background:var(--lab-terminal-bg, #1c2128)}.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}.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}.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%,#161b22,#0d1117,#010409);min-height:calc(100vh - 2rem);border-radius:0}.lab-page--landing .lab-toolbar{background:#161b22;border:1px solid #30363d;border-radius:10px;padding:.65rem 1rem;margin-bottom:.75rem}.lab-page--landing .lab-toolbar-title{color:#e8eaed}.lab-page--landing .lab-toolbar-back{color:#58a6ff}.lab-main-wrap{position:relative;min-height:min(560px,calc(100vh - 160px))}.lab-page--immersive{--lab-canvas: #0d1117;--lab-surface: #161b22;--lab-terminal-bg: #1c2128;--lab-terminal-fg: #c9d1d9;--lab-panel-bg: #161b22;--lab-border: #30363d;--lab-accent: #58a6ff;--lab-success: #2ea043;--lab-success-soft: #3d6b47;--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: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;min-height:100vh;display:flex;flex-direction:column}.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, #3d6b47);background:#132818;color:#7ee787}.lab-page--immersive .lab-main-wrap{flex:1;min-height:0;display:flex;flex-direction:column}.lab-page--immersive .lab-split-grid{flex:1;width:100%;height:auto;min-height:min(520px,calc(100vh - var(--lab-toolbar-height, 4.5rem) - 2rem));grid-template-columns:minmax(0,1fr) clamp(280px,32vw,440px)}.lab-page--immersive .lab-terminal-col{min-height:0;height:100%}.lab-page--immersive .lab-split-grid .terminal-wrap.lab-terminal-main{height:100%;min-height:0;flex:1}.lab-page--immersive .lab-task-panel{max-height:none;height:100%}.lab-page--immersive .lab-freeform-grid{flex:1;height:auto;min-height:min(520px,calc(100vh - var(--lab-toolbar-height, 4.5rem) - 2rem))}.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)}}@media (max-width: 960px){.lab-page--immersive .lab-split-grid{grid-template-columns:1fr;grid-template-rows:minmax(280px,55vh) auto;height:auto;min-height:calc(100vh - 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-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%,#1c2128,#0d1117 48%,#010409);box-sizing:border-box}.lab-landing-card{max-width:520px;width:100%;padding:2rem 1.75rem 2.25rem;background:#161b22;border:1px solid #30363d;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:#58a6ff}.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:#79c0ff;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-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:.75rem 1rem;margin-bottom:.75rem;padding:.65rem .8rem;border:1px solid var(--lab-border, #30363d);border-radius:12px;background:var(--lab-surface, #161b22);box-shadow:0 8px 30px #00000040}.lab-page .lab-toolbar{position:relative;z-index:920}.lab-toolbar-back{color:#8cc8ff;text-decoration:none;font-size:.9rem}.lab-toolbar-title{font-weight:700;flex:1;min-width:120px;color:#f0f6fc}.lab-toolbar-actions{display:flex;flex-wrap:wrap;gap:.5rem}.lab-toolbar-end{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-left:auto}.lab-toolbar-timer{font-variant-numeric:tabular-nums;font-weight:700;font-size:.95rem;letter-spacing:.04em;padding:.35rem .65rem;border-radius:8px;border:1px solid #30363d;background:#161b22;color:#e8eaed}.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:#21262d;border:1px solid #30363d;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:#58a6ff}.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 #30363d;border-radius:14px;overflow:hidden;min-height:520px;background:#0b1118;box-shadow:0 18px 50px #00000059}.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%,#375174 45%,#375174 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, #1c2128);padding:8px}.lab-terminal-tabs{flex:1;min-height: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-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, #30363d);border-radius:6px 0 0 6px;background:#21262d;color:var(--lab-terminal-fg, #c9d1d9);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, #1c2128);border-color:#58a6ff;color:#e6edf3}.lab-terminal-tab-close{font:inherit;font-size:.85rem;line-height:1;padding:4px 6px;border:1px solid var(--lab-border, #30363d);border-left:none;border-radius:0 6px 6px 0;background:#21262d;color:#8b949e;cursor:pointer}.lab-terminal-tab-close:hover{color:#f85149;background:#30363d}.lab-terminal-tab-add{font:inherit;font-size:1rem;line-height:1;width:28px;height:28px;padding:0;border:1px dashed var(--lab-border, #30363d);border-radius:6px;background:transparent;color:var(--lab-terminal-fg, #c9d1d9);cursor:pointer}.lab-terminal-tab-add:disabled{opacity:.35;cursor:not-allowed}.lab-terminal-tab-add:not(:disabled):hover{border-color:#58a6ff;color:#58a6ff}.lab-terminal-tabs-body{flex:1;min-height:0;display:flex;flex-direction:column}.lab-terminal-tab-pane{position:relative;flex:1;min-height:0;height:100%;border-radius:10px;border:1px solid var(--lab-border, #30363d);background:var(--lab-terminal-bg, #1c2128)}.lab-terminal-copy-scissors{position:absolute;z-index:30;pointer-events:none;color:#58a6ff;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, #30363d);background:var(--lab-terminal-bg, #1c2128)}.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;padding:0;font-variant-ligatures:none;font-feature-settings:"liga" 0,"calt" 0}.lab-task-panel{background:var(--lab-panel-bg, #161b22);color:#dce4ed;padding:1rem 1.1rem;overflow-y:auto;max-height:80vh;border-left:1px solid var(--lab-border, #30363d);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.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 #33445c;background:#131c2a;color:#9fb0c4;font-size:.8rem;font-weight:600;cursor:pointer;padding:0}.lab-stepper-circle.active{border-color:var(--lab-accent, #58a6ff);background:#152232;color:var(--lab-accent, #58a6ff);box-shadow:0 0 0 2px #58a6ff2e}.lab-stepper-circle.done{border-color:var(--lab-success-soft, #3d6b47);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:#8cc8ff;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:#010409eb}.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 #30363d;background:#0d1117}.lab-scenario-brief-kicker{margin:0 0 .35rem;font-size:.85rem;color:#8b949e;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 #30363d;background:#161b22;color:#c9d1d9}.lab-scenario-brief-section{margin-bottom:1.1rem}.lab-scenario-brief-section h3{margin:0 0 .4rem;font-size:.95rem;color:#8b949e}.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, #0d1117)}.lab-terminal-viewport-toolbar{display:flex;align-items:center;gap:.75rem;padding:.5rem .85rem;border-bottom:1px solid #30363d;background:#0d1117;flex-shrink:0}.lab-terminal-viewport-toolbar a{color:#58a6ff;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%,#161b22,#010409 55%);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:#58a6ff}.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:#58a6ff}.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, #2ea043);color:#fff;border:none;border-radius:8px;cursor:pointer}.lab-step-modal-ok:hover{background:#3fb950}
