:root{--gradient-primary:linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);--gradient-success:linear-gradient(135deg, #10b981 0%, #059669 100%);--gradient-warning:linear-gradient(135deg, #f59e0b 0%, #d97706 100%);--gradient-danger:linear-gradient(135deg, #ef4444 0%, #dc2626 100%);--shadow-soft:0 4px 20px rgba(0, 0, 0, 0.06);--shadow-medium:0 10px 40px rgba(0, 0, 0, 0.1);--shadow-large:0 20px 60px rgba(0, 0, 0, 0.15)}.hero-content{position:relative;z-index:2;text-align:center;color:#fff}.hero-title{font-size:2.5rem;font-weight:800;margin:0 0 1rem 0;letter-spacing:-.02em;text-shadow:0 2px 8px rgba(0,0,0,.15)}.hero-subtitle{font-size:1.1rem;margin:0 auto 1.5rem auto;max-width:650px;line-height:1.6;opacity:.95;font-weight:400}.section-title{font-size:1.75rem;font-weight:700;margin:0 0 1.5rem 0;color:var(--text-headings);display:flex;align-items:center;gap:.75rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin:2rem 0}.feature-icon{font-size:2.5rem;margin-bottom:1rem}.properties-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin:2rem 0}.property-card{background:var(--bg-alt);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;transition:all .3s ease}.property-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-medium)}.property-icon{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.property-icon i{width:28px;height:28px}.property-card h4{font-size:1.2rem;font-weight:700;margin:0 0 .5rem 0;color:var(--text-headings)}.property-card code{display:block;margin:1rem 0;font-size:.85rem}.option-text{flex:1;font-size:1rem;font-weight:500;color:var(--text-primary)}.score-value{font-size:4rem;font-weight:900;color:var(--primary-accent);margin-bottom:1rem}.score-separator{color:var(--text-muted);margin:0 .5rem}.score-total{color:var(--text-secondary)}.project-steps{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:3rem}.step-item{display:flex;align-items:flex-start;gap:1rem;background:var(--bg-content);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem 1.5rem}.step-item:hover{border-color:var(--primary-accent)}.step-item .step-number{width:28px;height:28px;min-width:28px;background:var(--primary-accent);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;margin-top:2px}.step-content{flex:1}.step-content h4{font-size:1.1rem;font-weight:700;margin:0 0 .75rem 0;color:var(--text-headings)}.step-content p{margin:0 0 1rem 0;color:var(--text-secondary);line-height:1.7}.step-content kbd{background:var(--bg-alt);color:var(--text-primary);padding:.25em .5em;border-radius:4px;font-family:"Fira Code",monospace;font-size:.9em;border:1px solid var(--border-color);box-shadow:0 2px 0 var(--border-color)}.project-completion{background:var(--gradient-success);color:#fff;text-align:center;padding:3rem 2rem;border-radius:24px;box-shadow:var(--shadow-large)}.completion-icon{width:100px;height:100px;background:rgba(255,255,255,.2);backdrop-filter:blur(10px);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem auto;border:2px solid rgba(255,255,255,.3)}.completion-icon i{width:50px;height:50px}.project-completion h3{font-size:2rem;font-weight:900;margin:0 0 1rem 0}.project-completion p{font-size:1.1rem;margin:0;max-width:600px;margin-left:auto;margin-right:auto;opacity:.95;line-height:1.7}.module-footer-validation{margin:3rem 0 2rem 0;padding:0}.validation-wrapper{background:var(--bg-content);border:1px solid var(--border-color);border-radius:20px;padding:2rem;box-shadow:0 2px 12px rgba(0,0,0,.06);text-align:center}.validation-feedback{margin-bottom:1rem;min-height:30px;font-weight:600}.validation-btn{background:var(--gradient-primary);color:#fff;border:none;padding:1rem 2.5rem;border-radius:12px;font-weight:700;font-size:1rem;cursor:pointer;display:inline-flex;align-items:center;gap:.75rem;box-shadow:0 4px 15px rgba(99,102,241,.3);transition:all .3s ease;white-space:nowrap}.validation-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(99,102,241,.4)}.validation-btn:disabled{background:var(--bg-alt);color:var(--text-muted);cursor:not-allowed;box-shadow:none}.validation-btn i{width:20px;height:20px}.validation-buttons{display:none!important}.validation-wrapper{padding:1.5rem;text-align:left}.validation-wrapper .validation-header{margin-bottom:1rem}.validation-wrapper .validation-header h3{font-size:1.1rem!important;font-weight:700}.validation-wrapper .validation-header p{font-size:.85rem!important}.validation-checklist{display:flex;flex-direction:column;gap:1.5rem!important;margin-bottom:0;margin-top:1.5rem}.checklist-item{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-radius:12px;background:var(--bg-alt);border:1px solid var(--border-color);transition:all .2s ease}.checklist-item.pending{color:var(--text-secondary)}.checklist-item.pending .checklist-icon{color:var(--text-muted)}.checklist-item.done{background:rgba(16,185,129,.08);border-color:rgba(16,185,129,.2);color:#10b981}.checklist-item.done .checklist-icon{color:#10b981}.checklist-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.checklist-icon i{width:20px;height:20px}.checklist-item span{font-weight:500;font-size:.95rem}.validation-success-badge{display:flex;align-items:center;justify-content:center}.success-badge-content{display:inline-flex;align-items:center;gap:.75rem;padding:1rem 2rem;background:linear-gradient(135deg,#10b981 0,#059669 100%);color:#fff;border-radius:50px;font-weight:700;font-size:1.1rem;box-shadow:0 8px 20px rgba(16,185,129,.35);animation:successPop .4s cubic-bezier(.34,1.56,.64,1)}.success-badge-content i{width:24px;height:24px}@keyframes successPop{0%{transform:scale(.8);opacity:0}100%{transform:scale(1);opacity:1}}@media (max-width:768px){.hero-title{font-size:1.75rem}.hero-subtitle{font-size:.95rem}.section-title{font-size:1.4rem}.properties-grid{grid-template-columns:1fr}.validation-wrapper{padding:1.5rem}.validation-btn{width:100%;justify-content:center}.step-item{padding:1rem 1.25rem}}@media (max-width:480px){.hero-title{font-size:1.5rem}.step-item{padding:1rem}.step-item .step-number{width:24px;height:24px;min-width:24px;font-size:.8rem}.step-content h4{font-size:1rem}.score-value{font-size:2.5rem}}.theory-card{background:var(--bg-content,#fff);border:1px solid var(--border-color,#e5e7eb);border-radius:16px;padding:2rem;margin-bottom:2rem;box-shadow:var(--shadow-sm,0 1px 2px 0 rgba(0,0,0,.05))}.theory-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--primary-light,#e0e7ff)}.theory-number{width:40px;height:40px;background:var(--primary-accent,#6366f1);color:#fff;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.25rem;box-shadow:0 4px 10px rgba(99,102,241,.3)}.theory-title{margin:0;font-size:1.5rem;color:var(--text-headings,#1f2937);font-weight:700}.theory-content{font-size:1.05rem;line-height:1.8;color:var(--text-secondary,#4b5563)}.theory-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:2rem}.theory-item{background:var(--bg-alt,#f9fafb);padding:1.5rem;border-radius:12px;border:1px solid var(--border-color,#e5e7eb);transition:all .3s ease}.theory-item:hover{border-color:var(--primary-accent,#6366f1);transform:translateY(-2px);box-shadow:var(--shadow-md,0 4px 6px -1px rgba(0,0,0,.1))}.theory-icon{width:48px;height:48px;background:rgba(99,102,241,.1);color:var(--primary-accent,#6366f1);border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.theory-item h4{margin:0 0 .5rem 0;font-size:1.1rem;color:var(--text-headings,#1f2937)}.theory-item p{margin:0;font-size:.95rem;color:var(--text-secondary,#4b5563);line-height:1.6}.quiz-result-container{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1.5rem;background:var(--bg-alt);border-radius:12px;border:1px solid var(--border-color);margin-top:1.5rem}.quiz-result-score{font-size:2.5rem;font-weight:800;color:var(--primary-accent);margin-bottom:.5rem;display:flex;align-items:baseline;gap:.5rem;justify-content:center}.score-separator,.score-total{font-size:1.5rem;color:var(--text-muted);font-weight:600}.quiz-result-xp{margin-bottom:1rem}.xp-badge{display:inline-flex;align-items:center;gap:.5rem;background:rgba(168,85,247,.1);color:#a855f7;padding:.5rem 1rem;border-radius:20px;font-weight:700;font-size:1rem}.quiz-result-message{font-size:1.1rem;color:var(--text-secondary);font-weight:500}.keyboard-controls{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin:2rem 0;padding:2rem;background:var(--bg-alt);border-radius:20px;border:1px solid var(--border-color)}.keyboard-row{display:flex;gap:.5rem}.key-cap{width:60px;height:60px;background:linear-gradient(to bottom,#f3f4f6,#e5e7eb);border:1px solid #d1d5db;border-bottom:4px solid #9ca3af;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:"Fira Code",monospace;font-weight:700;color:var(--text-headings);position:relative;transition:all .1s;cursor:default}[data-theme=dark] .key-cap{background:linear-gradient(to bottom,#374151,#1f2937);border-color:#4b5563;border-bottom-color:#111827;color:#f3f4f6}.key-cap:active{transform:translateY(3px);border-bottom-width:1px}.key-cap span{font-size:1.2rem}.roblox-tip-card{background:linear-gradient(135deg,#00b06f 0,#009960 100%);color:#fff;border-radius:16px;padding:2px;margin:2rem 0;box-shadow:0 10px 25px -5px rgba(0,176,111,.4)}.key-group{display:flex;flex-direction:column;align-items:center;gap:.5rem}.key-label{font-size:.85rem;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.mouse-control-hint{display:flex;align-items:center;gap:1rem;margin-top:1.5rem;padding:1rem 2rem;background:var(--bg-content);border-radius:50px;border:1px solid var(--border-color);box-shadow:var(--shadow-sm);color:var(--text-secondary)}.mouse-control-hint i{font-size:1.2rem;color:var(--text-primary)}.roblox-tip-card{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:linear-gradient(135deg,rgba(0,176,111,.1) 0,rgba(0,153,96,.1) 100%);border-left:4px solid #00b06f;border-radius:12px;margin:2rem 0}.roblox-tip-card .tip-icon{width:50px;height:50px;background:#00b06f;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 4px 10px rgba(0,176,111,.3)}.roblox-tip-card .tip-icon i{width:24px;height:24px}.roblox-tip-card .tip-content h4{margin:0 0 .5rem 0;font-size:1.1rem;font-weight:700;color:#00b06f}.roblox-tip-card .tip-content p{margin:0;color:var(--text-secondary);font-size:.95rem;line-height:1.5}.roblox-tip-card code{background:rgba(0,176,111,.15)!important;color:#008050!important;border:1px solid rgba(0,176,111,.2)!important}.quiz-exercise-header{transition:all .3s ease}.quiz-exercise-header:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(0,0,0,.1)}@media (max-width:768px){.quiz-exercise-header{padding:1.5rem!important}.quiz-exercise-header>div>div:first-child{flex-direction:column;align-items:flex-start!important;width:100%}.quiz-exercise-header h3{font-size:1.4rem!important}.quiz-exercise-header>div>div:last-child{width:100%;justify-content:center}.quiz-exercise-header i[data-lucide]{width:28px!important;height:28px!important}}@media (max-width:480px){.quiz-exercise-header{padding:1.25rem!important}.quiz-exercise-header h3{font-size:1.2rem!important}.quiz-exercise-header p{font-size:.85rem!important}.quiz-exercise-header>div>div:last-child{padding:.75rem 1.25rem!important;font-size:1.1rem!important}}.settings-modal-content{display:grid;grid-template-columns:250px 1fr;gap:0;padding:0;height:600px;max-height:80vh;overflow:hidden;background:var(--bg-content);border-radius:20px}.settings-sidebar{background:var(--bg-alt);padding:2rem 1rem;border-right:1px solid var(--border-color);display:flex;flex-direction:column;gap:.5rem}.settings-nav-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:10px;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;font-weight:500}.settings-nav-item:hover{background:rgba(var(--primary-rgb),.05);color:var(--primary-accent)}.settings-nav-item.active{background:var(--primary-accent);color:#fff;box-shadow:0 4px 12px rgba(var(--primary-rgb),.3)}.settings-main{padding:2rem;overflow-y:auto}.settings-header-mobile{display:none}.settings-section-title{font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;color:var(--text-headings);display:flex;align-items:center;gap:.75rem}.settings-card{background:var(--bg-body);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;margin-bottom:1.5rem}.settings-card h4{margin:0 0 1rem 0;font-size:1.1rem;color:var(--text-headings);border-bottom:1px solid var(--border-color);padding-bottom:.75rem}.settings-info-row{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid var(--border-color)}.settings-info-row:last-child{border-bottom:none}.settings-label{color:var(--text-secondary);font-weight:500}.settings-value{color:var(--text-primary);font-weight:600}@media (max-width:768px){.settings-modal-content{grid-template-columns:1fr;height:auto;max-height:90vh;display:flex;flex-direction:column}.settings-sidebar{flex-direction:row;overflow-x:auto;padding:1rem;border-right:none;border-bottom:1px solid var(--border-color)}.settings-nav-item{white-space:nowrap;flex-shrink:0}}.content-card>p code,.property-content code:not([class*=language-]),.theory-content code,li code,p code{background:var(--primary-light);color:var(--primary-accent);padding:.15em .5em;border-radius:4px;font-family:"Fira Code",monospace;font-size:.9em;font-weight:600}.keyword{background:var(--primary-accent);color:#fff!important;padding:.1em .45em;border-radius:4px;font-family:"Fira Code",monospace;font-size:.9em;font-weight:600}.interactive-schema-trigger{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin:2rem 0}.btn-primary-action{background:var(--primary-accent);color:#fff;border:none;padding:1rem 2rem;border-radius:12px;font-weight:700;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;gap:.75rem;transition:all .3s ease;box-shadow:0 4px 15px rgba(var(--primary-accent-rgb),.3)}.btn-primary-action:hover{transform:translateY(-3px);box-shadow:0 8px 25px rgba(var(--primary-accent-rgb),.4);background:var(--primary-hover)}.schema-hint{font-size:.9rem;color:var(--text-muted);font-style:italic}.schema-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.85);z-index:10000;align-items:center;justify-content:center;padding:1rem;backdrop-filter:blur(5px)}.schema-modal.active{display:flex;animation:fadeIn .3s ease}.schema-modal-content{background:var(--bg-body);width:100%;max-width:1000px;max-height:90vh;border-radius:20px;padding:1.5rem;position:relative;overflow-y:auto;box-shadow:0 25px 50px -12px rgba(0,0,0,.5);border:1px solid var(--border-color)}.schema-close-btn{position:absolute;top:1rem;right:1rem;background:var(--bg-alt);border:1px solid var(--border-color);color:var(--text-secondary);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;z-index:10}.schema-close-btn:hover{background:#ef4444;color:#fff;border-color:#ef4444}.schema-header{text-align:center;margin-bottom:1.5rem}.schema-header h3{margin:0 0 .5rem 0;font-size:1.5rem;color:var(--text-headings)}.schema-header p{margin:0;color:var(--text-secondary)}.schema-note{display:inline-flex;align-items:center;gap:.35rem;margin-top:.5rem;padding:.3rem .75rem;background:rgba(var(--primary-accent-rgb),.08);border-radius:6px;font-size:.75rem;color:var(--text-secondary)}.schema-note i{width:12px;height:12px;flex-shrink:0}.interactive-roblox-container{position:relative;width:100%;max-width:800px;margin:2rem auto;border-radius:12px;overflow:visible;box-shadow:var(--shadow-lg);border:1px solid var(--border-color);background:#1e1e2e}.interactive-roblox-image{width:100%;display:block;user-select:none;border-radius:12px}.roblox-overlay-zone{position:absolute;background:rgba(255,255,255,.05);border:2px dashed rgba(255,255,255,.3);cursor:pointer;transition:all .2s ease}.roblox-overlay-zone.active,.roblox-overlay-zone:hover{background:rgba(168,85,247,.2);border-color:#a855f7;box-shadow:0 0 15px rgba(168,85,247,.3)}.zone-tooltip{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.8);color:#fff;padding:.4rem .8rem;border-radius:6px;font-size:.8rem;pointer-events:none;opacity:0;transition:opacity .2s;white-space:nowrap;z-index:10;margin-bottom:5px}.roblox-overlay-zone.tooltip-bottom .zone-tooltip{bottom:auto;top:100%;margin-bottom:0;margin-top:5px}.roblox-overlay-zone:hover .zone-tooltip{opacity:1}.zone-tooltip::after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:rgba(0,0,0,.8) transparent transparent transparent}.roblox-overlay-zone.tooltip-bottom .zone-tooltip::after{top:auto;bottom:100%;border-color:transparent transparent rgba(0,0,0,.8) transparent}.zone-description-panel{margin-top:1rem;padding:1.5rem;background:var(--bg-alt);border-radius:12px;border:1px solid var(--border-color);min-height:120px;transition:all .3s ease;position:relative}.zone-description-panel h4{margin:0 0 .5rem 0;color:var(--primary-accent);font-size:1.1rem;display:flex;align-items:center;gap:.5rem}.schema-modal .interactive-roblox-container{margin:0 auto 1.5rem auto;max-height:60vh}.schema-modal .interactive-roblox-image{max-height:60vh;object-fit:contain;width:auto;margin:0 auto}@media (max-width:768px){.schema-modal-content{padding:1rem;max-height:95vh;display:flex;flex-direction:column}.schema-header h3{font-size:1.2rem}.schema-modal .interactive-roblox-container{max-height:50vh;overflow-x:auto;overflow-y:hidden;display:block;margin-bottom:1rem;border-radius:8px;-webkit-overflow-scrolling:touch}.schema-modal .interactive-roblox-wrapper{min-width:600px;width:max-content}.schema-modal .interactive-roblox-image{max-height:50vh;width:auto;max-width:none}.roblox-overlay-zone{min-width:20px;min-height:20px}}.project-header-card{display:flex;align-items:flex-start;gap:1.5rem;padding:2rem;background:linear-gradient(135deg,var(--bg-content) 0,var(--bg-alt) 100%);border:1px solid var(--border-color);border-radius:16px;margin-bottom:2rem;position:relative;overflow:hidden}.project-header-card::before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--primary-accent)}.project-header-icon{width:64px;height:64px;background:var(--primary-accent);border-radius:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 8px 20px rgba(99,102,241,.25)}.project-header-icon i{width:32px;height:32px;color:#fff}.project-header-content{flex:1}.project-badge{display:inline-block;background:rgba(99,102,241,.1);color:var(--primary-accent);padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.project-header-content h2{margin:0 0 .5rem 0;font-size:1.5rem;font-weight:800;color:var(--text-headings)}.project-header-content p{margin:0;color:var(--text-secondary);line-height:1.6}.project-progress-bar{display:flex;align-items:center;justify-content:center;gap:.35rem;padding:1rem 1.5rem;background:var(--bg-content);border:1px solid var(--border-color);border-radius:12px;margin-bottom:2rem;overflow-x:auto;flex-wrap:nowrap}.project-progress-bar::-webkit-scrollbar{height:4px}.project-progress-bar::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:2px}.progress-step{width:32px;height:32px;min-width:32px;padding:0;background:var(--bg-alt);border:2px solid var(--border-color);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;color:var(--text-muted);flex-shrink:0;transition:all .2s ease}.progress-step.active{background:var(--primary-accent);border-color:var(--primary-accent);color:#fff;box-shadow:0 4px 12px rgba(99,102,241,.3)}.progress-step.completed{background:var(--success-color);border-color:var(--success-color);color:#fff}.progress-line{flex:0 0 auto;width:16px;height:2px;background:var(--border-color);border-radius:2px}.progress-line.completed{background:var(--success-color)}.progress-step.more{background:var(--bg-alt);border-style:dashed;font-size:.75rem}.callout-box{display:flex;gap:1rem;padding:1.25rem 1.5rem;border-radius:12px;margin-bottom:2rem}.callout-box.warning{background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.2)}.callout-box.info{background:rgba(59,130,246,.08);border:1px solid rgba(59,130,246,.2)}.callout-box.success{background:rgba(16,185,129,.08);border:1px solid rgba(16,185,129,.2)}.callout-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.callout-box.warning .callout-icon{background:rgba(245,158,11,.15);color:#f59e0b}.callout-box.info .callout-icon{background:rgba(59,130,246,.15);color:#3b82f6}.callout-box.success .callout-icon{background:rgba(16,185,129,.15);color:#10b981}.callout-icon i{width:20px;height:20px}.callout-content{flex:1}.callout-content strong{display:block;margin-bottom:.5rem;color:var(--text-headings);font-size:1rem}.callout-content ol,.callout-content ul{margin:0;padding-left:1.25rem;color:var(--text-secondary)}.callout-content li{margin-bottom:.25rem;line-height:1.6}.section-title{display:flex;align-items:center;gap:.75rem;font-size:1.35rem;font-weight:800;color:var(--text-headings);margin:0 0 1.5rem 0;padding-bottom:.75rem;border-bottom:2px solid var(--border-color)}.section-title i{width:24px;height:24px;color:var(--primary-accent)}.properties-table{background:var(--bg-alt);border:1px solid var(--border-color);border-radius:10px;overflow:hidden;margin-top:.75rem}.properties-table.compact{display:inline-block;min-width:200px}.prop-row{display:flex;justify-content:space-between;padding:.6rem 1rem;border-bottom:1px solid var(--border-color);font-size:.9rem}.prop-row:last-child{border-bottom:none}.prop-name{font-weight:600;color:var(--text-secondary);font-family:"Fira Code",monospace}.prop-value{font-weight:500;color:var(--text-headings);font-family:"Fira Code",monospace}.prop-row.highlight{background:rgba(16,185,129,.08)}.prop-row.highlight .prop-name,.prop-row.highlight .prop-value{color:#10b981}.prop-row.accent{background:rgba(99,102,241,.05)}.prop-row.accent .prop-value{color:var(--primary-accent)}.parts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-top:.75rem}@media (max-width:600px){.parts-grid{grid-template-columns:1fr}}.part-card{background:var(--bg-alt);border:1px solid var(--border-color);border-radius:10px;padding:1rem;display:flex;flex-direction:column;gap:.25rem}.part-card strong{font-size:.95rem;color:var(--text-headings);margin-bottom:.25rem}.part-card span{font-size:.85rem;color:var(--text-secondary);font-family:"Fira Code",monospace}.part-card.special{border-color:rgba(6,182,212,.3);background:rgba(6,182,212,.05)}.part-card .tag{margin-top:.5rem;padding:.25rem .5rem;background:rgba(6,182,212,.1);color:#06b6d4;border-radius:4px;font-size:.75rem;font-weight:600;font-family:inherit}.explorer-tree{background:#1e1e2e;border-radius:10px;padding:1rem;margin-top:.75rem;font-family:"Fira Code",monospace;font-size:.85rem}.tree-item{padding:.35rem 0;color:#d4d4d4}.tree-item.folder{color:#fbbf24}.tree-item.part{color:#94a3b8}.tree-item.spawn{color:#10b981}.tree-item.indent-1{padding-left:1.5rem}.tree-item.indent-2{padding-left:3rem}.hint{font-size:.85rem;color:var(--text-muted);margin-top:.5rem}.step-content kbd{background:var(--bg-alt);color:var(--text-primary);padding:.2em .5em;border-radius:4px;font-family:"Fira Code",monospace;font-size:.85em;border:1px solid var(--border-color);box-shadow:0 2px 0 var(--border-color)}.project-completion{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.75rem;background:linear-gradient(135deg,#10b981 0,#059669 100%);color:#fff;padding:1.5rem 2rem;border-radius:16px;margin-top:2rem}.project-completion .completion-icon{width:52px;height:52px;background:rgba(255,255,255,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.project-completion .completion-content{display:flex;flex-direction:column;align-items:center;gap:.25rem}.project-completion .completion-content h3{margin:0;font-size:1.25rem;font-weight:800;color:#fff}.project-completion .completion-content p{margin:0;font-size:.9rem;opacity:.9;color:#fff}@media (max-width:768px){.project-header-card{flex-direction:column;text-align:center;padding:1.5rem}.project-header-card::before{width:100%;height:4px}.project-progress-bar{justify-content:flex-start}.callout-box{flex-direction:column}.callout-icon{align-self:flex-start}}.project-header-icon{font-size:2rem;background:var(--primary-accent)}.project-header-card.final{border-color:rgba(16,185,129,.3);background:linear-gradient(135deg,rgba(16,185,129,.05) 0,rgba(5,150,105,.02) 100%)}.project-header-card.final::before{background:#10b981}.project-badge.success{background:rgba(16,185,129,.15);color:#10b981}.callout-box i{width:20px;height:20px;flex-shrink:0;color:#f59e0b}.callout-box.warning i{color:#f59e0b}.callout-box.info i{color:#3b82f6}.callout-box.success i{color:#10b981}.callout-box strong{display:block;color:var(--text-headings);margin-bottom:.25rem}.callout-box p{margin:0;color:var(--text-secondary);font-size:.9rem;line-height:1.5}.step-item.bonus{border-left-color:#f59e0b}.step-item.bonus .step-number{background:linear-gradient(135deg,#f59e0b 0,#d97706 100%)}.step-item.highlight{border:2px solid #10b981;background:rgba(16,185,129,.05);border-radius:16px;padding:1rem;margin-left:-1rem;margin-right:-1rem}.step-item.highlight .step-number{background:linear-gradient(135deg,#10b981 0,#059669 100%)}.project-completion.final{flex-direction:column;text-align:center;padding:2.5rem;background:linear-gradient(135deg,rgba(16,185,129,.1) 0,rgba(5,150,105,.05) 100%);border:2px solid #10b981}.project-completion.final .completion-icon{font-size:3rem;margin-bottom:.5rem}.project-completion.final .completion-content h3{color:#10b981;font-size:1.5rem;margin-bottom:1rem}.project-completion.final .completion-content p{color:var(--text-secondary);max-width:600px;font-size:1rem;line-height:1.6}.project-recap-card{margin-top:3rem;padding:2rem;background:linear-gradient(135deg,#1e1b4b 0,#312e81 100%);border-radius:20px;color:#fff}.project-recap-card h3{margin:0 0 1.5rem 0;text-align:center;color:#fff;font-size:1.25rem}.recap-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.recap-item{background:rgba(255,255,255,.1);padding:1rem;border-radius:12px}.recap-title{font-weight:700;margin-bottom:.5rem}.recap-desc{font-size:.9rem;opacity:.9}.project-header-title{margin:0 0 .5rem 0;font-size:1.5rem;font-weight:800;color:var(--text-headings)}.project-header-desc{margin:0;color:var(--text-secondary);line-height:1.6}@media (max-width:768px){.project-progress-bar{padding:.75rem 1rem;justify-content:flex-start}.project-progress-bar .progress-step{width:26px;height:26px;min-width:26px;font-size:.75rem}.project-progress-bar .progress-line{width:10px}.project-completion{flex-direction:column;text-align:center}.step-item.highlight{margin-left:0;margin-right:0}}.interactive-roblox-container{position:relative;width:100%;max-width:800px;margin:2rem auto;border-radius:12px;overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid var(--border-color);background:#1e1e2e;min-height:400px}.interactive-roblox-wrapper{position:relative;width:100%}.interactive-roblox-image{width:100%;display:block;user-select:none}.roblox-overlay-zone{position:absolute;background:rgba(255,255,255,.03);border:2px dashed rgba(255,255,255,.2);cursor:pointer;transition:all .3s cubic-bezier(.4, 0, .2, 1);z-index:10;border-radius:4px}.roblox-overlay-zone[data-title*=Ruban]{border-color:rgba(99,102,241,.5)}.roblox-overlay-zone[data-title*=Ruban].active,.roblox-overlay-zone[data-title*=Ruban]:hover{background:rgba(99,102,241,.25);border-color:#6366f1;box-shadow:0 0 20px rgba(99,102,241,.4),inset 0 0 30px rgba(99,102,241,.1)}.roblox-overlay-zone[data-title*=Explorateur]{border-color:rgba(245,158,11,.5)}.roblox-overlay-zone[data-title*=Explorateur].active,.roblox-overlay-zone[data-title*=Explorateur]:hover{background:rgba(245,158,11,.25);border-color:#f59e0b;box-shadow:0 0 20px rgba(245,158,11,.4),inset 0 0 30px rgba(245,158,11,.1)}.roblox-overlay-zone[data-title*=Sortie]{border-color:rgba(168,85,247,.5)}.roblox-overlay-zone[data-title*=Sortie].active,.roblox-overlay-zone[data-title*=Sortie]:hover{background:rgba(168,85,247,.25);border-color:#a855f7;box-shadow:0 0 20px rgba(168,85,247,.4),inset 0 0 30px rgba(168,85,247,.1)}@keyframes zonePulse{0%,100%{opacity:1}50%{opacity:.7}}.roblox-overlay-zone:hover{animation:zonePulse 1.5s ease-in-out infinite}.zone-tooltip{position:absolute;bottom:100%;left:50%;transform:translateX(-50%) translateY(5px);background:rgba(0,0,0,.9);color:#fff;padding:.5rem 1rem;border-radius:8px;font-size:.85rem;font-weight:600;pointer-events:none;opacity:0;transition:all .3s cubic-bezier(.4, 0, .2, 1);white-space:nowrap;z-index:20;margin-bottom:8px;box-shadow:0 4px 12px rgba(0,0,0,.3)}.zone-tooltip::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:6px solid transparent;border-top-color:rgba(0,0,0,.9)}.roblox-overlay-zone:hover .zone-tooltip{opacity:1;transform:translateX(-50%) translateY(0)}.zone-description-panel{margin-top:1rem;padding:1.5rem;background:var(--bg-alt);border-radius:12px;border:1px solid var(--border-color);min-height:120px;transition:all .4s cubic-bezier(.4, 0, .2, 1);position:relative;overflow:hidden}.zone-description-panel::before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--primary-accent);opacity:0;transition:opacity .3s}.zone-description-panel.has-content::before{opacity:1}.zone-description-panel h4{margin:0 0 .75rem 0;color:var(--primary-accent);font-size:1.2rem;font-weight:700;display:flex;align-items:center;gap:.5rem}.zone-description-panel p{margin:0;color:var(--text-secondary);font-size:1rem;line-height:1.6}.lua-sandbox-container{margin-top:3rem;border:1px solid var(--border-color);border-radius:16px;overflow:hidden;background:#1e1e2e;font-family:"Fira Code",monospace;box-shadow:0 10px 40px -10px rgba(0,0,0,.4);position:relative}.sandbox-header{background:linear-gradient(135deg,#252535 0,#1a1a28 100%);padding:1rem 1.25rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #313244}.sandbox-title{color:#e4e4e7;font-weight:700;font-size:1rem;display:flex;align-items:center;gap:.75rem}.sandbox-title i{color:#10b981}.sandbox-version{font-size:.75rem;color:#6b7280;background:rgba(255,255,255,.05);padding:.25rem .5rem;border-radius:4px}.sandbox-editor-wrapper{position:relative;display:flex;max-height:350px;overflow:hidden;background:#1e1e2e}.sandbox-line-numbers{width:45px;min-width:45px;background:#16161e;padding:1rem .75rem 1rem 0;text-align:right;color:#52525b;font-size:.9rem;line-height:1.6;user-select:none;border-right:1px solid #313244;font-family:"Fira Code",Consolas,monospace;display:flex;flex-direction:column;overflow-y:auto;pointer-events:none;scrollbar-width:none;-ms-overflow-style:none}.sandbox-line-numbers::-webkit-scrollbar{display:none}.sandbox-line-numbers span{display:block;min-height:1.6em;line-height:1.6}.sandbox-editor{flex:1;width:calc(100% - 45px);min-height:200px;max-height:350px;background:#1e1e2e;color:#d4d4d4;border:none;padding:1rem;font-family:"Fira Code",Consolas,monospace;font-size:.9rem;resize:none;outline:0;line-height:1.6;caret-color:#10b981;overflow-y:auto;white-space:pre;word-wrap:normal;overflow-x:auto}.sandbox-editor::placeholder{color:#4a4a5a}.sandbox-editor:focus{background:#1a1a28}.sandbox-controls{padding:1rem 1.25rem;background:linear-gradient(135deg,#252535 0,#1a1a28 100%);border-top:1px solid #313244;display:flex;justify-content:space-between;align-items:center;gap:.75rem}.sandbox-controls-left{display:flex;gap:.5rem}.btn-run-sandbox{background:linear-gradient(135deg,#10b981 0,#059669 100%);color:#fff;border:none;padding:.6rem 1.25rem;border-radius:8px;font-weight:700;font-size:.9rem;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s ease;box-shadow:0 4px 12px rgba(16,185,129,.3)}.btn-run-sandbox:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(16,185,129,.4)}.btn-run-sandbox:active{transform:translateY(0)}.btn-run-sandbox i{width:16px;height:16px}.btn-sandbox-secondary{background:rgba(255,255,255,.05);color:#a1a1aa;border:1px solid #313244;padding:.6rem 1rem;border-radius:8px;font-weight:600;font-size:.85rem;cursor:pointer;display:flex;align-items:center;gap:.4rem;transition:all .2s ease}.btn-sandbox-secondary:hover{background:rgba(255,255,255,.1);color:#e4e4e7;border-color:#4a4a5a}.btn-sandbox-secondary i{width:14px;height:14px}.sandbox-console{background:#0d0d14;padding:1rem;border-top:1px solid #313244;min-height:100px;max-height:180px;overflow-y:auto;font-size:.9rem;position:relative}.sandbox-console::before{content:"OUTPUT";position:absolute;top:.5rem;right:.75rem;font-size:.65rem;color:#3a3a4a;font-weight:700;letter-spacing:1px}.console-line{margin-bottom:.35rem;font-family:"Fira Code",monospace;word-break:break-all;padding-left:.5rem;border-left:2px solid transparent;transition:all .2s}.console-line.log{color:#a6e3a1;border-left-color:#10b981}.console-line.error{color:#f87171;border-left-color:#ef4444;background:rgba(239,68,68,.05);padding:.25rem .5rem;border-radius:0 4px 4px 0}.console-line.success{color:#10b981;border-left-color:#10b981}.console-line.system{color:#71717a;font-style:italic;border-left-color:transparent}.console-line.warn{color:#fbbf24;border-left-color:#f59e0b}@keyframes sandboxSuccess{0%{box-shadow:0 0 0 0 rgba(16,185,129,.4)}70%{box-shadow:0 0 0 10px rgba(16,185,129,0)}100%{box-shadow:0 0 0 0 rgba(16,185,129,0)}}.lua-sandbox-container.success{animation:sandboxSuccess .6s ease-out;border-color:#10b981}@media (max-width:600px){.sandbox-line-numbers{width:35px;min-width:35px;font-size:.8rem;padding:1rem .5rem 1rem 0}.sandbox-editor{width:calc(100% - 35px);padding:1rem .75rem;font-size:.8rem}.sandbox-controls{flex-direction:column}.sandbox-controls-left{width:100%;display:flex;gap:.5rem}.btn-run-sandbox{flex:1;justify-content:center}}.sandbox-editor::-webkit-scrollbar{width:8px;height:8px}.sandbox-editor::-webkit-scrollbar-track{background:#16161e}.sandbox-editor::-webkit-scrollbar-thumb{background:#3a3a4a;border-radius:4px}.sandbox-editor::-webkit-scrollbar-thumb:hover{background:#52525b}.sandbox-editor::-webkit-scrollbar-corner{background:#16161e}.orblox-easter-egg{margin-top:1rem;padding:1rem;background:linear-gradient(135deg,rgba(251,191,36,.1) 0,rgba(217,119,6,.1) 100%);border:2px solid rgba(251,191,36,.3);border-radius:12px;animation:orbloxEggReveal .5s ease-out;position:relative;overflow:hidden}.orblox-easter-egg::before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(251,191,36,.2),transparent);animation:orbloxEggShine 2s ease-in-out infinite}@keyframes orbloxEggReveal{from{opacity:0;transform:translateY(10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes orbloxEggShine{0%{left:-100%}100%,50%{left:100%}}.orblox-egg-content{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;position:relative;z-index:1}.orblox-egg-icon{width:40px;height:40px;background:linear-gradient(135deg,#fbbf24 0,#d97706 100%);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 12px rgba(251,191,36,.4);flex-shrink:0}.orblox-egg-icon i{width:20px;height:20px}.orblox-egg-text{display:flex;flex-direction:column;flex:1;min-width:0}.orblox-egg-title{font-size:.9rem;font-weight:800;color:#d97706;line-height:1.2}.orblox-egg-desc{font-size:.75rem;color:var(--text-muted)}.orblox-slots-badge{background:linear-gradient(135deg,#fbbf24 0,#d97706 100%);color:#fff;padding:.25rem .5rem;border-radius:8px;font-size:.75rem;font-weight:700;flex-shrink:0;box-shadow:0 2px 8px rgba(251,191,36,.3)}.orblox-slots-badge.empty{background:#6b7280;box-shadow:none}.btn-claim-orblox{width:100%;padding:.75rem;background:linear-gradient(135deg,#fbbf24 0,#d97706 100%);border:none;border-radius:8px;color:#78350f;font-weight:700;font-size:.9rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .3s ease;position:relative;z-index:1;box-shadow:0 4px 15px rgba(251,191,36,.4)}.btn-claim-orblox:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(251,191,36,.5)}.btn-claim-orblox:disabled{background:#9ca3af;color:#6b7280;cursor:not-allowed;transform:none;box-shadow:none}.btn-claim-orblox i{width:16px;height:16px}.orblox-easter-egg.already-claimed{border-color:rgba(16,185,129,.3);background:linear-gradient(135deg,rgba(16,185,129,.1) 0,rgba(16,185,129,.05) 100%)}.orblox-easter-egg.already-claimed .orblox-egg-icon{background:linear-gradient(135deg,#10b981 0,#059669 100%)}.orblox-easter-egg.already-claimed .orblox-egg-title{color:#10b981}.orblox-easter-egg.already-claimed .btn-claim-orblox{background:#10b981;color:#fff;cursor:default}.orblox-easter-egg.no-slots{border-color:rgba(107,114,128,.3);background:rgba(107,114,128,.05);opacity:.7}.orblox-easter-egg.no-slots .orblox-egg-icon{background:#6b7280}.orblox-easter-egg.no-slots .orblox-egg-title{color:#6b7280}.project-version-toggle{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-bottom:2rem;padding:.5rem;background:var(--bg-alt);border-radius:16px;border:1px solid var(--border-color)}.project-version-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.5rem;border:none;border-radius:12px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;background:0 0;color:var(--text-secondary)}.project-version-btn:hover{background:rgba(99,102,241,.08);color:var(--text-headings)}.project-version-btn.active{background:linear-gradient(135deg,var(--primary-accent),#7c3aed);color:#fff;box-shadow:0 4px 15px rgba(99,102,241,.3)}.project-version-btn .version-tag{font-size:.7rem;padding:.15rem .5rem;border-radius:6px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.project-version-btn.active .version-tag{background:rgba(255,255,255,.2);color:#fff}.project-version-btn:not(.active) .version-tag{background:rgba(107,114,128,.15);color:var(--text-muted)}.project-version-btn .new-badge{font-size:.65rem;padding:.1rem .4rem;border-radius:4px;background:#10b981;color:#fff;font-weight:700;animation:pulse-new 2s ease-in-out infinite}@keyframes pulse-new{0%,100%{opacity:1}50%{opacity:.6}}.project-v1-content,.project-v2-content{display:none;animation:fadeInProject .4s ease}.project-v1-content.active,.project-v2-content.active{display:block}@keyframes fadeInProject{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.v2-step-card{background:var(--bg-content);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;margin-bottom:1.25rem;transition:all .3s cubic-bezier(.4, 0, .2, 1);position:relative;overflow:hidden}.v2-step-card::before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,var(--primary-accent),#7c3aed);opacity:0;transition:opacity .3s ease}.v2-step-card:hover{border-color:rgba(99,102,241,.4);box-shadow:0 8px 32px rgba(99,102,241,.12);transform:translateY(-2px)}.v2-step-card:hover::before{opacity:1}.v2-step-card .v2-step-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem}.v2-step-card .v2-step-num{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,var(--primary-accent),#7c3aed);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1rem;flex-shrink:0;box-shadow:0 4px 12px rgba(99,102,241,.3)}.v2-step-card .v2-step-title{font-weight:700;font-size:1.1rem;color:var(--text-headings);letter-spacing:-.01em}.v2-step-card .v2-step-body{padding-left:3.5rem}.v2-step-card .v2-step-body p{color:var(--text-secondary);line-height:1.75;margin-bottom:1rem}.v2-step-card .v2-step-body ol,.v2-step-card .v2-step-body ul{color:var(--text-secondary);line-height:1.75;margin:.75rem 0;padding-left:1.25rem}.v2-step-card .v2-step-body li{margin-bottom:.5rem}.v2-step-card .v2-step-body code{background:rgba(99,102,241,.1);color:var(--primary-accent);padding:.15em .45em;border-radius:5px;font-size:.88em;font-family:"JetBrains Mono","Fira Code",monospace}.v2-step-card .v2-step-body strong{color:var(--text-headings);font-weight:600}.v2-code-block{background:linear-gradient(145deg,#1a1b26,#1e1e2e);border-radius:14px;padding:1.5rem;margin:1.25rem 0;overflow-x:auto;border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 2px 4px rgba(0,0,0,.2);position:relative}.v2-code-block::before{content:"Lua";position:absolute;top:.75rem;right:.75rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:rgba(255,255,255,.3);background:rgba(255,255,255,.05);padding:.2rem .5rem;border-radius:4px}.v2-code-block code{color:#cdd6f4;font-family:"JetBrains Mono","Fira Code",monospace;font-size:.85rem;line-height:1.7;white-space:pre;display:block}.v2-code-block .comment{color:#6c7086;font-style:italic}.v2-code-block .keyword{color:#cba6f7;font-weight:500}.v2-code-block .string{color:#a6e3a1}.v2-code-block .number{color:#fab387}.v2-code-block .func{color:#89b4fa;font-weight:500}.v2-code-block .builtin{color:#f9e2af}.v2-info-callout{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem;border-radius:14px;margin:1.25rem 0;background:linear-gradient(135deg,rgba(99,102,241,.08),rgba(124,58,237,.05));border:1px solid rgba(99,102,241,.2);color:var(--text-secondary);font-size:.9rem;line-height:1.7}.v2-info-callout i{color:var(--primary-accent);flex-shrink:0;margin-top:3px;width:20px;height:20px}.v2-warning-callout{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem;border-radius:14px;margin:1.25rem 0;background:linear-gradient(135deg,rgba(251,191,36,.08),rgba(245,158,11,.05));border:1px solid rgba(251,191,36,.25);color:var(--text-secondary);font-size:.9rem;line-height:1.7}.v2-warning-callout i{color:#fbbf24;flex-shrink:0;margin-top:3px;width:20px;height:20px}.v2-properties-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem;margin:1rem 0}.v2-prop{display:flex;justify-content:space-between;align-items:center;padding:.6rem 1rem;background:var(--bg-alt);border-radius:10px;font-size:.85rem;border:1px solid transparent;transition:all .2s ease}.v2-prop:hover{border-color:var(--border-color);background:var(--bg-content)}.v2-prop .prop-key{font-weight:600;color:var(--text-headings);font-family:"JetBrains Mono","Fira Code",monospace;font-size:.82rem}.v2-prop .prop-val{color:var(--primary-accent);font-weight:500;font-family:"JetBrains Mono","Fira Code",monospace;font-size:.82rem}.v2-prop.highlight{background:rgba(16,185,129,.1);border:1px solid rgba(16,185,129,.25)}.v2-prop.highlight .prop-key,.v2-prop.highlight .prop-val{color:#10b981}.v2-explorer-tree{background:linear-gradient(145deg,#1a1b26,#1e1e2e);border-radius:14px;padding:1.25rem;margin:1rem 0;font-family:"JetBrains Mono","Fira Code",monospace;font-size:.85rem;border:1px solid rgba(255,255,255,.08)}.v2-explorer-tree .tree-item{padding:.4rem 0;display:flex;align-items:center;gap:.5rem;color:#d4d4d4}.v2-explorer-tree .tree-item.folder::before{content:"📂"}.v2-explorer-tree .tree-item.model::before{content:"📦"}.v2-explorer-tree .tree-item.part::before{content:"🧱"}.v2-explorer-tree .tree-item.script::before{content:"📜"}.v2-explorer-tree .tree-item.spawn::before{content:"✨"}.v2-explorer-tree .tree-item.light::before{content:"💡"}.project-header-card.v2-enhanced{background:linear-gradient(135deg,var(--bg-content) 0,rgba(99,102,241,.05) 100%);border:1px solid rgba(99,102,241,.2);border-radius:20px;padding:2rem 2.5rem;margin-bottom:2rem;position:relative;overflow:hidden}.project-header-card.v2-enhanced::before{content:"";position:absolute;top:0;left:0;width:5px;height:100%;background:linear-gradient(180deg,var(--primary-accent),#7c3aed,#ec4899)}.project-header-card.v2-enhanced::after{content:"";position:absolute;top:-50%;right:-10%;width:300px;height:300px;background:radial-gradient(circle,rgba(99,102,241,.1),transparent 70%);pointer-events:none}.project-progress-bar.v2-enhanced{display:flex;align-items:center;justify-content:center;gap:.4rem;padding:1.25rem 2rem;background:var(--bg-content);border:1px solid var(--border-color);border-radius:16px;margin-bottom:2.5rem;position:relative}.project-progress-bar.v2-enhanced .progress-step{width:36px;height:36px;min-width:36px;background:var(--bg-alt);border:2px solid var(--border-color);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;color:var(--text-muted);transition:all .3s cubic-bezier(.4, 0, .2, 1);position:relative}.project-progress-bar.v2-enhanced .progress-step.active{background:linear-gradient(135deg,var(--primary-accent),#7c3aed);border-color:transparent;color:#fff;box-shadow:0 4px 16px rgba(99,102,241,.4);transform:scale(1.1)}.project-progress-bar.v2-enhanced .progress-step.completed{background:linear-gradient(135deg,#10b981,#059669);border-color:transparent;color:#fff}.project-progress-bar.v2-enhanced .progress-step.completed::after{content:"✓";font-size:.9rem}.project-progress-bar.v2-enhanced .progress-line{width:20px;height:3px;background:var(--border-color);border-radius:2px;transition:background .3s ease}.project-progress-bar.v2-enhanced .progress-line.completed{background:linear-gradient(90deg,#10b981,#059669)}.project-completion.v2-enhanced{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:1.5rem;background:linear-gradient(135deg,#10b981 0,#059669 50%,#047857 100%);color:#fff;padding:2rem 2.5rem;border-radius:20px;margin-top:2.5rem;position:relative;overflow:hidden}.project-completion.v2-enhanced::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");opacity:.5}.project-completion.v2-enhanced .completion-icon{width:64px;height:64px;background:rgba(255,255,255,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;flex-shrink:0;backdrop-filter:blur(4px);position:relative;z-index:1}.project-completion.v2-enhanced .completion-content{position:relative;z-index:1}.project-completion.v2-enhanced .completion-content h3{margin:0 0 .5rem 0;font-size:1.35rem;font-weight:800;color:#fff}.project-completion.v2-enhanced .completion-content p{margin:0;font-size:.95rem;opacity:.9;color:#fff}.project-importance-banner{background:linear-gradient(135deg,rgba(251,191,36,.1),rgba(245,158,11,.05));border:2px solid rgba(251,191,36,.3);border-radius:16px;padding:1.25rem 1.5rem;margin-bottom:1.5rem;display:flex;align-items:flex-start;gap:1rem;position:relative;overflow:hidden}.project-importance-banner::before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,#fbbf24,#f59e0b)}.project-importance-banner .banner-icon{width:44px;height:44px;min-width:44px;background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.25rem;box-shadow:0 4px 12px rgba(251,191,36,.3)}.project-importance-banner .banner-content{flex:1}.project-importance-banner .banner-title{font-weight:700;font-size:1rem;color:#b45309;margin-bottom:.25rem;display:flex;align-items:center;gap:.5rem}[data-theme=dark] .project-importance-banner .banner-title{color:#fbbf24}.project-importance-banner .banner-text{font-size:.9rem;color:var(--text-secondary);line-height:1.5}.project-importance-banner .banner-text strong{color:var(--text-primary)}.project-importance-banner .mobile-note{display:inline-flex;align-items:center;gap:.3rem;margin-top:.5rem;padding:.3rem .6rem;background:rgba(99,102,241,.1);border-radius:6px;font-size:.8rem;color:var(--primary-accent)}@media (max-width:768px){.project-importance-banner{flex-direction:column;text-align:center;align-items:center}.project-importance-banner::before{width:100%;height:4px;top:0;left:0}}@media (max-width:768px){.project-version-toggle{flex-direction:column;gap:.5rem}.project-version-btn{width:100%;justify-content:center}.v2-properties-grid{grid-template-columns:1fr}.v2-step-card .v2-step-body{padding-left:0;margin-top:1rem}.project-completion.v2-enhanced{flex-direction:column;text-align:center;padding:1.5rem}.project-progress-bar.v2-enhanced{flex-wrap:wrap;gap:.5rem}.project-progress-bar.v2-enhanced .progress-line{display:none}}