:root{--color-primary: #ff6b35;--color-secondary: #2563eb;--color-success: #22c55e;--color-warning: #f59e0b;--color-danger: #ef4444;--color-bg: rgba(10, 10, 30, .85);--color-bg-light: rgba(255, 255, 255, .1);--color-text: #ffffff;--color-text-secondary: #94a3b8;--color-border: rgba(255, 255, 255, .2);--font-heading: "Montserrat", sans-serif;--font-body: "Inter", sans-serif;--font-mono: "JetBrains Mono", monospace;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 20px;--shadow: 0 4px 20px rgba(0, 0, 0, .3);--shadow-glow: 0 0 30px rgba(255, 107, 53, .5);--transition: all .3s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden;font-family:var(--font-body);color:var(--color-text);background:linear-gradient(135deg,#0a0a1a,#1a1a3e)}#game-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0}.screen{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;z-index:100;background:linear-gradient(135deg,#0a0a1a,#1a1a3e);transition:opacity .6s ease}.screen.hidden{opacity:0;pointer-events:none}.loading-content{text-align:center}.loading-spinner{width:60px;height:60px;border:4px solid var(--color-bg-light);border-top-color:var(--color-primary);border-radius:50%;margin:0 auto 20px;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.start-content{text-align:center;max-width:640px;padding:40px;background:var(--color-bg-light);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--color-border);box-shadow:var(--shadow)}.game-title{font-family:var(--font-heading);font-size:2.5rem;font-weight:800;margin-bottom:10px;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.game-subtitle{color:var(--color-text-secondary);margin-bottom:30px;font-size:1.1rem}.name-input-container{margin-bottom:30px}.name-input-container label{display:block;margin-bottom:10px;font-weight:600}.name-input-container input{width:100%;padding:14px 20px;font-size:1.1rem;font-family:var(--font-body);border:2px solid var(--color-border);border-radius:var(--radius-md);background:#0000004d;color:var(--color-text);outline:none;transition:var(--transition)}.name-input-container input:focus{border-color:var(--color-primary);box-shadow:0 0 15px #ff6b354d}.name-input-container input::placeholder{color:var(--color-text-secondary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 32px;font-family:var(--font-heading);font-size:1rem;font-weight:600;border:none;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);text-transform:uppercase;letter-spacing:.5px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--color-primary),#ff8c5a);color:#fff;box-shadow:0 4px 15px #ff6b3566}.btn-primary:hover:not(:disabled){transform:scale(1.05);box-shadow:0 6px 25px #ff6b3599}.btn-secondary{background:#ffffff1a;color:var(--color-text);border:2px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:#fff3;transform:scale(1.05)}.btn-success{background:linear-gradient(135deg,var(--color-success),#4ade80);color:#fff}.btn-danger{background:linear-gradient(135deg,var(--color-danger),#f87171);color:#fff}#fade-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000;z-index:50;opacity:0;pointer-events:none;transition:opacity .3s ease}#fade-overlay.active{opacity:1}#hud{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:10}#hud.hidden{display:none}.hud-top{display:flex;justify-content:center;gap:30px;padding:15px 30px;background:var(--color-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--color-border);pointer-events:auto}.hud-item{display:flex;align-items:center;gap:8px;font-size:.95rem;font-weight:500}.hud-icon{font-size:1.1rem}.hud-item.timer{font-family:var(--font-mono);color:var(--color-warning)}#hud-score{font-weight:700;color:var(--color-warning)}.progress-indicators{position:fixed;top:70px;right:20px;display:flex;flex-direction:column;gap:10px;pointer-events:auto}.progress-item{display:flex;align-items:center;gap:8px;padding:8px 15px;background:var(--color-bg);border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:var(--transition)}.progress-circle{width:24px;height:24px;border-radius:50%;background:#444;border:2px solid #666;transition:var(--transition)}.progress-item.active .progress-circle{background:var(--color-warning);border-color:var(--color-warning);box-shadow:0 0 10px var(--color-warning)}.progress-item.completed .progress-circle{background:var(--color-success);border-color:var(--color-success);box-shadow:0 0 10px var(--color-success)}.progress-item.error .progress-circle{background:var(--color-danger);border-color:var(--color-danger)}.hint-box{position:fixed;bottom:100px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:15px 25px;background:var(--color-bg);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-left:4px solid var(--color-warning);animation:slideUp .3s ease;pointer-events:auto}.hint-box.hidden{display:none}.hint-icon{font-size:1.3rem}@keyframes slideUp{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.alert-indicator{position:fixed;top:80px;right:20px;display:flex;align-items:center;gap:8px;padding:12px 20px;background:var(--color-danger);border-radius:var(--radius-md);font-weight:700;font-size:1.1rem;animation:pulse .5s ease infinite alternate;pointer-events:auto}.alert-indicator.hidden{display:none}.alert-icon{font-size:1.3rem}@keyframes pulse{0%{transform:scale(1);box-shadow:0 0 20px var(--color-danger)}to{transform:scale(1.05);box-shadow:0 0 40px var(--color-danger)}}.modal-container{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;z-index:200;pointer-events:auto}.modal-container.hidden{display:none}.modal-backdrop{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000b3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-content{position:relative;max-width:820px;width:90%;max-height:90vh;overflow-y:auto;background:linear-gradient(135deg,#141432f2,#1e1e3cf2);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow);animation:modalIn .3s ease}@keyframes modalIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:1px solid var(--color-border)}.modal-header h3{font-family:var(--font-heading);font-size:1.4rem;font-weight:700}.modal-close{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border:none;border-radius:50%;color:var(--color-text);font-size:1.5rem;cursor:pointer;transition:var(--transition)}.modal-close:hover{background:var(--color-danger)}.modal-body{padding:25px}.modal-footer{display:flex;justify-content:flex-end;gap:15px;padding:20px 25px;border-top:1px solid var(--color-border)}.document-view{background:#fffffff2;border-radius:var(--radius-md);padding:25px;color:#333}.document-header{text-align:center;border-bottom:2px solid #333;padding-bottom:15px;margin-bottom:20px}.document-header h4{font-size:1.3rem;margin-bottom:5px}.document-table{width:100%;border-collapse:collapse;margin-bottom:20px}.document-table th,.document-table td{padding:10px;border:1px solid #ddd;text-align:left}.document-table th{background:#f5f5f5;font-weight:600}.document-status{display:inline-block;padding:5px 15px;border-radius:20px;font-weight:600;font-size:.9rem}.document-status.ok{background:#d4edda;color:#155724}.document-status.warning{background:#fff3cd;color:#856404}.choice-options{display:flex;flex-direction:column;gap:12px}.choice-option{display:flex;align-items:center;gap:15px;padding:15px 20px;background:#ffffff0d;border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition)}.choice-option:hover{border-color:var(--color-primary);background:#ff6b351a}.choice-option input{width:20px;height:20px;accent-color:var(--color-primary)}.choice-option label{flex:1;cursor:pointer;line-height:1.5}.task-panel{position:fixed;bottom:20px;left:50%;transform:translate(-50%);width:90%;max-width:900px;background:var(--color-bg);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--color-border);box-shadow:var(--shadow);z-index:150;animation:slideUp .3s ease;pointer-events:auto}.task-panel.hidden{display:none}.task-panel-header{padding:20px 25px;border-bottom:1px solid var(--color-border);text-align:center}.task-panel-header h3{font-family:var(--font-heading);font-size:1.3rem;margin-bottom:5px}.task-panel-header p{color:var(--color-text-secondary)}.task-panel-content{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding:25px}.workers-section h4,.zones-section h4{margin-bottom:15px;font-size:1.1rem}.workers-container{display:flex;flex-wrap:wrap;gap:10px}.worker-card{display:flex;align-items:center;gap:8px;padding:10px 15px;background:#ffffff1a;border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:grab;transition:var(--transition);-webkit-user-select:none;user-select:none}.worker-card:hover{border-color:var(--color-primary);transform:scale(1.05)}.worker-card.dragging{opacity:.5;cursor:grabbing}.worker-card.placed{opacity:.4;pointer-events:none}.worker-avatar{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.9rem}.worker-info{font-size:.9rem}.worker-name{font-weight:600}.worker-role{font-size:.8rem;color:var(--color-text-secondary)}.zones-section{display:flex;flex-direction:column;gap:15px}.zone{padding:15px;background:#ffffff0d;border:2px dashed var(--color-border);border-radius:var(--radius-md);transition:var(--transition)}.zone.drag-over{border-color:var(--color-success);background:#22c55e1a}.zone h4{margin-bottom:5px}.zone p{font-size:.85rem;color:var(--color-text-secondary);margin-bottom:10px}.zone-drop-area{min-height:50px;display:flex;flex-wrap:wrap;gap:8px}.zone-drop-area .worker-card{background:#22c55e33;border-color:var(--color-success)}.task-panel-footer{display:flex;justify-content:flex-end;gap:15px;padding:20px 25px;border-top:1px solid var(--color-border)}.checkbox-options{display:flex;flex-direction:column;gap:15px}.checkbox-option{display:flex;align-items:center;gap:15px;padding:15px 20px;background:#ffffff0d;border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition)}.checkbox-option:hover{border-color:var(--color-secondary)}.checkbox-option.disabled{opacity:.5;pointer-events:none}.checkbox-option input{width:22px;height:22px;accent-color:var(--color-secondary)}.checkbox-content{flex:1}.checkbox-label{font-weight:600;margin-bottom:3px}.checkbox-desc{font-size:.85rem;color:var(--color-text-secondary)}.power-counter{text-align:center;padding:15px;background:#2563eb33;border-radius:var(--radius-md);margin-bottom:20px}.power-counter small{color:var(--color-text-secondary)}.toast-container{position:fixed;bottom:20px;right:20px;display:flex;flex-direction:column;gap:10px;z-index:300;pointer-events:none}.toast{display:flex;align-items:center;gap:12px;padding:15px 20px;background:var(--color-bg);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow);animation:toastIn .3s ease;pointer-events:auto}.toast.success{border-left:4px solid var(--color-success)}.toast.warning{border-left:4px solid var(--color-warning)}.toast.error{border-left:4px solid var(--color-danger)}.toast-icon{font-size:1.3rem}.toast-message{font-weight:500}@keyframes toastIn{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@keyframes toastOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(50px)}}#results-screen{background:linear-gradient(135deg,#0a0a1a,#1a1a3e);overflow-y:auto;align-items:flex-start;padding:20px 0}.results-content{max-width:600px;width:92%;text-align:center;position:relative;z-index:10;padding:10px 0}.results-title{font-family:var(--font-heading);font-size:2rem;font-weight:800;margin-bottom:16px;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.results-score{margin-bottom:16px}.score-label{display:block;font-size:1rem;color:var(--color-text-secondary);margin-bottom:6px}.score-value{font-family:var(--font-heading);font-size:3.5rem;font-weight:800;color:var(--color-warning);text-shadow:0 0 20px var(--color-warning)}.score-max{font-size:1.4rem;color:var(--color-text-secondary)}.results-skills{background:var(--color-bg-light);border-radius:var(--radius-md);padding:16px 20px;margin-bottom:16px;border:1px solid var(--color-border)}.results-skills h3{margin-bottom:12px;font-size:1.1rem}.skill-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--color-border)}.skill-row:last-child{border-bottom:none}.skill-name{font-weight:500;font-size:.9rem}.skill-stars .star{font-size:1rem;opacity:.3;transition:opacity .3s ease}.skill-stars .star.active{opacity:1}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-top:10px}.achievement-card{padding:10px 8px;background:#ffffff0d;border-radius:var(--radius-sm);border:1px solid var(--color-border)}.achievement-icon{font-size:1.5rem;margin-bottom:4px}.achievement-name{font-size:.8rem;font-weight:600}.results-time{margin:16px 0;font-size:1rem}.results-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:16px;padding-bottom:20px}.results-actions .btn{padding:10px 20px;font-size:.85rem}.confetti-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:hidden;z-index:5}.confetti{position:absolute;width:10px;height:10px;top:-20px;animation:confettiFall 3s ease-out forwards}@keyframes confettiFall{to{top:100%;transform:rotate(720deg)}}.scene-instructions{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#000000d9;z-index:500;pointer-events:auto;visibility:visible;opacity:1;transition:opacity .3s ease,visibility .3s ease}.scene-instructions.hidden{display:none;visibility:hidden;opacity:0;pointer-events:none}.instruction-content{max-width:640px;padding:40px;background:linear-gradient(135deg,#141432fa,#1e1e3cfa);border-radius:var(--radius-lg);border:2px solid var(--color-primary);box-shadow:0 0 40px #ff6b354d;text-align:center;animation:modalIn .4s ease}.instruction-content h3{font-family:var(--font-heading);font-size:1.8rem;margin-bottom:20px;color:var(--color-primary)}.instruction-content p{font-size:1.1rem;line-height:1.7;margin-bottom:25px;color:var(--color-text)}.instruction-content .btn{min-width:200px}.click-hint{position:fixed;bottom:150px;left:50%;transform:translate(-50%);padding:15px 25px;background:var(--color-bg);border-radius:var(--radius-md);border:2px solid var(--color-primary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:bounce 2s ease-in-out infinite;pointer-events:none;z-index:20}.click-hint.hidden{display:none}.click-hint-icon{font-size:2rem;animation:point 1s ease-in-out infinite}.click-hint-text{font-weight:600;margin-top:5px}@keyframes bounce{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-10px)}}@keyframes point{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@media (max-width: 768px){.hud-top{flex-wrap:wrap;gap:10px;padding:10px 15px}.hud-item{font-size:.85rem}.task-panel-content{grid-template-columns:1fr}.game-title{font-size:1.8rem}.results-actions{flex-direction:column}.btn{width:100%}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#0000004d}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}::selection{background:var(--color-primary);color:#fff}.avatar-selector{margin-bottom:25px}.avatar-selector p{margin-bottom:12px;font-weight:600;font-size:1rem}.avatar-options{display:flex;justify-content:center;gap:12px}.avatar-option{width:54px;height:54px;display:flex;align-items:center;justify-content:center;font-size:1.7rem;background:#ffffff14;border:2px solid var(--color-border);border-radius:12px;cursor:pointer;transition:all .3s ease}.avatar-option:hover{border-color:var(--color-primary);background:#ff6b3526;transform:scale(1.1)}.avatar-option.selected{border-color:var(--color-primary);background:#ff6b3533;transform:scale(1.15);box-shadow:0 0 20px #ff6b354d}.intro-content{display:flex;gap:30px;max-width:750px;width:90%;padding:35px;background:linear-gradient(135deg,#141432f2,#1e1e3cf2);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow);align-items:center;animation:modalIn .4s ease}#intro-screen.screen{background:#000c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:150}#intro-screen.screen.hidden{display:none}.intro-left{flex-shrink:0;width:200px;height:200px;border-radius:var(--radius-md);overflow:hidden;border:2px solid var(--color-border);background:#1a1a3e}.intro-left canvas{width:100%;height:100%;display:block}.intro-right{flex:1}.intro-right h2{font-family:var(--font-heading);font-size:1.5rem;margin-bottom:15px}.intro-duties{font-size:1rem;line-height:1.7;color:var(--color-text-secondary);margin-bottom:20px}.intro-duties br{content:"";display:block;margin:4px 0}.intro-meta{display:flex;gap:20px;margin-bottom:25px;padding:12px 15px;background:#ffffff0d;border-radius:var(--radius-md);font-size:.95rem}.intro-buttons{display:flex;gap:12px}.intro-buttons .btn{flex:1}@media (max-width: 640px){.intro-content{flex-direction:column;text-align:center;padding:25px}.intro-left{width:120px;height:120px}.intro-meta{flex-direction:column;gap:8px;align-items:center}.intro-buttons{flex-direction:column}}.power-counter{text-align:center;padding:15px;background:#2563eb26;border-radius:var(--radius-md);margin-bottom:20px;font-size:1.1rem}.power-counter span{font-size:1.5rem;font-weight:700;color:var(--color-secondary)}.modal-body::-webkit-scrollbar{width:6px}.modal-body::-webkit-scrollbar-track{background:#0003;border-radius:3px}.modal-body::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}
