body{background:linear-gradient(135deg,#0a0a12 0%,#0f0f1e 50%,#0a0a12 100%);min-height:100vh;font-family:var(--font-primary)}body::after{content:'';position:fixed;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient( 0deg,transparent,transparent 2px,rgba(0,0,0,0.015) 2px,rgba(0,0,0,0.015) 4px );pointer-events:none;z-index:9999}.demo-container{max-width:1140px;width:100%;margin:0 auto;padding:2rem 2.5rem 5rem;box-sizing:border-box}.demo-header{text-align:center;padding:3rem 0;position:relative}.demo-header::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:400px;height:400px;background:radial-gradient(circle,rgba(69,244,255,0.08) 0%,rgba(168,85,247,0.05) 40%,transparent 70%);pointer-events:none}.demo-badge{display:inline-flex;align-items:center;gap:0.5rem;background:rgba(0,0,0,0.6);border:1px solid rgba(69,244,255,0.4);border-radius:4px;padding:0.6rem 1.25rem;margin-bottom:1.5rem;font-size:0.8rem;font-weight:600;text-transform:uppercase;letter-spacing:2px;color:var(--cyan);font-family:var(--font-mono);position:relative;overflow:hidden}.demo-badge::before{content:'';position:absolute;left:0;top:0;width:4px;height:100%;background:var(--cyan);animation:badgePulse 2s ease-in-out infinite}@keyframes badgePulse{0%,100%{opacity:0.5}50%{opacity:1}}.demo-badge .status-dot{width:8px;height:8px;background:#22c55e;border-radius:50%;animation:statusBlink 1.5s ease-in-out infinite}@keyframes statusBlink{0%,100%{opacity:1}50%{opacity:0.3}}.demo-title{font-family:var(--font-display);font-size:3.5rem;font-weight:800;margin-bottom:1rem;line-height:1.1}.demo-subtitle{font-size:1.15rem;color:var(--text-secondary);max-width:700px;margin:0 auto 2rem;line-height:1.7}.progress-container{background:rgba(10,10,18,0.9);border:1px solid rgba(69,244,255,0.2);border-radius:8px;padding:1.5rem;margin-bottom:3rem;max-width:900px;margin-left:auto;margin-right:auto;backdrop-filter:blur(10px);position:relative}.progress-container::before{content:'OPERATION PROGRESS';position:absolute;top:-10px;left:1.5rem;background:#0a0a12;padding:0 0.75rem;font-size:0.7rem;font-weight:600;letter-spacing:2px;color:var(--cyan);font-family:var(--font-mono)}.progress-steps{display:flex;justify-content:space-between;position:relative;margin-bottom:1rem}.progress-line{position:absolute;top:20px;left:0;right:0;height:2px;background:rgba(69,244,255,0.15);z-index:0}.progress-line-fill{height:100%;background:linear-gradient(90deg,var(--cyan),var(--purple));width:0%;transition:width 0.6s cubic-bezier(0.34,1.56,0.64,1);box-shadow:0 0 10px var(--cyan)}.progress-step{position:relative;z-index:1;text-align:center;flex:1;cursor:pointer;transition:all 0.3s ease}.progress-step:hover .progress-step-circle{transform:scale(1.05);border-color:var(--cyan)}.progress-step-circle{width:40px;height:40px;border-radius:8px;background:rgba(10,10,18,0.9);border:2px solid rgba(69,244,255,0.3);margin:0 auto 0.5rem;display:flex;align-items:center;justify-content:center;font-weight:600;font-family:var(--font-mono);transition:all 0.4s cubic-bezier(0.34,1.56,0.64,1)}.progress-step.active .progress-step-circle{background:linear-gradient(135deg,var(--cyan),var(--purple));border-color:var(--cyan);box-shadow:0 0 25px rgba(69,244,255,0.5),0 0 50px rgba(69,244,255,0.2);transform:scale(1.1)}.progress-step.active .progress-step-circle::before{content:'';position:absolute;inset:-6px;border:2px solid var(--cyan);border-radius:12px;animation:activePulseRing 2s ease-in-out infinite;opacity:0.5}@keyframes activePulseRing{0%,100%{transform:scale(1);opacity:0.5}50%{transform:scale(1.15);opacity:0}}.progress-step.completed .progress-step-circle{background:var(--cyan);border-color:var(--cyan)}.progress-step-label{font-size:0.75rem;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:1px;font-family:var(--font-mono)}.progress-step.active .progress-step-label{color:var(--cyan)}.demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;max-width:1080px;margin-left:auto;margin-right:auto;margin-bottom:2.5rem}.demo-grid+.demo-grid{margin-top:2.5rem}.demo-card{background:rgba(10,10,18,0.9);border:1px solid rgba(69,244,255,0.15);border-radius:8px;padding:2rem;backdrop-filter:blur(10px);transition:all 0.4s cubic-bezier(0.34,1.56,0.64,1);position:relative;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,0.3),0 0 0 1px rgba(69,244,255,0.08) inset}.demo-card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);opacity:0;transition:opacity 0.3s ease}.demo-card:hover{border-color:rgba(69,244,255,0.4);box-shadow:0 8px 32px rgba(69,244,255,0.1),inset 0 0 60px rgba(69,244,255,0.02);transform:translateY(-3px)}.demo-card:hover::before{opacity:1}.demo-card-welcome{max-width:800px;margin:0 auto}.demo-card-narrow-header{border-bottom:none;padding-bottom:0;margin-bottom:1.5rem}.demo-card-title-centered{margin:0 auto;text-align:center;font-size:1.15rem;color:var(--cyan);font-family:var(--font-mono);letter-spacing:2px}.card-header{display:flex;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(69,244,255,0.1)}.card-icon{width:48px;height:48px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;margin-right:1rem;background:rgba(69,244,255,0.1);border:1px solid rgba(69,244,255,0.3)}.card-title{font-size:1.4rem;font-weight:700;font-family:var(--font-display);color:var(--text-primary)}.card-title-large{font-size:1.25rem}.code-container{background:#0a0a0f;border:1px solid rgba(69,244,255,0.2);border-radius:8px;overflow:hidden;margin:1.5rem 0;position:relative}.code-container::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient( 0deg,transparent,transparent 2px,rgba(69,244,255,0.01) 2px,rgba(69,244,255,0.01) 4px );pointer-events:none;z-index:1}.code-header{background:rgba(69,244,255,0.05);padding:0.75rem 1.25rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(69,244,255,0.15)}.code-header-dots{display:flex;gap:6px}.code-header-dots span{width:10px;height:10px;border-radius:50%}.code-header-dots span:nth-child(1){background:#ff5f56}.code-header-dots span:nth-child(2){background:#ffbd2e}.code-header-dots span:nth-child(3){background:#27ca40}.code-filename{font-family:'JetBrains Mono',monospace;font-size:0.8rem;color:var(--cyan);font-weight:500;display:flex;align-items:center;gap:0.5rem}.code-filename::before{content:'>';opacity:0.5}.code-copy-btn{background:rgba(69,244,255,0.1);border:1px solid rgba(69,244,255,0.3);color:var(--cyan);padding:0.4rem 1rem;border-radius:4px;font-size:0.75rem;font-weight:600;cursor:pointer;transition:all 0.2s ease;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:1px}.code-copy-btn:hover{background:var(--cyan);color:#0a0a0f}.code-content{padding:1.5rem;overflow-x:auto;font-family:'JetBrains Mono',monospace;font-size:0.85rem;line-height:1.7;max-height:400px;overflow-y:auto;position:relative;z-index:2}.code-content pre{margin:0;color:#e6edf3}.keyword{color:#ff7b72}.function{color:#d2a8ff}.string{color:#a5d6ff}.comment{color:#6e7681;font-style:italic}.number{color:#79c0ff}.operator{color:#ff7b72}.info-box{background:rgba(69,244,255,0.05);padding:1.25rem;border-radius:0 8px 8px 0;margin:1.5rem 0;position:relative;border:1px solid rgba(69,244,255,0.1);border-left:3px solid var(--cyan);box-shadow:0 2px 8px rgba(0,0,0,0.2)}.info-box+.info-box{margin-top:1rem}.info-box.success{background:rgba(34,197,94,0.08);border-left-color:#22c55e;border-color:rgba(34,197,94,0.15)}.info-box.warning{background:rgba(249,115,22,0.08);border-left-color:#f97316;border-color:rgba(249,115,22,0.15)}.info-box.danger{background:rgba(239,68,68,0.08);border-left-color:#ef4444;border-color:rgba(239,68,68,0.15)}.info-box.info-box-purple{background:rgba(168,85,247,0.1);border-left-color:var(--purple);border-color:rgba(168,85,247,0.15)}.info-box.info-box-purple-spaced{background:rgba(168,85,247,0.1);border-left-color:var(--purple);margin-bottom:1.5rem}.info-box.info-box-spaced{margin-top:1.5rem}.info-box-title{font-weight:700;margin-bottom:0.5rem;display:flex;align-items:center;gap:0.5rem;font-family:var(--font-mono);font-size:0.9rem}.contract-status{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin:1.5rem 0 2rem 0}.contract-status-spaced{margin-bottom:1.5rem}.status-item{background:rgba(0,0,0,0.4);padding:1.25rem;border-radius:8px;border:1px solid rgba(69,244,255,0.15);position:relative;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.3)}.status-item::before{content:'';position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,var(--cyan),transparent)}.status-label{font-size:0.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:0.5rem;font-family:var(--font-mono)}.status-label-compact{font-family:var(--font-mono);font-size:0.7rem;text-transform:uppercase;letter-spacing:1px}.status-value{font-size:1.6rem;font-weight:700;color:var(--cyan);font-family:'JetBrains Mono',monospace;text-shadow:0 0 20px rgba(69,244,255,0.4)}.status-value-mono{font-family:var(--font-mono)}.status-value-green{color:#22c55e;font-family:var(--font-mono)}.status-value-red{color:#ef4444;font-family:var(--font-mono)}.status-value.gold{background-image:linear-gradient(135deg,#fcd34d 0%,#fbbf24 30%,#f59e0b 60%,#fcd34d 100%);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:goldShimmer 3s linear infinite;text-shadow:none}@keyframes goldShimmer{to{background-position:200% center}}.status-value.danger{color:#ef4444;text-shadow:0 0 20px rgba(239,68,68,0.4)}.status-value.success{color:#22c55e;text-shadow:0 0 20px rgba(34,197,94,0.4)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;padding:1rem 2rem;border-radius:6px;font-weight:700;font-size:1rem;text-align:center;cursor:pointer;transition:all 0.3s cubic-bezier(0.34,1.56,0.64,1);border:none;font-family:var(--font-display);position:relative;overflow:hidden}.btn::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.1),transparent);transform:translateX(-100%);transition:none}.btn:hover::after{animation:btnShimmer 0.6s ease}@keyframes btnShimmer{to{transform:translateX(100%)}}.btn-primary{background:linear-gradient(135deg,var(--cyan),var(--purple));color:white;box-shadow:0 4px 20px rgba(69,244,255,0.3)}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 8px 30px rgba(69,244,255,0.5)}.btn-primary:active{transform:translateY(-1px)}.btn-primary.cta-pulse{animation:ctaPulse 2.5s ease-in-out infinite}@keyframes ctaPulse{0%,100%{box-shadow:0 4px 20px rgba(69,244,255,0.3)}50%{box-shadow:0 4px 30px rgba(69,244,255,0.6),0 0 50px rgba(69,244,255,0.2)}}.btn-secondary{background:transparent;border:2px solid rgba(69,244,255,0.4);color:var(--cyan)}.btn-secondary:hover{background:rgba(69,244,255,0.1);border-color:var(--cyan)}.btn-mono{font-family:var(--font-mono)}.btn-success{background:linear-gradient(135deg,#22c55e,#16a34a);color:white;box-shadow:0 4px 20px rgba(34,197,94,0.4)}.btn-success:hover{transform:translateY(-3px);box-shadow:0 8px 30px rgba(34,197,94,0.6)}.btn-large{display:inline-block;font-size:1.1rem;padding:1.25rem 2.5rem;font-family:var(--font-mono);text-decoration:none}.btn:disabled{opacity:0.5;cursor:not-allowed;animation:none}.action-panel{background:rgba(10,10,18,0.9);border:1px solid rgba(69,244,255,0.15);border-radius:8px;padding:2rem;margin-top:2rem;margin-bottom:2rem;max-width:900px;margin-left:auto;margin-right:auto;backdrop-filter:blur(10px)}.action-buttons{display:flex;gap:1rem;margin-top:1.5rem}.action-buttons .btn{flex:1}.step-content>.demo-card{max-width:900px;margin-left:auto;margin-right:auto}.step-content{display:none}.step-content.active{display:block;animation:fadeIn 0.5s ease}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.checklist{list-style:none;margin:1.5rem 0}.checklist-spaced{margin-bottom:2rem}.checklist-item{display:flex;align-items:flex-start;padding:1rem;background:rgba(0,0,0,0.3);border-radius:8px;margin-bottom:0.75rem;border:1px solid rgba(168,85,247,0.2);transition:all 0.3s ease;cursor:pointer;user-select:none}.checklist-item.completed{border-color:#22c55e;background:rgba(34,197,94,0.1)}.checklist-checkbox{width:24px;height:24px;border:2px solid var(--purple);border-radius:6px;margin-right:1rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all 0.3s ease}.checklist-item.completed .checklist-checkbox{background:#22c55e;border-color:#22c55e}.checklist-checkbox::after{content:'✓';color:white;font-weight:bold;display:none}.checklist-item.completed .checklist-checkbox::after{display:block}.checklist-item:hover{transform:translateX(5px);border-color:var(--purple);background:rgba(168,85,247,0.1)}.checklist-item.completed:hover{border-color:#22c55e;background:rgba(34,197,94,0.15)}.checklist-state{color:var(--cyan);font-size:0.7rem;text-transform:uppercase;letter-spacing:1px;margin-bottom:0.25rem;font-family:var(--font-mono)}.checklist-state-value{color:var(--purple);font-weight:600;font-family:var(--font-mono);font-size:0.9rem}.checklist-phase-title{color:#f97316;font-weight:600;margin-bottom:0.25rem;font-size:0.95rem}.checklist-phase-desc{color:var(--text-muted);font-size:0.8rem;font-family:var(--font-mono)}.checklist-phase-success{color:#22c55e;font-weight:600;margin-bottom:0.25rem;font-size:0.95rem}.checklist-phase-result{color:var(--purple);font-size:0.8rem;font-family:var(--font-mono)}.code-input-container{background:#0d1117;border:1px solid rgba(168,85,247,0.3);border-radius:12px;overflow:hidden;margin:1rem 0}.code-input{width:100%;background:transparent;border:none;color:#e6edf3;font-family:'JetBrains Mono',monospace;font-size:0.9rem;padding:1.5rem;resize:vertical;min-height:200px;outline:none}.code-input::placeholder{color:#8b949e}.password-cracker{background:#000;border:1px solid rgba(249,115,22,0.4);border-radius:4px;padding:1.5rem;margin:1.5rem 0;position:relative;overflow:hidden}.password-cracker::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient( 0deg,transparent,transparent 2px,rgba(249,115,22,0.02) 2px,rgba(249,115,22,0.02) 4px );pointer-events:none}.password-cracker-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;padding-bottom:0.75rem;border-bottom:1px solid rgba(249,115,22,0.2)}.cracker-icon{font-size:1.5rem}.cracker-title{font-size:1rem;font-weight:700;color:#f97316;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:2px}.password-input-group{display:flex;gap:0.75rem;margin:1rem 0}.password-input{flex:1;background:transparent;border:none;border-bottom:2px solid rgba(249,115,22,0.4);color:#f97316;padding:0.75rem 0;font-family:'JetBrains Mono',monospace;font-size:1.1rem;outline:none;transition:all 0.3s ease;caret-color:#f97316;text-shadow:0 0 10px rgba(249,115,22,0.3)}.password-input::placeholder{color:rgba(249,115,22,0.4)}.password-input:focus{border-bottom-color:#f97316;box-shadow:0 4px 20px rgba(249,115,22,0.15)}.password-input.shake{animation:inputShake 0.5s ease}@keyframes inputShake{0%,100%{transform:translateX(0)}25%{transform:translateX(-10px);border-color:#ef4444}75%{transform:translateX(10px);border-color:#ef4444}}.password-input.success{border-color:#22c55e !important;box-shadow:0 0 0 3px rgba(34,197,94,0.3) !important}.crack-btn{background:#f97316;color:#000;padding:0.75rem 1.5rem;border-radius:4px;font-weight:700;cursor:pointer;transition:all 0.3s ease;border:none;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:1px}.crack-btn:hover{transform:translateY(-2px);box-shadow:0 4px 20px rgba(249,115,22,0.5)}.crack-btn:disabled{opacity:0.5;cursor:not-allowed}.crack-btn.loading{position:relative;pointer-events:none}.crack-btn.loading::after{content:'';position:absolute;width:16px;height:16px;top:50%;left:50%;margin-left:-8px;margin-top:-8px;border:2px solid rgba(30,30,46,0.3);border-top-color:#1e1e2e;border-radius:50%;animation:spin 0.6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.cracker-result{margin-top:1rem;padding:1rem;border-radius:4px;font-family:'JetBrains Mono',monospace;font-size:0.9rem;display:none}.cracker-result.error{background:rgba(239,68,68,0.1);border:1px solid rgba(239,68,68,0.3);color:#f87171;display:block}.cracker-result.success{background:rgba(34,197,94,0.1);border:1px solid rgba(34,197,94,0.3);color:#4ade80;display:block}.cracking-animation{display:none;margin-top:1rem;padding:1rem;background:rgba(249,115,22,0.05);border-radius:4px}.cracking-animation.active{display:block}.cracking-text{color:#f97316;font-family:'JetBrains Mono',monospace;font-size:0.9rem}.cracking-progress{height:3px;background:rgba(249,115,22,0.2);border-radius:2px;margin-top:0.75rem;overflow:hidden}.cracking-progress-fill{height:100%;background:#f97316;width:0%;animation:crackProgress 1.5s ease-in-out;box-shadow:0 0 10px #f97316}@keyframes crackProgress{0%{width:0%}20%{width:20%}40%{width:35%}60%{width:60%}80%{width:85%}100%{width:100%}}.password-hints{margin-top:1rem;display:flex;flex-wrap:wrap;gap:0.5rem}.password-hint-chip{display:inline-block;padding:0.4rem 0.8rem;background:rgba(249,115,22,0.1);border:1px solid rgba(249,115,22,0.3);border-radius:4px;font-family:var(--font-mono);font-size:0.8rem;color:#f97316;cursor:pointer;transition:all 0.2s ease}.password-hint-chip:hover{background:rgba(249,115,22,0.2);border-color:#f97316;transform:translateY(-1px);box-shadow:0 2px 8px rgba(249,115,22,0.3)}.password-hint-chip.tried{opacity:0.4;text-decoration:line-through;pointer-events:none}.password-hint-chip.correct{background:rgba(34,197,94,0.2);border-color:#22c55e;color:#22c55e}.revealed-keys{display:none;margin-top:1rem}.revealed-keys.active{display:block;animation:keysReveal 0.5s ease-out}@keyframes keysReveal{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.confetti{position:fixed;pointer-events:none;z-index:3000}@keyframes confettiFall{to{transform:translateY(100vh) rotate(360deg);opacity:0}}.attack-flow-step{padding:1rem;margin-bottom:0.75rem;border-radius:8px;background:rgba(0,0,0,0.3);border:1px solid rgba(168,85,247,0.2);cursor:pointer;transition:all 0.3s ease;position:relative;overflow:hidden}.attack-flow-step::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(168,85,247,0.2),transparent);transition:left 0.5s ease}.attack-flow-step:hover::before{left:100%}.attack-flow-step:hover{transform:translateX(10px);border-color:var(--purple);background:rgba(168,85,247,0.15);box-shadow:0 4px 20px rgba(168,85,247,0.3)}.attack-flow-step.active{border-color:#22c55e;background:rgba(34,197,94,0.1)}.attack-flow-step.active .step-arrow{color:#22c55e}.step-arrow{color:var(--purple);font-weight:bold;transition:all 0.3s ease}.attack-flow-step:hover .step-arrow{transform:translateX(5px)}.demo-card.full-width{grid-column:1 / -1;max-width:900px;margin-left:auto;margin-right:auto;margin-bottom:2.5rem}.revealed-section{display:none}.exploit-step-card{position:relative;transition:all 0.4s ease;opacity:0;transform:translateY(20px)}.exploit-step-card.active{opacity:1;transform:translateY(0);animation:slideInStep 0.5s ease-out}@keyframes slideInStep{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.exploit-step-card.checked{border-color:#22c55e;background:rgba(34,197,94,0.05)}.exploit-step-card.checked::before{content:'✓';position:absolute;top:1rem;right:1rem;width:32px;height:32px;background:#22c55e;color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:bold;font-size:1.2rem;animation:checkmarkPop 0.4s cubic-bezier(0.68,-0.55,0.265,1.55)}@keyframes checkmarkPop{0%{transform:scale(0) rotate(-180deg);opacity:0}50%{transform:scale(1.2) rotate(10deg)}100%{transform:scale(1) rotate(0deg);opacity:1}}.exploit-step-check{display:flex;align-items:center;gap:0.75rem;margin-top:1.5rem;padding:1rem;background:rgba(168,85,247,0.05);border:2px solid rgba(168,85,247,0.2);border-radius:10px;cursor:pointer;transition:all 0.3s ease;user-select:none}.exploit-step-check:hover{background:rgba(168,85,247,0.1);border-color:var(--purple);transform:translateX(5px)}.exploit-step-card.checked .exploit-step-check{background:rgba(34,197,94,0.1);border-color:#22c55e}.exploit-step-card.checked .exploit-step-check:hover{background:rgba(34,197,94,0.15)}.exploit-check-box{width:28px;height:28px;border:2px solid var(--purple);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all 0.3s ease;background:rgba(0,0,0,0.3)}.exploit-step-card.checked .exploit-check-box{background:#22c55e;border-color:#22c55e}.exploit-check-box::after{content:'✓';color:white;font-weight:bold;font-size:1.1rem;display:none}.exploit-step-card.checked .exploit-check-box::after{display:block;animation:checkAppear 0.3s ease}@keyframes checkAppear{0%{transform:scale(0) rotate(-90deg)}50%{transform:scale(1.2) rotate(10deg)}100%{transform:scale(1) rotate(0deg)}}.exploit-check-text{font-weight:600;color:var(--purple);transition:color 0.3s ease}.exploit-step-card.checked .exploit-check-text{color:#22c55e}.exploit-complete-banner{display:none;padding:1.5rem;background:linear-gradient(135deg,rgba(34,197,94,0.2),rgba(16,185,129,0.2));border:2px solid #22c55e;border-radius:12px;max-width:900px;margin-left:auto;margin-right:auto;margin-bottom:2rem;text-align:center;animation:slideDown 0.5s ease}.exploit-complete-banner.show{display:block}@keyframes slideDown{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.exploit-complete-banner h3{color:#22c55e;margin-bottom:0.5rem;font-size:1.5rem}.exploit-complete-banner p{color:var(--text-secondary);margin:0}.text-cyan{color:var(--cyan)}.text-purple{color:var(--purple)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-orange{color:#f97316}.text-mono{font-family:var(--font-mono)}.text-mono-small{color:var(--text-secondary);margin-bottom:1.5rem;font-family:var(--font-mono);font-size:0.9rem}.text-mono-compact{font-family:var(--font-mono);font-size:0.85rem}.text-mono-briefing{margin:0;font-family:var(--font-mono);font-size:0.85rem}.text-center-small{margin-top:1.5rem;font-size:0.85rem;color:var(--text-muted);text-align:center}.text-orange-alert{color:rgba(249,115,22,0.7);margin-bottom:1rem;font-size:0.85rem;font-family:var(--font-mono)}.text-center-mono{text-align:center;margin:1.5rem 0}.text-center-mono-small{color:var(--text-muted);font-size:0.9rem;margin-bottom:1rem;font-family:var(--font-mono)}.mb-0-75{margin-bottom:0.75rem}.mb-1{margin-bottom:1rem}.mb-1-5{margin-bottom:1.5rem}.mb-0-5{margin-bottom:0.5rem}.mt-1-5{margin-top:1.5rem}.mt-2{margin-top:2rem}.code-leak{background:rgba(249,115,22,0.2);padding:0.1rem 0.4rem;border-radius:3px}.success-banner{display:none;margin-top:2rem;padding:2rem;background:linear-gradient(135deg,rgba(34,197,94,0.15),rgba(69,244,255,0.1));border-radius:12px;border:2px solid #22c55e;position:relative;overflow:hidden}.success-banner-scanline{position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#22c55e,transparent);animation:scanline 2s linear infinite}@keyframes scanline{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}.success-banner-title{color:#22c55e;margin-bottom:0.5rem;text-align:center;font-size:1.75rem;font-family:var(--font-mono)}.success-banner-text{text-align:center;color:var(--text-secondary);margin-bottom:1.5rem;font-family:var(--font-mono);font-size:0.9rem}.success-level-badge{font-family:var(--font-mono)}.success-price-text{color:var(--text-muted);font-size:0.8rem}.cro-sticky-banner{position:fixed;bottom:0;left:0;right:0;background:linear-gradient(135deg,rgba(30,30,46,0.98),rgba(26,26,46,0.98));border-top:1px solid var(--purple);padding:0.75rem 1.5rem;display:none;justify-content:center;align-items:center;gap:1rem;z-index:1000;backdrop-filter:blur(10px);animation:slideUp 0.4s ease}.cro-sticky-banner.show{display:flex}body.has-sticky-banner .action-panel{margin-bottom:4.5rem}body.has-sticky-banner .step-content.active>:last-child{margin-bottom:4.5rem}@keyframes slideUp{from{transform:translateY(100%)}to{transform:translateY(0)}}.cro-banner-text{font-size:0.95rem;color:var(--text-secondary)}.cro-banner-text strong{color:var(--purple)}.cro-banner-btn{background:linear-gradient(135deg,var(--purple),var(--pink));color:white;padding:0.6rem 1.25rem;border-radius:8px;font-weight:600;font-size:0.9rem;text-decoration:none;white-space:nowrap;transition:all 0.3s ease}.cro-banner-btn:hover{transform:scale(1.05);box-shadow:0 4px 15px rgba(168,85,247,0.4)}.cro-banner-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1.2rem;padding:0.25rem;line-height:1}.cro-social-proof{display:flex;align-items:center;justify-content:center;gap:0.75rem;margin:1rem 0;padding:0.75rem 1.5rem;background:rgba(168,85,247,0.1);border-radius:50px;font-size:0.9rem}.cro-social-proof .avatars{display:flex}.cro-social-proof .avatar{width:28px;height:28px;border-radius:50%;border:2px solid var(--darker-bg);margin-left:-8px;background:linear-gradient(135deg,var(--purple),var(--pink));display:flex;align-items:center;justify-content:center;font-size:0.7rem}.cro-social-proof .avatar:first-child{margin-left:0}.cro-email-capture{margin-top:1.5rem;padding:1.5rem;background:rgba(168,85,247,0.05);border:1px dashed rgba(168,85,247,0.3);border-radius:12px;text-align:center}.cro-email-capture h4{margin-bottom:0.5rem;color:var(--text-primary);font-size:1rem}.cro-email-capture p{color:var(--text-muted);font-size:0.85rem;margin-bottom:1rem}.cro-email-form{display:flex;gap:0.5rem;max-width:400px;margin:0 auto}.cro-email-input{flex:1;padding:0.75rem 1rem;border:1px solid rgba(168,85,247,0.3);border-radius:8px;background:rgba(0,0,0,0.3);color:var(--text-primary);font-size:0.9rem}.cro-email-input:focus{outline:none;border-color:var(--purple)}.cro-email-submit{padding:0.75rem 1.25rem;min-height:44px;background:var(--purple);color:white;border:none;border-radius:8px;font-size:0.95rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:all 0.3s ease}.cro-email-submit:hover{background:var(--pink)}.cro-exit-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.86);display:none;align-items:center;justify-content:center;z-index:12000;padding:calc(1rem+env(safe-area-inset-top)) calc(1rem+env(safe-area-inset-right)) calc(1rem+env(safe-area-inset-bottom)) calc(1rem+env(safe-area-inset-left))}.cro-exit-modal.show{display:flex;animation:fadeIn 0.3s ease;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.cro-exit-content{background:linear-gradient(135deg,#1e1e2e,#16213e);border:1px solid var(--purple);border-radius:16px;padding:2.5rem;max-width:480px;max-height:calc(100vh - 2rem - env(safe-area-inset-top) - env(safe-area-inset-bottom));max-height:calc(100dvh - 2rem - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow-y:auto;width:100%;text-align:center;position:relative;animation:modalPop 0.34s cubic-bezier(0.34,1.2,0.64,1)}@keyframes modalPop{from{transform:scale(0.8);opacity:0}to{transform:scale(1);opacity:1}}.cro-exit-close{position:absolute;top:1rem;right:1rem;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.12);border-radius:10px;color:var(--text-muted);font-size:1.35rem;cursor:pointer;transition:all 0.2s ease}.cro-exit-close:hover{color:var(--text-primary);border-color:rgba(168,85,247,0.4);background:rgba(168,85,247,0.1)}.cro-exit-emoji{font-size:3rem;margin-bottom:1rem}.cro-exit-content h3{font-size:1.5rem;padding-right:3rem;margin-bottom:0.5rem}.cro-exit-content p{color:var(--text-secondary);margin-bottom:1.5rem;font-size:0.96rem}.cro-exit-benefits{text-align:left;margin-bottom:1.5rem}.cro-exit-benefits li{display:flex;align-items:center;gap:0.5rem;padding:0.5rem 0;color:var(--text-secondary);font-size:0.93rem}.cro-exit-secondary{margin-top:0.85rem;background:transparent;color:var(--text-muted);border:1px solid rgba(168,85,247,0.25);border-radius:8px;padding:0.58rem 0.95rem;font-size:0.82rem;cursor:pointer;transition:all 0.25s ease}.cro-exit-secondary:hover{color:var(--text-secondary);border-color:rgba(168,85,247,0.45);background:rgba(168,85,247,0.08)}.cro-exit-close:focus-visible,.cro-email-submit:focus-visible,.cro-email-input:focus-visible,.cro-exit-secondary:focus-visible{outline:2px solid var(--purple);outline-offset:2px}.cro-pricing-preview{display:flex;justify-content:center;align-items:center;gap:0.75rem;margin:1rem auto;padding:0.5rem 1rem;background:rgba(251,191,36,0.1);border:1px solid rgba(251,191,36,0.3);border-radius:8px;width:fit-content}.cro-pricing-preview .price{font-size:1.25rem;font-weight:700;color:var(--yellow)}.cro-pricing-preview .original{text-decoration:line-through;color:var(--text-muted);font-size:0.9rem}.cro-trust-badges{display:flex;justify-content:center;gap:1.5rem;margin:1.5rem 0;flex-wrap:wrap}.cro-trust-badge{display:flex;align-items:center;gap:0.4rem;font-size:0.8rem;color:var(--text-muted)}.cro-trust-badge svg{width:16px;height:16px;fill:var(--purple)}.cro-course-progress{display:inline-flex;align-items:center;gap:0.5rem;margin:1rem 0;padding:0.5rem 1rem;background:rgba(34,197,94,0.1);border:1px solid rgba(34,197,94,0.3);border-radius:50px;font-size:0.85rem;color:#22c55e}.cro-progress-bar{width:60px;height:6px;background:rgba(34,197,94,0.2);border-radius:3px;overflow:hidden}.cro-progress-fill{width:2.5%;height:100%;background:#22c55e;border-radius:3px}.welcome-highlights{list-style:none;margin:1.5rem 0}.highlight-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:rgba(0,0,0,0.3);border-radius:8px;margin-bottom:0.75rem}.highlight-icon{font-size:1.5rem;flex-shrink:0}.welcome-footer{margin-top:2rem;text-align:center}.time-estimate{font-size:0.9rem;color:var(--text-muted);margin-bottom:1.5rem;font-family:var(--font-mono)}.instructor-credit{display:flex;align-items:center;justify-content:center;gap:0.75rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(69,244,255,0.1);font-size:0.9rem;color:var(--text-secondary)}.instructor-credit img{border-radius:50%}.instructor-credit strong{color:var(--cyan)}.hidden-content{display:none}.boot-screen{position:fixed;inset:0;background:#0a0a12;display:none;align-items:center;justify-content:center;z-index:10000}.boot-text{font-family:var(--font-mono);color:var(--cyan);text-align:left;max-width:600px;padding:2rem}#bootCursor{display:inline-block;width:8px;height:16px;background:var(--cyan);animation:blink 0.5s infinite}@keyframes blink{0%,49%{opacity:1}50%,100%{opacity:0}}@media (max-width:768px){.demo-container{padding:1.5rem 1.25rem;margin-top:70px;max-width:100%}.demo-grid{grid-template-columns:1fr}.demo-title{font-size:2rem;line-height:1.3}.demo-subtitle{font-size:1rem}.demo-badge{font-size:0.8rem;padding:0.4rem 1rem}.progress-container{padding:1rem}.progress-steps{overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap;padding-bottom:0.5rem;-webkit-overflow-scrolling:touch}.progress-step{min-width:80px;flex-shrink:0}.progress-step-label{font-size:0.7rem;white-space:nowrap}.progress-step-circle{width:36px;height:36px;font-size:0.9rem}.demo-card{padding:1.25rem;overflow:hidden}.card-header{flex-direction:column;align-items:flex-start;gap:0.75rem}.card-icon{width:40px;height:40px;font-size:1.25rem;margin-right:0}.card-title{font-size:1.25rem}.code-container{margin:1rem 0;overflow:hidden}.code-header{padding:0.6rem 1rem;flex-direction:column;align-items:flex-start;gap:0.5rem}.code-filename{font-size:0.75rem;word-break:break-word}.code-copy-btn{padding:0.35rem 0.75rem;font-size:0.75rem;align-self:flex-end;width:auto}.code-content{padding:0.75rem;font-size:0.7rem;overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.code-content pre{white-space:pre;word-wrap:normal;min-width:max-content;margin:0}.info-box{padding:1rem;font-size:0.9rem}.info-box-title{font-size:0.95rem}.contract-status{grid-template-columns:repeat(2,1fr);gap:0.75rem}.status-item{padding:0.75rem}.status-label{font-size:0.75rem}.status-value{font-size:1.25rem}.btn{padding:0.85rem 1.5rem;font-size:0.9rem}.action-panel{padding:1.25rem}.action-panel h3{font-size:1.1rem}.action-buttons{flex-direction:column}.password-cracker{padding:1rem}.password-cracker-header{flex-direction:column;align-items:flex-start;gap:0.5rem}.cracker-icon{font-size:1.5rem}.cracker-title{font-size:1.1rem}.password-input-group{flex-direction:column;gap:0.5rem}.password-input{width:100%;font-size:0.9rem}.crack-btn{width:100%;padding:0.85rem 1.5rem}.checklist-item{padding:0.75rem;font-size:0.9rem}.checklist-checkbox{width:20px;height:20px;margin-right:0.75rem}.attack-flow-step{padding:0.85rem;font-size:0.8rem}.cro-banner-text{font-size:0.85rem;text-align:center}.cro-email-form{flex-direction:column}.cro-exit-content{padding:1.5rem;margin:1rem}.cro-trust-badges{gap:1rem}}@media (max-width:480px){.demo-container{padding:1rem}.demo-title{font-size:1.75rem}.demo-header{padding:2rem 0}.card-title{font-size:1.1rem}.code-content{font-size:0.65rem;padding:0.5rem}.code-content pre{min-width:max-content}.contract-status{grid-template-columns:1fr}.btn{padding:0.75rem 1.25rem;font-size:0.85rem}.progress-step-circle{width:32px;height:32px;font-size:0.85rem}.progress-step-label{font-size:0.65rem}.info-box{font-size:0.85rem}.attack-flow-step{font-size:0.75rem;padding:0.75rem}.exploit-step-card.checked::before{width:28px;height:28px;font-size:1rem;top:0.75rem;right:0.75rem}.exploit-step-check{padding:0.75rem;margin-top:1rem}.exploit-check-box{width:24px;height:24px;font-size:0.9rem}.exploit-check-text{font-size:0.9rem}.exploit-complete-banner h3{font-size:1.2rem}.exploit-complete-banner p{font-size:0.9rem}.cro-sticky-banner{flex-direction:column;gap:0.75rem;padding:1rem}body.has-sticky-banner .action-panel,body.has-sticky-banner .step-content.active>:last-child{margin-bottom:7rem}}
