.toast-viewport{position:fixed;top:20px;right:20px;z-index:10000;display:flex;flex-direction:column;gap:10px;max-width:min(360px,calc(100vw - 40px));pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:flex-start;gap:11px;padding:12px 12px 12px 14px;border-radius:12px;background:#161b22eb;border:1px solid rgba(255,255,255,.1);border-left:3px solid var(--toast-accent, #38bdf8);box-shadow:0 10px 30px #00000073;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:#e6edf3;animation:toast-in .32s cubic-bezier(.21,1.02,.73,1)}.toast-success{--toast-accent: #34d399}.toast-error{--toast-accent: #f87171}.toast-warning{--toast-accent: #fbbf24}.toast-info{--toast-accent: #38bdf8}.toast-icon{display:inline-flex;flex-shrink:0;margin-top:1px;color:var(--toast-accent, #38bdf8)}.toast-body{flex:1;min-width:0}.toast-title{font-weight:700;font-size:.86rem;margin-bottom:2px;color:#f0f6fc}.toast-msg{font-size:.82rem;line-height:1.45;color:#c9d1d9;word-wrap:break-word}.toast-close{flex-shrink:0;background:transparent;border:none;color:#8b949e;cursor:pointer;padding:2px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;transition:color .15s,background .15s}.toast-close:hover{color:#f0f6fc;background:#ffffff14}@keyframes toast-in{0%{opacity:0;transform:translate(24px) scale(.96)}to{opacity:1;transform:translate(0) scale(1)}}@media (prefers-reduced-motion: reduce){.toast{animation:none}}.mode-tab,.reset-sandbox-btn,.exercise-help h4{display:inline-flex;align-items:center;gap:6px}.exercise-help h4{display:flex}.congrats-icon{display:flex;align-items:center;justify-content:center;color:#fbbf24}.exercise-guide-panel{position:relative;background:#0f172a66;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:24px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 8px 32px #0000005e;display:flex;flex-direction:column;height:100%;color:#e2e8f0;overflow-x:hidden;overflow-y:auto;transition:all .3s cubic-bezier(.25,.8,.25,1)}.exercise-guide-panel:hover{border-color:#ffffff1f;box-shadow:0 12px 40px #00000073}.panel-mode-selector{display:flex;background:#00000040;border-radius:10px;padding:4px;margin-bottom:20px}.mode-tab{flex:1;border:none;background:transparent;padding:10px 14px;font-size:.85rem;font-weight:600;color:#94a3b8;border-radius:8px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:6px}.mode-tab.active{background:#ffffff14;color:#fff;box-shadow:0 2px 10px #0003}.mode-content{flex:1;display:flex;flex-direction:column;gap:16px;animation:fadeIn .4s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.learning-mode-content h3{font-size:1.1rem;font-weight:700;color:#38bdf8;margin:0 0 8px}.learning-mode-content p{font-size:.9rem;line-height:1.5;color:#94a3b8;margin:0}.guide-cta-box{margin-top:auto;background:linear-gradient(135deg,#38bdf81a,#6366f11a);border:1px solid rgba(56,189,248,.15);border-radius:12px;padding:16px;text-align:center}.guide-cta-box h4{font-size:.95rem;font-weight:700;color:#e2e8f0;margin:0 0 6px}.guide-cta-box p{font-size:.85rem;margin-bottom:12px}.cta-btn{background:linear-gradient(90deg,#38bdf8,#6366f1);color:#fff;border:none;border-radius:8px;padding:8px 18px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #38bdf840}.cta-btn:hover{transform:translateY(-2px);box-shadow:0 6px 18px #38bdf866}.exercise-objective h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;margin:0 0 6px}.objective-text{font-size:.92rem;line-height:1.5;color:#fff;font-weight:500;margin:0}.exercise-checklist-section h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;margin:0 0 10px}.checklist-items{display:flex;flex-direction:column;gap:12px}.checklist-item{display:flex;align-items:center;gap:12px;background:#ffffff05;border:1px solid rgba(255,255,255,.04);border-radius:10px;padding:12px 14px;transition:all .25s ease}.checklist-item.completed{background:#10b9810f;border-color:#10b98133}.checkbox-indicator{display:flex;align-items:center;justify-content:center;width:22px;height:22px}.checkbox-empty{width:18px;height:18px;border:2px solid #475569;border-radius:4px;transition:all .2s ease}.checklist-item:hover .checkbox-empty{border-color:#38bdf8}.task-title{font-size:.88rem;font-weight:500;color:#cbd5e1;transition:all .2s ease}.checklist-item.completed .task-title{color:#a7f3d0;text-decoration:line-through;opacity:.85}.checkmark{width:20px;height:20px;border-radius:50%;stroke:#10b981;stroke-width:4;stroke-miterlimit:10;box-shadow:inset 0 0 #10b981;animation:fill .4s ease-in-out forwards,scale .3s ease-in-out .9s both}.checkmark-circle{stroke-dasharray:166;stroke-dashoffset:166;stroke-width:4;stroke-miterlimit:10;stroke:#10b981;fill:none;animation:stroke .6s cubic-bezier(.65,0,.45,1) forwards}.checkmark-check{transform-origin:50% 50%;stroke-dasharray:48;stroke-dashoffset:48;animation:stroke .3s cubic-bezier(.65,0,.45,1) .4s forwards}@keyframes stroke{to{stroke-dashoffset:0}}@keyframes fill{to{box-shadow:inset 0 0 0 30px #10b9810d}}.loading-checklists{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;gap:12px;color:#94a3b8;font-size:.85rem}.spinner-ring{width:28px;height:28px;border:3px solid rgba(56,189,248,.1);border-radius:50%;border-top-color:#38bdf8;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.exercise-help{background:#ffffff08;border-left:3px solid #fbbf24;border-radius:0 8px 8px 0;padding:10px 14px;font-size:.82rem;line-height:1.45}.exercise-help h4{font-size:.85rem;color:#fbbf24;margin:0 0 4px;font-weight:700}.exercise-help p{margin:0;color:#94a3b8}.guide-error{color:#f87171;font-size:.82rem;background:#f871711a;border:1px solid rgba(248,113,113,.2);padding:8px 12px;border-radius:8px;text-align:center}.guide-actions{margin-top:auto;display:flex;gap:10px}.reset-sandbox-btn{flex:1;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);color:#cbd5e1;border-radius:8px;padding:10px;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s ease}.reset-sandbox-btn:hover:not(:disabled){background:#ffffff14;color:#fff}.reset-sandbox-btn:disabled{opacity:.5;cursor:not-allowed}.celebration-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0f172ad9;display:flex;align-items:center;justify-content:center;z-index:10;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);animation:fadeIn .3s ease-out forwards}.celebration-card{text-align:center;padding:24px;max-width:280px;background:linear-gradient(135deg,#1e293be6,#0f172af2);border:1px solid rgba(16,185,129,.2);border-radius:16px;box-shadow:0 10px 40px #0009;animation:scaleIn .4s cubic-bezier(.34,1.56,.64,1)}@keyframes scaleIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.congrats-icon{font-size:3rem;margin-bottom:12px;animation:bounce 1.5s infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.celebration-card h2{font-size:1.25rem;color:#10b981;margin:0 0 8px;font-weight:800}.celebration-card p{font-size:.85rem;color:#94a3b8;line-height:1.45;margin:0 0 20px}.next-lesson-nav-btn{background:linear-gradient(90deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;padding:10px 20px;font-size:.85rem;font-weight:700;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 15px #10b98159}.next-lesson-nav-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #10b98180}.inspector-header span,.tab-btn,.conflict-badge,.edit-toggle-btn,.diff-toggle-btn,.save-btn,.cancel-btn{display:inline-flex;align-items:center;gap:5px}.file-inspector-panel{display:flex;flex-direction:column;background:#0f172a66;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:20px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 8px 32px #0000005e;height:100%;color:#e2e8f0;overflow-x:hidden;overflow-y:auto;transition:all .3s cubic-bezier(.25,.8,.25,1)}.file-inspector-panel:hover{border-color:#ffffff1f;box-shadow:0 12px 40px #00000073}.inspector-header{font-size:.85rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:8px}.empty-inspector{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;padding:24px;color:#64748b;font-size:.9rem;line-height:1.5}.inspector-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px;margin-bottom:12px;border-bottom:1px solid rgba(255,255,255,.05)}.inspector-tabs::-webkit-scrollbar{height:4px}.inspector-tabs::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.tab-btn{background:#ffffff08;border:1px solid rgba(255,255,255,.05);color:#94a3b8;border-radius:6px;padding:6px 12px;font-size:.82rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .2s ease}.tab-btn:hover{background:#ffffff0f;color:#cbd5e1}.tab-btn.active{background:#38bdf81a;border-color:#38bdf84d;color:#38bdf8}.code-viewer-container{flex:1;display:flex;flex-direction:column;background:#00000040;border:1px solid rgba(255,255,255,.04);border-radius:10px;overflow:hidden}.code-viewer-header{display:flex;justify-content:space-between;align-items:center;background:#00000026;padding:8px 14px;font-size:.8rem;font-family:monospace;color:#cbd5e1;border-bottom:1px solid rgba(255,255,255,.03)}.conflict-badge{background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#f87171;font-size:.72rem;font-weight:800;padding:2px 6px;border-radius:4px;letter-spacing:.02em;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.code-pretext-wrapper{flex:1;overflow:auto;padding:12px}.code-editor-pre{margin:0;padding:0;font-family:Fira Code,Consolas,Monaco,monospace;font-size:.82rem;line-height:1.5;color:#e2e8f0}.code-editor-pre code{display:flex;flex-direction:column}.code-line-row{display:flex;width:100%}.line-number{width:28px;min-width:28px;color:#475569;text-align:right;margin-right:12px;-webkit-user-select:none;user-select:none;font-size:.75rem}.line-text{flex:1;white-space:pre}.conflict-marker{font-weight:700;background:#ffffff14;font-size:.8rem}.ours-marker{color:#34d399;background:#34d39926;border-left:3px solid #34d399}.divider-marker{color:#64748b;background:#64748b26;border-left:3px solid #64748b}.theirs-marker{color:#f87171;background:#f8717126;border-left:3px solid #f87171}.conflict-line{display:flex}.ours-line{background:#34d3990f;border-left:3px solid rgba(52,211,153,.5)}.ours-line .line-text{color:#a7f3d0}.theirs-line{background:#f871710f;border-left:3px solid rgba(248,113,113,.5)}.theirs-line .line-text{color:#fca5a5}.edit-toggle-btn{background:#38bdf81a;border:1px solid rgba(56,189,248,.3);color:#38bdf8;padding:3px 10px;border-radius:5px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .15s ease;white-space:nowrap}.edit-toggle-btn:hover{background:#38bdf833;border-color:#38bdf880}.edit-actions-bar{display:flex;gap:6px;align-items:center}.diff-toggle-btn{background:#38bdf81a;border:1px solid rgba(56,189,248,.3);color:#7dd3fc;padding:3px 10px;border-radius:5px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .15s ease;white-space:nowrap}.diff-toggle-btn:hover{background:#38bdf833}.diff-toggle-btn.active{background:#38bdf833;border-color:#38bdf899;color:#38bdf8}.save-btn{background:#10b98126;border:1px solid rgba(16,185,129,.4);color:#34d399;padding:3px 10px;border-radius:5px;font-size:.75rem;font-weight:700;cursor:pointer;transition:all .15s ease;white-space:nowrap}.save-btn:hover:not(:disabled){background:#10b98140}.save-btn:disabled{opacity:.5;cursor:not-allowed}.cancel-btn{background:#f871711a;border:1px solid rgba(248,113,113,.3);color:#f87171;padding:3px 10px;border-radius:5px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .15s ease;white-space:nowrap}.cancel-btn:hover{background:#f8717133}.edit-textarea{width:100%;height:100%;min-height:220px;background:#00000040;border:none;outline:none;color:#e2e8f0;font-family:Fira Code,Consolas,Monaco,monospace;font-size:.82rem;line-height:1.55;padding:12px;resize:none;caret-color:#38bdf8;-moz-tab-size:2;tab-size:2}.save-status-msg{font-size:.75rem;font-weight:700;padding:2px 8px;border-radius:4px}.save-status-msg.save-ok{color:#34d399;background:#10b9811a}.save-status-msg.save-err{color:#f87171;background:#f871711a}:root{--bg-gradient: linear-gradient(160deg, #0d1117 0%, #161b22 55%, #0d1117 100%);--glass-bg: rgba(22, 27, 34, .78);--glass-border: rgba(48, 54, 61, .9);--glass-shadow: 0 10px 28px rgba(1, 4, 9, .45);--text-main: #f0f6fc;--text-muted: #8b949e;--accent-color: #f0f6fc}*{box-sizing:border-box}body{font-family:Inter,system-ui,-apple-system,sans-serif;margin:0;padding:0;min-height:100vh;background:var(--bg-gradient);background-attachment:fixed;color:var(--text-main);display:flex;justify-content:center}.app{width:100%;max-width:1200px;padding:40px 20px}header{margin-bottom:32px;text-align:center}.header-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#fffc;padding:8px 18px;border-radius:20px;cursor:pointer;font-size:.85rem;font-weight:500;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 2px 5px #0000001a}.header-btn:hover{background:#ffffff26;color:#fff;border-color:#ffffff4d;transform:translateY(-1px);box-shadow:0 4px 12px #0003}header h1{margin:0 0 12px;font-weight:800;font-size:2.5rem;background:linear-gradient(to right,#f0f6fc,#8b949e);-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:-.02em}header p{margin:0;color:var(--text-muted);font-size:1.1rem}.pretext-canvas-wrap{width:100%;margin:0 0 20px;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#01040947;box-shadow:var(--glass-shadow)}.pretext-canvas-wrap canvas{display:block;width:100%}.hero-visual .pretext-canvas-wrap{margin-bottom:18px}.lesson-next-nav{display:flex;justify-content:flex-end;margin:32px 0 0}.lesson-next-btn{display:inline-flex;align-items:center;gap:12px;padding:12px 18px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#ffffff12;color:var(--text-main);cursor:pointer;font-size:.95rem;font-weight:800;transition:transform .2s ease,background .2s ease,border-color .2s ease}.lesson-next-btn:hover{transform:translateY(-2px);background:#ffffff21;border-color:#ffffff52}.lesson-next-btn span{color:var(--text-muted);font-size:.82rem;font-weight:700}.controls{display:flex;gap:12px;margin-bottom:32px;justify-content:center;flex-wrap:wrap}.controls button{display:inline-flex;align-items:center;gap:7px;padding:10px 20px;border-radius:8px;border:1px solid var(--glass-border);background:#ffffff0d;color:#fff;font-weight:600;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);font-size:.95rem}.controls button:hover:not(:disabled){background:#ffffff26;transform:translateY(-2px);border-color:#fff6;box-shadow:0 4px 12px #0003}.controls button:active:not(:disabled){transform:translateY(0)}.controls button:disabled{opacity:.4;cursor:not-allowed}.controls button.is-next:not(:disabled){border-color:#38bdf8;color:#fff;background:#38bdf829;animation:flow-next-pulse 1.8s ease-in-out infinite}@keyframes flow-next-pulse{0%,to{box-shadow:0 0 #38bdf880}50%{box-shadow:0 0 0 7px #38bdf800}}.controls button.flow-reset{background:transparent;color:var(--text-muted);border-color:#ffffff1f;margin-left:6px}.controls button.flow-reset:hover:not(:disabled){color:var(--text-main)}.glow-hint{color:#38bdf8;font-weight:700}.boards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:32px}.board{padding:20px;border-radius:16px;min-height:200px;background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);display:flex;flex-direction:column}.board-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.board h4{margin:0;font-size:1rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-weight:700}.board-count{flex-shrink:0;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:#ffffff14;color:var(--text-main);font-size:.78rem;font-weight:800;display:inline-flex;align-items:center;justify-content:center}.board-caption{margin:6px 0 12px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.1);font-size:.74rem;line-height:1.4;color:var(--text-muted);min-height:34px}.board-pushed.celebrate{border-color:#34d39980;animation:board-celebrate 1.2s ease-out}.board-pushed.celebrate .board-count{background:#34d39940;color:#6ee7b7}@keyframes board-celebrate{0%{box-shadow:0 0 #34d39973}to{box-shadow:0 0 0 16px #34d39900}}.fileList{display:flex;flex-direction:column;gap:10px;flex:1}.file{padding:12px 14px;border-radius:8px;background:#0000004d;color:#e2e8f0;font-size:.9rem;display:flex;align-items:center;border-left:4px solid transparent;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0000001a}.file:hover{background:#0006;transform:translate(4px)}.file-working{border-left-color:#8b949e}.file-staged{border-left-color:#f59e0b}.file-committed{border-left-color:#38bdf8}.file-pushed{border-left-color:#34d399}.empty{color:#ffffff47;font-size:.82rem;text-align:center;margin-top:16px}.log{margin-top:24px;padding:20px;border-radius:12px;background:#0003;border:1px solid rgba(255,255,255,.05)}.log h3{margin:0 0 12px;font-size:1.1rem;color:var(--text-main)}.log ul{list-style:none;padding:0;margin:0;font-family:Fira Code,monospace}.log li{padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:.85rem;color:#94a3b8}.log li:last-child{border-bottom:none}.intro-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:var(--bg-gradient);z-index:1000;display:flex;justify-content:center;align-items:center;transition:opacity .5s ease}.intro-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--glass-border);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;padding:0;border-radius:24px;max-width:600px;width:90%;text-align:center;position:relative;overflow:hidden;display:flex;flex-direction:column}.intro-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(to right,#f0f6fc,#c9d1d9,#8b949e);z-index:2}.git-diagram{background:#0003;padding:30px 20px;display:flex;align-items:center;justify-content:center;gap:10px;border-bottom:1px solid var(--glass-border);min-height:160px}.zone{width:80px;height:80px;border:2px dashed rgba(255,255,255,.1);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;transition:all .3s ease}.zone-label{font-size:.7rem;color:var(--text-muted);position:absolute;bottom:-24px;white-space:nowrap}.zone.active{border-color:#8b949e;background:#a78bfa1a;box-shadow:0 0 15px #a78bfa33}.arrow{color:#fff3;font-size:1.2rem}.arrow-up{transform:rotate(-45deg);margin-top:-10px}.file-icon{font-size:1.8rem;animation:popIn .3s cubic-bezier(.175,.885,.32,1.275)}.file-working,.file-staging{animation:slideRight .5s ease}.file-commit{animation:scaleIn .5s ease}.file-remote{animation:flyUp .8s ease}@keyframes popIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes slideRight{0%{transform:translate(-40px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes scaleIn{0%{transform:scale(1.5);opacity:0}to{transform:scale(1);opacity:1}}@keyframes flyUp{0%{transform:translateY(40px) scale(.5);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes pulse{0%{transform:scale(1);box-shadow:0 0 #a78bfab3}70%{transform:scale(1.05);box-shadow:0 0 0 10px #a78bfa00}to{transform:scale(1);box-shadow:0 0 #a78bfa00}}.intro-content{padding:30px}.intro-card h2{font-size:1.8rem;margin-bottom:12px;background:linear-gradient(to right,#fff,#cbd5e1);-webkit-background-clip:text;background-clip:text;color:transparent}.intro-card p{color:var(--text-muted);font-size:1rem;line-height:1.5;margin-bottom:24px;min-height:60px}.pulse{animation:pulse 2s infinite}.intro-progress{display:flex;justify-content:center;gap:8px;margin-bottom:20px}.progress-dot{width:8px;height:8px;border-radius:50%;background:#fff3;transition:all .3s ease}.progress-dot.active{background:#8b949e;transform:scale(1.2)}.intro-button{background:linear-gradient(135deg,#21262d,#30363d);color:#fff;border:1px solid rgba(255,255,255,.2);padding:12px 32px;font-size:1.05rem;font-weight:600;border-radius:99px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #01040980,inset 0 1px #ffffff1f;position:relative;overflow:hidden}.intro-button:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(rgba(255,255,255,.2),transparent);opacity:0;transition:opacity .3s}.intro-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #010409b3,inset 0 1px #ffffff29;filter:brightness(1.1)}.intro-button:hover:before{opacity:1}.intro-actions{display:flex;justify-content:center;gap:16px;margin-top:24px}.intro-secondary{background:transparent;border:1px solid rgba(255,255,255,.2);color:var(--text-muted);padding:8px 20px;border-radius:99px;font-size:.9rem;cursor:pointer;text-decoration:none;transition:all .2s ease}.intro-secondary:hover{background:#ffffff0d;color:var(--text-main);border-color:#fff6}.fade-in{opacity:1;pointer-events:auto}.fade-out{opacity:0;pointer-events:none}.glassmorphic{background:#161b22d1;border:1px solid rgba(255,255,255,.09);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 8px 32px #0006}.sidebar-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;opacity:0;pointer-events:none;transition:opacity .3s ease}.sidebar-backdrop.open{opacity:1;pointer-events:auto}.sidebar{position:fixed;top:0;left:0;width:300px;height:100vh;background:#0f172af2;border-right:1px solid var(--glass-border);z-index:1001;transform:translate(-100%);transition:transform .4s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;padding:24px;box-shadow:10px 0 25px #0000004d}.sidebar.open{transform:translate(0)}.sidebar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-header h2{margin:0;font-size:1.5rem;color:#fff}.close-btn{background:transparent;border:none;color:var(--text-muted);font-size:2rem;line-height:1;cursor:pointer;transition:color .2s}.close-btn:hover{color:#fff}.lesson-list{display:flex;flex-direction:column;flex:1;overflow-y:auto;padding-right:4px}.lesson-list::-webkit-scrollbar{width:5px}.lesson-list::-webkit-scrollbar-track{background:#ffffff03;border-radius:4px}.lesson-list::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:4px}.lesson-list::-webkit-scrollbar-thumb:hover{background:#ffffff29}.lesson-item{padding:16px;margin-bottom:12px;border-radius:12px;background:#ffffff08;border:1px solid transparent;cursor:pointer;transition:all .2s ease}.lesson-item:hover{background:#ffffff14;transform:translate(4px)}.lesson-item.active{background:#f0f6fc14;border-color:#f0f6fc38}.lesson-item h3{margin:0 0 4px;font-size:1rem;color:var(--text-main)}.lesson-item p{margin:0;font-size:.85rem;color:var(--text-muted)}.sidebar-footer{margin-top:auto;padding-top:24px;border-top:1px solid rgba(255,255,255,.1)}.sidebar-link{display:block;color:var(--text-muted);text-decoration:none;font-size:.9rem;transition:color .2s}.sidebar-link:hover{color:#fff;text-decoration:underline}.menu-btn{background:transparent;border:none;color:#fff;cursor:pointer;padding:8px;display:flex;flex-direction:column;gap:5px;position:absolute;top:20px;left:20px;z-index:100}.hamburger-line{width:24px;height:2px;background-color:#fff;border-radius:2px;transition:all .3s}.menu-btn:hover .hamburger-line{background-color:#f0f6fc}.contact-info{margin-top:32px;padding:24px;border-radius:14px;background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.contact-info h2{margin:0 0 8px;font-size:1.25rem;color:var(--text-main)}.contact-info .lead{margin:0 0 16px;color:var(--text-muted)}.contacts{display:flex;gap:14px;flex-wrap:wrap}.contact-card{flex:1 1 200px;min-width:180px;padding:14px;border-radius:10px;background:#00000040;border:1px solid rgba(255,255,255,.04)}.contact-card h3{margin:0 0 8px;font-size:.95rem;color:var(--text-muted)}.contact-card a{color:var(--accent-color);text-decoration:none;font-weight:600}.social-links{display:flex;gap:12px;margin-top:6px}.intro-fullpage{scroll-behavior:smooth;scroll-padding-top:40px}.intro-hero{min-height:80vh;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;padding:60px 40px;position:relative;overflow:hidden}@media (max-width: 768px){.intro-hero{grid-template-columns:1fr;gap:40px;padding:60px 20px}}.hero-content{z-index:2;animation:slideInLeft .8s cubic-bezier(.34,1.56,.64,1)}@keyframes slideInLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}.hero-badge{display:inline-block;background:#c9d1d91a;border:1px solid rgba(201,209,217,.24);color:#c9d1d9;padding:8px 16px;border-radius:20px;font-size:.85rem;font-weight:600;margin-bottom:24px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeInUp .6s ease .1s both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hero-title{font-size:3.5rem;font-weight:900;line-height:1.1;margin:0 0 20px;animation:fadeInUp .6s ease .2s both}.gradient-text{background:linear-gradient(135deg,#f0f6fc,#c9d1d9,#8b949e);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:gradientShift 4s ease infinite}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.hero-subtitle{font-size:1.3rem;color:var(--text-muted);margin:0 0 40px;line-height:1.6;animation:fadeInUp .6s ease .3s both}.hero-cta{background:linear-gradient(135deg,#21262d,#30363d);color:#fff;border:1px solid rgba(255,255,255,.15);padding:16px 40px;font-size:1.1rem;font-weight:700;border-radius:50px;cursor:pointer;transition:all .4s cubic-bezier(.34,1.56,.64,1);box-shadow:0 8px 30px #01040980;animation:fadeInUp .6s ease .4s both}.hero-cta:hover{transform:translateY(-4px);box-shadow:0 12px 40px #010409b3}.hero-cta:active{transform:translateY(-2px)}.hero-visual{position:relative;height:500px;animation:slideInRight .8s cubic-bezier(.34,1.56,.64,1)}.hero-visual .pretext-canvas-wrap,.hero-visual .mock-terminal{position:relative;z-index:1}@keyframes slideInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}.floating-blob{position:absolute;border-radius:50%;filter:blur(40px);opacity:.6;z-index:0;pointer-events:none}.blob-1{width:300px;height:300px;background:linear-gradient(135deg,#30363d,#8b949e);top:10%;right:10%;animation:float 8s ease-in-out infinite}.blob-2{width:250px;height:250px;background:linear-gradient(135deg,#161b22,#6e7681);bottom:20%;left:10%;animation:float 10s ease-in-out infinite 2s}.blob-3{width:200px;height:200px;background:linear-gradient(135deg,#21262d,#c9d1d9);top:50%;right:30%;animation:float 9s ease-in-out infinite 1s}@keyframes float{0%,to{transform:translate(0)}25%{transform:translate(30px,-30px)}50%{transform:translate(-30px,30px)}75%{transform:translate(30px,30px)}}.intro-section{min-height:60vh;display:flex;align-items:center;padding:40px;position:relative}.intro-section .section-text h2,.intro-section .section-text p,.intro-section .section-text .highlight-box,.intro-section .section-text .code-hint,.intro-section .section-visual{opacity:0;transform:translateY(24px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.intro-section.visible .section-text h2{opacity:1;transform:translateY(0);transition-delay:.1s}.intro-section.visible .section-text p{opacity:1;transform:translateY(0);transition-delay:.22s}.intro-section.visible .section-text .highlight-box,.intro-section.visible .section-text .code-hint{opacity:1;transform:translateY(0);transition-delay:.34s}.intro-section.visible .section-visual{opacity:1;transform:translateY(0);transition-delay:.45s}@media (max-width: 768px){.intro-section{padding:40px 20px}}.section-content{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;width:100%;max-width:1200px;margin:0 auto}.flow-reverse{grid-template-columns:1fr 1fr;direction:rtl}.flow-reverse>*{direction:ltr}@media (max-width: 768px){.section-content,.flow-reverse{grid-template-columns:1fr;gap:40px;direction:ltr}.flow-reverse>*{direction:ltr}}.section-text h2{font-size:2.5rem;font-weight:800;margin:0 0 20px;line-height:1.2}.section-text p{font-size:1.1rem;color:var(--text-muted);line-height:1.7;margin:15px 0}.section-text strong{color:var(--text-main);font-weight:700}.code-hint{margin-top:20px;padding:12px 16px;background:#0000004d;border-left:3px solid #8b949e;border-radius:6px;font-family:Fira Code,monospace;font-size:.95rem}.inline-code{background:#30363db3;padding:3px 8px;border-radius:4px;color:#c9d1d9;font-weight:600}.highlight-box{padding:20px;border-radius:12px;background:#c9d1d914;border:1px solid rgba(201,209,217,.24);margin:20px 0;font-size:1.05rem;line-height:1.6}.highlight-box strong{color:#c9d1d9}.highlight-blue,.highlight-green{background:#8b949e24;border-color:#8b949e5c}.highlight-purple{background:#c9d1d914;border-color:#c9d1d93d}.section-visual{position:relative;min-height:400px;display:flex;align-items:center;justify-content:center}.challenge-visual{flex-direction:column;gap:30px}.code-editor{background:#0f172a99;border:1px solid rgba(169,169,169,.2);border-radius:12px;overflow:hidden;width:100%;animation:slideInUp .8s ease .3s both}.editor-header{background:#0006;padding:12px 16px;border-bottom:1px solid rgba(169,169,169,.1);font-family:Fira Code,monospace;font-size:.9rem;color:#a0a0a0}.editor-lines{padding:20px 16px;font-family:Fira Code,monospace;font-size:1rem}.code-line{color:#c9d1d9;line-height:1.6;margin:4px 0}.confusion-icons{font-size:3rem;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.working-stage{flex-direction:column;gap:30px}.stage-box{width:140px;height:140px;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;transition:all .4s ease;font-weight:600}.stage-working{background:linear-gradient(135deg,#8b949e33,#8b949e14);border:2px solid rgba(139,148,158,.36)}.stage-working:hover{border-color:#f0f6fc73;background:linear-gradient(135deg,#8b949e47,#8b949e24)}.stage-staging{background:linear-gradient(135deg,#c9d1d929,#6e76811a);border:2px solid rgba(201,209,217,.34)}.stage-staging:hover{border-color:#f0f6fc80;background:linear-gradient(135deg,#c9d1d93d,#6e768129)}.stage-icon{font-size:2.5rem}.stage-title{font-size:.9rem}.stage-label{font-size:.8rem}.file-examples{display:flex;flex-direction:column;gap:12px;width:100%}.file-item{padding:12px 20px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-left:3px solid rgba(139,148,158,.5);border-radius:8px;font-size:1rem;transition:all .4s ease;opacity:0;animation:slideInRight .5s ease forwards}.animated-in-1{animation-delay:.2s}.animated-in-2{animation-delay:.4s}.animated-in-3{animation-delay:.6s}.file-item:hover{background:#ffffff1a;transform:translate(8px)}.staging-stage{flex-direction:column;gap:40px}.flow-sequence{display:flex;align-items:center;gap:30px;justify-content:center}.flow-item{display:flex}.arrow-flow{font-size:2rem;color:#ffffff4d;animation:arrowBounce 1.5s ease-in-out infinite}@keyframes arrowBounce{0%,to{transform:translate(0)}50%{transform:translate(8px)}}.file-stack{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.stack-item{padding:12px 20px;background:#c9d1d924;border:1px solid rgba(201,209,217,.36);border-radius:8px;font-size:.95rem;font-weight:600;transition:all .4s ease;opacity:0;animation:slideUp .5s ease forwards}.stack-1{animation-delay:.2s;transform-origin:center}.stack-2{animation-delay:.35s;transform-origin:center;margin-top:8px}.stack-3{animation-delay:.5s;transform-origin:center;margin-top:16px}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.stack-item:hover{background:#c9d1d938;border-color:#f0f6fc52;transform:translateY(-4px)}.commit-stage{padding:40px;background:#0003;border-radius:16px;border:1px solid rgba(255,255,255,.1)}.commit-timeline{position:relative}.commit-timeline:before{content:"";position:absolute;left:20px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,#c9d1d966,#6e768133)}.timeline-item{position:relative;margin-left:0;padding:20px 0 20px 80px;animation:slideInLeft .6s ease forwards;opacity:0}.timeline-item:nth-child(1){animation-delay:.2s}.timeline-item:nth-child(2){animation-delay:.4s}.timeline-item:nth-child(3){animation-delay:.6s}.timeline-dot{position:absolute;left:10px;top:22px;width:22px;height:22px;border-radius:50%;background:#c9d1d933;border:2px solid rgba(201,209,217,.5);transition:all .4s ease}.timeline-dot.active{background:#f0f6fcbf;box-shadow:0 0 15px #c9d1d973}.timeline-content{padding:12px 16px;background:#8b949e24;border-left:2px solid rgba(201,209,217,.38);border-radius:8px;transition:all .4s ease}.timeline-item:hover .timeline-content{background:#c9d1d929;border-left-color:#f0f6fc80}.commit-message{font-weight:700;color:var(--text-main);margin-bottom:4px}.commit-time{font-size:.85rem;color:var(--text-muted)}.push-stage{padding:40px;background:#0003;border-radius:16px;border:1px solid rgba(255,255,255,.1)}.cloud-animation{display:flex;align-items:center;gap:40px;justify-content:center}.local-repo,.remote-repo{display:flex;flex-direction:column;align-items:center;gap:12px;animation:fadeInUp .6s ease forwards;opacity:0}.local-repo{animation-delay:.2s}.remote-repo{animation-delay:.4s}.repo-icon{font-size:3.5rem;animation:float 3s ease-in-out infinite}.remote-repo .repo-icon{animation:float 3s ease-in-out infinite .5s}.repo-label{font-weight:700;font-size:1.1rem}.push-arrow{position:relative;width:80px;height:4px;background:linear-gradient(to right,#c9d1d94d,#c9d1d91a);border-radius:2px;overflow:visible;opacity:0;animation:fadeInUp .6s ease .3s both}.arrow-stem{position:absolute;width:60px;height:2px;background:linear-gradient(to right,#8b949e,transparent);top:50%;left:0;transform:translateY(-50%);animation:arrowFlow 1.5s ease-in-out infinite}.arrow-head{position:absolute;width:0;height:0;border-left:8px solid transparent;border-right:0 solid transparent;border-top:5px solid #8b949e;border-bottom:5px solid #8b949e;right:0;top:50%;transform:translateY(-50%)}@keyframes arrowFlow{0%{width:0}50%{width:60px}to{width:0}}.center-flow{grid-template-columns:1fr;text-align:center}.center-flow h2{text-align:center;margin-bottom:24px}.complete-diagram{display:flex;flex-direction:column;align-items:center;gap:16px;margin-bottom:24px}.diagram-item{display:flex;flex-direction:column;align-items:center;gap:12px;padding:30px 40px;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:12px;min-width:200px;opacity:0;transform:translateY(24px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1),background .3s ease,border-color .3s ease}.diagram-1{border-left:4px solid rgba(139,148,158,.5)}.diagram-2{border-left:4px solid rgba(201,209,217,.5)}.diagram-3{border-left:4px solid rgba(240,246,252,.42)}.diagram-4{border-left:4px solid rgba(139,148,158,.5)}.diagram-item:hover{background:#ffffff0d;border-color:#ffffff26;transform:translateY(-4px)}.item-icon{font-size:2.5rem}.item-text{font-weight:700;font-size:1rem}.small-text{font-size:.85rem;color:var(--text-muted);font-weight:500}.diagram-arrow{font-size:2rem;color:#fff3;opacity:0;transform:translateY(24px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);display:flex;justify-content:center;align-items:center}.arrow-bounce{display:inline-block;animation:bounce 1.5s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.intro-section.visible .diagram-1{opacity:1;transform:translateY(0);transition-delay:.1s}.intro-section.visible .arrow-1{opacity:1;transform:translateY(0);transition-delay:.25s}.intro-section.visible .diagram-2{opacity:1;transform:translateY(0);transition-delay:.4s}.intro-section.visible .arrow-2{opacity:1;transform:translateY(0);transition-delay:.55s}.intro-section.visible .diagram-3{opacity:1;transform:translateY(0);transition-delay:.7s}.intro-section.visible .arrow-3{opacity:1;transform:translateY(0);transition-delay:.85s}.intro-section.visible .diagram-4{opacity:1;transform:translateY(0);transition-delay:1s}.completion-message{margin-top:40px;padding:30px;background:linear-gradient(135deg,#c9d1d914,#6e768114);border:1px solid rgba(201,209,217,.2);border-radius:12px;animation:slideInUp .6s ease .5s both}.completion-message p{margin:10px 0;font-size:1.1rem}.completion-message p:first-child{font-size:1.3rem;font-weight:800}.intro-cta-section{min-height:40vh;display:flex;align-items:center;justify-content:center;padding:40px 20px;text-align:center;background:linear-gradient(135deg,#c9d1d914,#6e768114);border-top:1px solid rgba(255,255,255,.1)}.cta-content{max-width:600px;animation:slideInUp .8s ease}.cta-content h2{font-size:2.5rem;margin:0 0 20px;font-weight:800}.cta-content p{font-size:1.2rem;color:var(--text-muted);margin:0 0 40px}.cta-button{background:linear-gradient(135deg,#21262d,#30363d);color:#fff;border:1px solid rgba(255,255,255,.15);padding:18px 50px;font-size:1.15rem;font-weight:700;border-radius:50px;cursor:pointer;transition:all .4s cubic-bezier(.34,1.56,.64,1);box-shadow:0 8px 30px #01040980}.cta-button:hover{transform:translateY(-4px);box-shadow:0 12px 40px #010409b3}.fade-out-intro{animation:fadeOutIntro .6s ease forwards}@keyframes fadeOutIntro{to{opacity:0;transform:translateY(-20px)}}.merge-lesson{width:100%}.lesson-kicker{display:inline-flex;margin-bottom:12px;color:#c9d1d9;font-size:.85rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.merge-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.merge-panel{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:12px;box-shadow:var(--glass-shadow);padding:22px}.panel-heading{margin-bottom:16px}.panel-heading span{color:var(--text-muted);font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.panel-heading h2{margin:4px 0 0;font-size:1.35rem}.merge-panel p{color:var(--text-muted);line-height:1.6}.merge-panel code{color:#f0f6fc;font-family:Fira Code,Consolas,monospace}.branch-race{display:grid;gap:14px;margin:20px 0}.branch-lane{position:relative;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:#0000002e}.branch-name{margin-bottom:12px;font-weight:800}.commit-row{display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap}.mini-commit{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:82px;color:var(--text-muted);font-size:.75rem}.mini-commit span{width:24px;height:24px;border-radius:999px;border:3px solid rgba(255,255,255,.85);background:#30363d}.lane-main .mini-commit span{background:#3b82f6}.lane-auth .mini-commit span{background:#10b981}.lane-ui .mini-commit span{background:#ec4899}.file-touch{display:inline-flex;margin-top:12px;padding:6px 10px;border-radius:8px;background:#f0f6fc14;border:1px solid rgba(240,246,252,.18);color:#f0f6fc;font-size:.8rem;font-weight:700}.conflict-active .shared-file{border-color:#ec4899a6;box-shadow:0 0 22px #ec489929}.primary-action,.action-row button,.resolution-grid button,.toggle-row button{border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff0f;color:var(--text-main);cursor:pointer;font-weight:800;transition:transform .2s ease,background .2s ease,border-color .2s ease}.primary-action{width:100%;padding:12px 16px}.primary-action:hover,.action-row button:hover,.resolution-grid button:hover:not(:disabled),.toggle-row button:hover{transform:translateY(-2px);background:#ffffff1f;border-color:#ffffff47}.status-strip{display:flex;justify-content:space-between;gap:12px;margin-bottom:14px;padding:10px 12px;border-radius:8px;background:#00000038;color:var(--text-muted);font-size:.9rem}.conflict-editor{overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#010409a6}.editor-topbar{display:flex;justify-content:space-between;padding:10px 14px;background:#ffffff0d;color:var(--text-muted);font-size:.85rem;font-weight:800}.conflict-editor pre{margin:0;padding:16px;overflow-x:auto;min-height:188px;color:#c9d1d9;line-height:1.55}.resolution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.resolution-grid button{min-height:94px;padding:12px;text-align:left}.resolution-grid button span{display:block;margin-top:6px;color:var(--text-muted);font-size:.8rem;font-weight:500;line-height:1.35}.resolution-grid button.selected,.toggle-row button.selected{border-color:#f0f6fc8c;background:#f0f6fc1f}.resolution-grid button:disabled,.action-row button:disabled{cursor:not-allowed;opacity:.45}.manual-editor{display:grid;gap:8px;margin-top:14px;color:var(--text-muted);font-size:.9rem;font-weight:800}.manual-editor input{width:100%;padding:12px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#00000047;color:var(--text-main);font:.95rem Fira Code,Consolas,monospace}.command-steps{display:grid;gap:10px}.command-step{display:flex;align-items:center;gap:12px;padding:11px 12px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#0000002e}.command-step span{min-width:44px;color:var(--text-muted);font-size:.72rem;font-weight:900;text-transform:uppercase}.command-step.active{border-color:#c9d1d96b}.command-step.complete span{color:#10b981}.merge-result{position:relative;min-height:150px;margin:20px 0;padding:24px 10px}.main-line,.incoming-line{display:flex;align-items:center;gap:24px}.main-line:before,.incoming-line:before{content:"";position:absolute;left:30px;right:30px;height:3px;border-radius:999px}.main-line:before{top:44px;background:#3b82f6}.incoming-line:before{top:104px;width:55%;background:#ec4899}.main-line span,.incoming-line span{z-index:1;display:inline-flex;align-items:center;justify-content:center;min-width:72px;min-height:36px;padding:7px 10px;border-radius:999px;background:#161b22;border:2px solid rgba(255,255,255,.2);color:var(--text-main);font-size:.78rem;font-weight:800}.incoming-line{margin:24px 0 0 120px}.merge-commit{background:#8b5cf6!important;animation:scaleIn .35s ease}.merged .incoming-line:before{transform:rotate(-18deg);transform-origin:right center}.action-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.action-row button{padding:11px 12px}.toggle-row{display:flex;gap:10px;flex-wrap:wrap}.toggle-row button{padding:10px 12px}.preview-box{display:grid;gap:8px;margin:18px 0;padding:16px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:#00000038}.preview-box span{color:var(--text-muted);font-size:.82rem;font-weight:800;text-transform:uppercase}.preview-box code{font-size:1rem}.insight-callout{padding:16px;border:1px solid rgba(16,185,129,.34);border-radius:10px;background:#10b98114;color:#d1fae5;line-height:1.6}@media (max-width: 900px){.merge-layout,.resolution-grid,.action-row{grid-template-columns:1fr}.status-strip{flex-direction:column}}.history-layout{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;align-items:stretch}.timeline-panel,.reset-panel,.safety-panel{grid-column:1 / -1}.history-lesson .checkout-panel,.history-lesson .revert-panel{display:flex;flex-direction:column}.history-lesson .revert-panel .safe-badge,.history-lesson .checkout-panel .detached-status{margin-top:auto}.history-panel{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:12px;box-shadow:var(--glass-shadow);padding:22px}.history-lesson .history-panel{--stage-accent: #38bdf8;position:relative;padding:22px 24px;border-radius:16px;border-left:3px solid var(--stage-accent)}.history-lesson .timeline-panel{--stage-accent: #38bdf8}.history-lesson .checkout-panel{--stage-accent: #8b5cf6}.history-lesson .revert-panel{--stage-accent: #34d399}.history-lesson .reset-panel{--stage-accent: #fb923c}.history-lesson .safety-panel{--stage-accent: #f472b6}.history-lesson .panel-heading{display:flex;align-items:center;gap:13px;margin-bottom:16px}.history-lesson .panel-heading .stage-num{flex-shrink:0;width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:1rem;font-weight:800;color:#0d1117;background:var(--stage-accent);box-shadow:0 0 0 5px #ffffff0a}.history-lesson .panel-heading h2{margin:0;font-size:1.18rem;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.history-lesson .panel-heading h2 code{font-size:.78em;background:#0000004d;padding:1px 7px;border-radius:5px;color:var(--stage-accent)}.timeline-scroller{overflow-x:auto;padding:28px 4px 18px}.history-track{display:flex;gap:18px;min-width:980px;position:relative}.history-track:before{content:"";position:absolute;left:32px;right:32px;top:42px;height:3px;background:#ffffff24;border-radius:999px}.history-node{position:relative;z-index:1;width:132px;min-height:152px;padding:54px 10px 12px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#161b22;color:var(--text-main);text-align:left;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background .2s ease}.history-node:hover,.history-node.selected{transform:translateY(-4px);border-color:#f0f6fc6b;background:#1f2937}.history-node.bad{border-color:#ef44446b}.history-node.revert{border-color:#10b98185}.node-dot{position:absolute;top:30px;left:50%;width:26px;height:26px;border:3px solid #fff;border-radius:999px;background:#3b82f6;transform:translate(-50%)}.history-node.bad .node-dot{background:#ef4444}.history-node.revert .node-dot{background:#10b981}.history-node strong,.history-node em,.history-node small{display:block}.history-node strong{font-family:Fira Code,Consolas,monospace;font-size:.9rem}.history-node em{min-height:38px;margin:6px 0;color:#c9d1d9;font-style:normal;font-weight:700;line-height:1.25}.history-node small{color:var(--text-muted);line-height:1.35}.head-pointer{position:absolute;top:-18px;left:50%;padding:4px 8px;border-radius:999px;background:#f59e0b;color:#111827;font-size:.7rem;font-weight:900;transform:translate(-50%)}.avatar-initial{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;background:#f0f6fc29;color:#f0f6fc;font-size:.72rem;font-weight:900}.diff-panel{margin-top:12px;border:1px solid rgba(255,255,255,.12);border-radius:10px;overflow:hidden;background:#010409a6}.diff-title{display:flex;justify-content:space-between;gap:12px;padding:11px 14px;background:#ffffff0d;color:var(--text-muted)}.diff-title span{color:#fecaca;font-weight:800}.diff-panel pre{margin:0;padding:16px}.diff-panel code{display:block;font-family:Fira Code,Consolas,monospace;line-height:1.65}.diff-panel .removed{color:#fecaca;background:#ef44441f}.diff-panel .added{color:#bbf7d0;background:#10b9811f}.snapshot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:18px;align-items:start}.history-panel p{color:var(--text-muted);line-height:1.6}.history-action{width:100%;padding:12px 14px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff0f;color:var(--text-main);cursor:pointer;font-weight:800}.history-action:hover:not(:disabled){background:#ffffff1f}.history-action:disabled{cursor:not-allowed;opacity:.5}.history-action{display:inline-flex;align-items:center;justify-content:center;gap:7px}.history-lesson .history-action:not(.ghost){border-color:var(--stage-accent);color:var(--stage-accent)}.history-lesson .history-action:not(.ghost):hover:not(:disabled){background:var(--stage-accent);color:#0d1117}.history-action.ghost{background:transparent;margin-top:8px;font-weight:700;color:var(--text-muted)}.history-action.ghost:hover:not(:disabled){background:#ffffff0f;color:var(--text-main)}.history-mission,.flow-mission{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;align-items:center;margin:4px 0 18px;padding:16px 18px;border:1px solid rgba(56,189,248,.22);border-radius:14px;background:linear-gradient(135deg,#38bdf814,#8b5cf60f)}.mission-tag{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#38bdf8;margin-bottom:6px}.mission-text p{margin:0;font-size:.92rem;line-height:1.55;color:var(--text-main)}.mission-text code{background:#00000059;padding:1px 6px;border-radius:5px;font-size:.85em;color:#f472b6}.mission-objectives{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.mission-objectives .objective{display:flex;align-items:center;gap:9px;font-size:.85rem;color:var(--text-muted);transition:color .2s}.mission-objectives .objective.done{color:#34d399;text-decoration:line-through;text-decoration-color:#34d39980}.objective-check{flex-shrink:0;width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.2);display:inline-flex;align-items:center;justify-content:center;color:#0d1117;transition:all .2s}.objective.done .objective-check{background:#34d399;border-color:#34d399}.stage-instruction{margin:0 0 16px;padding:10px 13px;background:#ffffff08;border-left:3px solid var(--stage-accent, rgba(56, 189, 248, .5));border-radius:0 8px 8px 0;font-size:.85rem;line-height:1.55;color:var(--text-muted)}.stage-instruction svg{vertical-align:-2px;margin-right:5px;color:var(--stage-accent, #38bdf8)}.stage-instruction code{background:#00000059;padding:0 5px;border-radius:4px;color:#f472b6}.stage-instruction strong{color:var(--text-main)}.commit-tag{display:inline-block;margin-top:6px;padding:1px 7px;border-radius:20px;font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.commit-tag.bad{background:#f871712e;color:#fca5a5;border:1px solid rgba(248,113,113,.4)}.commit-tag.revert{background:#34d39929;color:#6ee7b7;border:1px solid rgba(52,211,153,.4)}.detached-status{display:flex;align-items:flex-start;gap:8px;margin-top:14px;padding:10px 12px;border-radius:8px;font-size:.82rem;line-height:1.5}.detached-status svg{flex-shrink:0;margin-top:2px}.detached-status code{background:#00000059;padding:0 5px;border-radius:4px}.detached-status.ok{background:#34d3991a;border:1px solid rgba(52,211,153,.25);color:#6ee7b7}.detached-status.warn{background:#fbbf241a;border:1px solid rgba(251,191,36,.3);color:#fcd34d}.discarded-block{margin:12px 0;padding:10px 12px;background:#00000038;border:1px solid rgba(255,255,255,.08);border-radius:8px}.discarded-label{font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.discarded-list{display:flex;flex-direction:column;gap:4px;margin:8px 0}.discarded-commit{font-family:Fira Code,Consolas,monospace;font-size:.74rem;padding:3px 8px;border-radius:5px;background:#ffffff0a;color:var(--text-muted);border-left:2px solid rgba(255,255,255,.15)}.discarded-commit.mode-hard{color:#fca5a5;border-left-color:#f87171;text-decoration:line-through;text-decoration-color:#f8717180}.discarded-commit.mode-soft{border-left-color:#34d399;color:#a7f3d0}.discarded-commit.mode-mixed{border-left-color:#fbbf24;color:#fde68a}.discarded-fate{font-size:.76rem;font-style:italic;color:var(--text-muted)}.danger-warning{display:flex;align-items:center;gap:7px}.matrix-score.complete{display:inline-flex;align-items:center;gap:6px;color:#34d399;font-weight:800}@media (max-width: 768px){.history-mission,.flow-mission{grid-template-columns:1fr;gap:14px}}.working-snapshot{padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:#0003}.working-snapshot h3{margin:0 0 8px;font-size:1rem}.snapshot-hash{display:inline-flex;margin-bottom:10px;color:var(--text-muted);font-family:Fira Code,Consolas,monospace}.snapshot-file{padding:8px 10px;margin-top:7px;border-left:3px solid rgba(59,130,246,.7);border-radius:6px;background:#ffffff0d;font-size:.9rem}.warning-badge,.danger-warning,.safe-badge{margin-top:14px;padding:12px 14px;border-radius:9px;font-weight:800;line-height:1.45}.warning-badge{border:1px solid rgba(245,158,11,.42);background:#f59e0b1f;color:#fde68a;cursor:help}.safe-badge{border:1px solid rgba(16,185,129,.24);background:#10b9810f;color:#bbf7d0;opacity:.55}.safe-badge.active{opacity:1}.reset-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.reset-tabs button,.label-bank button{padding:10px 12px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff0f;color:var(--text-main);cursor:pointer;font-weight:800}.reset-tabs button.selected{background:#ffffff24}.reset-tabs .mode-soft{border-color:#10b9817a}.reset-tabs .mode-mixed{border-color:#f59e0b7a}.reset-tabs .mode-hard{border-color:#ef444485}.reset-slider{display:grid;gap:10px;margin:18px 0;color:var(--text-muted);font-weight:800}.reset-slider input{width:100%}.reset-state{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.reset-state div{min-height:132px;padding:14px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#0000002e}.reset-state h3{margin:0 0 8px;font-size:1rem}.reset-state.mode-soft div{border-color:#10b98157}.reset-state.mode-mixed div{border-color:#f59e0b57}.reset-state.mode-hard div{border-color:#ef444466}.danger-warning{border:1px solid rgba(239,68,68,.5);background:#ef44441f;color:#fecaca}.label-bank{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}.matrix-table{display:grid;gap:10px}.matrix-row{display:grid;grid-template-columns:1.5fr 1fr;gap:12px;align-items:center;min-height:58px;padding:12px;border:1px dashed rgba(255,255,255,.22);border-radius:10px;background:#0000002e}.matrix-row span{color:var(--text-muted)}.matrix-row strong{justify-self:stretch;padding:9px 10px;border-radius:7px;background:#ffffff0d}.matrix-row.correct{border-color:#10b9818c}.matrix-row.wrong{border-color:#ef444480}.matrix-score{margin-top:12px;color:var(--text-muted);font-weight:800;text-align:right}@media (max-width: 900px){.history-layout,.snapshot-grid,.reset-state,.matrix-row,.reset-tabs{grid-template-columns:1fr}}.remote-lesson{width:100%}.lesson-header{margin-bottom:20px}.lesson-header h1,.lesson-header h2{font-size:1.5rem;font-weight:800;margin:0 0 10px}.lesson-header p{margin:0;color:var(--text-muted);line-height:1.55}.remote-lesson .insight-callout{margin-top:14px;font-size:.88rem}.remote-layout{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.remote-panel{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:12px;box-shadow:var(--glass-shadow);padding:22px}.team-panel,.pr-panel,.fork-panel,.push-panel{grid-column:1 / -1}.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.teammate-card{padding:16px;border:1px solid color-mix(in srgb,var(--person-color),transparent 45%);border-radius:10px;background:#0000002e}.avatar-large{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:999px;background:var(--person-color);color:#fff;font-weight:900}.teammate-card h3{margin:12px 0 4px}.teammate-card code,.remote-command{display:inline-flex;margin-bottom:12px;color:#c9d1d9;font-family:Fira Code,Consolas,monospace}.teammate-card span{display:block;margin-top:8px;padding:8px 10px;border-radius:7px;background:#ffffff0d;color:var(--text-muted)}.remote-actions{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.remote-actions button,.remote-full-button{padding:11px 14px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff0f;color:var(--text-main);cursor:pointer;font-weight:800}.remote-actions button:hover:not(:disabled),.remote-full-button:hover{background:#ffffff1f}.remote-actions button:disabled{cursor:not-allowed;opacity:.45}.sync-diagram{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center}.repo-box{min-height:142px;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:#0000002e}.repo-box.active{border-color:#10b98166}.repo-box h3{margin:0 0 12px}.repo-box span{display:block;margin-top:8px;color:var(--text-muted)}.sync-arrow{min-width:92px;padding:8px;border-radius:999px;background:#f59e0b1f;color:#fde68a;font-size:.8rem;font-weight:900;text-align:center}.sync-arrow.merged{background:#10b9811f;color:#bbf7d0}.remote-note{margin-top:14px;color:var(--text-muted);line-height:1.55}.tracking-visual{display:grid;grid-template-columns:1fr 70px 1fr;align-items:center;gap:10px;margin:20px 0}.branch-pill{padding:14px 12px;border-radius:999px;text-align:center;font-weight:900}.branch-pill.local{background:#3b82f629;border:1px solid rgba(59,130,246,.4)}.branch-pill.remote{background:#ec489924;border:1px solid rgba(236,72,153,.36)}.tracking-line{height:2px;border-top:3px dotted rgba(245,158,11,.8)}.tracking-line.synced{border-top-style:solid;border-color:#10b981cc}.drift-badge{display:inline-flex;margin-bottom:14px;padding:9px 12px;border:1px solid rgba(245,158,11,.38);border-radius:999px;background:#f59e0b1a;color:#fde68a;font-weight:900}.drift-badge.synced{border-color:#10b98166;background:#10b9811a;color:#bbf7d0}.remote-full-button{width:100%;margin-bottom:12px}.pr-shell{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pr-diff,.review-thread{min-height:170px;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:#0000002e}.pr-diff strong{display:block;margin-bottom:12px}.pr-diff code{display:block;margin-top:6px;padding:6px 8px;border-radius:5px;font-family:Fira Code,Consolas,monospace}.pr-diff .removed{color:#fecaca;background:#ef44441f}.pr-diff .added{color:#bbf7d0;background:#10b9811f}.review-thread div{margin-bottom:10px;padding:10px;border-radius:8px;background:#ffffff0d;color:var(--text-muted)}.review-thread strong{display:block;color:var(--text-main);margin-bottom:4px}.review-status{padding:12px 14px;border-radius:9px;background:#ffffff0f;color:var(--text-muted);font-weight:800}.status-approved,.status-merged{color:#bbf7d0;background:#10b9811a}.status-changes{color:#fde68a;background:#f59e0b1a}.fork-diagram{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:10px;align-items:center}.diagram-node{min-height:116px;display:flex;flex-direction:column;justify-content:center;gap:8px;padding:14px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#0000002e}.diagram-node small,.fork-diagram span{color:var(--text-muted)}.fork-diagram>span{font-weight:900}.push-terminal{display:grid;gap:10px;padding:16px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#010409b8}.push-terminal code{color:#c9d1d9;font-family:Fira Code,Consolas,monospace}.push-terminal span{color:var(--text-muted)}.push-rejected{border-color:#ef444485}.push-rejected span{color:#fecaca}.push-rebased span,.push-pushed span{color:#bbf7d0}@media (max-width: 900px){.remote-layout,.team-grid,.sync-diagram,.tracking-visual,.pr-shell,.fork-diagram{grid-template-columns:1fr}.sync-arrow,.fork-diagram>span{justify-self:center}}.golden-rule{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px;padding:14px 16px;border:1px solid rgba(245,158,11,.42);border-radius:10px;background:#f59e0b1f;color:#fde68a;line-height:1.45}.golden-rule button,.rebase-confirm,.compare-toggle button,.rebase-card-actions button,.decision-actions button{border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff0f;color:var(--text-main);cursor:pointer;font-weight:800;padding:10px 12px}.golden-rule button:hover,.rebase-confirm:hover,.compare-toggle button:hover,.rebase-card-actions button:hover,.decision-actions button:hover{background:#ffffff1f}.broken-team{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.broken-team div{padding:14px;border:1px solid rgba(239,68,68,.28);border-radius:10px;background:#ef444414;color:#fecaca}.broken-team .broken-alert{border-color:#ef44448c;font-weight:900}.rebase-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.rebase-panel{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:12px;box-shadow:var(--glass-shadow);padding:22px}.compare-panel,.result-panel{grid-column:1 / -1}.compare-toggle{display:flex;gap:10px;margin-bottom:16px}.compare-toggle button{text-transform:capitalize}.compare-toggle .selected,.rebase-card-actions .selected{border-color:#f0f6fc7a;background:#f0f6fc1f}.graph-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.graph-compare.show-merge,.graph-compare.show-rebase{grid-template-columns:1fr}.story-graph{padding:16px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:#0000002e}.story-graph h3{margin:0 0 12px}.story-graph svg{width:100%;min-height:230px}.main-graph-line,.feature-graph-line,.merge-graph-line{fill:none;stroke-width:4;stroke-linecap:round}.main-graph-line{stroke:#3b82f6}.feature-graph-line{stroke:#10b981}.merge-graph-line{stroke:#8b5cf6;stroke-dasharray:8 7}.graph-node{fill:#3b82f6;stroke:#fff;stroke-width:3}.graph-node.feature{fill:#10b981}.graph-node.merge{fill:#8b5cf6}.story-graph text{fill:var(--text-muted);font-size:12px;font-weight:800}.rebase-command-list{display:grid;gap:12px}.rebase-card{padding:14px;border:1px solid rgba(255,255,255,.12);border-left:4px solid #3b82f6;border-radius:10px;background:#0000002e;cursor:grab}.rebase-card.action-squash{border-left-color:#f59e0b}.rebase-card.action-reword{border-left-color:#8b5cf6}.rebase-card.action-drop{border-left-color:#ef4444;opacity:.72}.rebase-card-main{display:grid;grid-template-columns:34px 78px 1fr;gap:10px;align-items:center}.rebase-card-main span{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:#ffffff1a;font-weight:900}.rebase-card-main code,.command-strip code{color:#c9d1d9;font-family:Fira Code,Consolas,monospace}.rebase-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.rebase-card-actions button{padding:7px 9px;font-size:.78rem;text-transform:capitalize}.rebase-confirm{width:100%;margin-top:14px}.clean-history{display:flex;gap:14px;overflow-x:auto;padding:18px 4px}.clean-node{flex:0 0 160px;min-height:132px;padding:14px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#0000002e}.clean-node span{display:block;width:26px;height:26px;margin-bottom:12px;border:3px solid white;border-radius:999px;background:#3b82f6}.clean-history.active .clean-node span{background:#10b981;animation:scaleIn .35s ease}.clean-node code,.clean-node strong{display:block}.clean-node strong{margin-top:8px;line-height:1.3}.command-strip{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.command-strip code{padding:8px 10px;border-radius:7px;background:#ffffff0f}.decision-box{padding:16px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:#0000002e}.decision-box p{margin-top:0;color:var(--text-main);font-size:1.1rem;font-weight:800}.decision-actions{display:flex;gap:10px;flex-wrap:wrap}.decision-answer{margin-top:14px;padding:12px 14px;border-radius:9px;background:#ffffff0f;color:var(--text-muted);font-weight:900}.answer-merge{color:#fde68a;background:#f59e0b1a}.answer-rebase{color:#bbf7d0;background:#10b9811a}.decision-panel .insight-callout{margin-top:16px}@media (max-width: 900px){.rebase-layout,.graph-compare,.broken-team,.rebase-card-main{grid-template-columns:1fr}.golden-rule{align-items:stretch;flex-direction:column}}.mock-terminal{background:#0f172abf;border:1px solid rgba(255,255,255,.1);border-radius:12px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:20px;font-family:Fira Code,monospace;box-shadow:0 20px 50px #00000080;z-index:5;width:100%;max-width:480px;margin:0 auto;text-align:left}.terminal-bar{display:flex;align-items:center;gap:6px;margin-bottom:16px;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:8px}.terminal-bar .dot{width:10px;height:10px;border-radius:50%}.dot.red{background:#ff5f56}.dot.yellow{background:#ffbd2e}.dot.green{background:#27c93f}.terminal-title{color:var(--text-muted);font-size:.8rem;margin-left:auto}.terminal-body code{display:block;font-size:.85rem;line-height:1.6;margin-bottom:4px;background:transparent!important;border:none!important;padding:0!important;box-shadow:none!important}.terminal-body .cmd{color:#58a6ff}.terminal-body .terminal-line{color:#c9d1d9}.terminal-body .hash{color:#d2a8ff}.intro-navbar{position:absolute;top:0;left:0;width:100%;padding:20px 40px;display:flex;justify-content:space-between;align-items:center;z-index:10}.intro-logo{display:flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none;margin-left:28px}.logo-icon-svg{width:32px;height:32px;filter:drop-shadow(0 0 8px rgba(129,140,248,.4));transition:transform .3s ease}.intro-logo:hover .logo-icon-svg{transform:rotate(5deg) scale(1.05)}.logo-text{font-family:Outfit,Inter,sans-serif;font-weight:900;font-size:1.5rem;letter-spacing:-.03em;color:#fff}.logo-morph-wrap{flex-shrink:0;animation:logo-float 3.4s ease-in-out infinite,logo-morph-glow 7s ease-in-out infinite}@keyframes logo-float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes logo-morph-glow{0%,40%{filter:drop-shadow(0 0 7px rgba(56,189,248,.75))}55%,90%{filter:drop-shadow(0 0 8px rgba(139,92,246,.7))}to{filter:drop-shadow(0 0 7px rgba(56,189,248,.75))}}.logo-state-code,.logo-state-git{transform-box:fill-box;transform-origin:center}.logo-state-code{animation:show-code 7s cubic-bezier(.65,0,.35,1) infinite}@keyframes show-code{0%,40%{opacity:1;transform:scale(1) rotate(0)}52%,90%{opacity:0;transform:scale(.88) rotate(-12deg)}to{opacity:1;transform:scale(1) rotate(0)}}.logo-state-git{animation:show-git 7s cubic-bezier(.65,0,.35,1) infinite}@keyframes show-git{0%,40%{opacity:0;transform:scale(.88) rotate(12deg)}52%,90%{opacity:1;transform:scale(1) rotate(0)}to{opacity:0;transform:scale(.88) rotate(12deg)}}.intro-logo:hover .logo-morph-wrap,.intro-logo:hover .logo-state-code,.intro-logo:hover .logo-state-git{animation-play-state:paused}.intro-hero{background-image:radial-gradient(circle at 80% 20%,rgba(56,189,248,.08) 0%,transparent 50%),radial-gradient(circle at 20% 80%,rgba(192,132,252,.06) 0%,transparent 50%),linear-gradient(rgba(255,255,255,.005) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.005) 1px,transparent 1px);background-size:100% 100%,100% 100%,48px 48px,48px 48px}.terminal-graph-layout{display:flex;gap:12px;align-items:stretch;margin-top:16px}.graph-sidebar{width:45px;flex-shrink:0}.git-graph-svg{width:100%;height:288px;overflow:visible}.commit-details{display:flex;flex-direction:column;flex-grow:1}.hero-commit-row{height:32px;display:flex;align-items:center;font-size:.8rem;color:var(--text-muted);font-family:Fira Code,monospace;border-bottom:1px solid rgba(255,255,255,.015);flex-wrap:nowrap!important}.hero-commit-row .hash{color:#d2a8ff;font-weight:500;margin-right:12px;flex-shrink:0}.hero-commit-row .author-name{color:#8b949e;margin-right:8px;font-weight:500;flex-shrink:0}.hero-commit-row .desc{color:#c9d1d9;white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis;max-width:240px;flex-shrink:1}.branch-pill{background:#ec489926;border:1px solid rgba(236,72,153,.3);color:#ec4899;border-radius:4px;padding:1px 6px;font-size:.7rem;margin-right:6px;font-weight:700;text-transform:uppercase}.merge-pill{background:#34d39926;border:1px solid rgba(52,211,153,.3);color:#34d399;border-radius:4px;padding:1px 6px;font-size:.7rem;margin-right:6px;font-weight:700;text-transform:uppercase}.gradient-text{text-shadow:0 0 30px rgba(56,189,248,.3)}.hero-title{font-family:Outfit,Inter,sans-serif;font-size:3.8rem;letter-spacing:-.02em}.hero-cta{background:linear-gradient(135deg,#21262dcc,#30363dcc);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-color:#38bdf84d;box-shadow:0 8px 30px #38bdf826}.hero-cta:hover{border-color:#38bdf899;box-shadow:0 12px 40px #38bdf84d}.intro-features-grid{padding:80px 40px 120px;max-width:1200px;margin:0 auto;border-bottom:1px solid rgba(255,255,255,.05)}.section-title-centered{text-align:center;margin-bottom:60px}.features-kicker{color:#58a6ff;font-weight:600;text-transform:uppercase;font-size:.85rem;letter-spacing:2px;display:block;margin-bottom:12px}.section-title-centered h2{font-size:2.5rem;font-weight:800;margin:0;color:#fff}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px}.feature-card{background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:16px;padding:35px 30px;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;align-items:flex-start}.feature-card:hover{background:#ffffff0a;border-color:#ffffff26;transform:translateY(-6px);box-shadow:0 12px 30px #0003}.feature-icon{margin-bottom:20px;background:#ffffff08;padding:12px;border-radius:12px;border:1px solid rgba(255,255,255,.05);display:inline-flex;align-items:center;justify-content:center;color:#38bdf8}.d-icon,.step-emoji,.analogy-icon,.cloud-icon-large,.confusion-icons{display:inline-flex;align-items:center;justify-content:center}.cloud-icon-large{color:#8b5cf6}.analogy-icon{color:#fbbf24}.confusion-icons{color:#f472b6}.anim-file-card svg,.anim-staged-card svg,.cloud-success-badge svg,.copy-cmd-btn svg,.tour-play-btn svg,.replay-btn svg,.step-badge-indicator svg{vertical-align:-.16em}.tour-play-btn,.replay-btn{display:inline-flex;align-items:center;gap:6px;justify-content:center}.spin-icon{animation:spin-icon-rot .9s linear infinite}@keyframes spin-icon-rot{to{transform:rotate(360deg)}}.feature-card h3{font-size:1.25rem;font-weight:700;margin:0 0 12px;color:#fff}.feature-card p{color:var(--text-muted);line-height:1.6;font-size:.95rem;margin:0}.stash-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.stash-panel{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:12px;box-shadow:var(--glass-shadow);padding:22px}.cherry-panel,.conflict-pick-panel{grid-column:1 / -1}.branch-status{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#0000002e}.branch-status span{color:#fde68a;font-weight:800}.dirty-files{margin:16px 0;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:#00000029}.dirty-files h3,.stash-compare h3,.pick-branch h3{margin:0 0 10px;font-size:1rem}.dirty-file,.empty-worktree{margin-top:8px;padding:10px 12px;border-radius:8px;background:#ffffff0f;color:var(--text-muted)}.dirty-file{border-left:3px solid #f59e0b;color:var(--text-main)}.stash-name{display:grid;gap:8px;color:var(--text-muted);font-weight:800}.stash-name input{width:100%;padding:11px 12px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#0000003d;color:var(--text-main)}.stash-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.stash-actions button,.stash-list button,.pick-commit,.resolve-pick{padding:11px 13px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff0f;color:var(--text-main);cursor:pointer;font-weight:800}.stash-actions button:hover:not(:disabled),.stash-list button:hover,.pick-commit:hover,.resolve-pick:hover:not(:disabled){background:#ffffff1f}.stash-actions button:disabled,.resolve-pick:disabled{cursor:not-allowed;opacity:.45}.stash-note{margin-top:14px;padding:12px 14px;border-radius:9px;background:#3b82f61a;color:#bfdbfe;line-height:1.5}.stash-list{display:grid;gap:10px}.stash-list button{display:grid;gap:5px;text-align:left}.stash-list button.selected{border-color:#10b98173;background:#10b9811a}.stash-list span,.stash-compare p{color:var(--text-muted);line-height:1.45}.stash-compare{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px}.stash-compare div{padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:#00000029}.pick-diagram{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:stretch}.pick-branch{min-height:230px;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:#00000029}.pick-branch.target{border-color:#10b98159}.pick-commit{display:grid;gap:5px;width:100%;margin-top:10px;text-align:left}.pick-commit code,.pick-commands code{color:#c9d1d9;font-family:Fira Code,Consolas,monospace}.pick-commit span{color:var(--text-muted)}.pick-commit.picked{border-color:#10b98173}.pick-commit.conflict{border-color:#ef444473}.pick-arrow{align-self:center;padding:9px 12px;border-radius:999px;background:#8b5cf61f;color:#ddd6fe;font-weight:900;white-space:nowrap}.pick-status{padding:14px;border:1px solid rgba(16,185,129,.3);border-radius:10px;background:#10b98114;color:#bbf7d0;font-weight:800}.pick-status.conflict{border-color:#ef44447a;background:#ef44441a;color:#fecaca}.pick-commands{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.pick-commands code{padding:8px 10px;border-radius:7px;background:#ffffff0f}@media (max-width: 900px){.stash-layout,.stash-compare,.pick-diagram{grid-template-columns:1fr}.pick-arrow{justify-self:center}}.intro-interactive-tour{display:flex;flex-direction:column;align-items:center;padding:80px 40px;width:100%}.tour-wrapper{width:100%;max-width:1200px;margin:0 auto}.tour-stepper{display:flex;justify-content:space-between;align-items:center;position:relative;margin-bottom:50px;padding:0 20px}.stepper-line{position:absolute;top:25px;left:6%;right:6%;height:4px;background:#ffffff0f;border-radius:2px;z-index:1}.stepper-line-fill{height:100%;background:linear-gradient(to right,#38bdf8,#f59e0b,#10b981,#8b5cf6);transition:width .5s cubic-bezier(.4,0,.2,1);border-radius:2px}.step-node{display:flex;flex-direction:column;align-items:center;background:none;border:none;cursor:pointer;position:relative;z-index:2;gap:12px;width:110px}.step-circle{width:50px;height:50px;border-radius:50%;background:#0f172a;border:2px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;position:relative;transition:all .4s cubic-bezier(.25,1,.5,1);box-shadow:0 4px 12px #0003}.step-emoji{color:var(--active-color);transition:transform .3s ease;display:inline-flex;align-items:center;justify-content:center}.step-number{position:absolute;bottom:-3px;right:-3px;width:18px;height:18px;border-radius:50%;background:#334155;font-size:.68rem;color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;border:1.5px solid #0f172a;transition:all .3s ease}.step-node-label{font-size:.88rem;font-weight:600;color:#ffffff80;transition:all .3s ease;text-align:center}.step-node:hover .step-circle{border-color:#ffffff73;transform:translateY(-3px);box-shadow:0 6px 16px #ffffff0d}.step-node.active .step-circle{border-color:var(--active-color);background:#0f172a;box-shadow:0 0 20px var(--active-color)}.step-node.active .step-emoji{transform:scale(1.15)}.step-node.active .step-number{background:var(--active-color);border-color:#0f172a}.step-node.active .step-node-label{color:#f8fafc;font-weight:700}.step-node.completed .step-circle{border-color:#8b5cf680;background:#191d3a}.step-node.completed .step-node-label{color:#ffffffbf}.tour-content-card{background:#0f172a73;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.08);border-radius:24px;overflow:hidden;box-shadow:0 25px 50px -12px #00000080}.tour-content-grid{display:grid;grid-template-columns:1.15fr 1fr;min-height:520px}.tour-text-panel{padding:40px 45px;border-right:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column}.tour-visual-panel{padding:40px;display:flex;flex-direction:column;background:#0000002e}.step-badge-indicator{display:inline-flex;align-items:center;padding:5px 12px;border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.06em;width:fit-content;margin-bottom:20px;box-shadow:0 2px 8px #00000026}.step-title-text{font-size:1.9rem;font-weight:850;color:#f8fafc;margin:0 0 16px;line-height:1.25}.step-desc-text{font-size:.98rem;color:#cbd5e1;line-height:1.65;margin:0 0 24px}.step-analogy-box{background:#ffffff05;border:1px dashed rgba(255,255,255,.08);border-radius:14px;padding:18px;display:flex;gap:16px;margin-bottom:24px}.analogy-icon{font-size:1.6rem;line-height:1}.analogy-body strong{display:block;font-size:.78rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px}.analogy-body p{font-size:.92rem;color:#e2e8f0;margin:0;line-height:1.5}.step-command-box{background:#090d16;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:16px;margin-bottom:30px}.cmd-label{display:block;font-size:.72rem;color:#64748b;font-weight:750;text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px}.cmd-line-wrapper{display:flex;justify-content:space-between;align-items:center}.cmd-line-wrapper code{font-family:Fira Code,Consolas,monospace;color:#38bdf8;font-size:.96rem;word-break:break-all}.copy-cmd-btn{background:none;border:none;cursor:pointer;color:#64748b;padding:6px;border-radius:6px;transition:all .2s ease;font-size:.95rem;display:flex;align-items:center;justify-content:center}.copy-cmd-btn:hover{color:#fff;background:#ffffff12}.tour-controls{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:24px;border-top:1px solid rgba(255,255,255,.05)}.nav-buttons{display:flex;gap:14px}.tour-nav-btn{padding:11px 22px;border-radius:9px;font-weight:700;cursor:pointer;transition:all .25s ease;font-size:.92rem}.tour-nav-btn.prev{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:#cbd5e1}.tour-nav-btn.prev:hover{background:#ffffff12;border-color:#ffffff2e;color:#fff}.tour-nav-btn.next{background:#3b82f6;border:none;color:#fff;box-shadow:0 4px 12px #3b82f633}.tour-nav-btn.next:hover{background:#2563eb;transform:translateY(-1px);box-shadow:0 6px 16px #3b82f659}.tour-play-btn{background:none;border:none;font-size:.86rem;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;transition:all .2s ease}.tour-play-btn.playing{color:#10b981}.tour-play-btn.paused{color:#64748b}.tour-play-btn:hover{background:#ffffff0d}.visual-panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:14px}.live-pill{font-size:.68rem;font-weight:800;color:#f43f5e;letter-spacing:.08em;display:flex;align-items:center;gap:6px}.live-pill:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background-color:#f43f5e;box-shadow:0 0 8px #f43f5e;animation:pulseAlpha 1.2s infinite ease-in-out}@keyframes pulseAlpha{0%,to{opacity:.3}50%{opacity:1}}.replay-btn{background:none;border:none;color:#64748b;font-size:.76rem;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:4px;transition:color .2s ease}.replay-btn:hover{color:#cbd5e1}.visual-panel-body{flex:1;display:flex;align-items:center;justify-content:center}.visual-container{width:100%;display:flex;flex-direction:column;justify-content:center}.workspace-anim{gap:20px}.mock-editor-window{background:#0d1117;border:1px solid rgba(255,255,255,.08);border-radius:12px;width:100%;box-shadow:0 12px 24px #0006;overflow:hidden}.editor-window-header{background:#161b22;padding:10px 16px;display:flex;align-items:center;gap:6px;border-bottom:1px solid rgba(255,255,255,.05)}.window-dot{width:10px;height:10px;border-radius:50%}.window-dot.red{background:#f85149}.window-dot.yellow{background:#f0883e}.window-dot.green{background:#56d364}.window-filename{font-size:.74rem;color:#8b949e;font-family:monospace;margin-left:10px}.editor-window-body{padding:20px;font-family:Fira Code,Consolas,monospace;font-size:.86rem;line-height:1.65;color:#c9d1d9;min-height:125px;position:relative}.typing-code-line{white-space:nowrap;overflow:hidden;border-right:2px solid transparent;width:0}.typing-code-line span{color:#ff7b72}.typing-code-line.line-1{animation:typeCodeLine1 1.2s steps(28) .5s forwards}.typing-code-line.line-2{animation:typeCodeLine2 1.4s steps(32) 1.8s forwards}.typing-code-line.line-3{animation:typeCodeLine3 .6s steps(10) 3.3s forwards}.typing-cursor{position:absolute;width:6px;height:15px;background:#58a6ff;left:20px;top:20px;opacity:0;animation:blinkCursor .7s infinite alternate,moveCursor 4s steps(1) .5s forwards}@keyframes typeCodeLine1{to{width:220px}}@keyframes typeCodeLine2{to{width:310px}}@keyframes typeCodeLine3{to{width:30px}}@keyframes blinkCursor{0%{opacity:0}to{opacity:1}}@keyframes moveCursor{0%{left:20px;top:20px}30%{left:240px;top:20px}31%{left:20px;top:48px}72%{left:330px;top:48px}73%{left:20px;top:76px}to{left:40px;top:76px;opacity:0}}.editor-file-status{display:flex;gap:12px;margin-top:10px}.file-status-card{flex:1;padding:12px 14px;border-radius:9px;display:flex;flex-direction:column;gap:6px;background:#ffffff05;border:1px solid rgba(255,255,255,.05);transition:all .3s ease}.file-status-card.modified{animation:fileModifiedGlow .8s ease 1s forwards}.file-status-card.modified.delay-1{animation:fileModifiedGlow .8s ease 2s forwards}@keyframes fileModifiedGlow{to{border-color:#f59e0b52;background:#f59e0b0d;box-shadow:0 4px 12px #f59e0b0d}}.status-badge{font-size:.62rem;font-weight:800;text-transform:uppercase;width:fit-content;padding:2px 7px;border-radius:4px;letter-spacing:.02em}.status-badge.modified{color:#f59e0b;background:#f59e0b26}.status-badge.untracked{color:#94a3b8;background:#94a3b81f}.status-name{font-size:.82rem;font-weight:700;color:#cbd5e1}.staging-anim{width:100%}.staging-columns{display:flex;width:100%;align-items:center;gap:20px}.stage-side{flex:1.1;display:flex;flex-direction:column;gap:14px}.stage-side h4{font-size:.78rem;text-transform:uppercase;color:#64748b;letter-spacing:.05em;margin:0 0 4px}.anim-file-card{padding:12px 16px;background:#ffffff08;border:1px solid rgba(255,255,255,.07);border-radius:8px;font-size:.88rem;color:#e2e8f0;font-weight:600}.anim-file-card.f-app.sliding-1{animation:fadeOutCard 1.8s cubic-bezier(.55,0,1,.45) .6s forwards}.anim-file-card.f-styles.sliding-2{animation:fadeOutCard 1.8s cubic-bezier(.55,0,1,.45) 1s forwards}.arrow-connector{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;width:80px}.arrow-line{width:100%;height:2px;background:linear-gradient(to right,#ffffff1a,#f59e0b);position:relative}.arrow-line:after{content:"";position:absolute;right:-2px;top:-3px;width:0;height:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:6px solid #f59e0b}.arrow-label{font-size:.68rem;font-family:monospace;color:#f59e0b;font-weight:600}.staging-box-wrapper{border:2px dashed rgba(245,158,11,.25);border-radius:12px;padding:14px;min-height:135px;display:flex;flex-direction:column;gap:12px;justify-content:center;position:relative;background:#f59e0b03;transition:all .3s ease;flex:1}.anim-staged-card{padding:12px 16px;background:#f59e0b0f;border:1px solid rgba(245,158,11,.28);border-radius:8px;font-size:.88rem;color:#f59e0b;font-weight:750;opacity:0;transform:translateY(12px) scale(.95)}.anim-staged-card.staged-1{animation:stagedAppear .4s cubic-bezier(.34,1.56,.64,1) 1.5s forwards}.anim-staged-card.staged-2{animation:stagedAppear .4s cubic-bezier(.34,1.56,.64,1) 1.9s forwards}.staging-box-empty{font-size:.76rem;color:#475569;font-weight:600;text-align:center;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);animation:fadeOutStagedEmpty .3s forwards 1.3s}@keyframes fadeOutCard{0%{transform:translate(0);opacity:1}50%{transform:translate(35px);opacity:.2}55%{opacity:0}to{transform:translate(80px);opacity:0}}@keyframes stagedAppear{to{opacity:1;transform:translateY(0) scale(1)}}.commit-anim{width:100%}.commit-columns{display:flex;flex-direction:column;width:100%;align-items:center;gap:15px}.commit-stage-source{width:100%;text-align:center}.staged-pack{display:inline-flex;flex-direction:column;gap:8px;padding:16px;background:#10b98108;border:2px dashed rgba(16,185,129,.25);border-radius:14px;width:180px;text-align:left;position:relative}.pack-item{font-size:.76rem;color:#10b981;font-weight:700;padding:5px 10px;background:#10b9811a;border:1px solid rgba(16,185,129,.2);border-radius:5px}.pack-label{display:block;text-align:center;font-size:.68rem;font-family:monospace;color:#10b981;font-weight:750;margin-top:6px}.staged-pack.animate-pack{animation:stagedPackCollapse 2.2s cubic-bezier(.76,0,.24,1) .5s forwards}@keyframes stagedPackCollapse{0%{transform:scale(1);opacity:1}35%{transform:scale(.8);background:#10b981;border-style:solid;box-shadow:0 0 15px #10b981}36%{color:transparent}60%{transform:scale(.55) translateY(25px);opacity:1}90%{transform:scale(.2) translateY(120px);opacity:.2}to{transform:scale(0) translateY(180px);opacity:0}}.arrow-connector.down{height:25px;display:flex;align-items:center;justify-content:center}.arrow-line-down{width:2px;height:100%;background:linear-gradient(to bottom,#10b981,#ffffff0d);position:relative}.commit-timeline-dest{width:100%;max-width:320px}.anim-timeline{border-left:2px solid rgba(255,255,255,.08);padding-left:22px;margin-left:24px;display:flex;flex-direction:column;gap:12px}.anim-timeline-node{position:relative;padding:10px 14px;background:#ffffff05;border-left:2px solid #334155;border-radius:8px;border-top:1px solid rgba(255,255,255,.03);box-shadow:0 4px 6px #00000026;transition:transform .4s ease}.anim-timeline-node:before{content:"";position:absolute;left:-29px;top:13px;width:12px;height:12px;border-radius:50%;background:#334155;border:2px solid #0f172a}.anim-timeline-node.old.animate-node-old-1,.anim-timeline-node.old.animate-node-old-2{animation:slideTimelineDown .6s cubic-bezier(.25,1,.5,1) 2.2s forwards}@keyframes slideTimelineDown{to{transform:translateY(0)}}.anim-timeline-node.new-pulse{opacity:0;transform:translateY(-20px);animation:timelineNodeAppear .5s cubic-bezier(.34,1.56,.64,1) 2.3s forwards;border-left-color:#10b981;background:#10b9810a;border-top-color:#10b9811a}.anim-timeline-node.new-pulse:before{background:#10b981;animation:commitPulse 1.6s infinite 2.3s}@keyframes timelineNodeAppear{to{opacity:1;transform:translateY(0)}}@keyframes commitPulse{0%{box-shadow:0 0 #10b98199}to{box-shadow:0 0 0 12px #10b98100}}.push-anim{width:100%}.push-layout{display:flex;width:100%;align-items:center;gap:16px}.local-timeline-column{flex:1.1;display:flex;flex-direction:column;gap:10px}.local-commits-stack{display:flex;flex-direction:column;gap:10px}.commit-node-bubble{padding:10px 14px;background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:8px;display:flex;flex-direction:column;gap:3px;box-shadow:0 4px 6px #0000001a;transition:all .5s ease}.bubble-hash{font-family:monospace;font-size:.74rem;color:#64748b;font-weight:750}.bubble-desc{font-size:.8rem;color:#94a3b8;font-weight:600}.current-pushed-node{border-color:#8b5cf659;background:#8b5cf60f;animation:nodeSuccessState .6s ease forwards .5s}@keyframes nodeSuccessState{to{border-color:#ffffff0d;background:#ffffff05}}.push-arrow-track{width:100px;height:40px;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center}.push-track-line{width:100%;height:2px;background:linear-gradient(to right,#ffffff1a,#8b5cf6)}.flying-commit{position:absolute;top:-10px;left:-15px;font-family:monospace;font-size:.72rem;font-weight:800;color:#fff;background:#8b5cf6;padding:4px 8px;border-radius:5px;box-shadow:0 0 12px #8b5cf6;opacity:0;transform:scale(.7);animation:flyingCommitToCloud 2s cubic-bezier(.25,1,.5,1) .5s forwards}@keyframes flyingCommitToCloud{0%{left:-15px;opacity:0;transform:scale(.7)}15%{opacity:1;transform:scale(1)}82%{opacity:1;transform:scale(1)}to{left:95px;opacity:0;transform:scale(.4)}}.remote-cloud-column{flex:1.25;display:flex;flex-direction:column;align-items:center}.cloud-wrapper{display:flex;flex-direction:column;align-items:center;gap:10px;justify-content:center;border:1px solid rgba(255,255,255,.06);padding:20px;border-radius:14px;background:#0000001f;width:100%;min-height:145px;position:relative;overflow:hidden;box-shadow:inset 0 2px 8px #0000004d}.cloud-icon-large{font-size:3.4rem;filter:drop-shadow(0 0 10px rgba(139,92,246,.15));animation:cloudFloating 3s ease-in-out infinite}.cloud-wrapper.pushed-glow{animation:cloudPushedPulse .8s ease-out 2s forwards}@keyframes cloudFloating{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.cloud-pushed-status{opacity:0;transform:translateY(12px);animation:cloudSuccessFadeIn .5s ease-out 2.1s forwards;text-align:center}.cloud-success-badge{font-size:.72rem;font-weight:850;color:#10b981;background:#10b98126;padding:3px 8px;border-radius:5px;display:inline-block;margin-bottom:5px;box-shadow:0 0 10px #10b98133}.cloud-pushed-commit{font-size:.68rem;color:#64748b;font-family:monospace}@keyframes cloudSuccessFadeIn{to{opacity:1;transform:translateY(0)}}.complete-anim-grid{width:100%;display:flex;align-items:center;justify-content:center}.diagram-grid{display:flex;flex-direction:column;align-items:center;gap:4px;width:100%;max-width:290px}.diagram-node{width:100%;padding:10px 15px;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:12px;display:flex;align-items:center;gap:12px;transition:all .3s ease;opacity:0;transform:translateY(12px);box-shadow:0 4px 6px #0000001a}.diagram-node:hover{transform:scale(1.02);border-color:#fff3}.d-icon{font-size:1.4rem}.d-label{font-size:.88rem;font-weight:800;color:#f8fafc}.d-sub{font-size:.72rem;color:#64748b;margin-left:auto;font-weight:600}.diagram-connector-arrow{display:flex;flex-direction:column;align-items:center;gap:1px;opacity:0;height:28px;justify-content:center}.c-line{width:2px;height:14px;background:#ffffff29;position:relative}.c-line:after{content:"";position:absolute;bottom:-1px;left:-3px;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid rgba(255,255,255,.16)}.c-text{font-size:.62rem;font-family:monospace;color:#64748b;font-weight:700}.diagram-node.animate-node-1{animation:fadeInUpNode .4s ease forwards .1s;border-color:#38bdf840;background:#38bdf80a}.diagram-connector-arrow.animate-arrow-1{animation:fadeInArrow .3s ease forwards .35s}.diagram-node.animate-node-2{animation:fadeInUpNode .4s ease forwards .5s;border-color:#f59e0b40;background:#f59e0b0a}.diagram-connector-arrow.animate-arrow-2{animation:fadeInArrow .3s ease forwards .75s}.diagram-node.animate-node-3{animation:fadeInUpNode .4s ease forwards .9s;border-color:#10b98140;background:#10b9810a}.diagram-connector-arrow.animate-arrow-3{animation:fadeInArrow .3s ease forwards 1.15s}.diagram-node.animate-node-4{animation:fadeInUpNode .4s ease forwards 1.3s;border-color:#8b5cf640;background:#8b5cf60a}@keyframes fadeInUpNode{to{opacity:1;transform:translateY(0)}}@keyframes fadeInArrow{to{opacity:1}}@media (max-width: 900px){.intro-interactive-tour{padding:60px 20px}.tour-content-grid{grid-template-columns:1fr;min-height:auto}.tour-text-panel{border-right:none;border-bottom:1px solid rgba(255,255,255,.06);padding:30px 25px}.tour-visual-panel{padding:35px 25px;min-height:320px}}@media (max-width: 680px){.tour-stepper{flex-wrap:wrap;justify-content:center;gap:16px 20px}.stepper-line{display:none}.step-node{width:80px;gap:6px}.step-circle{width:44px;height:44px}.step-emoji{font-size:1.1rem}.step-node-label{font-size:.78rem}.step-title-text{font-size:1.5rem}}.lesson-container-split{align-items:flex-start!important}.lesson-middle-inspector,.lesson-right-sidebar{position:sticky;top:16px;align-self:flex-start}@media (max-width: 1024px){.lesson-container-split{flex-direction:column!important}.lesson-left-content,.lesson-middle-inspector,.lesson-right-sidebar{flex:1 1 auto!important;width:100%!important;min-width:0!important;max-width:none!important;max-height:none!important;position:static!important}}:focus-visible{outline:2px solid #38bdf8;outline-offset:2px;border-radius:4px}input:focus-visible,textarea:focus-visible{outline-offset:0}button,a,.step-node,.tab-btn{transition:transform .12s ease,opacity .15s ease,background-color .15s ease,border-color .15s ease,box-shadow .15s ease}button:not(:disabled):active{transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.55}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.lesson-standalone{width:100%;padding:0 10px}.fork-lesson{width:100%}.fork-stage-wrap{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.85fr);gap:24px;align-items:start;margin-top:8px}.fork-diagram{width:100%;height:auto;max-width:540px;display:block;margin:0 auto}.fork-node rect{fill:#161b22eb;stroke:#ffffff1f;stroke-width:1.5;transition:stroke .3s ease,filter .3s ease}.fork-node.active rect{stroke:#38bdf8;filter:drop-shadow(0 0 9px rgba(56,189,248,.45))}.fork-node-title{fill:#f0f6fc;font-size:15px;font-weight:800}.fork-node-sub{fill:#8b949e;font-size:11px}.fork-node-empty{fill:#ffffff40;font-size:12px;font-style:italic}.fork-commit{stroke:#0d1117;stroke-width:2;transform-box:fill-box;transform-origin:center;animation:fork-commit-pop .4s ease-out}.fork-commit.kind-base{fill:#8b949e}.fork-commit.kind-feature{fill:#a78bfa}.fork-commit.kind-mate{fill:#34d399}@keyframes fork-commit-pop{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.fork-conn{stroke:#ffffff2e;stroke-width:2.5;transition:stroke .25s ease,stroke-width .25s ease}.fork-conn.active{stroke:#38bdf8;stroke-width:3.5;filter:drop-shadow(0 0 4px rgba(56,189,248,.7))}.fork-conn.up.active{stroke:#a78bfa;filter:drop-shadow(0 0 4px rgba(167,139,250,.7))}.fork-conn-label{fill:#8b949e;font-size:11px;font-weight:700}.fork-conn-label.end{text-anchor:end}.fork-packet{fill:#38bdf8;filter:drop-shadow(0 0 5px rgba(56,189,248,.85));animation:fork-pkt .95s ease-in-out forwards}.fork-packet.feat{fill:#a78bfa;filter:drop-shadow(0 0 5px rgba(167,139,250,.85))}@keyframes fork-pkt{0%{transform:translateY(0);opacity:0}12%{opacity:1}88%{opacity:1}to{transform:translateY(var(--dist));opacity:0}}.fork-side{display:flex;flex-direction:column;gap:16px}.fork-current{background:#ffffff08;border:1px solid var(--glass-border);border-left:3px solid #38bdf8;border-radius:12px;padding:14px 16px}.fork-current.done{border-left-color:#34d399}.fork-current-head{display:flex;align-items:center;gap:9px;margin-bottom:6px;color:#f0f6fc}.fork-step-badge{width:30px;height:30px;border-radius:50%;background:#38bdf826;color:#38bdf8;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.fork-current p{margin:0;font-size:.85rem;line-height:1.55;color:var(--text-muted)}.fork-pr-card{background:#0d111799;border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:14px;animation:toast-in .3s ease}.fork-pr-card.merged{border-color:#a78bfa80}.fork-pr-top{display:flex;align-items:center;gap:8px;color:#f0f6fc;font-weight:700}.fork-pr-top svg{color:#34d399;flex-shrink:0}.fork-pr-card.merged .fork-pr-top svg{color:#a78bfa}.fork-pr-title{flex:1;font-size:.86rem}.fork-pr-status{font-size:.62rem;font-weight:800;text-transform:uppercase;padding:2px 8px;border-radius:20px}.fork-pr-status.open{background:#34d3992e;color:#6ee7b7}.fork-pr-status.merged{background:#a78bfa33;color:#c4b5fd}.fork-pr-branches{margin:11px 0;font-size:.78rem;color:var(--text-muted);display:flex;align-items:center;gap:8px}.fork-pr-branches code{background:#ffffff0f;padding:2px 7px;border-radius:5px;color:#e6edf3}.fork-merge-btn{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px;border-radius:8px;border:none;background:linear-gradient(90deg,#8b5cf6,#6366f1);color:#fff;font-weight:700;cursor:pointer}.fork-merge-btn:disabled{opacity:.5;cursor:not-allowed}.fork-pr-merged{display:flex;align-items:center;justify-content:center;gap:7px;color:#c4b5fd;font-weight:700;font-size:.85rem}.fork-legend{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:.76rem;color:var(--text-muted)}.fork-legend span{display:inline-flex;align-items:center;gap:6px}.fork-legend .dot{width:11px;height:11px;border-radius:50%;display:inline-block}.fork-legend .dot.base{background:#8b949e}.fork-legend .dot.feature{background:#a78bfa}.fork-legend .dot.mate{background:#34d399}.fork-steps{margin-top:26px}.fork-steps button.is-done{color:#6ee7b7;border-color:#34d39966;background:#34d39914}.fork-steps button.is-done:disabled{opacity:.85}@media (max-width: 860px){.fork-stage-wrap{grid-template-columns:1fr}}.fork-mode-toggle{display:flex;align-items:center;gap:8px;margin:4px 0 18px}.fork-mode-toggle button{display:inline-flex;align-items:center;gap:7px;padding:8px 16px;border-radius:8px;border:1px solid var(--glass-border);background:#ffffff0a;color:var(--text-muted);font-weight:700;font-size:.88rem;cursor:pointer}.fork-mode-toggle button.active{color:#fff;border-color:#38bdf899;background:#38bdf824}.fork-mistakes{margin-left:auto;font-size:.82rem;color:var(--text-muted)}.fork-mistakes strong{color:#fca5a5}.fork-steps button.shake{animation:fork-shake .45s;border-color:#f8717199!important}@keyframes fork-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}.fork-result{text-align:center;padding:18px 16px;background:#ffffff08;border:1px solid var(--glass-border);border-radius:12px}.fork-result strong{display:block;color:#f0f6fc;margin:6px 0}.fork-result p{margin:0 0 14px;font-size:.84rem;color:var(--text-muted);line-height:1.5}.fork-stars{display:flex;justify-content:center;gap:6px;color:#4b5563}.fork-stars .lit{color:#fbbf24;filter:drop-shadow(0 0 6px rgba(251,191,36,.5))}.fork-quiz{margin-top:26px;padding:22px;border:1px solid var(--glass-border);border-radius:16px;background:var(--glass-bg)}.fork-quiz h3{display:flex;align-items:center;gap:9px;margin:0 0 18px;font-size:1.1rem;color:#f0f6fc}.quiz-q{margin-bottom:18px}.quiz-prompt{margin:0 0 10px;font-weight:700;color:var(--text-main);font-size:.92rem}.quiz-options{display:grid;gap:8px}.quiz-opt{display:flex;align-items:center;gap:9px;text-align:left;padding:10px 13px;border-radius:9px;border:1px solid rgba(255,255,255,.1);background:#ffffff08;color:var(--text-main);font-size:.86rem;cursor:pointer;transition:all .15s}.quiz-opt:hover:not(:disabled){border-color:#ffffff4d;background:#ffffff0f}.quiz-opt.picked{border-color:#38bdf8;background:#38bdf81a}.quiz-opt.correct{border-color:#34d399;background:#34d3991f;color:#d1fae5}.quiz-opt.wrong{border-color:#f87171;background:#f871711f;color:#fecaca}.quiz-opt:disabled{cursor:default}.quiz-mark{width:16px;height:16px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.quiz-opt.correct .quiz-mark{color:#34d399}.quiz-opt.wrong .quiz-mark{color:#f87171}.quiz-score{display:inline-flex;align-items:center;gap:8px;margin-top:6px;padding:8px 14px;border-radius:8px;background:#ffffff0d;color:var(--text-main);font-weight:700}.quiz-score.perfect{background:#fbbf2424;color:#fcd34d}.fork-cmd{display:block;margin-top:6px;padding:9px 12px;border-radius:8px;background:#0d1117;border:1px solid rgba(56,189,248,.3);color:#7ee0ff;font-family:Fira Code,Consolas,monospace;font-size:.8rem;line-height:1.5;word-break:break-all}.fork-terminal-hint{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--text-muted);padding:9px 11px;border-radius:8px;background:#ffffff08;border:1px dashed rgba(255,255,255,.14)}.fork-terminal-hint svg{flex-shrink:0;color:#38bdf8}.command-box{background:#090d16;border:1px solid rgba(56,189,248,.25);border-radius:10px;padding:12px 14px;margin-top:14px}.command-box-label{display:block;font-size:.68rem;color:#64748b;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.command-box-line{display:flex;align-items:center;gap:9px}.command-box-line .cmd-prompt{color:#34d399;font-weight:800;font-family:Fira Code,Consolas,monospace;flex-shrink:0}.command-box-line code{flex:1;color:#7ee0ff;font-family:Fira Code,Consolas,monospace;font-size:.92rem;word-break:break-all}.git-cmd-line{display:inline-flex;align-items:center;gap:9px;margin-top:12px;padding:8px 12px;background:#090d16;border:1px solid rgba(255,255,255,.1);border-radius:8px;max-width:100%;overflow:hidden}.git-cmd-line .label,.git-cmd-line .cmd-prompt{flex-shrink:0}.git-cmd-line .label{font-size:.64rem;color:#64748b;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.git-cmd-line .cmd-prompt{color:#34d399;font-weight:800;font-family:Fira Code,Consolas,monospace}.git-cmd-line code{color:#7ee0ff;background:none;padding:0;font-family:Fira Code,Consolas,monospace;font-size:.82rem;white-space:nowrap;overflow-x:auto;min-width:0}
