/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.fixed{position:fixed}.start{inset-inline-start:var(--spacing)}.block{display:block}.hidden{display:none}.table{display:table}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.outline{outline-style:var(--tw-outline-style);outline-width:1px}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#fafafa;--color-surface:#fff;--color-surface-soft:#f4f4f5;--color-surface-raised:#fff;--color-border:#e5e7eb;--color-border-strong:#d1d5db;--color-text:#171717;--color-text-muted:#6b7280;--color-text-soft:#9ca3af;--color-link:#0070f3;--color-link-hover:#075dbf;--color-git:#d9482b;--color-git-soft:#fff0ec;--color-success:#16803c;--color-success-soft:#eaf8ee;--color-warning:#9a6700;--color-warning-soft:#fff8d8;--color-danger:#c62e2e;--color-danger-soft:#fff0f0;--color-purple:#7c3aed;--color-purple-soft:#f4efff;--color-terminal:#111827;--color-terminal-text:#e5e7eb;--shadow-card:0 18px 60px #17171712;--page-width:1280px}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#121314;--color-surface:#1c1d1f;--color-surface-soft:#232528;--color-surface-raised:#202225;--color-border:#2d2e31;--color-border-strong:#44474d;--color-text:#e8eaed;--color-text-muted:#9aa0a6;--color-text-soft:#72767d;--color-link:#60a5fa;--color-link-hover:#93c5fd;--color-git:#f06449;--color-git-soft:#3a211d;--color-success:#4ade80;--color-success-soft:#173524;--color-warning:#f6c453;--color-warning-soft:#3b3118;--color-danger:#fb7185;--color-danger-soft:#3b2026;--color-purple:#c4b5fd;--color-purple-soft:#2d2544;--color-terminal:#0b0f19;--color-terminal-text:#e5e7eb;--shadow-card:0 18px 60px #00000047}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#121314;--color-surface:#1c1d1f;--color-surface-soft:#232528;--color-surface-raised:#202225;--color-border:#2d2e31;--color-border-strong:#44474d;--color-text:#e8eaed;--color-text-muted:#9aa0a6;--color-text-soft:#72767d;--color-link:#60a5fa;--color-link-hover:#93c5fd;--color-git:#f06449;--color-git-soft:#3a211d;--color-success:#4ade80;--color-success-soft:#173524;--color-warning:#f6c453;--color-warning-soft:#3b3118;--color-danger:#fb7185;--color-danger-soft:#3b2026;--color-purple:#c4b5fd;--color-purple-soft:#2d2544;--shadow-card:0 18px 60px #00000047}}*,:before,:after{box-sizing:border-box}html{background:var(--color-bg);color:var(--color-text);scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:6rem;font-size:17px}body{background:var(--color-bg);min-height:100vh;color:var(--color-text);margin:0;font-family:Segoe UI,PingFang TC,Microsoft JhengHei,Noto Sans TC,system-ui,sans-serif;line-height:1.75;transition:background-color .18s,color .18s}a{color:inherit;text-decoration:none}button{color:inherit;cursor:pointer;border:0}button,input{font:inherit}code{font-family:Cascadia Code,SFMono-Regular,Consolas,Liberation Mono,monospace}::selection{background:var(--color-git);color:#fff}:focus-visible{outline:3px solid var(--color-link);outline-offset:3px}.site-header{z-index:20;width:100%;min-height:4.75rem;padding:.65rem max(1rem, calc((100vw - var(--page-width)) / 2));border-bottom:1px solid var(--color-border);grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.site-header{border-bottom:1px solid color-mix(in srgb, var(--color-border) 85%, transparent)}}.site-header{background:var(--color-bg)}@supports (color:color-mix(in lab, red, red)){.site-header{background:color-mix(in srgb, var(--color-bg) 88%, transparent)}}.site-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{justify-self:start;align-items:center;gap:.75rem;display:inline-flex}.brand-mark{background:var(--color-git);color:#fff;border-radius:.7rem;place-items:center;width:2.35rem;height:2.35rem;font:800 1rem/1 Cascadia Code,Consolas,monospace;display:grid;transform:rotate(-4deg)}.brand>span:last-child{flex-direction:column;gap:.05rem;display:flex}.brand strong{letter-spacing:-.02em;font-size:.95rem;line-height:1.3}.brand small{color:var(--color-text-muted);font-size:.67rem;line-height:1.3}.header-nav{border:1px solid var(--color-border);background:var(--color-surface);border-radius:999px;justify-content:center;align-items:center;gap:.25rem;padding:.25rem;font-size:.82rem;font-weight:600;display:flex}.header-nav a,.nav-coming-soon{border-radius:999px;padding:.4rem .75rem}.header-nav a{transition:color .15s,background-color .15s}.header-nav a:hover{background:var(--color-surface-soft);color:var(--color-link)}.nav-coming-soon{color:var(--color-text-soft);cursor:not-allowed}.theme-toggle{border:1px solid var(--color-border);background:var(--color-surface);border-radius:.7rem;justify-self:end;align-items:center;gap:.5rem;min-height:2.6rem;padding:.45rem .75rem;transition:border-color .15s,background-color .15s;display:inline-flex}.theme-toggle:hover{border-color:var(--color-border-strong);background:var(--color-surface-soft)}.theme-toggle-icon{font-size:1.2rem;line-height:1}.theme-toggle-label{color:var(--color-text-muted);font-size:.76rem;font-weight:600}@media (width<=767px){html{font-size:16px}.site-header{grid-template-columns:1fr auto;min-height:4.25rem}.header-nav,.theme-toggle-label{display:none}.theme-toggle{justify-content:center;width:2.6rem;padding:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}.hero{max-width:var(--page-width);grid-template-columns:minmax(0,.95fr) minmax(30rem,1.05fr);align-items:center;gap:clamp(3rem,7vw,7rem);min-height:calc(100vh - 4.75rem);margin:0 auto;padding:clamp(4rem,8vw,7.5rem) 1.5rem;display:grid}.hero-copy{z-index:1;position:relative}.eyebrow{color:var(--color-text-muted);letter-spacing:.07em;align-items:center;gap:.75rem;margin:0 0 1.5rem;font-size:.76rem;font-weight:700;display:flex}.eyebrow span{background:var(--color-git-soft);color:var(--color-git);letter-spacing:.08em;border-radius:.35rem;padding:.28rem .55rem;font-family:Cascadia Code,Consolas,monospace}.hero h1{letter-spacing:-.065em;max-width:48rem;margin:0;font-size:clamp(3rem,5.6vw,5.7rem);font-weight:780;line-height:1.04}.hero h1 em{color:var(--color-git);font-style:normal}.hero-lead{max-width:38rem;color:var(--color-text-muted);margin:2rem 0 0;font-size:clamp(1rem,1.5vw,1.12rem)}.hero-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:2.25rem;display:flex}.primary-action,.secondary-action{border-radius:.7rem;justify-content:center;align-items:center;gap:1rem;min-height:3.1rem;padding:.7rem 1.1rem;font-size:.9rem;font-weight:700;transition:transform .16s,background-color .16s,border-color .16s;display:inline-flex}.primary-action{background:var(--color-git);color:#fff}.primary-action:hover{transform:translateY(-2px)}.primary-action span{font-size:1.2rem}.secondary-action{border:1px solid var(--color-border);background:var(--color-surface)}.secondary-action:hover{border-color:var(--color-border-strong);background:var(--color-surface-soft)}.hero-facts{color:var(--color-text-muted);flex-wrap:wrap;gap:.65rem 1.25rem;margin:1.5rem 0 0;padding:0;font-size:.75rem;list-style:none;display:flex}.hero-facts li{align-items:center;gap:.35rem;display:flex}.hero-facts span{color:var(--color-success);font-weight:800}.mental-model-section,.course-section,.method-section{max-width:var(--page-width);margin:0 auto;padding:clamp(5rem,9vw,8rem) 1.5rem}.mental-model-section{border-top:1px solid var(--color-border)}.section-heading{max-width:46rem;margin-bottom:3rem}.section-number{color:var(--color-git);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .75rem;font:700 .72rem/1.4 Cascadia Code,Consolas,monospace}.section-heading h2,.method-intro h2{letter-spacing:-.05em;margin:0;font-size:clamp(2rem,4vw,3.6rem);line-height:1.1}.section-heading>p:last-child{color:var(--color-text-muted);margin:1.25rem 0 0}.course-section{border-top:1px solid var(--color-border)}.course-heading{grid-template-columns:minmax(0,1fr) minmax(18rem,.72fr);align-items:end;gap:3rem;max-width:none;display:grid}.course-heading>p:last-child{margin:0}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.course-card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:1rem;min-height:17rem;padding:1.5rem;transition:transform .18s,border-color .18s,box-shadow .18s;position:relative;overflow:hidden}.course-card:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-card);transform:translateY(-3px)}.course-card-next,.course-card-available{border-color:color-mix(in srgb, var(--color-git) 50%, var(--color-border));background:linear-gradient(135deg, var(--color-git-soft), transparent 56%), var(--color-surface)}.course-card-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.course-order{color:var(--color-text-soft);font:700 .78rem/1 Cascadia Code,Consolas,monospace}.course-status{color:var(--color-text-muted);background:var(--color-surface-soft);border-radius:999px;padding:.24rem .52rem;font-size:.67rem;font-weight:700}.course-status-next,.course-status-available{color:var(--color-git);background:var(--color-git-soft)}.course-card h3{letter-spacing:-.035em;max-width:25rem;margin:2rem 0 0;font-size:clamp(1.35rem,2vw,1.75rem);line-height:1.25}.course-card>p{max-width:31rem;color:var(--color-text-muted);margin:.75rem 0 0;font-size:.9rem}.course-topics{flex-wrap:wrap;gap:.4rem;margin-top:1.5rem;padding-right:2rem;display:flex}.course-topics code{border:1px solid var(--color-border);color:var(--color-text-muted);background:var(--color-bg);border-radius:.35rem;padding:.2rem .42rem;font-size:.66rem}.course-arrow{color:var(--color-text-soft);font-size:1.35rem;position:absolute;bottom:1.35rem;right:1.5rem}.course-start-link{color:#fff;background:var(--color-git);border-radius:.55rem;align-items:center;gap:.55rem;min-height:2.4rem;padding:.4rem .7rem;font-size:.72rem;font-weight:700;transition:transform .15s;display:inline-flex;position:absolute;bottom:1.25rem;right:1.35rem}.course-start-link:hover{transform:translate(2px)}.method-section{border-top:1px solid var(--color-border);grid-template-columns:minmax(18rem,.7fr) minmax(0,1.3fr);gap:clamp(3rem,8vw,8rem);display:grid}.method-list{margin:0;padding:0;list-style:none}.method-intro>p:last-child{max-width:31rem;color:var(--color-text-muted);margin:1.25rem 0 0}.method-list li{border-bottom:1px solid var(--color-border);grid-template-columns:3rem 1fr;gap:1rem;padding:1.5rem 0;display:grid}.method-list li:first-child{padding-top:0}.method-list>li>span{color:#fff;background:var(--color-git);border-radius:50%;place-items:center;width:2.2rem;height:2.2rem;font:700 .75rem/1 Cascadia Code,Consolas,monospace;display:grid}.method-list strong{font-size:1.05rem}.method-list p{color:var(--color-text-muted);margin:.25rem 0 0;font-size:.86rem}@media (width<=1000px){.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{max-width:48rem}.course-heading,.method-section{grid-template-columns:1fr}.course-heading{gap:1.5rem}}@media (width<=767px){.hero,.mental-model-section,.course-section,.method-section{padding-left:1rem;padding-right:1rem}.hero{gap:3rem;padding-top:3.5rem;padding-bottom:4rem}.hero h1{font-size:clamp(2.7rem,13vw,4.1rem)}.hero-actions{flex-direction:column;align-items:stretch}.primary-action,.secondary-action{width:100%}.course-grid{grid-template-columns:1fr}.course-card{min-height:15rem}}.graph-panel{color:#e5e7eb;box-shadow:0 30px 90px #00000038, 0 0 0 8px color-mix(in srgb, var(--color-git) 5%, transparent);background:#0c111b;border:1px solid #2d3748;border-radius:1rem;position:relative;overflow:hidden}.graph-panel:before{z-index:0;content:"";pointer-events:none;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:24px 24px;position:absolute;inset:0}.graph-panel-header{z-index:1;background:#111827db;border-bottom:1px solid #293244;grid-template-columns:1fr auto 1fr;align-items:center;min-height:3.4rem;padding:0 1rem;display:grid;position:relative}.graph-panel-header>div{gap:.38rem;display:flex}.window-dot{border-radius:50%;width:.62rem;height:.62rem}.window-dot-red{background:#ff5f57}.window-dot-yellow{background:#febc2e}.window-dot-green{background:#28c840}.graph-panel-header code{color:#9ca3af;font-size:.68rem}.live-badge{color:#9ca3af;justify-self:end;align-items:center;gap:.35rem;font-size:.62rem;display:flex}.live-badge i{background:#4ade80;border-radius:50%;width:.42rem;height:.42rem;box-shadow:0 0 0 4px #4ade801c}.graph-canvas{z-index:1;min-height:28rem;padding:2.2rem 1.75rem 2rem;position:relative}.commit-list{z-index:2;flex-direction:column;gap:1.7rem;margin:0;padding:0;list-style:none;display:flex;position:relative}.commit-row{grid-template-columns:3.3rem 1fr;align-items:center;min-height:4.3rem;display:grid;position:relative}.commit-node{z-index:3;background:#0c111b;border:3px solid #60a5fa;border-radius:50%;width:1.05rem;height:1.05rem;margin-left:1.1rem;display:block;position:relative;box-shadow:0 0 0 4px #60a5fa1a}.commit-node-head{background:#f06449;border-color:#f06449;width:1.28rem;height:1.28rem;margin-left:1rem;box-shadow:0 0 0 5px #f0644926}.commit-row-feature{grid-template-columns:6.3rem 1fr}.commit-node-feature{border-color:#c4b5fd;margin-left:4.1rem;box-shadow:0 0 0 4px #c4b5fd1a}.commit-copy{flex-wrap:wrap;align-items:baseline;gap:.45rem .75rem;display:flex}.commit-copy strong{color:#f9fafb;font:700 .82rem/1 Cascadia Code,Consolas,monospace}.commit-copy>span:last-child{color:#9ca3af;font-size:.8rem}.commit-labels{flex-basis:100%;align-items:center;gap:.38rem;margin-bottom:.12rem;display:flex}.head-label,.branch-label{border-radius:.3rem;padding:.2rem .42rem;font:700 .6rem/1.2 Cascadia Code,Consolas,monospace}.head-label{color:#fff;background:#f06449}.branch-main{color:#bfdbfe;background:#3b82f62e}.branch-feature{color:#ddd6fe;background:#8b5cf633}.graph-axis span{z-index:1;display:block;position:absolute}.axis-main{background:#3b82f6;width:3px;left:3.34rem}.axis-main-top{height:5.5rem;top:3.2rem}.axis-main-bottom{top:13.4rem;bottom:4.8rem}.axis-feature-curve{border-bottom:3px solid #8b5cf6;border-right:3px solid #8b5cf6;border-bottom-right-radius:2.5rem;width:3.1rem;height:5.1rem;top:8.5rem;left:3.34rem;transform:scaleY(-1)}.axis-feature{background:#8b5cf6;width:3px;height:4.2rem;top:9.5rem;left:6.34rem}.axis-merge{border-bottom:3px solid #8b5cf6;border-right:3px solid #8b5cf6;border-bottom-right-radius:2.5rem;width:3rem;height:6.2rem;top:3.7rem;left:3.4rem}.graph-explanation{z-index:1;background:#111827e6;border-top:1px solid #293244;grid-template-columns:2rem 1fr;gap:.75rem;padding:1rem 1.25rem;display:grid;position:relative}.explanation-icon{color:#f06449;font:700 1.2rem/1.5 Cascadia Code,Consolas,monospace}.graph-explanation p{color:#9ca3af;margin:0;font-size:.72rem;line-height:1.6}.graph-explanation strong{color:#e5e7eb;display:block}.state-flow{grid-template-columns:minmax(11rem,1fr) auto minmax(11rem,1fr) auto minmax(11rem,1fr) auto minmax(11rem,1fr);align-items:stretch;gap:.7rem;display:grid}.state-card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:.85rem;min-width:0;padding:1rem}.state-card-topline{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.state-index{border:1px solid var(--color-border);width:1.6rem;height:1.6rem;color:var(--color-text-muted);background:var(--color-surface-soft);border-radius:.4rem;place-items:center;font:700 .65rem/1 Cascadia Code,Consolas,monospace;display:grid}.state-status{border-radius:999px;padding:.18rem .4rem;font:700 .57rem/1.2 Cascadia Code,Consolas,monospace}.status-modified,.status-staged{color:var(--color-warning);background:var(--color-warning-soft)}.status-committed{color:var(--color-success);background:var(--color-success-soft)}.status-remote{color:var(--color-link);background:color-mix(in srgb, var(--color-link) 11%, transparent)}.state-card h3{letter-spacing:-.025em;margin:1.6rem 0 0;font-size:1rem;line-height:1.3}.state-card p{min-height:3.2rem;color:var(--color-text-muted);margin:.45rem 0 .9rem;font-size:.72rem}.state-card>code{border:1px solid var(--color-border);color:var(--color-text);background:var(--color-surface-soft);text-overflow:ellipsis;white-space:nowrap;border-radius:.4rem;padding:.5rem;font-size:.66rem;display:block;overflow:hidden}.flow-command{min-width:4.8rem;color:var(--color-text-soft);flex-direction:column;justify-content:center;align-items:center;gap:.25rem;display:flex}.flow-command code{color:var(--color-git);font-size:.59rem;font-weight:700}.flow-command span{font-size:1.15rem}@media (width<=1180px){.state-flow{grid-template-columns:1fr auto 1fr}.flow-command:nth-of-type(2){display:none}.state-local,.state-remote{margin-top:.4rem}}@media (width<=767px){.graph-panel{width:calc(100vw - 2rem);transform:none}.graph-panel-header{grid-template-columns:auto 1fr;gap:1rem}.graph-panel-header code{text-align:right}.live-badge{display:none}.graph-canvas{min-height:26rem;padding-left:1rem;padding-right:1rem}.axis-main,.axis-feature-curve,.axis-merge{left:2.58rem}.axis-feature{left:5.58rem}.commit-row{grid-template-columns:3rem 1fr}.commit-row-feature{grid-template-columns:6rem 1fr}.commit-node{margin-left:.85rem}.commit-node-head{margin-left:.75rem}.commit-node-feature{margin-left:3.85rem}.state-flow{grid-template-columns:1fr}.flow-command{min-height:3.4rem}.flow-command span{transform:rotate(90deg)}.flow-command:nth-of-type(2){display:flex}.state-local,.state-remote{margin-top:0}.state-card p{min-height:auto}}.lesson-header{z-index:30;border-bottom:1px solid var(--color-border);background:color-mix(in srgb, var(--color-bg) 90%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);grid-template-columns:1fr auto 1fr;align-items:center;min-height:4.75rem;padding:.65rem max(1rem,50vw - 590px);display:grid;position:sticky;top:0}.lesson-brand{justify-self:start;align-items:center;gap:.7rem;display:inline-flex}.lesson-brand>span{color:#fff;background:var(--color-git);border-radius:.65rem;place-items:center;width:2.2rem;height:2.2rem;font:800 .9rem/1 Cascadia Code,Consolas,monospace;display:grid}.lesson-brand>div{flex-direction:column;display:flex}.lesson-brand strong{font-size:.86rem;line-height:1.4}.lesson-brand small{color:var(--color-text-muted);font-size:.65rem}.lesson-header-center{text-align:center}.lesson-header-center span{color:var(--color-git);letter-spacing:.08em;font:700 .58rem/1.3 Cascadia Code,Consolas,monospace}.lesson-header-center p{margin:.08rem 0 0;font-size:.78rem;font-weight:700}.lesson-page{max-width:1180px;margin:0 auto;padding:1.5rem 1.5rem 6rem}.lesson-breadcrumb{color:var(--color-text-muted);align-items:center;gap:.5rem;font-size:.72rem;display:flex}.lesson-breadcrumb a:hover{color:var(--color-link)}.lesson-hero{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:3rem;padding:clamp(3.5rem,7vw,6.5rem) 0 3.5rem;display:grid}.lesson-kicker{color:var(--color-git);letter-spacing:.1em;margin:0 0 1rem;font:700 .7rem/1.3 Cascadia Code,Consolas,monospace}.lesson-hero h1{letter-spacing:-.06em;max-width:50rem;margin:0;font-size:clamp(2.7rem,6vw,5.2rem);line-height:1.04}.lesson-lead{max-width:45rem;color:var(--color-text-muted);margin:1.5rem 0 0;font-size:1.05rem}.lesson-meta{border-top:1px solid var(--color-border);min-width:13rem;margin:0;display:grid}.lesson-meta>div{border-bottom:1px solid var(--color-border);grid-template-columns:1fr auto;gap:1rem;padding:.7rem 0;display:grid}.lesson-meta dt,.lesson-meta dd{margin:0;font-size:.72rem}.lesson-meta dt{color:var(--color-text-muted)}.lesson-meta dd{font-weight:700}.lesson-prose{min-width:0;max-width:50rem;padding:2rem 0 4rem}.lesson-prose h2{letter-spacing:-.04em;margin:0 0 1rem;font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.2}.lesson-prose p{color:var(--color-text-muted)}.lesson-prose strong{color:var(--color-text)}.lesson-prose code{color:var(--color-git);background:var(--color-git-soft);border-radius:.35rem;padding:.12rem .35rem;font-size:.86em}.lesson-prose pre{width:100%;max-width:100%;color:var(--color-terminal-text);background:var(--color-terminal);box-sizing:border-box;border-radius:.65rem;padding:1rem;overflow-x:auto}.lesson-prose pre code{color:inherit;white-space:pre;background:0 0;padding:0}.lesson-prose blockquote{border-left:3px solid var(--color-git);color:var(--color-text);background:var(--color-surface);margin:1.5rem 0;padding:.85rem 1rem}.lesson-prose blockquote p{margin:0}.lesson-takeaway{border:1px solid var(--color-border);background:var(--color-surface);border-radius:1rem;margin-top:5rem;padding:clamp(1.5rem,4vw,3rem)}.lesson-takeaway h2{letter-spacing:-.04em;margin:0;font-size:clamp(1.8rem,4vw,3rem)}.lesson-takeaway ol{counter-reset:takeaway;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:2rem 0;padding:0;list-style:none;display:grid}.lesson-takeaway li{border:1px solid var(--color-border);background:var(--color-bg);counter-increment:takeaway;border-radius:.7rem;padding:1rem;font-size:.86rem;font-weight:600}.lesson-takeaway li:before{color:var(--color-git);content:counter(takeaway) ".";margin-right:.5rem;font-family:Cascadia Code,Consolas,monospace}.lesson-takeaway>p:last-child{color:var(--color-text-muted);margin:0}.lesson-footer-nav{grid-template-columns:1fr 1fr;gap:1rem;margin-top:2rem;display:grid}.lesson-footer-nav>*{border:1px solid var(--color-border);background:var(--color-surface);border-radius:.8rem;flex-direction:column;justify-content:center;min-height:5.5rem;padding:1rem 1.2rem;display:flex}.lesson-footer-nav>div{color:var(--color-text-muted);cursor:not-allowed}.lesson-footer-nav span{color:var(--color-text-muted);font-size:.68rem}.lesson-footer-nav strong{font-size:.9rem}@media (width<=767px){.lesson-header{grid-template-columns:1fr auto}.lesson-header-center{display:none}.lesson-page{padding-left:1rem;padding-right:1rem}.lesson-hero{grid-template-columns:1fr;gap:2rem}.lesson-meta{width:100%}.lesson-takeaway ol,.lesson-footer-nav{grid-template-columns:1fr}}.lesson-player{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:1.2rem;overflow:hidden}.lesson-progress-header{justify-content:space-between;align-items:flex-start;gap:2rem;padding:1.5rem 1.5rem 1.25rem;display:flex}.lesson-progress-header h2{letter-spacing:-.035em;margin:0;font-size:clamp(1.35rem,2.6vw,2rem)}.lesson-step-count{color:var(--color-git);background:var(--color-git-soft);border-radius:.45rem;flex-shrink:0;padding:.4rem .6rem;font:700 .68rem/1.2 Cascadia Code,Consolas,monospace}.lesson-progress-track{background:var(--color-border);height:3px}.lesson-progress-track span{background:var(--color-git);height:100%;transition:width .22s;display:block}.lesson-step-nav{border-bottom:1px solid var(--color-border);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.lesson-step-nav button{border-right:1px solid var(--color-border);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:.3rem;min-width:0;min-height:4.6rem;padding:.6rem .35rem;transition:background-color .15s;display:flex}.lesson-step-nav button:last-child{border-right:0}.lesson-step-nav button:hover{background:var(--color-surface-soft)}.lesson-step-nav button[aria-current=step]{background:var(--color-git-soft)}.lesson-step-nav button>span{border:1px solid var(--color-border-strong);width:1.55rem;height:1.55rem;color:var(--color-text-muted);background:var(--color-surface);border-radius:50%;place-items:center;font:700 .62rem/1 Cascadia Code,Consolas,monospace;display:grid}.lesson-step-nav button[aria-current=step]>span{border-color:var(--color-git);color:#fff;background:var(--color-git)}.lesson-step-nav small{width:100%;color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.58rem;overflow:hidden}.lesson-task-panel{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(0,.82fr) minmax(24rem,1.18fr);gap:1.5rem;padding:1.5rem;display:grid}.lesson-task-copy{flex-direction:column;justify-content:center;display:flex}.lesson-task-index{color:var(--color-git);margin:0;font:700 .64rem/1.4 Cascadia Code,Consolas,monospace}.lesson-task-copy h2{letter-spacing:-.045em;margin:.7rem 0 0;font-size:clamp(1.55rem,3vw,2.4rem);line-height:1.15}.lesson-task-copy>p:last-child{color:var(--color-text-muted);margin:.8rem 0 0;font-size:.86rem}.lesson-terminal{color:var(--color-terminal-text);background:var(--color-terminal);border:1px solid #30394a;border-radius:.8rem;overflow:hidden}.lesson-terminal-bar{background:#161e2d;border-bottom:1px solid #30394a;justify-content:space-between;align-items:center;gap:1rem;min-height:2.6rem;padding:0 .85rem;display:flex}.lesson-terminal-bar>div{gap:.35rem;display:flex}.lesson-terminal-bar>div span{background:#586174;border-radius:50%;width:.55rem;height:.55rem}.lesson-terminal-bar>div span:first-child{background:#f06449}.lesson-terminal-bar p{color:#8f9bad;margin:0;font-size:.57rem}.lesson-terminal-body{min-height:9.5rem;padding:1rem;font-family:Cascadia Code,Consolas,monospace}.terminal-command{color:#f9fafb;gap:.65rem;font-size:.72rem;display:flex}.terminal-command>span{color:#4ade80;font-weight:800}.terminal-output{color:#93a0b2;margin-top:1rem;font-size:.66rem}.terminal-output p{margin:.2rem 0}.lesson-controls{border-top:1px solid var(--color-border);grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;padding:1.25rem 1.5rem;display:grid}.lesson-button,.lesson-reset-button{border-radius:.65rem;min-height:2.9rem;font-size:.78rem;font-weight:700}.lesson-button{justify-content:center;align-items:center;gap:.65rem;padding:.6rem 1rem;display:inline-flex}.lesson-button-secondary{border:1px solid var(--color-border);background:var(--color-surface);justify-self:start}.lesson-button-primary{color:#fff;background:var(--color-git);justify-self:end;min-width:8.5rem}.lesson-reset-button{color:var(--color-text-muted);background:0 0;padding:.5rem .8rem}.lesson-button:disabled,.lesson-reset-button:disabled{opacity:.38;cursor:not-allowed}@media (width<=900px){.lesson-task-panel{grid-template-columns:1fr}}@media (width<=767px){.lesson-progress-header{flex-direction:column;gap:.75rem}.lesson-step-nav{display:flex;overflow-x:auto}.lesson-step-nav button{min-width:4.25rem}.lesson-step-nav small{display:none}.lesson-task-panel{padding:1rem}.lesson-controls{grid-template-columns:1fr 1fr;padding:1rem}.lesson-reset-button{display:none}.lesson-button{width:100%}}.lesson-areas{background:var(--color-bg);grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;padding:1.5rem;display:grid}.lesson-area{border:1px solid var(--color-border);background:var(--color-surface);border-radius:.85rem;min-width:0;min-height:15rem;padding:1rem;transition:border-color .18s,box-shadow .18s,transform .18s;position:relative}.lesson-area-focused{border-color:var(--color-git);box-shadow:0 0 0 3px var(--color-git-soft);transform:translateY(-3px)}.lesson-area-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.lesson-area-letter{border:1px solid var(--color-border);width:1.55rem;height:1.55rem;color:var(--color-text-muted);background:var(--color-surface-soft);border-radius:.4rem;place-items:center;font:700 .62rem/1 Cascadia Code,Consolas,monospace;display:grid}.area-badge{text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:8rem;padding:.18rem .4rem;font:700 .54rem/1.2 Cascadia Code,Consolas,monospace;overflow:hidden}.area-badge-neutral{color:var(--color-text-muted);background:var(--color-surface-soft)}.area-badge-warning{color:var(--color-warning);background:var(--color-warning-soft)}.area-badge-success{color:var(--color-success);background:var(--color-success-soft)}.area-badge-remote{color:var(--color-link);background:color-mix(in srgb, var(--color-link) 12%, transparent)}.lesson-area-short{color:var(--color-git);margin:1.35rem 0 0;font-size:.61rem;font-weight:700}.lesson-area h3{letter-spacing:-.025em;margin:.15rem 0 0;font-size:.92rem;line-height:1.25}.lesson-area-description{min-height:2.8rem;color:var(--color-text-muted);margin:.45rem 0 .8rem;font-size:.65rem;line-height:1.55}.area-items{min-height:4rem}.area-item{border:1px solid var(--color-border);background:var(--color-surface-soft);border-radius:.45rem;flex-direction:column;align-items:flex-start;gap:.15rem;padding:.6rem;display:flex}.area-item code{color:var(--color-text);font-size:.67rem;font-weight:700}.area-item span{color:var(--color-text-muted);font-size:.58rem;line-height:1.45}.area-empty{border:1px dashed var(--color-border-strong);min-height:4rem;color:var(--color-text-soft);text-align:center;border-radius:.45rem;place-items:center;margin:0;font-size:.6rem;display:grid}.area-focus-label{color:var(--color-git);align-items:center;gap:.3rem;font-size:.56rem;font-weight:700;display:flex;position:absolute;bottom:.7rem;right:.8rem}.area-focus-label span{font-size:.45rem}.lesson-lower-grid{background:var(--color-bg);grid-template-columns:minmax(0,1.2fr) minmax(18rem,.8fr);gap:1rem;padding:0 1.5rem 1.5rem;display:grid}.lesson-graph,.lesson-explanation{border:1px solid var(--color-border);background:var(--color-surface);border-radius:.8rem;min-height:12rem;padding:1.2rem}.lesson-graph-title{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.lesson-graph h3{margin:0;font-size:1rem}.graph-head-tag{color:#fff;background:var(--color-git);border-radius:.35rem;padding:.25rem .45rem;font:700 .58rem/1.2 Cascadia Code,Consolas,monospace}.lesson-graph-empty{color:var(--color-text-muted);text-align:center;place-items:center;display:grid}.lesson-graph-empty h3{color:var(--color-text)}.lesson-graph-empty p:last-child{margin:.45rem 0 0;font-size:.72rem}.unborn-branch{align-items:center;gap:1rem;min-height:5rem;margin-top:1rem;padding-left:1rem;display:flex;position:relative}.unborn-line{background:var(--color-link);width:4rem;height:2px}.unborn-node{border:3px solid var(--color-link);background:var(--color-surface);border-radius:50%;width:.9rem;height:.9rem;margin-left:-1.45rem}.unborn-branch p{color:var(--color-text-muted);font-size:.68rem}.lesson-commit-list{margin:1.5rem 0 0;padding:0;list-style:none;position:relative}.lesson-commit-list:before{background:var(--color-link);content:"";width:2px;position:absolute;top:.2rem;bottom:.2rem;left:.5rem}.lesson-commit-list li{grid-template-columns:2.2rem 1fr;align-items:center;display:grid;position:relative}.lesson-commit-node{z-index:1;border:3px solid var(--color-link);background:var(--color-surface);border-radius:50%;width:1rem;height:1rem;position:relative}.lesson-commit-node-head{border-color:var(--color-git);background:var(--color-git);box-shadow:0 0 0 4px var(--color-git-soft)}.lesson-commit-content{flex-wrap:wrap;align-items:baseline;gap:.35rem .6rem;display:flex}.lesson-commit-content strong{font:700 .72rem/1 Cascadia Code,Consolas,monospace}.lesson-commit-content>span:last-child{color:var(--color-text-muted);font-size:.68rem}.lesson-branch-tags{flex-basis:100%;gap:.35rem;margin-bottom:.2rem;display:flex}.lesson-branch-tags span{border-radius:.3rem;padding:.18rem .4rem;font:700 .56rem/1.2 Cascadia Code,Consolas,monospace}.lesson-branch-local{color:var(--color-link);background:color-mix(in srgb, var(--color-link) 12%, transparent)}.lesson-branch-remote{color:var(--color-purple);background:var(--color-purple-soft)}.lesson-graph-summary{color:var(--color-text-muted);margin:1.2rem 0 0;font-size:.68rem}.lesson-explanation>p:nth-child(2){margin:1rem 0 0;font-size:.86rem}.misconception-note{border-left:3px solid var(--color-warning);background:var(--color-warning-soft);border-radius:.35rem;margin-top:1.2rem;padding:.8rem}.misconception-note strong{color:var(--color-warning);font-size:.66rem}.misconception-note p{color:var(--color-text);margin:.25rem 0 0;font-size:.7rem}@media (width<=900px){.lesson-areas{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-lower-grid{grid-template-columns:1fr}}@media (width<=560px){.lesson-areas{grid-template-columns:1fr;padding:1rem}.lesson-area{min-height:13rem}.lesson-lower-grid{padding:0 1rem 1rem}}.git-simulator{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:1.2rem;margin:3rem 0 5rem;overflow:hidden}.simulator-section-heading{justify-content:space-between;align-items:flex-end;gap:2rem;padding:clamp(1.4rem,4vw,2.5rem);display:flex}.simulator-section-heading>div:first-child{min-width:0}.simulator-section-heading h2{letter-spacing:-.045em;margin:.2rem 0 0;font-size:clamp(1.8rem,4vw,3rem);line-height:1.1}.simulator-section-heading>p,.simulator-section-heading div>p:last-child{max-width:45rem;color:var(--color-text-muted);margin:.75rem 0 0}.lesson-panel-label{color:var(--color-git);letter-spacing:.11em;margin:0;font:700 .62rem/1.3 Cascadia Code,Consolas,monospace}.reset-simulator-button{border:1px solid var(--color-border);background:var(--color-surface-soft);border-radius:.6rem;flex:none;padding:.65rem .9rem;font-size:.76rem;font-weight:700}.reset-simulator-button:hover{border-color:var(--color-git);color:var(--color-git)}.simulator-task-row{grid-template-columns:minmax(0,1.5fr) minmax(16rem,.75fr);gap:1rem;padding:0 1.5rem 1.5rem;display:grid}.task-panel,.last-effect{border:1px solid var(--color-border);background:var(--color-bg);border-radius:.8rem;min-height:10rem;padding:1.2rem}.task-progress{justify-content:space-between;align-items:center;display:flex}.task-progress>span{color:var(--color-text-muted);font:700 .65rem/1 Cascadia Code,Consolas,monospace}.task-panel h3,.last-effect strong{margin:.5rem 0 0;font-size:1rem;display:block}.task-panel>p,.last-effect span{color:var(--color-text-muted);margin-top:.4rem;font-size:.76rem;display:block}.hint-button{color:var(--color-link);background:0 0;margin-top:.6rem;padding:0;font-size:.7rem;font-weight:700}.task-hint{border-left:3px solid var(--color-warning);background:var(--color-warning-soft);padding:.55rem .7rem}.task-progress-bar{background:var(--color-border);border-radius:999px;height:.35rem;margin-top:1rem;overflow:hidden}.task-progress-bar span{border-radius:inherit;background:var(--color-git);height:100%;transition:width .18s;display:block}.simulator-areas{border-block:1px solid var(--color-border);background:var(--color-bg);grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;padding:1.5rem;display:grid}.simulator-area{border:1px solid var(--color-border);background:var(--color-surface);border-radius:.8rem;min-width:0;min-height:13rem;padding:1rem}.simulator-area header{align-items:flex-start;gap:.65rem;display:flex}.simulator-area header>span{color:#fff;background:var(--color-git);border-radius:.4rem;flex:none;place-items:center;width:1.6rem;height:1.6rem;font:800 .62rem/1 Cascadia Code,Consolas,monospace;display:grid}.simulator-area header p{color:var(--color-text-muted);letter-spacing:.05em;margin:0;font:700 .52rem/1.2 Cascadia Code,Consolas,monospace}.simulator-area h3{margin:.2rem 0 0;font-size:.78rem}.simulator-area ul{gap:.4rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.simulator-area li{background:var(--color-surface-soft);border-radius:.45rem;justify-content:space-between;align-items:center;gap:.4rem;min-width:0;padding:.5rem;display:flex}.simulator-area li code{text-overflow:ellipsis;font-size:.6rem;font-weight:700;overflow:hidden}.simulator-area li.simulator-empty{min-height:3rem;color:var(--color-text-soft);text-align:center;justify-content:center;font-size:.62rem}.file-status{border-radius:999px;flex:none;padding:.15rem .32rem;font-size:.5rem;font-weight:800}.file-status-untracked,.file-status-modified,.file-status-deleted{color:var(--color-warning);background:var(--color-warning-soft)}.file-status-staged,.file-status-committed{color:var(--color-success);background:var(--color-success-soft)}.file-status-conflicted{color:var(--color-danger);background:var(--color-danger-soft)}.file-status-ignored{color:var(--color-text-muted);background:var(--color-border)}.simulator-area dl{gap:.45rem;margin:1rem 0 0;display:grid}.simulator-area dl>div{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:.5rem;padding:.45rem 0;display:flex}.simulator-area dt,.simulator-area dd{margin:0;font-size:.61rem}.simulator-area dt{color:var(--color-text-muted)}.simulator-area dd{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.simulator-main-grid{background:var(--color-bg);grid-template-columns:minmax(0,1.35fr) minmax(20rem,.65fr);gap:1rem;padding:1.5rem;display:grid}.simulator-left-column{gap:1rem;min-width:0;display:grid}.simulator-terminal{color:var(--color-terminal-text);background:var(--color-terminal);border:1px solid #263041;border-radius:.8rem;overflow:hidden}.simulator-terminal>header{background:#0d1421;border-bottom:1px solid #263041;grid-template-columns:auto 1fr;align-items:center;gap:.8rem;padding:.7rem .9rem;display:grid}.terminal-lights{gap:.3rem;display:flex}.terminal-lights span{background:#fb7185;border-radius:50%;width:.55rem;height:.55rem}.terminal-lights span:nth-child(2){background:#fbbf24}.terminal-lights span:nth-child(3){background:#4ade80}.simulator-terminal header p,.simulator-terminal header span{margin:0;line-height:1.3}.simulator-terminal header p{font-size:.7rem;font-weight:700}.simulator-terminal header div>span{color:#8f9bad;font-size:.55rem}.terminal-history{min-height:17rem;max-height:24rem;padding:1rem;overflow:auto}.terminal-entry{white-space:pre-wrap;gap:.55rem;margin:0 0 .45rem;display:flex}.terminal-entry>span{color:#60a5fa;font-weight:800}.terminal-entry code{color:inherit;overflow-wrap:anywhere;font-size:.68rem;line-height:1.55}.terminal-entry-success{color:#86efac}.terminal-entry-warning{color:#fde68a}.terminal-entry-error{color:#fda4af}.terminal-entry-output{color:#b8c0cc}.terminal-form{border-top:1px solid #263041;padding:.9rem 1rem}.terminal-form label{color:#9aa8bb;margin-bottom:.4rem;font-size:.58rem;display:block}.terminal-form>div{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.6rem;display:grid}.terminal-form>div>span{color:#60a5fa;font-family:Cascadia Code,Consolas,monospace}.terminal-form input{color:#f3f4f6;background:#111827;border:1px solid #374151;border-radius:.45rem;outline:none;width:100%;min-width:0;padding:.65rem .75rem;font-family:Cascadia Code,Consolas,monospace;font-size:.72rem}.terminal-form input:focus{border-color:#60a5fa;box-shadow:0 0 0 2px #60a5fa40}.terminal-form button{color:#fff;background:var(--color-git);border-radius:.45rem;padding:.65rem .8rem;font-size:.7rem;font-weight:800}.terminal-form button:disabled,.quick-command-list button:disabled{opacity:.55;cursor:wait}.quick-command-list{flex-wrap:wrap;align-items:center;gap:.4rem;padding:0 1rem 1rem;display:flex}.quick-command-list>span{color:#8f9bad;font-size:.58rem}.quick-command-list button{color:#bfdbfe;background:#111827;border:1px solid #374151;border-radius:.35rem;padding:.3rem .45rem}.quick-command-list button:hover{border-color:#60a5fa}.quick-command-list code{font-size:.56rem}.danger-confirmation,.conflict-panel{border:1px solid var(--color-danger);background:var(--color-danger-soft);border-radius:.8rem;padding:1rem}.danger-confirmation h3,.conflict-panel h3{margin:.4rem 0}.danger-confirmation p,.conflict-panel p{margin:.35rem 0;font-size:.75rem}.danger-confirmation>div,.conflict-panel article>div{flex-wrap:wrap;gap:.5rem;margin-top:.8rem;display:flex}.danger-confirmation button,.conflict-panel button{border:1px solid var(--color-danger);background:var(--color-surface);border-radius:.45rem;padding:.55rem .7rem;font-size:.68rem;font-weight:700}.conflict-panel article{margin-top:1rem}.conflict-panel pre{max-height:13rem;color:var(--color-terminal-text);background:var(--color-terminal);white-space:pre-wrap;border-radius:.5rem;margin:.5rem 0 0;padding:.75rem;font-size:.62rem;overflow:auto}.conflict-panel .abort-fill-button{border-color:var(--color-border);color:var(--color-text-muted);margin-top:1rem}.file-workbench{border:1px solid var(--color-border);background:var(--color-surface);border-radius:.8rem;padding:1rem}.file-workbench-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.file-workbench h3{margin:.2rem 0 0;font-size:.9rem}.file-workbench button{border:1px solid var(--color-border);background:var(--color-surface-soft);border-radius:.45rem;padding:.5rem .65rem;font-size:.65rem;font-weight:700}.file-editor-controls{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.7rem;margin-top:1rem;display:grid}.file-editor-controls label,.workbench-tools label{color:var(--color-text-muted);font-size:.62rem}.file-editor-controls select{border:1px solid var(--color-border);min-width:0;color:var(--color-text);background:var(--color-bg);border-radius:.4rem;padding:.45rem;font:.65rem Cascadia Code,Consolas,monospace}.file-workbench>textarea,.ignore-editor{border:1px solid var(--color-border);width:100%;min-height:8rem;color:var(--color-text);background:var(--color-bg);resize:vertical;border-radius:.5rem;margin-top:.7rem;padding:.7rem;font:.68rem/1.55 Cascadia Code,Consolas,monospace}.file-workbench .save-file-button{color:#fff;border-color:var(--color-git);background:var(--color-git);margin-top:.55rem}.workbench-tools{border-top:1px solid var(--color-border);margin-top:1rem;padding-top:.8rem}.workbench-tools summary{color:var(--color-link);cursor:pointer;font-size:.67rem;font-weight:700}.workbench-tools>:not(summary){margin-top:.65rem}.workbench-tools label{display:block}.workbench-tools .ignore-editor{min-height:5rem}.simulator-scope-note{border-left:3px solid var(--color-link);background:color-mix(in srgb, var(--color-link) 7%, var(--color-surface));margin:0 1.5rem 1.5rem;padding:.9rem 1rem}.simulator-scope-note strong{font-size:.72rem}.simulator-scope-note p{color:var(--color-text-muted);margin:.25rem 0 0;font-size:.67rem}@media (width<=980px){.simulator-areas{grid-template-columns:repeat(2,minmax(0,1fr))}.simulator-main-grid{grid-template-columns:1fr}}@media (width<=680px){.simulator-section-heading,.simulator-task-row{grid-template-columns:1fr}.simulator-section-heading{flex-direction:column;align-items:flex-start}.simulator-areas{grid-template-columns:1fr;padding:1rem}.simulator-main-grid{padding:1rem}.terminal-form>div{grid-template-columns:auto minmax(0,1fr)}.terminal-form button{grid-column:2}}@media (prefers-reduced-motion:reduce){.task-progress-bar span{transition:none}}.simulator-graph{border:1px solid var(--color-border);background:var(--color-surface);border-radius:.8rem;align-self:start;min-width:0;padding:1rem}.simulator-graph-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.simulator-graph h3{margin:.2rem 0 0;font-size:.95rem}.simulator-graph-heading>span{color:#fff;background:var(--color-git);border-radius:.35rem;padding:.25rem .45rem;font:700 .55rem/1.2 Cascadia Code,Consolas,monospace}.simulator-graph-empty{text-align:center;place-content:center;min-height:16rem;display:grid}.simulator-graph-empty p:last-child{max-width:18rem;color:var(--color-text-muted);margin:.5rem auto 0;font-size:.68rem}.simulator-commit-tree{gap:.7rem;margin:1.2rem 0 0;padding:0 0 0 1.65rem;list-style:none;display:grid;position:relative}.simulator-commit-tree:before{background:var(--color-link);content:"";width:2px;position:absolute;top:.7rem;bottom:.7rem;left:.48rem}.simulator-commit-tree li{min-width:0;position:relative}.simulator-node{border:3px solid var(--color-link);background:var(--color-surface);border-radius:50%;width:.95rem;height:.95rem;position:absolute;top:.75rem;left:-1.62rem}.simulator-commit-card{border:1px solid var(--color-border);background:var(--color-bg);border-radius:.55rem;min-width:0;padding:.7rem}.simulator-commit-topline{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.simulator-commit-topline>code{color:var(--color-link);font-size:.66rem;font-weight:800}.simulator-ref-list{flex-wrap:wrap;justify-content:flex-end;gap:.25rem;display:flex}.simulator-ref{border-radius:.3rem;padding:.15rem .3rem;font:700 .48rem/1.2 Cascadia Code,Consolas,monospace}.simulator-ref-head{color:#fff;background:var(--color-git)}.simulator-ref-branch{color:var(--color-link);background:color-mix(in srgb, var(--color-link) 12%, transparent)}.simulator-ref-remote{color:var(--color-success);background:var(--color-success-soft)}.simulator-ref-tag{color:var(--color-warning);background:var(--color-warning-soft)}.simulator-commit-card strong,.simulator-commit-card small{display:block}.simulator-commit-card strong{overflow-wrap:anywhere;margin-top:.4rem;font-size:.72rem}.simulator-commit-card small{color:var(--color-text-muted);margin-top:.2rem;font-size:.54rem}@media (width<=980px){.simulator-graph{max-height:34rem;overflow:auto}}.platform-guide,.pr-flow{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:1.2rem;margin:2rem 0 5rem;overflow:hidden}.platform-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:0 1.5rem 1.5rem;display:grid}.platform-card{border:1px solid var(--color-border);background:var(--color-bg);border-radius:.85rem;padding:clamp(1.2rem,3vw,2rem)}.platform-icon{color:#fff;background:var(--color-link);border-radius:.75rem;place-items:center;width:3rem;height:3rem;font:800 1rem/1 Cascadia Code,Consolas,monospace;display:grid}.platform-icon-apple{color:var(--color-bg);background:var(--color-text)}.platform-label{color:var(--color-git);letter-spacing:.08em;margin:1rem 0 0;font:700 .58rem/1.2 Cascadia Code,Consolas,monospace}.platform-card h3{margin:.25rem 0 0;font-size:1.2rem}.platform-card ol{color:var(--color-text-muted);gap:.55rem;margin:1.2rem 0;padding-left:1.2rem;font-size:.76rem;display:grid}.platform-card code{color:var(--color-git)}.platform-terminal{color:var(--color-terminal-text);background:var(--color-terminal);border-radius:.55rem;gap:.35rem;padding:.8rem;display:grid}.platform-terminal span{color:#9aa8bb;font-size:.55rem}.platform-terminal code{color:#bfdbfe;overflow-wrap:anywhere;font-size:.62rem}.platform-checklist{border-left:3px solid var(--color-success);background:var(--color-success-soft);grid-template-columns:auto repeat(4,minmax(0,1fr));align-items:center;gap:.6rem;margin:0 1.5rem 1.5rem;padding:1rem;display:grid}.platform-checklist strong{font-size:.7rem}.platform-checklist code{background:var(--color-surface);overflow-wrap:anywhere;border-radius:.35rem;padding:.4rem;font-size:.53rem}.pr-step-tabs{grid-template-columns:repeat(6,minmax(0,1fr));gap:.45rem;margin:0;padding:0 1.5rem 1.5rem;list-style:none;display:grid}.pr-step-tabs button{border:1px solid var(--color-border);background:var(--color-bg);border-radius:.6rem;width:100%;min-height:5.5rem;padding:.7rem .5rem;font-size:.61rem;font-weight:700}.pr-step-tabs button span{width:1.5rem;height:1.5rem;color:var(--color-text-muted);background:var(--color-surface-soft);border-radius:50%;place-items:center;margin:0 auto .45rem;font-family:Cascadia Code,Consolas,monospace;display:grid}.pr-step-tabs button.pr-tab-active{border-color:var(--color-git);box-shadow:0 0 0 3px var(--color-git-soft)}.pr-step-tabs button.pr-tab-active span{color:#fff;background:var(--color-git)}.pr-stage{border:1px solid var(--color-border);background:radial-gradient(circle at 85% 20%, color-mix(in srgb, var(--color-link) 15%, transparent), transparent 38%), var(--color-bg);border-radius:.85rem;min-height:13rem;margin:0 1.5rem;padding:clamp(1.5rem,4vw,3rem)}.pr-stage>p:first-child{color:var(--color-git);letter-spacing:.08em;margin:0;font:700 .62rem/1.2 Cascadia Code,Consolas,monospace}.pr-stage h3{letter-spacing:-.045em;margin:.5rem 0;font-size:clamp(1.8rem,4vw,3rem)}.pr-stage code{color:var(--color-link);background:color-mix(in srgb, var(--color-link) 10%, transparent);border-radius:.35rem;padding:.3rem .5rem;display:inline-block}.pr-stage>p:last-child{max-width:45rem;color:var(--color-text-muted)}.pr-controls{grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;padding:1rem 1.5rem 1.5rem;display:grid}.pr-controls button{border:1px solid var(--color-border);background:var(--color-bg);border-radius:.5rem;padding:.65rem .8rem;font-size:.7rem;font-weight:700}.pr-controls button:last-child{justify-self:end}.pr-controls button:disabled{color:var(--color-text-soft);cursor:not-allowed}.pr-controls span{color:var(--color-text-muted);font:700 .62rem/1 Cascadia Code,Consolas,monospace}.lesson-footer-next{text-align:right}.lesson-footer-nav a:hover{border-color:var(--color-git);background:var(--color-git-soft)}.lab-page .lesson-hero h1{max-width:55rem}@media (width<=980px){.platform-checklist{grid-template-columns:repeat(2,minmax(0,1fr))}.platform-checklist strong{grid-column:1/-1}.pr-step-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=680px){.platform-grid{grid-template-columns:1fr;padding:0 1rem 1rem}.platform-checklist{grid-template-columns:1fr;margin:0 1rem 1rem}.pr-step-tabs{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 1rem 1rem}.pr-stage{margin:0 1rem}}.maintainer-inbox{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-card);border-radius:1.2rem;margin:2rem 0 5rem;overflow:hidden}.maintainer-heading{justify-content:space-between;align-items:end;gap:2rem;padding:clamp(1.5rem,4vw,2.5rem);display:flex}.maintainer-heading h2{letter-spacing:-.045em;max-width:45rem;margin:.35rem 0 0;font-size:clamp(1.8rem,4vw,3rem)}.maintainer-heading p:last-child{max-width:45rem;color:var(--color-text-muted);margin:.8rem 0 0}.maintainer-progress{flex-direction:column;align-items:end;min-width:9rem;display:flex}.maintainer-progress strong{color:var(--color-git);font:800 1.2rem/1 Cascadia Code,Consolas,monospace}.maintainer-progress span{color:var(--color-text-muted);margin-top:.35rem;font-size:.68rem}.maintainer-progress-track{background:var(--color-surface-soft);height:.35rem;overflow:hidden}.maintainer-progress-track span{background:var(--color-git);height:100%;transition:width .18s;display:block}.maintainer-workspace{border-top:1px solid var(--color-border);grid-template-columns:minmax(11rem,.7fr) minmax(18rem,1.25fr) minmax(20rem,1.35fr);min-height:40rem;display:grid}.maintainer-stages{border-right:1px solid var(--color-border);background:var(--color-surface-soft);padding:1rem}.maintainer-stages ol{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.maintainer-stages button{width:100%;min-height:4.2rem;color:var(--color-text);text-align:left;background:0 0;border:1px solid #0000;border-radius:.65rem;grid-template-columns:2rem 1fr;align-items:center;gap:.65rem;padding:.65rem;display:grid}.maintainer-stages button:hover{border-color:var(--color-border);background:var(--color-surface)}.maintainer-stages button.maintainer-stage-current{border-color:color-mix(in srgb, var(--color-git) 55%, var(--color-border));background:var(--color-git-soft)}.maintainer-stages button span{width:2rem;height:2rem;color:var(--color-text-muted);background:var(--color-surface);border-radius:50%;place-items:center;font:700 .62rem/1 Cascadia Code,Consolas,monospace;display:grid}.maintainer-stage-current span{color:#fff;background:var(--color-git)}.maintainer-stages button strong{font-size:.72rem;line-height:1.45}.maintainer-item,.maintainer-decision{padding:clamp(1.25rem,3vw,2rem)}.maintainer-item{border-right:1px solid var(--color-border);background:radial-gradient(circle at 85% 5%, color-mix(in srgb, var(--color-link) 12%, transparent), transparent 32%), var(--color-bg)}.maintainer-item-meta{align-items:center;gap:.6rem;display:flex}.maintainer-item-meta span,.maintainer-item-meta code{border-radius:999px;padding:.28rem .5rem;font-size:.65rem;font-weight:700}.maintainer-item-meta span{color:var(--color-link);background:color-mix(in srgb, var(--color-link) 10%, transparent)}.maintainer-item-meta code{color:var(--color-text-muted);background:var(--color-surface-soft)}.maintainer-item h3{letter-spacing:-.04em;margin:1.4rem 0 0;font-size:clamp(1.55rem,3vw,2.25rem);line-height:1.15}.maintainer-item>p{color:var(--color-text-muted)}.maintainer-item .maintainer-reporter{color:var(--color-git);margin:.6rem 0 1.5rem;font-size:.72rem;font-weight:700}.maintainer-details{gap:.65rem;margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.maintainer-details li{color:var(--color-text-muted);padding-left:1.2rem;font-size:.78rem;position:relative}.maintainer-details li:before{background:var(--color-git);content:"";border-radius:50%;width:.35rem;height:.35rem;position:absolute;top:.58em;left:0}@media (width<=1040px){.maintainer-workspace{grid-template-columns:11rem minmax(0,1fr)}.maintainer-item{border-right:0}}@media (width<=700px){.maintainer-heading{flex-direction:column;align-items:stretch}.maintainer-progress{align-items:start}.maintainer-workspace{display:block}.maintainer-stages{border-right:0;border-bottom:1px solid var(--color-border);overflow-x:auto}.maintainer-stages ol{min-width:42rem;display:flex}.maintainer-stages li{flex:1}.maintainer-stages button{min-height:4.8rem}.maintainer-item{border-right:0;border-bottom:1px solid var(--color-border)}}@media (prefers-reduced-motion:reduce){.maintainer-progress-track span{transition:none}}.maintainer-checks{border:1px solid var(--color-border);background:var(--color-surface);border-radius:.75rem;margin-top:2rem;padding:1rem}.maintainer-checks>p{color:var(--color-text-muted);margin:0;font:700 .64rem/1.2 Cascadia Code,Consolas,monospace}.maintainer-checks ul{gap:.5rem;margin:.8rem 0 0;padding:0;list-style:none;display:grid}.maintainer-checks li{background:var(--color-surface-soft);border-radius:.5rem;grid-template-columns:1.5rem 1fr auto;align-items:center;gap:.55rem;min-height:2.5rem;padding:.4rem .55rem;display:grid}.maintainer-checks li>span{color:#fff;border-radius:50%;place-items:center;width:1.35rem;height:1.35rem;font-size:.65rem;font-weight:800;display:grid}.maintainer-checks li strong,.maintainer-checks li small{font-size:.67rem}.maintainer-checks li small{color:var(--color-text-muted)}.maintainer-check-passed>span{background:var(--color-success)}.maintainer-check-failed>span{background:var(--color-danger)}.maintainer-check-pending>span{background:var(--color-warning)}.maintainer-decision{flex-direction:column;display:flex}.maintainer-decision h3{margin:.4rem 0 1.25rem;font-size:1.2rem;line-height:1.35}.maintainer-choices{gap:.65rem;display:grid}.maintainer-choices button{border:1px solid var(--color-border);min-height:3.5rem;color:var(--color-text);background:var(--color-bg);text-align:left;border-radius:.65rem;padding:.8rem .9rem;font-size:.74rem;font-weight:650;line-height:1.45}.maintainer-choices button:hover{border-color:var(--color-border-strong)}.maintainer-choices button.maintainer-choice-selected{border-color:var(--color-link);background:color-mix(in srgb, var(--color-link) 8%, var(--color-bg));box-shadow:0 0 0 2px color-mix(in srgb, var(--color-link) 18%, transparent)}.maintainer-feedback{border-left:3px solid;border-radius:.45rem;margin-top:1rem;padding:1rem}.maintainer-feedback-recommended{border-color:var(--color-success);background:var(--color-success-soft)}.maintainer-feedback-risk{border-color:var(--color-warning);background:var(--color-warning-soft)}.maintainer-feedback strong{font-size:.76rem}.maintainer-feedback p{color:var(--color-text-muted);margin:.45rem 0 0;font-size:.72rem}.maintainer-choice-hint{color:var(--color-text-muted);margin:1rem 0 0;font-size:.72rem}.maintainer-actions{justify-content:space-between;gap:.75rem;margin-top:auto;padding-top:1.5rem;display:flex}.maintainer-actions button,.maintainer-complete button{border:1px solid var(--color-border);min-height:2.75rem;color:var(--color-text);background:var(--color-bg);border-radius:.55rem;padding:.65rem .9rem;font-size:.7rem;font-weight:700}.maintainer-actions button.maintainer-next{color:#fff;border-color:var(--color-git);background:var(--color-git)}.maintainer-actions button:disabled{color:var(--color-text-soft);border-color:var(--color-border);background:var(--color-surface-soft);cursor:not-allowed}.maintainer-complete{border:1px solid color-mix(in srgb, var(--color-success) 55%, var(--color-border));background:var(--color-success-soft);border-radius:.85rem;justify-content:space-between;align-items:center;gap:2rem;margin:1.5rem;padding:clamp(1.25rem,3vw,2rem);display:flex}.maintainer-complete h3{margin:.35rem 0 0;font-size:1.35rem}.maintainer-complete p:last-child{color:var(--color-text-muted);margin:.55rem 0 0}.maintainer-complete button{background:var(--color-surface);flex:none}.maintainer-disclaimer{border-top:1px solid var(--color-border);color:var(--color-text-muted);background:var(--color-surface-soft);text-align:center;margin:0;padding:.85rem 1.5rem;font-size:.68rem}@media (width<=1040px){.maintainer-decision{border-top:1px solid var(--color-border);grid-column:2}}@media (width<=700px){.maintainer-complete{flex-direction:column;align-items:stretch}.maintainer-decision{border-right:0;border-bottom:1px solid var(--color-border)}.maintainer-actions{margin-top:0}.maintainer-complete button{width:100%}}:root{--aj-footer-surface:#fff;--aj-footer-border:#ebebeb;--aj-footer-muted:#888;--aj-footer-link:#0070f3;--aj-footer-link-hover:#0761d1}:root[data-theme=dark]{--aj-footer-surface:#1c1d1f;--aj-footer-border:#2d2e31;--aj-footer-muted:#9aa0a6;--aj-footer-link:#3b82f6;--aj-footer-link-hover:#2563eb}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--aj-footer-surface:#1c1d1f;--aj-footer-border:#2d2e31;--aj-footer-muted:#9aa0a6;--aj-footer-link:#3b82f6;--aj-footer-link-hover:#2563eb}}.aj-disclaimer{border-top:1px solid var(--aj-footer-border);background-color:var(--aj-footer-surface);width:100%;margin-top:4rem;font-family:Segoe UI,Inter,PingFang TC,Microsoft JhengHei,微軟正黑體,Noto Sans TC,system-ui,-apple-system,sans-serif;font-size:17px;transition:background-color .2s,color .2s}.aj-disclaimer:after{content:"";background:linear-gradient(90deg,#0000 0%,#1a7ad4 25% 75%,#0000 100%);height:2px;display:block}.aj-disclaimer-inner{max-width:80em;margin:0 auto;padding:.75em 1.5em}.aj-disclaimer p{color:var(--aj-footer-muted);text-align:left;margin:0;font-size:.75em;line-height:1.6}.aj-site-footer{background-color:var(--aj-footer-surface);width:100%;font-family:Segoe UI,Inter,PingFang TC,Microsoft JhengHei,微軟正黑體,Noto Sans TC,system-ui,-apple-system,sans-serif;font-size:17px;line-height:1.75;transition:background-color .2s,color .2s}.aj-footer-inner{text-align:center;max-width:80em;margin:0 auto;padding:1em 1.5em}.aj-footer-copy{color:var(--aj-footer-muted);margin:0;font-size:.875em}.aj-footer-link{color:var(--aj-footer-link);text-decoration:none}.aj-footer-link:hover{color:var(--aj-footer-link-hover);text-decoration:underline}@media (width<=767px){.aj-disclaimer,.aj-site-footer{font-size:16px}}html[data-language=zh] .lang-en,html:not([data-language=en]) .lang-en,html[data-language=en] .lang-zh{display:none!important}.lang-block{display:block}.language-toggle{border:1px solid var(--color-border);min-height:2.6rem;color:var(--color-text-muted);background:var(--color-surface);cursor:pointer;border-radius:.65rem;justify-self:end;align-items:center;gap:.35rem;padding:.45rem .7rem;font-size:.78rem;font-weight:700;transition:border-color .15s,background-color .15s,color .15s;display:inline-flex}.language-toggle:hover{border-color:var(--color-border-strong);background:var(--color-surface-soft);color:var(--color-text)}.language-toggle>span:first-child{border:1px solid;border-radius:50%;place-items:center;width:1.25rem;height:1.25rem;font-size:.68rem;display:grid}.language-toggle-label{min-width:1.25rem}.header-tools{justify-self:end;align-items:center;gap:.45rem;display:flex}.header-tools .language-toggle,.header-tools .theme-toggle{justify-self:auto}@media (width<=767px){.header-tools{gap:.25rem}.language-toggle-label{display:none}.language-toggle{justify-content:center;width:2.6rem;padding:0}}
