:root{--mars-green:#00c851;--mars-green-dark:#007e33;--mars-black:#1a1a1a;--mars-dark:#2d2d2d;--mars-gray:#4a4a4a;--mars-light:#f5f5f5;--danger-red:#f33;--warning-yellow:#fc0;--success-green:#00c851}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--mars-black);color:var(--mars-light);font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,sans-serif;overflow:hidden}.game-container{background:linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 100%);flex-direction:column;width:100vw;height:100vh;display:flex}.game-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:2px solid var(--mars-green);background:#00000080;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex}.header-left{align-items:center;gap:1.5rem;display:flex}.game-title{color:var(--mars-green);text-transform:uppercase;letter-spacing:2px;font-size:1.5rem;font-weight:700}.header-right{align-items:center;gap:2rem;display:flex}.score-display{flex-direction:column;align-items:center;gap:.25rem;display:flex}.score-label{text-transform:uppercase;color:#888;letter-spacing:1px;font-size:.75rem}.score-value{color:var(--mars-green);font-size:1.5rem;font-weight:700}.health-bar-container{flex-direction:column;gap:.25rem;min-width:150px;display:flex}.health-label{text-transform:uppercase;color:#888;letter-spacing:1px;font-size:.75rem}.health-bar-wrapper{background:#ffffff1a;border-radius:12px;height:24px;position:relative;overflow:hidden}.health-bar-fill{border-radius:12px;height:100%;transition:width .3s,background-color .3s}.health-value{color:#fff;text-shadow:0 1px 2px #00000080;font-size:.875rem;font-weight:600;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.language-selector select{border:1px solid var(--mars-green);color:var(--mars-light);cursor:pointer;background:#ffffff1a;border-radius:6px;padding:.5rem 1rem;font-size:.875rem}.language-selector select:hover{background:#00c8511a}.phase-nav{background:#0000004d;justify-content:space-between;align-items:center;padding:.75rem 2rem;display:flex}.tutorial-btn{background:linear-gradient(135deg, var(--mars-green) 0%, var(--mars-green-dark) 100%);color:#000;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.6rem 1.2rem;font-weight:600;transition:all .2s;display:flex}.tutorial-btn:hover{transform:scale(1.05);box-shadow:0 0 20px #00c85166}.phase-selector{gap:.5rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.phase-btn{color:#888;cursor:pointer;white-space:nowrap;background:#ffffff0d;border:1px solid #0000;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;transition:all .2s;display:flex}.phase-btn:hover:not(:disabled){border-color:var(--mars-green);background:#ffffff1a}.phase-btn.active{border-color:var(--mars-green);color:var(--mars-green);background:#00c85133}.phase-btn.unlocked{color:var(--mars-light)}.phase-btn.locked{opacity:.5;cursor:not-allowed}.phase-icon{font-size:1.25rem}.phase-number{background:var(--mars-green);color:#000;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:.75rem;font-weight:700;display:inline-flex}.phase-check{color:var(--mars-green);margin-left:.25rem}.scene-container{flex:1;min-height:0;position:relative}.scene-container canvas{width:100%!important;height:100%!important}.instructions-panel{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-left:4px solid var(--mars-green);background:#000c;border-radius:12px;max-width:400px;padding:1rem 1.5rem;position:absolute;bottom:1rem;left:1rem;right:1rem}.controls-help h4{color:var(--mars-green);text-transform:uppercase;letter-spacing:1px;margin-bottom:.75rem;font-size:.9rem}.controls-grid{grid-template-columns:repeat(2,1fr);gap:.5rem;margin-bottom:.75rem;display:grid}.control-item{align-items:center;gap:.5rem;display:flex}.control-item kbd{color:var(--mars-green);text-align:center;background:#ffffff1a;border:1px solid #fff3;border-radius:4px;min-width:24px;padding:.2rem .5rem;font-family:monospace;font-size:.8rem}.control-item span{color:#ccc;font-size:.8rem}.controls-tip{color:#888;margin-top:.5rem;font-size:.75rem;font-style:italic}.video-tutorial-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2000;background:#000000d9;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.video-tutorial-container,.tutorial-menu-container{border:2px solid var(--mars-green);background:linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 100%);border-radius:20px;width:100%;max-width:700px;padding:2rem;box-shadow:0 0 50px #00c8514d}.video-header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.video-header h3{color:var(--mars-green);margin:0;font-size:1.5rem}.close-btn{color:#888;cursor:pointer;background:0 0;border:none;font-size:2rem;line-height:1;transition:color .2s}.close-btn:hover{color:var(--danger-red)}.video-player{aspect-ratio:16/9;background:#000;border-radius:12px;margin-bottom:1.5rem;overflow:hidden}.video-placeholder{background:linear-gradient(135deg,#1a1a1a 0%,#0a0a0a 100%);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.play-button{cursor:pointer;flex-direction:column;align-items:center;gap:1rem;transition:transform .2s;display:flex}.play-button:hover{transform:scale(1.1)}.play-icon{background:var(--mars-green);color:#000;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;font-size:2rem;display:flex;box-shadow:0 0 30px #00c85180}.play-text{color:#fff;font-size:1.1rem;font-weight:600}.video-content{flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:2rem;display:flex}.simulated-video{text-align:center;width:100%}.video-animation{color:var(--mars-green);margin-bottom:2rem;font-size:3rem}.progress-bar{background:#ffffff1a;border-radius:4px;width:100%;height:8px;margin-bottom:1rem;overflow:hidden}.progress-fill{background:var(--mars-green);border-radius:4px;height:100%;transition:width .3s}.progress-text{color:#888;font-size:.9rem}.video-info{margin-bottom:1.5rem}.video-description{color:#ccc;margin-bottom:1rem;font-size:1rem;line-height:1.6}.video-meta{align-items:center;gap:1.5rem;display:flex}.duration{color:#888;font-size:.9rem}.completed-badge{background:var(--mars-green);color:#000;border-radius:20px;padding:.3rem .8rem;font-size:.85rem;font-weight:600}.video-actions{gap:1rem;display:flex}.btn-skip,.btn-watch,.btn-continue{cursor:pointer;border:none;border-radius:10px;flex:1;padding:1rem;font-size:1rem;font-weight:600;transition:all .2s}.btn-skip{color:#888;background:#ffffff1a}.btn-skip:hover{color:#fff;background:#fff3}.btn-watch{background:var(--mars-green);color:#000}.btn-watch:hover:not(:disabled){background:var(--mars-green-dark);transform:scale(1.02)}.btn-watch:disabled{opacity:.5;cursor:not-allowed}.btn-continue{background:var(--mars-green);color:#000}.btn-continue:hover{background:var(--mars-green-dark)}.tutorial-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.tutorial-card{cursor:pointer;background:#ffffff0d;border:2px solid #0000;border-radius:12px;align-items:center;gap:1rem;padding:1.5rem;transition:all .2s;display:flex}.tutorial-card:hover{background:#ffffff1a;transform:translateY(-2px)}.tutorial-icon{border-radius:12px;justify-content:center;align-items:center;width:50px;height:50px;font-size:1.5rem;display:flex}.tutorial-info{flex:1}.tutorial-info h4{color:#fff;margin:0 0 .25rem;font-size:1rem}.tutorial-info p{color:#888;margin:0;font-size:.85rem}.play-btn-small{background:var(--mars-green);color:#000;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:.8rem;display:flex}.inspection-panel-overlay{z-index:1000;background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.inspection-panel{border:2px solid var(--mars-green);background:linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 100%);border-radius:16px;min-width:300px;max-width:400px;padding:2rem;box-shadow:0 0 30px #00c8514d}.inspection-panel h3{color:var(--mars-green);text-align:center;text-transform:uppercase;margin-bottom:1rem;font-size:1.25rem}.inspection-content{margin-bottom:1.5rem}.damage-warning{color:var(--danger-red);margin-bottom:.5rem;font-size:1.1rem;font-weight:700}.ok-status{color:var(--success-green);margin-bottom:.5rem;font-size:1.1rem;font-weight:700}.inspection-content p{color:#ccc;margin-bottom:.5rem}.inspection-actions{gap:1rem;margin-top:1rem;display:flex}.btn-scarta{background:var(--danger-red);color:#fff;cursor:pointer;border:none;border-radius:8px;flex:1;padding:.75rem;font-weight:600;transition:all .2s}.btn-scarta:hover{background:#c00;transform:scale(1.02)}.btn-carica{background:var(--mars-green);color:#000;cursor:pointer;border:none;border-radius:8px;flex:1;padding:.75rem;font-weight:600;transition:all .2s}.btn-carica:hover{background:var(--mars-green-dark);transform:scale(1.02)}.btn-close{color:#888;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;width:100%;padding:.75rem;font-weight:500;transition:all .2s}.btn-close:hover{color:#fff;background:#fff3}.game-over-screen{z-index:1000;background:linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 100%);flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.game-over-screen h1{color:var(--danger-red);text-transform:uppercase;letter-spacing:4px;margin-bottom:1rem;font-size:3rem}.game-over-screen p{color:#888;text-align:center;max-width:500px;margin-bottom:2rem;font-size:1.25rem}.restart-btn{background:var(--mars-green);color:#000;cursor:pointer;text-transform:uppercase;letter-spacing:2px;border:none;border-radius:8px;padding:1rem 3rem;font-size:1.25rem;font-weight:700;transition:all .2s}.restart-btn:hover{background:var(--mars-green-dark);transform:scale(1.05)}[dir=rtl] .game-header,[dir=rtl] .header-left,[dir=rtl] .header-right{flex-direction:row-reverse}[dir=rtl] .instructions-panel{border-left:none;border-right:4px solid var(--mars-green)}::-webkit-scrollbar{height:6px}::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}::-webkit-scrollbar-thumb{background:var(--mars-green);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--mars-green-dark)}.component-3d-view{background:linear-gradient(135deg,#1a1a1a 0%,#0a0a0a 100%);border-radius:12px;width:100%;height:350px;position:relative;overflow:hidden}.component-3d-view canvas{width:100%!important;height:100%!important}.view-controls-hint{color:#888;white-space:nowrap;background:#000000b3;border-radius:20px;padding:.3rem .8rem;font-size:.75rem;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.inspection-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:3000;background:#000000d9;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.inspection-modal{border:2px solid var(--mars-green);background:linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 100%);border-radius:20px;width:100%;max-width:900px;max-height:90vh;padding:2rem;overflow-y:auto;box-shadow:0 0 50px #00c8514d}.inspection-modal.expanded{max-width:1000px}.inspection-content{grid-template-columns:1.2fr 1fr;gap:2rem;margin-top:1.5rem;display:grid}.inspection-left{min-height:350px}.inspection-right{flex-direction:column;gap:1rem;display:flex}.inspection-header{text-align:center;border-bottom:1px solid #ffffff1a;margin-bottom:1.5rem;padding-bottom:1rem}.inspection-header h3{color:var(--mars-green);margin-bottom:.5rem;font-size:1.5rem}.component-name{color:#888;font-size:1.1rem}.component-view{gap:1.5rem;margin-bottom:1.5rem;display:flex}.component-visual{background:#ffffff0d;border:2px solid #ffffff1a;border-radius:12px;flex-direction:column;flex:0 0 150px;justify-content:center;align-items:center;height:150px;display:flex;position:relative}.component-visual.basetta{border-color:#666}.component-visual.telaio{border-color:#4a90e2}.component-visual.impalcato{border-color:#8b4513}.component-visual.damaged{border-color:var(--danger-red);animation:2s infinite pulse-warning}@keyframes pulse-warning{0%,to{box-shadow:0 0 #f336}50%{box-shadow:0 0 20px 5px #f333}}.component-icon{margin-bottom:.5rem;font-size:4rem}.damage-indicators{position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.damage-badge{background:var(--danger-red);color:#fff;white-space:nowrap;border-radius:20px;padding:.3rem .8rem;font-size:.75rem;font-weight:600}.inspection-details{flex:1}.detail-row{border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.5rem;display:flex}.detail-label{color:#888;font-size:.9rem}.detail-value{color:#fff;font-weight:600}.integrity-bar{flex:1;align-items:center;gap:.75rem;margin-left:1rem;display:flex}.integrity-fill{border-radius:4px;flex:1;height:8px;transition:width .3s}.integrity-fill.high{background:var(--mars-green)}.integrity-fill.medium{background:var(--warning-yellow)}.integrity-fill.low{background:var(--danger-red)}.integrity-text{color:#fff;min-width:40px;font-size:.9rem;font-weight:600}.damage-description{border-left:3px solid var(--danger-red);background:#ff33331a;border-radius:0 8px 8px 0;margin-top:1rem;padding:1rem}.damage-description p{color:#ccc;margin:0;font-size:.9rem;line-height:1.5}.damage-description p:first-child{color:var(--danger-red);margin-bottom:.5rem}.decision-section{margin-top:auto}.decision-prompt{text-align:center;color:#fff;margin-bottom:1rem;font-size:1rem}.buttons-row{gap:1rem;display:flex}.btn-usable,.btn-damaged{cursor:pointer;border:none;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:1.2rem;font-size:1rem;font-weight:600;transition:all .2s;display:flex}.btn-usable{background:var(--mars-green);color:#000}.btn-usable:hover{background:var(--mars-green-dark);transform:scale(1.02)}.btn-damaged{background:var(--danger-red);color:#fff}.btn-damaged:hover{background:#c00;transform:scale(1.02)}.btn-icon{font-size:1.2rem}.decision-result{text-align:center;border-radius:12px;margin-bottom:1rem;padding:1.5rem}.decision-result.correct{border:2px solid var(--mars-green);background:#00c85133}.decision-result.wrong{border:2px solid var(--danger-red);background:#f333}.result-icon{margin-bottom:.5rem;font-size:3rem;display:block}.decision-result.correct .result-icon{color:var(--mars-green)}.decision-result.wrong .result-icon{color:var(--danger-red)}.decision-result p{color:#fff;margin:0;font-size:1.1rem}.educational-note{color:#888;font-size:.9rem;font-style:italic;margin-top:.75rem!important}.load-confirmation{color:var(--mars-green);font-size:1rem;font-weight:600;margin-top:.5rem!important}.damage-warning-box{border:1px solid var(--danger-red);background:#f333;border-radius:8px;align-items:center;gap:.5rem;margin-top:.5rem;padding:.75rem;display:flex}.warning-icon{font-size:1.2rem}.warning-text{color:var(--danger-red);font-size:.9rem;font-weight:600}.auto-close-indicator{text-align:center;color:#888;justify-content:center;align-items:center;gap:.5rem;font-size:.9rem;display:flex}.progress-dots span{opacity:0;animation:1.5s infinite dots}.progress-dots span:nth-child(2){animation-delay:.5s}.progress-dots span:nth-child(3){animation-delay:1s}@keyframes dots{0%,to{opacity:0}50%{opacity:1}}@media (width<=768px){.game-header{flex-direction:column;gap:1rem;padding:.75rem 1rem}.game-title{font-size:1.1rem}.phase-selector{gap:.25rem}.phase-btn{padding:.4rem .6rem;font-size:.8rem}.instructions-panel{padding:.75rem;bottom:.5rem;left:.5rem;right:.5rem}}
