:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;margin:0;padding:0}body{margin:0;min-width:320px;min-height:100vh}.game-intro-container{min-height:100vh;padding:2rem;background:linear-gradient(135deg,#0f0c29,#302b63,#24243e);color:#fff;overflow-x:hidden;opacity:0;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.game-intro-container.visible{opacity:1;transform:translateY(0)}.intro-header{text-align:center;margin-bottom:3rem;animation:headerFadeIn .8s ease-out .2s both}@keyframes headerFadeIn{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.intro-logo{font-size:5rem;margin-bottom:1rem;animation:logoPulse 3s ease-in-out infinite;filter:drop-shadow(0 0 30px rgba(102,126,234,.5))}@keyframes logoPulse{0%,to{transform:scale(1);filter:drop-shadow(0 0 30px rgba(102,126,234,.5))}50%{transform:scale(1.05);filter:drop-shadow(0 0 50px rgba(102,126,234,.8))}}.intro-title{font-size:3rem;font-weight:800;margin:0 0 .5rem;background:linear-gradient(135deg,#667eea,#764ba2,#f093fb);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:none;letter-spacing:2px}.intro-tagline{font-size:1.25rem;color:#ffffffb3;margin:0;font-weight:300;letter-spacing:1px}.intro-section{max-width:1000px;margin:0 auto 3rem;opacity:0;transform:translateY(30px);animation:sectionFadeIn .6s ease-out forwards}.story-section{animation-delay:.3s}.objective-section{animation-delay:.4s}.resources-section{animation-delay:.5s}.mechanics-section{animation-delay:.6s}@keyframes sectionFadeIn{to{opacity:1;transform:translateY(0)}}.section-title{display:flex;align-items:center;justify-content:center;gap:.75rem;font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;color:#fff}.section-icon{font-size:1.75rem}.story-content{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:2rem;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0003}.story-content p{font-size:1.1rem;line-height:1.8;color:#ffffffd9;margin:0 0 1rem}.story-content p:last-child{margin-bottom:0}.story-content strong{color:#667eea;font-weight:600}.objective-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.objective-card{display:flex;align-items:flex-start;gap:1rem;background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;padding:1.25rem;border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.objective-card:hover{transform:translateY(-4px);background:#ffffff14;border-color:#667eea4d;box-shadow:0 8px 24px #667eea33}.objective-card.primary{grid-column:1 / -1;background:linear-gradient(135deg,#667eea33,#764ba233);border-color:#667eea4d}.objective-icon{font-size:2rem;flex-shrink:0}.objective-text h3{font-size:1.1rem;font-weight:600;margin:0 0 .25rem;color:#fff}.objective-text p{font-size:.9rem;color:#ffffffb3;margin:0;line-height:1.5}.resource-cards,.mechanic-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.resource-card,.mechanic-card{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:1.5rem;border:1px solid rgba(255,255,255,.1);text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;opacity:0;transform:translateY(20px);animation:cardFadeIn .5s ease-out forwards;animation-delay:var(--card-delay, 0s)}@keyframes cardFadeIn{to{opacity:1;transform:translateY(0)}}.resource-card:before,.mechanic-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--card-color, #667eea);transform:scaleX(0);transition:transform .3s ease}.resource-card:hover:before,.mechanic-card:hover:before{transform:scaleX(1)}.resource-card:hover,.mechanic-card:hover{transform:translateY(-8px);background:#ffffff14;border-color:var(--card-color, rgba(102, 126, 234, .3));box-shadow:0 12px 40px #0000004d,0 0 30px color-mix(in srgb,var(--card-color, #667eea) 20%,transparent)}.resource-icon,.mechanic-icon{font-size:3rem;margin-bottom:1rem;display:block;transition:transform .3s ease}.resource-card:hover .resource-icon,.mechanic-card:hover .mechanic-icon{transform:scale(1.1)}.resource-name,.mechanic-name{font-size:1.2rem;font-weight:700;margin:0 0 .75rem;color:var(--card-color, #fff)}.resource-description,.mechanic-description{font-size:.95rem;color:#ffffffbf;line-height:1.6;margin:0}.intro-actions{display:flex;justify-content:center;gap:1.5rem;margin:3rem 0 2rem;opacity:0;animation:actionsFadeIn .6s ease-out .8s forwards}@keyframes actionsFadeIn{to{opacity:1}}.intro-button{display:flex;align-items:center;gap:.75rem;padding:1rem 2.5rem;font-size:1.1rem;font-weight:700;border:none;border-radius:12px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.intro-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.intro-button:hover:before{left:100%}.intro-button.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 20px #667eea66}.intro-button.primary:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 8px 30px #667eea99}.intro-button.secondary{background:#ffffff1a;color:#fff;border:2px solid rgba(255,255,255,.3)}.intro-button.secondary:hover{transform:translateY(-4px);background:#ffffff26;border-color:#ffffff80;box-shadow:0 8px 24px #0003}.intro-button:active{transform:translateY(-2px) scale(.98)}.button-icon{font-size:1.25rem}.intro-footer{text-align:center;padding:1rem;opacity:0;animation:footerFadeIn .6s ease-out 1s forwards}@keyframes footerFadeIn{to{opacity:1}}.intro-footer p{font-size:.9rem;color:#ffffff80;margin:0;font-style:italic}@media(max-width:1024px){.game-intro-container{padding:1.5rem}.intro-title{font-size:2.5rem}.intro-logo{font-size:4rem}}@media(max-width:768px){.game-intro-container{padding:1rem}.intro-title{font-size:2rem;letter-spacing:1px}.intro-tagline{font-size:1rem}.intro-logo{font-size:3.5rem}.section-title{font-size:1.25rem}.story-content{padding:1.5rem}.story-content p{font-size:1rem}.objective-content{grid-template-columns:1fr}.objective-card.primary{grid-column:1}.resource-cards,.mechanic-cards{grid-template-columns:1fr;gap:1rem}.intro-actions{flex-direction:column;align-items:center;gap:1rem}.intro-button{width:100%;max-width:300px;justify-content:center}}@media(max-width:480px){.intro-title{font-size:1.75rem}.intro-logo{font-size:3rem}.intro-tagline{font-size:.9rem}.section-title{font-size:1.1rem}.story-content{padding:1rem}.story-content p{font-size:.95rem;line-height:1.7}.resource-card,.mechanic-card{padding:1.25rem}.resource-icon,.mechanic-icon{font-size:2.5rem}.resource-name,.mechanic-name{font-size:1.1rem}.resource-description,.mechanic-description{font-size:.9rem}.intro-button{padding:.875rem 2rem;font-size:1rem}}@media(prefers-reduced-motion:reduce){.game-intro-container,.intro-header,.intro-section,.resource-card,.mechanic-card,.intro-actions,.intro-footer{animation:none;opacity:1;transform:none}.intro-logo{animation:none}.intro-button:before{display:none}.resource-card:hover,.mechanic-card:hover,.objective-card:hover,.intro-button:hover{transform:none}}.game-initializer{max-width:1200px;margin:0 auto;padding:2rem;min-height:100vh;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);animation:initializerFadeIn .6s ease-out}@keyframes initializerFadeIn{0%{opacity:0}to{opacity:1}}.initializer-header{text-align:center;margin-bottom:2rem;animation:headerSlideDown .5s ease-out}@keyframes headerSlideDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.initializer-header h1{font-size:2.5rem;color:#fff;margin-bottom:.5rem;text-shadow:0 2px 20px rgba(102,126,234,.5)}.initializer-header .subtitle{font-size:1.1rem;color:#a0a0a0}.saved-game-section{text-align:center;margin-bottom:2rem;padding:1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;animation:sectionFadeIn .5s ease-out .2s both;box-shadow:0 4px 20px #667eea4d}@keyframes sectionFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.load-game-button{padding:1rem 2rem;font-size:1.1rem;font-weight:700;color:#fff;background:#fff3;border:2px solid white;border-radius:8px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.load-game-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.load-game-button:hover:before{left:100%}.load-game-button:hover{background:#ffffff4d;transform:translateY(-3px);box-shadow:0 6px 20px #0003}.load-game-button:active{transform:translateY(-1px)}.or-divider{color:#fffc;margin-top:1rem;font-size:.9rem}.difficulty-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.difficulty-card{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 4px 20px #0000001a;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);border:3px solid transparent;position:relative;overflow:hidden}.difficulty-card:hover{transform:translateY(-5px);box-shadow:0 8px 30px #00000026}.difficulty-card.selected{transform:translateY(-5px);box-shadow:0 8px 30px #0003}.difficulty-easy{border-color:#2ecc71}.difficulty-easy.selected{background:linear-gradient(135deg,#f0fff5,#fff);border-color:#27ae60}.difficulty-easy .difficulty-name{color:#27ae60}.difficulty-normal{border-color:#3498db}.difficulty-normal.selected{background:linear-gradient(135deg,#f0f7ff,#fff);border-color:#2980b9}.difficulty-normal .difficulty-name{color:#2980b9}.difficulty-hard{border-color:#e67e22}.difficulty-hard.selected{background:linear-gradient(135deg,#fff8f0,#fff);border-color:#d35400}.difficulty-hard .difficulty-name{color:#d35400}.difficulty-nightmare{border-color:#e74c3c}.difficulty-nightmare.selected{background:linear-gradient(135deg,#fff0f0,#fff);border-color:#c0392b}.difficulty-nightmare .difficulty-name{color:#c0392b}.difficulty-name{font-size:1.3rem;margin-bottom:.5rem;text-align:center;font-weight:700}.difficulty-description{color:#666;text-align:center;margin-bottom:1rem;font-size:.9rem}.difficulty-modifiers{margin-bottom:.5rem}.difficulty-modifiers h4{font-size:.85rem;color:#888;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem;border-bottom:1px solid #eee;padding-bottom:.25rem}.difficulty-modifiers ul{list-style:none;padding:0;margin:0}.difficulty-modifiers li{display:flex;justify-content:space-between;padding:.25rem 0;font-size:.85rem}.modifier-label{color:#666}.modifier-value{font-weight:700}.modifier-value.positive{color:#27ae60}.modifier-value.negative{color:#e74c3c}.selected-indicator{position:absolute;top:.75rem;right:.75rem;background:#27ae60;color:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.8rem;font-weight:700}.step-navigation{text-align:center;margin:2rem 0}.continue-button{padding:1rem 2.5rem;font-size:1.1rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #667eea66}.continue-button:hover{transform:translateY(-3px);box-shadow:0 6px 25px #667eea80}.continue-button:active{transform:translateY(-1px)}.selected-difficulty-banner{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem;background:#ffffff1a;border-radius:8px;margin-bottom:2rem;color:#fff;font-size:1rem}.difficulty-badge{padding:.25rem .75rem;border-radius:4px;font-weight:700}.difficulty-badge.difficulty-easy{background:#27ae60;color:#fff}.difficulty-badge.difficulty-normal{background:#2980b9;color:#fff}.difficulty-badge.difficulty-hard{background:#d35400;color:#fff}.difficulty-badge.difficulty-nightmare{background:#c0392b;color:#fff}.change-difficulty-btn{padding:.25rem .75rem;font-size:.85rem;color:#a0a0a0;background:transparent;border:1px solid #a0a0a0;border-radius:4px;cursor:pointer;transition:all .2s ease}.change-difficulty-btn:hover{color:#fff;border-color:#fff;background:#ffffff1a}.archetype-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem}.archetype-card{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 4px 20px #0000001a;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);border:3px solid transparent;position:relative;overflow:hidden}.archetype-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:currentColor;transform:scaleX(0);transition:transform .3s ease}.archetype-card:hover:before{transform:scaleX(1)}.archetype-card:hover{transform:translateY(-10px) scale(1.02);box-shadow:0 12px 40px #0003}.archetype-card:nth-child(1){animation:cardSlideUp .5s ease-out .3s both}.archetype-card:nth-child(2){animation:cardSlideUp .5s ease-out .4s both}.archetype-card:nth-child(3){animation:cardSlideUp .5s ease-out .5s both}@keyframes cardSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.archetype-startup{border-color:#ff6b35;color:#ff6b35}.archetype-startup:hover{border-color:#ff6b35;background:linear-gradient(135deg,#fff5f0,#fff);box-shadow:0 12px 40px #ff6b3540}.archetype-startup .archetype-name{color:#ff6b35}.archetype-startup .select-button{background:linear-gradient(135deg,#ff6b35,#f7931e)}.archetype-startup .archetype-icon{animation:rocketBounce 2s ease-in-out infinite}@keyframes rocketBounce{0%,to{transform:translateY(0) rotate(-10deg)}50%{transform:translateY(-5px) rotate(10deg)}}.archetype-bigtech{border-color:#4a90d9;color:#4a90d9}.archetype-bigtech:hover{border-color:#4a90d9;background:linear-gradient(135deg,#f0f7ff,#fff);box-shadow:0 12px 40px #4a90d940}.archetype-bigtech .archetype-name{color:#4a90d9}.archetype-bigtech .select-button{background:linear-gradient(135deg,#4a90d9,#357abd)}.archetype-bigtech .archetype-icon{animation:buildingPulse 3s ease-in-out infinite}@keyframes buildingPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.archetype-academic{border-color:#2ecc71;color:#2ecc71}.archetype-academic:hover{border-color:#2ecc71;background:linear-gradient(135deg,#f0fff5,#fff);box-shadow:0 12px 40px #2ecc7140}.archetype-academic .archetype-name{color:#2ecc71}.archetype-academic .select-button{background:linear-gradient(135deg,#2ecc71,#27ae60)}.archetype-academic .archetype-icon{animation:bookFloat 2.5s ease-in-out infinite}@keyframes bookFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.archetype-icon{font-size:3rem;text-align:center;margin-bottom:.5rem}.archetype-name{font-size:1.5rem;margin-bottom:.5rem;text-align:center;font-weight:700}.archetype-description{color:#666;text-align:center;margin-bottom:1rem;font-size:.95rem}.archetype-resources,.archetype-ability{margin-bottom:1rem}.archetype-resources h4,.archetype-ability h4{font-size:.9rem;color:#888;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem;border-bottom:1px solid #eee;padding-bottom:.25rem}.archetype-resources ul{list-style:none;padding:0;margin:0}.archetype-resources li{display:flex;justify-content:space-between;padding:.25rem 0;font-size:.9rem;transition:all .2s ease}.archetype-resources li:hover{background:#00000005;padding-left:.5rem}.resource-label{color:#666}.resource-value{font-weight:700;color:#333}.archetype-ability p{font-size:.9rem;color:#333;font-weight:500;text-align:center;padding:.5rem;background:#f8f9fa;border-radius:8px;transition:all .3s ease}.archetype-card:hover .archetype-ability p{background:#0000000d}.select-button{width:100%;padding:.75rem 1.5rem;font-size:1rem;font-weight:700;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);margin-top:.5rem;position:relative;overflow:hidden}.select-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.select-button:hover:before{left:100%}.select-button:hover{transform:scale(1.03);box-shadow:0 6px 20px #00000040}.select-button:active{transform:scale(.98)}.game-intro{background:#fffffff2;border-radius:12px;padding:1.5rem;margin-top:2rem;animation:introFadeIn .5s ease-out .6s both;box-shadow:0 4px 20px #0000001a}@keyframes introFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.game-intro h2{font-size:1.2rem;color:#333;margin-bottom:1rem;text-align:center}.game-intro p{color:#666;line-height:1.6;margin-bottom:.75rem;font-size:.95rem}.game-intro p:last-child{margin-bottom:0}@media(max-width:1024px){.game-initializer{padding:1.5rem}.initializer-header h1{font-size:2rem}}@media(max-width:768px){.game-initializer{padding:1rem}.initializer-header h1{font-size:1.75rem}.initializer-header .subtitle{font-size:1rem}.archetype-grid{grid-template-columns:1fr;gap:1rem}.archetype-card{padding:1.25rem}.archetype-icon{font-size:2.5rem}.archetype-name{font-size:1.25rem}.saved-game-section{padding:1rem}.load-game-button{padding:.875rem 1.5rem;font-size:1rem}}@media(max-width:480px){.game-initializer{padding:.75rem}.initializer-header h1{font-size:1.5rem}.initializer-header .subtitle{font-size:.9rem}.archetype-card{padding:1rem}.archetype-icon{font-size:2rem}.archetype-name{font-size:1.1rem}.archetype-description{font-size:.85rem}.select-button{padding:.625rem 1rem;font-size:.9rem}.game-intro{padding:1rem}.game-intro h2{font-size:1rem}.game-intro p{font-size:.85rem}}.resource-panel{background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 2px 12px #00000014;animation:slideInLeft .4s ease-out}.panel-title{font-size:1rem;font-weight:600;color:#333;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid #f0f0f0}.resource-item{display:flex;align-items:center;padding:.75rem;border-radius:8px;margin-bottom:.75rem;transition:all .25s ease;position:relative;overflow:hidden}.resource-item:hover{transform:translate(4px);box-shadow:0 2px 8px #0000001a}.resource-item.value-changed{animation:resourcePulse .5s ease-out}@keyframes resourcePulse{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.resource-icon{font-size:1.5rem;margin-right:.75rem;width:2rem;text-align:center;transition:transform .3s ease}.resource-item:hover .resource-icon{transform:scale(1.15)}.resource-info{display:flex;flex-direction:column;flex:1}.resource-item-label{font-size:.75rem;color:#888;text-transform:uppercase;letter-spacing:.5px}.resource-item-value{font-size:1.25rem;font-weight:700;color:#333;transition:color .3s ease,transform .3s ease}.resource-change-indicator{position:absolute;right:.75rem;font-size:.85rem;font-weight:600;padding:.125rem .5rem;border-radius:4px;animation:fadeSlideIn .3s ease-out forwards;opacity:0}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.resource-change-indicator.positive{color:#16a34a;background:#22c55e26}.resource-change-indicator.negative{color:#dc2626;background:#ef444426}.resource-item.budget{background:linear-gradient(135deg,#fff9e6,#fff5d6);border:1px solid #ffd700}.resource-item.budget .resource-item-value{color:#b8860b}.resource-item.budget.negative{background:linear-gradient(135deg,#fff0f0,#ffe6e6);border:1px solid #ff6b6b;animation:dangerPulse 2s infinite}@keyframes dangerPulse{0%,to{box-shadow:0 0 #ef444466}50%{box-shadow:0 0 0 6px #ef444400}}.resource-item.budget.negative .resource-item-value{color:#dc3545}.resource-item.dirty-data{background:linear-gradient(135deg,#f5f5f5,#ebebeb);border:1px solid #ccc}.resource-item.dirty-data .resource-item-value{color:#666}.resource-item.golden-data{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:1px solid #f59e0b}.resource-item.golden-data .resource-item-value{color:#d97706}.resource-item.golden-data .resource-icon{animation:sparkle 2s infinite}@keyframes sparkle{0%,to{filter:brightness(1)}50%{filter:brightness(1.3)}}.compute-bar-container{margin-bottom:1rem;padding:.75rem;background:linear-gradient(135deg,#e8f4fd,#d6ebfa);border-radius:8px;border:1px solid #4a90d9;transition:all .3s ease}.compute-bar-container:hover{box-shadow:0 2px 12px #4a90d933}.compute-bar-header{display:flex;align-items:center;margin-bottom:.5rem}.compute-icon{font-size:1.25rem;margin-right:.5rem;animation:electricPulse 1.5s infinite}@keyframes electricPulse{0%,to{opacity:1;filter:brightness(1)}50%{opacity:.8;filter:brightness(1.2)}}.compute-label{font-size:.75rem;color:#4a90d9;text-transform:uppercase;letter-spacing:.5px;flex:1}.compute-value{font-size:1rem;font-weight:700;color:#2563eb;transition:all .3s ease}.compute-bar-track{position:relative;height:12px;background:#fffc;border-radius:6px;overflow:hidden;box-shadow:inset 0 1px 3px #0000001a}.compute-bar-fill{position:absolute;top:0;left:0;height:100%;background:linear-gradient(90deg,#4a90d9,#2563eb);border-radius:6px;transition:width .5s cubic-bezier(.4,0,.2,1)}.compute-bar-fill.low{background:linear-gradient(90deg,#f59e0b,#d97706)}.compute-bar-fill.empty{background:linear-gradient(90deg,#ef4444,#dc2626)}.compute-bar-segments{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.compute-segment-line{position:absolute;top:0;bottom:0;width:2px;background:#ffffff80}.data-section{margin-top:.5rem}.data-section-title{font-size:.8rem;font-weight:600;color:#666;margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.5px}.data-capacity-bar{height:6px;background:#0000001a;border-radius:3px;margin-bottom:.75rem;overflow:hidden}.data-capacity-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:3px;transition:width .5s ease}.data-items{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.data-items .resource-item{margin-bottom:0;padding:.5rem}.data-items .resource-icon{font-size:1.25rem;margin-right:.5rem}.data-items .resource-item-value{font-size:1rem}@media(max-width:1200px){.resource-panel{padding:1rem}}@media(max-width:768px){.resource-panel{padding:1rem;animation:fadeIn .3s ease-out}.data-items{grid-template-columns:1fr}.resource-item-value{font-size:1.1rem}.resource-item{padding:.625rem}}@media(max-width:480px){.resource-panel{padding:.875rem}.panel-title{font-size:.9rem}.resource-icon{font-size:1.25rem;margin-right:.5rem}.resource-item-value{font-size:1rem}}.dimensions-display{background:linear-gradient(135deg,#f8f9fa,#f0f4f8);border-radius:12px;padding:1rem;margin-top:1rem;box-shadow:0 2px 8px #0000000d}.dimensions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.dimensions-title{font-size:.9rem;font-weight:600;color:#333;margin:0;display:flex;align-items:center;gap:.5rem}.title-icon{font-size:1.1rem;animation:titlePulse 2s ease-in-out infinite}@keyframes titlePulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.view-mode-toggle{display:flex;gap:.25rem;background:#e5e7eb;border-radius:6px;padding:2px}.view-mode-btn{background:transparent;border:none;padding:.25rem .5rem;font-size:.75rem;cursor:pointer;border-radius:4px;color:#666;transition:all .2s ease}.view-mode-btn:hover{color:#333}.view-mode-btn.active{background:#fff;color:#3b82f6;box-shadow:0 1px 3px #0000001a}.dimensions-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.dimension-bar{background:#fff;border-radius:10px;padding:.625rem;transition:all .3s ease;border:1px solid #e5e7eb;position:relative;overflow:hidden}.dimension-bar:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--dimension-color, #ccc);opacity:0;transition:opacity .3s ease}.dimension-bar:hover{transform:translateY(-3px);box-shadow:0 6px 16px #0000001f}.dimension-bar:hover:before{opacity:1}.dimension-header{display:flex;align-items:center;gap:.375rem;margin-bottom:.5rem}.dimension-icon-wrapper{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,color-mix(in srgb,var(--dimension-color, #ccc) 15%,white),color-mix(in srgb,var(--dimension-color, #ccc) 25%,white));box-shadow:0 2px 4px color-mix(in srgb,var(--dimension-color, #ccc) 20%,transparent);transition:all .3s ease}.dimension-bar:hover .dimension-icon-wrapper{transform:scale(1.1) rotate(5deg);box-shadow:0 4px 8px color-mix(in srgb,var(--dimension-color, #ccc) 30%,transparent)}.dimension-icon{font-size:1rem}.dimension-name{flex:1;font-size:.75rem;font-weight:600;color:#555}.dimension-values{display:flex;align-items:baseline;gap:.25rem}.dimension-value{font-size:.95rem;font-weight:700;color:#333}.dimension-bonus{font-size:.65rem;font-weight:600;color:#22c55e;background:linear-gradient(135deg,#f0fdf4,#dcfce7);padding:.125rem .375rem;border-radius:6px;animation:bonusGlow 1.5s ease-in-out infinite}@keyframes bonusGlow{0%,to{box-shadow:0 0 #22c55e00}50%{box-shadow:0 0 8px #22c55e4d}}.dimension-track{height:10px;background:linear-gradient(90deg,#e5e7eb,#f3f4f6);border-radius:5px;overflow:visible;position:relative;box-shadow:inset 0 1px 2px #0000001a}.dimension-fill{height:100%;border-radius:5px;transition:width .5s cubic-bezier(.4,0,.2,1);position:absolute;left:0;top:0;box-shadow:0 2px 4px #00000026}.dimension-bonus-fill{height:100%;border-radius:0 5px 5px 0;position:absolute;top:0;background:linear-gradient(90deg,#22c55e66,#22c55e99);animation:bonusPulse 2s infinite}@keyframes bonusPulse{0%,to{opacity:.5}50%{opacity:.9}}.dimension-threshold{position:absolute;top:-3px;bottom:-3px;width:2px;background:#00000026;z-index:1;border-radius:1px}.dimension-threshold:after{content:"";position:absolute;top:-2px;left:-2px;width:6px;height:6px;background:#0003;border-radius:50%}.dimension-threshold.threshold-40{left:40%}.dimension-threshold.threshold-60{left:60%}.dimension-footer{display:flex;justify-content:flex-end;margin-top:.375rem}.dimension-level{font-size:.6rem;font-weight:700;padding:.15rem .5rem;border-radius:6px;text-transform:uppercase;letter-spacing:.5px}.dimension-level.excellent{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#166534}.dimension-level.good{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af}.dimension-level.average{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}.dimension-level.weak{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b}.dimension-bar.algorithm{--dimension-color: #3b82f6}.dimension-bar.algorithm .dimension-fill{background:linear-gradient(90deg,#3b82f6,#60a5fa,#93c5fd)}.dimension-bar.algorithm:hover{border-color:#3b82f6}.dimension-bar.data-processing{--dimension-color: #8b5cf6}.dimension-bar.data-processing .dimension-fill{background:linear-gradient(90deg,#8b5cf6,#a78bfa,#c4b5fd)}.dimension-bar.data-processing:hover{border-color:#8b5cf6}.dimension-bar.stability{--dimension-color: #10b981}.dimension-bar.stability .dimension-fill{background:linear-gradient(90deg,#10b981,#34d399,#6ee7b7)}.dimension-bar.stability:hover{border-color:#10b981}.dimension-bar.user-experience{--dimension-color: #f59e0b}.dimension-bar.user-experience .dimension-fill{background:linear-gradient(90deg,#f59e0b,#fbbf24,#fcd34d)}.dimension-bar.user-experience:hover{border-color:#f59e0b}.dimensions-legend{display:flex;justify-content:center;gap:1.25rem;margin-top:.875rem;padding-top:.625rem;border-top:1px solid #e5e7eb}.legend-item{display:flex;align-items:center;gap:.375rem;font-size:.65rem;color:#666}.legend-marker{width:14px;height:5px;border-radius:3px}.legend-marker.threshold-marker{background:#0003}.legend-marker.bonus-marker{background:linear-gradient(90deg,#22c55e66,#22c55e99)}.radar-chart-container{display:flex;flex-direction:column;align-items:center;gap:1rem}.radar-chart{width:100%;max-width:220px;height:auto}.radar-grid{fill:none;stroke:#e5e7eb;stroke-width:1}.radar-grid.threshold-grid{stroke:#00000026;stroke-width:1.5;stroke-dasharray:4 2}.radar-axis{stroke:#d1d5db;stroke-width:1}.radar-polygon{transition:all .5s cubic-bezier(.4,0,.2,1)}.radar-polygon.base-polygon{fill:#9ca3af33;stroke:#9ca3af80;stroke-width:1}.radar-polygon.effective-polygon{fill:#3b82f640;stroke:#3b82f6;stroke-width:2;filter:drop-shadow(0 2px 4px rgba(59,130,246,.3))}.radar-point{stroke:#fff;stroke-width:2;transition:all .3s ease;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.radar-chart:hover .radar-point{r:6}.radar-label{font-size:16px;fill:#666}.radar-values{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;width:100%}.radar-value-item{display:flex;align-items:center;gap:.375rem;padding:.5rem;background:#fff;border-radius:8px;border:1px solid #e5e7eb;transition:all .2s ease}.radar-value-item:hover{border-color:var(--dimension-color, #ccc);box-shadow:0 2px 8px color-mix(in srgb,var(--dimension-color, #ccc) 20%,transparent)}.radar-value-icon{font-size:.9rem}.radar-value-name{flex:1;font-size:.65rem;font-weight:500;color:#666}.radar-value-number{font-size:.85rem;font-weight:700;color:#333}.radar-value-bonus{font-size:.6rem;font-weight:600;color:#22c55e;background:#f0fdf4;padding:.1rem .25rem;border-radius:4px}.radar-value-level{font-size:.55rem;font-weight:600;padding:.1rem .3rem;border-radius:4px}.radar-value-level.excellent{background:#dcfce7;color:#166534}.radar-value-level.good{background:#dbeafe;color:#1e40af}.radar-value-level.average{background:#fef3c7;color:#92400e}.radar-value-level.weak{background:#fee2e2;color:#991b1b}@media(max-width:768px){.dimensions-grid{grid-template-columns:1fr}.dimension-bar{padding:.75rem}.radar-values{grid-template-columns:1fr}}@media(max-width:480px){.dimensions-display{padding:.75rem}.dimensions-title{font-size:.85rem}.dimension-name{font-size:.7rem}.dimension-value{font-size:.85rem}.dimension-icon-wrapper{width:24px;height:24px}.dimension-icon{font-size:.85rem}.radar-chart{max-width:180px}}.reputation-display{background:linear-gradient(135deg,#fefce8,#fef9c3);border-radius:12px;padding:1rem;margin-top:1rem;box-shadow:0 2px 8px #eab30826;border:1px solid #fde047}.reputation-header{margin-bottom:.75rem}.reputation-title{font-size:.9rem;font-weight:600;color:#854d0e;margin:0;display:flex;align-items:center;gap:.5rem}.title-icon{font-size:1.1rem;animation:starTwinkle 2s ease-in-out infinite}@keyframes starTwinkle{0%,to{transform:scale(1) rotate(0);opacity:1}50%{transform:scale(1.2) rotate(15deg);opacity:.8}}.reputation-main{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#fff;border-radius:10px;margin-bottom:.75rem;transition:all .3s ease;border:1px solid #e5e7eb}.reputation-main:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.reputation-icon-wrapper{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.75rem;transition:all .3s ease}.reputation-main:hover .reputation-icon-wrapper{transform:scale(1.1)}.reputation-main.novice .reputation-icon-wrapper{background:linear-gradient(135deg,#f0fdf4,#dcfce7)}.reputation-main.beginner .reputation-icon-wrapper{background:linear-gradient(135deg,#fef9c3,#fef08a)}.reputation-main.intermediate .reputation-icon-wrapper{background:linear-gradient(135deg,#fef3c7,#fde68a)}.reputation-main.advanced .reputation-icon-wrapper{background:linear-gradient(135deg,#fed7aa,#fdba74)}.reputation-main.expert .reputation-icon-wrapper{background:linear-gradient(135deg,#dbeafe,#93c5fd)}.reputation-main.legendary .reputation-icon-wrapper{background:linear-gradient(135deg,#fae8ff,#e879f9);animation:legendaryGlow 2s ease-in-out infinite}@keyframes legendaryGlow{0%,to{box-shadow:0 0 10px #e879f94d}50%{box-shadow:0 0 20px #e879f999}}.reputation-info{flex:1}.reputation-level-name{font-size:.85rem;font-weight:600;color:#333;margin-bottom:.25rem}.reputation-value-row{display:flex;align-items:baseline;gap:.25rem}.reputation-value{font-size:1.5rem;font-weight:700;color:#ca8a04}.reputation-max{font-size:.8rem;color:#a3a3a3}.reputation-gauge{width:50px;height:50px}.reputation-circle{width:100%;height:100%;transform:rotate(-90deg)}.reputation-circle-bg{fill:none;stroke:#e5e7eb;stroke-width:3}.reputation-circle-fill{fill:none;stroke:#eab308;stroke-width:3;stroke-linecap:round;transition:stroke-dasharray .5s ease}.reputation-main.expert .reputation-circle-fill{stroke:#3b82f6}.reputation-main.legendary .reputation-circle-fill{stroke:#d946ef}.reputation-progress{margin-bottom:.75rem}.progress-label{display:flex;justify-content:space-between;font-size:.7rem;color:#666;margin-bottom:.375rem}.progress-track{height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#fbbf24,#f59e0b);border-radius:3px;transition:width .5s ease}.reputation-bonus{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem;background:linear-gradient(135deg,#dcfce7,#bbf7d0);border-radius:8px;margin-bottom:.75rem;border:1px solid #86efac;animation:bonusPulse 2s ease-in-out infinite}@keyframes bonusPulse{0%,to{box-shadow:0 0 #22c55e00}50%{box-shadow:0 0 10px #22c55e4d}}.bonus-icon{font-size:1rem}.bonus-text{font-size:.75rem;font-weight:600;color:#166534}.side-jobs-section{border-top:1px solid #fde047;padding-top:.75rem}.side-jobs-title{font-size:.75rem;font-weight:600;color:#854d0e;margin-bottom:.5rem}.side-jobs-list{display:flex;flex-wrap:wrap;gap:.375rem}.side-job-item{display:flex;align-items:center;gap:.25rem;padding:.375rem .5rem;border-radius:6px;font-size:.7rem;transition:all .2s ease;cursor:default}.side-job-item.unlocked{background:#fff;border:1px solid #86efac;color:#166534}.side-job-item.unlocked:hover{background:#f0fdf4;transform:translateY(-1px)}.side-job-item.locked{background:#f5f5f5;border:1px solid #d4d4d4;color:#a3a3a3}.side-job-icon{font-size:.85rem}.side-job-name{font-weight:500}.side-job-requirement{font-size:.6rem;color:#dc2626;margin-left:.25rem}.side-job-unlocked{font-size:.7rem;color:#22c55e;font-weight:700}@media(max-width:768px){.reputation-display{padding:.875rem}.reputation-main{padding:.625rem}.reputation-icon-wrapper{width:40px;height:40px;font-size:1.5rem}.reputation-value{font-size:1.25rem}.reputation-gauge{width:44px;height:44px}}@media(max-width:480px){.reputation-display{padding:.75rem}.reputation-title{font-size:.85rem}.reputation-level-name{font-size:.8rem}.reputation-value{font-size:1.1rem}.side-jobs-list{gap:.25rem}.side-job-item{padding:.25rem .375rem;font-size:.65rem}}.metrics-panel{background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 2px 12px #00000014;animation:slideInLeft .4s ease-out .1s both}.metrics-panel .panel-title{font-size:1rem;font-weight:600;color:#333;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid #f0f0f0}.gauges-container{display:flex;justify-content:space-around;gap:1rem;margin-bottom:1rem}.model-metrics{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:1rem;padding:.75rem;background:#f8f9fa;border-radius:8px}.mini-bar{display:flex;flex-direction:column;gap:.25rem}.mini-bar-header{display:flex;align-items:center;gap:.25rem;font-size:.75rem}.mini-bar-icon{font-size:.9rem}.mini-bar-label{flex:1;color:#666}.mini-bar-value{font-weight:600;color:#333}.mini-bar-track{height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}.mini-bar-fill{height:100%;border-radius:3px;transition:width .5s ease}.mini-bar.accuracy .mini-bar-fill{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.mini-bar.speed .mini-bar-fill{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.mini-bar.creativity .mini-bar-fill{background:linear-gradient(90deg,#8b5cf6,#a78bfa)}.mini-bar.robustness .mini-bar-fill{background:linear-gradient(90deg,#10b981,#34d399)}.circular-gauge{display:flex;flex-direction:column;align-items:center;position:relative;width:120px;transition:transform .3s ease}.circular-gauge:hover{transform:scale(1.05)}.gauge-svg{width:100px;height:100px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.gauge-background{opacity:.2}.gauge-progress{transition:stroke-dashoffset .8s cubic-bezier(.4,0,.2,1)}.gauge-content{position:absolute;top:50%;left:50%;transform:translate(-50%,-70%);display:flex;flex-direction:column;align-items:center}.gauge-icon{font-size:1.25rem;margin-bottom:.25rem;transition:transform .3s ease}.circular-gauge:hover .gauge-icon{transform:scale(1.2)}.gauge-value{font-size:1.1rem;font-weight:700;transition:all .3s ease}.gauge-value.value-changed{animation:valuePopIn .4s ease-out}@keyframes valuePopIn{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.gauge-label{font-size:.8rem;font-weight:600;color:#666;margin-top:.25rem}.gauge-sublabel{font-size:.7rem;color:#999;margin-top:.125rem}.circular-gauge.fit-score{color:#4a90d9}.circular-gauge.fit-score .gauge-progress{stroke:#4a90d9}.circular-gauge.fit-score .gauge-value{color:#2563eb}.circular-gauge.entropy-safe{color:#22c55e}.circular-gauge.entropy-safe .gauge-progress{stroke:#22c55e}.circular-gauge.entropy-safe .gauge-value{color:#16a34a}.circular-gauge.entropy-warning{color:#f59e0b}.circular-gauge.entropy-warning .gauge-progress{stroke:#f59e0b;animation:warningGlow 2s infinite}@keyframes warningGlow{0%,to{filter:drop-shadow(0 0 2px rgba(245,158,11,.5))}50%{filter:drop-shadow(0 0 8px rgba(245,158,11,.8))}}.circular-gauge.entropy-warning .gauge-value{color:#d97706}.circular-gauge.entropy-danger{color:#ef4444}.circular-gauge.entropy-danger .gauge-progress{stroke:#ef4444;animation:dangerGlow 1s infinite}@keyframes dangerGlow{0%,to{filter:drop-shadow(0 0 4px rgba(239,68,68,.6))}50%{filter:drop-shadow(0 0 12px rgba(239,68,68,1))}}.circular-gauge.entropy-danger .gauge-value{color:#dc2626;animation:dangerPulse 1s infinite}@keyframes dangerPulse{0%,to{opacity:1}50%{opacity:.7}}.circular-gauge.entropy-danger .gauge-icon{animation:fireFlicker .5s infinite}@keyframes fireFlicker{0%,to{transform:scale(1) rotate(0)}25%{transform:scale(1.1) rotate(-5deg)}75%{transform:scale(1.1) rotate(5deg)}}.entropy-status{padding:.75rem;border-radius:8px;font-size:.85rem;text-align:center;margin-bottom:1rem;transition:all .3s ease}.entropy-status-safe{background:linear-gradient(135deg,#f0fdf4,#dcfce7);color:#166534;border:1px solid #86efac}.entropy-status-warning{background:linear-gradient(135deg,#fffbeb,#fef3c7);color:#92400e;border:1px solid #fcd34d;animation:warningShake 3s infinite}@keyframes warningShake{0%,90%,to{transform:translate(0)}92%,96%{transform:translate(-2px)}94%,98%{transform:translate(2px)}}.entropy-status-danger{background:linear-gradient(135deg,#fef2f2,#fee2e2);color:#991b1b;border:1px solid #fca5a5;animation:dangerAlert 2s infinite}@keyframes dangerAlert{0%,to{box-shadow:0 0 #ef444466;transform:scale(1)}50%{box-shadow:0 0 0 8px #ef444400;transform:scale(1.01)}}.turn-info{display:flex;gap:1rem;padding-top:.75rem;border-top:1px solid #f0f0f0}.turn-current,.turn-exam{flex:1;display:flex;align-items:center;padding:.75rem;border-radius:8px;background:#f8f9fa;transition:all .3s ease}.turn-current:hover,.turn-exam:hover{background:#f0f0f0;transform:translateY(-2px)}.turn-icon,.exam-icon{font-size:1.5rem;margin-right:.75rem;transition:transform .3s ease}.turn-current:hover .turn-icon,.turn-exam:hover .exam-icon{transform:scale(1.15)}.turn-details,.exam-details{display:flex;flex-direction:column;flex:1}.turn-label,.exam-label{font-size:.7rem;color:#888;text-transform:uppercase;letter-spacing:.5px}.turn-value{font-size:1.5rem;font-weight:700;color:#333;transition:all .3s ease}.turn-value.turn-changed{animation:turnIncrement .5s ease-out}@keyframes turnIncrement{0%{transform:scale(1);color:#333}50%{transform:scale(1.3);color:#4a90d9}to{transform:scale(1);color:#333}}.exam-value{font-size:1rem;font-weight:600;color:#4a90d9}.exam-warning{font-size:.7rem;font-weight:600;color:#dc2626;background:#fee2e2;padding:.25rem .5rem;border-radius:4px;animation:examWarningBlink 1s infinite}@keyframes examWarningBlink{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}@media(max-width:1200px){.metrics-panel{padding:1rem}.circular-gauge{width:100px}.gauge-svg{width:80px;height:80px}}@media(max-width:768px){.metrics-panel{padding:1rem;animation:fadeIn .3s ease-out}.gauges-container{flex-direction:row;justify-content:center;gap:1.5rem}.circular-gauge{width:100%;max-width:120px}.turn-info{flex-direction:column;gap:.75rem}.turn-current,.turn-exam{padding:.625rem}}@media(max-width:480px){.gauges-container{gap:1rem}.circular-gauge{max-width:100px}.gauge-svg{width:70px;height:70px}.gauge-value{font-size:.95rem}.gauge-label{font-size:.7rem}.entropy-status{font-size:.8rem;padding:.625rem}}.operation-button{display:flex;flex-direction:column;width:100%;padding:1rem;border:2px solid transparent;border-radius:12px;background:#fff;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);text-align:left;box-shadow:0 2px 8px #0000000f;position:relative;overflow:hidden}.operation-button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#ffffff4d;border-radius:50%;transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease}.operation-button:active:not(.disabled):before{width:300px;height:300px}.operation-button:hover:not(.disabled){transform:translateY(-3px);box-shadow:0 6px 20px #00000026}.operation-button:active:not(.disabled){transform:translateY(-1px);box-shadow:0 3px 12px #0000001f}.operation-button.executed{animation:executeSuccess .5s ease-out}@keyframes executeSuccess{0%{transform:scale(1)}30%{transform:scale(.95)}60%{transform:scale(1.02);box-shadow:0 0 20px #22c55e66}to{transform:scale(1)}}.operation-button.data{border-color:#94a3b8;background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.operation-button.data:hover:not(.disabled){border-color:#64748b;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);box-shadow:0 6px 20px #64748b33}.operation-button.data .operation-icon{color:#64748b}.operation-button.training{border-color:#60a5fa;background:linear-gradient(135deg,#eff6ff,#dbeafe)}.operation-button.training:hover:not(.disabled){border-color:#3b82f6;background:linear-gradient(135deg,#dbeafe,#bfdbfe);box-shadow:0 6px 20px #3b82f640}.operation-button.training .operation-icon{color:#3b82f6}.operation-button.maintenance{border-color:#4ade80;background:linear-gradient(135deg,#f0fdf4,#dcfce7)}.operation-button.maintenance:hover:not(.disabled){border-color:#22c55e;background:linear-gradient(135deg,#dcfce7,#bbf7d0);box-shadow:0 6px 20px #22c55e40}.operation-button.maintenance .operation-icon{color:#22c55e}.operation-button.disabled{opacity:.6;cursor:not-allowed;filter:grayscale(30%);transform:none!important}.operation-button.disabled:hover{transform:none;box-shadow:0 2px 8px #0000000f}.operation-button.disabled.shake-hint{animation:disabledShake .4s ease-in-out}@keyframes disabledShake{0%,to{transform:translate(0)}20%,60%{transform:translate(-4px)}40%,80%{transform:translate(4px)}}.operation-header{display:flex;align-items:center;margin-bottom:.5rem}.operation-icon{font-size:1.25rem;margin-right:.5rem;transition:transform .3s ease}.operation-button:hover:not(.disabled) .operation-icon{transform:scale(1.2) rotate(5deg)}.operation-name{font-size:1rem;font-weight:600;color:#1e293b;transition:color .3s ease}.operation-description{font-size:.85rem;color:#64748b;margin:0 0 .75rem;line-height:1.4}.operation-details{display:flex;flex-direction:column;gap:.375rem;padding-top:.75rem;border-top:1px solid rgba(0,0,0,.08)}.operation-cost,.operation-effects{display:flex;align-items:center;font-size:.8rem}.detail-label{color:#94a3b8;margin-right:.5rem;min-width:2.5rem}.detail-value{color:#475569;font-weight:500}.operation-warning{margin-top:.5rem;padding:.375rem .5rem;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;font-size:.75rem;color:#dc2626;animation:warningPulse 2s infinite}@keyframes warningPulse{0%,to{opacity:1}50%{opacity:.7}}.operation-button.gamble{position:relative}.operation-button.gamble:after{content:"🎲";position:absolute;top:.5rem;right:.5rem;font-size:1rem;animation:diceRoll 3s infinite}@keyframes diceRoll{0%,90%,to{transform:rotate(0)}92%,96%{transform:rotate(-15deg)}94%,98%{transform:rotate(15deg)}}.operation-button.high-risk{border-style:dashed}.operation-button.high-risk .operation-name:after{content:" ⚠️";font-size:.9rem}@media(max-width:1200px){.operation-button{padding:.875rem}}@media(max-width:768px){.operation-button{padding:.875rem}.operation-name{font-size:.95rem}.operation-description{font-size:.8rem}.operation-cost,.operation-effects{font-size:.75rem}}@media(max-width:480px){.operation-button{padding:.75rem}.operation-icon{font-size:1.1rem}.operation-name{font-size:.9rem}.operation-description{font-size:.75rem;margin-bottom:.5rem}.operation-details{padding-top:.5rem}.detail-label{min-width:2rem}}.category-accordion{margin-bottom:.75rem;border-radius:10px;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.category-accordion:last-child{margin-bottom:0}.accordion-header{display:flex;align-items:center;width:100%;padding:.875rem 1rem;border:2px solid transparent;border-radius:10px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1);font-family:inherit;font-size:.95rem}.accordion-header:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.accordion-header:focus{outline:none;box-shadow:0 0 0 3px #3b82f64d}.accordion-header:active{transform:translateY(0)}.accordion-icon{font-size:1.25rem;margin-right:.625rem;transition:transform .4s cubic-bezier(.34,1.56,.64,1);display:inline-block}.accordion-header:hover .accordion-icon{transform:scale(1.2) rotate(5deg)}.category-accordion.expanded .accordion-icon{animation:iconPulse .5s cubic-bezier(.34,1.56,.64,1)}@keyframes iconPulse{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.accordion-name{font-weight:600;color:#1e293b;flex:1;text-align:left}.accordion-count{display:flex;align-items:center;font-size:.8rem;font-weight:500;padding:.25rem .625rem;border-radius:12px;background:#00000014;margin-right:.75rem}.count-executable{color:#64748b;transition:color .3s ease}.count-executable.has-executable{color:#22c55e;font-weight:600}.count-separator{color:#94a3b8;margin:0 .25rem}.count-total{color:#94a3b8}.accordion-arrow{font-size:.75rem;color:#64748b;transition:transform .4s cubic-bezier(.34,1.56,.64,1),color .3s ease;display:inline-block}.accordion-arrow.expanded{transform:rotate(180deg);color:#3b82f6}.accordion-header:hover .accordion-arrow{color:#3b82f6}.accordion-content{overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1),padding .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);transform-origin:top center}.accordion-content.collapsed{max-height:0;opacity:0;padding:0;transform:scaleY(.95)}.accordion-content.expanded{max-height:2000px;opacity:1;padding:.75rem 0 0;transform:scaleY(1)}.accordion-operations{display:flex;flex-direction:column;gap:.625rem;padding:0 .25rem}.accordion-content.expanded .accordion-operations>*{animation:slideInFade .3s cubic-bezier(.4,0,.2,1) forwards;opacity:0}.accordion-content.expanded .accordion-operations>*:nth-child(1){animation-delay:.05s}.accordion-content.expanded .accordion-operations>*:nth-child(2){animation-delay:.1s}.accordion-content.expanded .accordion-operations>*:nth-child(3){animation-delay:.15s}.accordion-content.expanded .accordion-operations>*:nth-child(4){animation-delay:.2s}.accordion-content.expanded .accordion-operations>*:nth-child(5){animation-delay:.25s}.accordion-content.expanded .accordion-operations>*:nth-child(n+6){animation-delay:.3s}@keyframes slideInFade{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.accordion-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem;color:#94a3b8}.accordion-empty .empty-icon{font-size:1.5rem;margin-bottom:.5rem;opacity:.6}.accordion-empty .empty-text{font-size:.85rem}.category-accordion.data .accordion-header{border-color:#cbd5e1;background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.category-accordion.data .accordion-header:hover{border-color:#94a3b8;background:linear-gradient(135deg,#f1f5f9,#e2e8f0)}.category-accordion.data .accordion-name{color:#475569}.category-accordion.data .accordion-count{background:#64748b1f}.category-accordion.training .accordion-header{border-color:#93c5fd;background:linear-gradient(135deg,#eff6ff,#dbeafe)}.category-accordion.training .accordion-header:hover{border-color:#60a5fa;background:linear-gradient(135deg,#dbeafe,#bfdbfe)}.category-accordion.training .accordion-name{color:#1d4ed8}.category-accordion.training .accordion-count{background:#3b82f61f}.category-accordion.maintenance .accordion-header{border-color:#86efac;background:linear-gradient(135deg,#f0fdf4,#dcfce7)}.category-accordion.maintenance .accordion-header:hover{border-color:#4ade80;background:linear-gradient(135deg,#dcfce7,#bbf7d0)}.category-accordion.maintenance .accordion-name{color:#15803d}.category-accordion.maintenance .accordion-count{background:#22c55e1f}.category-accordion.dimension .accordion-header{border-color:#c4b5fd;background:linear-gradient(135deg,#f5f3ff,#ede9fe)}.category-accordion.dimension .accordion-header:hover{border-color:#a78bfa;background:linear-gradient(135deg,#ede9fe,#ddd6fe)}.category-accordion.dimension .accordion-name{color:#6d28d9}.category-accordion.dimension .accordion-count{background:#8b5cf61f}.category-accordion.premium .accordion-header{border-color:#fcd34d;background:linear-gradient(135deg,#fffbeb,#fef3c7)}.category-accordion.premium .accordion-header:hover{border-color:#fbbf24;background:linear-gradient(135deg,#fef3c7,#fde68a)}.category-accordion.premium .accordion-name{color:#b45309}.category-accordion.premium .accordion-count{background:#f59e0b1f}.category-accordion.team .accordion-header{border-color:#67e8f9;background:linear-gradient(135deg,#ecfeff,#cffafe)}.category-accordion.team .accordion-header:hover{border-color:#22d3ee;background:linear-gradient(135deg,#cffafe,#a5f3fc)}.category-accordion.team .accordion-name{color:#0e7490}.category-accordion.team .accordion-count{background:#06b6d41f}.category-accordion.sideJob .accordion-header{border-color:#fdba74;background:linear-gradient(135deg,#fff7ed,#ffedd5)}.category-accordion.sideJob .accordion-header:hover{border-color:#fb923c;background:linear-gradient(135deg,#ffedd5,#fed7aa)}.category-accordion.sideJob .accordion-name{color:#c2410c}.category-accordion.sideJob .accordion-count{background:#f973161f}.category-accordion.expanded .accordion-header{border-bottom-left-radius:0;border-bottom-right-radius:0}.category-accordion.expanded .accordion-content{border:2px solid;border-top:none;border-bottom-left-radius:10px;border-bottom-right-radius:10px;padding:.75rem;background:#ffffff80}.category-accordion.data.expanded .accordion-content{border-color:#cbd5e1}.category-accordion.training.expanded .accordion-content{border-color:#93c5fd}.category-accordion.maintenance.expanded .accordion-content{border-color:#86efac}.category-accordion.dimension.expanded .accordion-content{border-color:#c4b5fd}.category-accordion.premium.expanded .accordion-content{border-color:#fcd34d}.category-accordion.team.expanded .accordion-content{border-color:#67e8f9}.category-accordion.sideJob.expanded .accordion-content{border-color:#fdba74}@media(max-width:768px){.accordion-header{padding:.75rem .875rem;font-size:.9rem}.accordion-icon{font-size:1.1rem;margin-right:.5rem}.accordion-count{font-size:.75rem;padding:.2rem .5rem;margin-right:.5rem}.accordion-operations{gap:.5rem}}@media(max-width:480px){.accordion-header{padding:.625rem .75rem;font-size:.85rem}.accordion-icon{font-size:1rem}.accordion-name{font-size:.85rem}.accordion-count{font-size:.7rem;padding:.15rem .4rem}.accordion-arrow{font-size:.65rem}.category-accordion.expanded .accordion-content{padding:.5rem}}.operations-panel{background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 2px 12px #00000014;animation:scaleIn .4s ease-out}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.operations-panel .panel-title{font-size:1rem;font-weight:600;color:#333;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid #f0f0f0}.operations-categories{display:flex;flex-direction:column;gap:.5rem}.operation-category{margin-bottom:1.5rem;animation:fadeInUp .4s ease-out backwards}.operation-category:nth-child(1){animation-delay:.1s}.operation-category:nth-child(2){animation-delay:.2s}.operation-category:nth-child(3){animation-delay:.3s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.operation-category:last-child{margin-bottom:0}.category-header{display:flex;align-items:center;margin-bottom:.75rem;padding:.5rem .75rem;border-radius:8px;transition:all .3s ease;cursor:default}.category-header:hover{transform:translate(4px)}.category-icon{font-size:1.25rem;margin-right:.5rem;transition:transform .3s ease}.category-header:hover .category-icon{transform:scale(1.15)}.category-title{font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.category-count{margin-left:auto;font-size:.75rem;font-weight:500;padding:.125rem .5rem;border-radius:10px;background:#0000001a}.operation-category.data .category-header{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0}.operation-category.data .category-title{color:#64748b}.operation-category.data .category-count{background:#64748b26;color:#64748b}.operation-category.training .category-header{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #bfdbfe}.operation-category.training .category-title{color:#3b82f6}.operation-category.training .category-count{background:#3b82f626;color:#3b82f6}.operation-category.maintenance .category-header{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #bbf7d0}.operation-category.maintenance .category-title{color:#22c55e}.operation-category.maintenance .category-count{background:#22c55e26;color:#22c55e}.category-operations{display:flex;flex-direction:column;gap:.75rem}.category-operations.collapsed{max-height:0;overflow:hidden;opacity:0;transition:all .3s ease}.category-operations.expanded{max-height:1000px;opacity:1;transition:all .3s ease}.operations-empty{text-align:center;padding:2rem;color:#999}.operations-empty-icon{font-size:2.5rem;margin-bottom:.5rem;opacity:.5}.operations-empty-text{font-size:.9rem}.operations-panel.meltdown{position:relative;pointer-events:none}.operations-panel.meltdown:after{content:"🔥 服务熔断中 - 本回合无法操作";position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:#ef4444e6;color:#fff;font-size:1.1rem;font-weight:600;border-radius:12px;animation:meltdownPulse 2s infinite}@keyframes meltdownPulse{0%,to{background:#ef4444e6}50%{background:#dc2626f2}}@media(max-width:1200px){.operations-panel{padding:1rem}}@media(max-width:1024px){.operations-panel{padding:1rem}.category-operations{gap:.5rem}}@media(max-width:768px){.operation-category{margin-bottom:1rem}.category-header{padding:.375rem .5rem}.category-title{font-size:.85rem}.category-icon{font-size:1.1rem}}@media(max-width:480px){.operations-panel{padding:.875rem}.operations-panel .panel-title{font-size:.9rem}.category-operations{gap:.5rem}}.operations-modal-container{background:#fff;border-radius:12px;padding:1rem;box-shadow:0 2px 12px #00000014}.operations-modal-container .panel-title{font-size:1rem;font-weight:600;color:#333;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid #f0f0f0;display:flex;align-items:center;gap:.5rem}.operations-modal-container .title-icon{font-size:1.1rem}.category-buttons-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.625rem}.category-button{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.875rem .5rem;border:2px solid #e2e8f0;border-radius:10px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);font-family:inherit;min-height:80px}.category-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.category-button:active:not(:disabled){transform:translateY(0)}.category-button:disabled{opacity:.5;cursor:not-allowed}.category-btn-icon{font-size:1.5rem;margin-bottom:.375rem;transition:transform .3s ease}.category-button:hover:not(:disabled) .category-btn-icon{transform:scale(1.15)}.category-btn-name{font-size:.8rem;font-weight:600;color:#475569;margin-bottom:.25rem}.category-btn-count{font-size:.7rem;color:#94a3b8}.category-btn-count .exec-count{color:#94a3b8}.category-btn-count .exec-count.active{color:#22c55e;font-weight:600}.category-button.data{border-color:#cbd5e1}.category-button.data:hover:not(:disabled){border-color:#94a3b8;background:linear-gradient(135deg,#f1f5f9,#e2e8f0)}.category-button.data .category-btn-name{color:#475569}.category-button.training{border-color:#93c5fd;background:linear-gradient(135deg,#eff6ff,#dbeafe)}.category-button.training:hover:not(:disabled){border-color:#60a5fa;background:linear-gradient(135deg,#dbeafe,#bfdbfe)}.category-button.training .category-btn-name{color:#1d4ed8}.category-button.maintenance{border-color:#86efac;background:linear-gradient(135deg,#f0fdf4,#dcfce7)}.category-button.maintenance:hover:not(:disabled){border-color:#4ade80;background:linear-gradient(135deg,#dcfce7,#bbf7d0)}.category-button.maintenance .category-btn-name{color:#15803d}.category-button.dimension{border-color:#c4b5fd;background:linear-gradient(135deg,#f5f3ff,#ede9fe)}.category-button.dimension:hover:not(:disabled){border-color:#a78bfa;background:linear-gradient(135deg,#ede9fe,#ddd6fe)}.category-button.dimension .category-btn-name{color:#6d28d9}.category-button.premium{border-color:#fcd34d;background:linear-gradient(135deg,#fffbeb,#fef3c7)}.category-button.premium:hover:not(:disabled){border-color:#fbbf24;background:linear-gradient(135deg,#fef3c7,#fde68a)}.category-button.premium .category-btn-name{color:#b45309}.category-button.team{border-color:#67e8f9;background:linear-gradient(135deg,#ecfeff,#cffafe)}.category-button.team:hover:not(:disabled){border-color:#22d3ee;background:linear-gradient(135deg,#cffafe,#a5f3fc)}.category-button.team .category-btn-name{color:#0e7490}.category-button.sideJob{border-color:#fdba74;background:linear-gradient(135deg,#fff7ed,#ffedd5)}.category-button.sideJob:hover:not(:disabled){border-color:#fb923c;background:linear-gradient(135deg,#ffedd5,#fed7aa)}.category-button.sideJob .category-btn-name{color:#c2410c}.category-button.has-executable{box-shadow:0 0 0 1px #22c55e4d}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-content{background:#fff;border-radius:16px;width:90%;max-width:500px;max-height:80vh;overflow:hidden;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s cubic-bezier(.34,1.56,.64,1)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e2e8f0;position:relative}.modal-icon{font-size:1.5rem;margin-right:.75rem}.modal-title{font-size:1.1rem;font-weight:600;color:#1e293b;margin:0}.modal-description{font-size:.8rem;color:#64748b;margin-left:.75rem}.modal-close-btn{position:absolute;right:1rem;top:50%;transform:translateY(-50%);width:32px;height:32px;border:none;background:#f1f5f9;border-radius:8px;cursor:pointer;font-size:1rem;color:#64748b;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.modal-close-btn:hover{background:#e2e8f0;color:#1e293b}.modal-body{padding:1rem;max-height:calc(80vh - 80px);overflow-y:auto}.modal-operations{display:flex;flex-direction:column;gap:.75rem}.modal-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;color:#94a3b8}.modal-empty .empty-icon{font-size:2rem;margin-bottom:.5rem;opacity:.6}.modal-empty .empty-text{font-size:.9rem}.modal-content.data .modal-header{background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.modal-content.training .modal-header{background:linear-gradient(135deg,#eff6ff,#dbeafe)}.modal-content.maintenance .modal-header{background:linear-gradient(135deg,#f0fdf4,#dcfce7)}.modal-content.dimension .modal-header{background:linear-gradient(135deg,#f5f3ff,#ede9fe)}.modal-content.premium .modal-header{background:linear-gradient(135deg,#fffbeb,#fef3c7)}.modal-content.team .modal-header{background:linear-gradient(135deg,#ecfeff,#cffafe)}.modal-content.sideJob .modal-header{background:linear-gradient(135deg,#fff7ed,#ffedd5)}.operations-modal-container.meltdown{position:relative;pointer-events:none}.operations-modal-container.meltdown:after{content:"🔥 服务熔断中";position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:#ef4444e6;color:#fff;font-size:1rem;font-weight:600;border-radius:12px}@media(max-width:768px){.category-buttons-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.category-button{padding:.75rem .375rem;min-height:70px}.category-btn-icon{font-size:1.25rem}.category-btn-name{font-size:.75rem}.modal-content{width:95%;max-height:85vh}}@media(max-width:480px){.operations-modal-container{padding:.75rem}.category-buttons-grid{gap:.375rem}.category-button{padding:.625rem .25rem;min-height:60px}.category-btn-icon{font-size:1.1rem;margin-bottom:.25rem}.category-btn-name{font-size:.7rem}.category-btn-count{font-size:.65rem}}.turn-control{background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 2px 12px #00000014;display:flex;flex-direction:column;gap:1rem;animation:slideInRight .4s ease-out}.turn-status{display:flex;flex-direction:column;align-items:center;padding:1rem;border-radius:8px;text-align:center;transition:all .3s ease}.turn-status.normal{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #86efac}.turn-status.normal:hover{box-shadow:0 4px 12px #22c55e33}.turn-status.meltdown{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fca5a5;animation:meltdownAlert 2s infinite}@keyframes meltdownAlert{0%,to{box-shadow:0 0 #ef444466;transform:scale(1)}50%{box-shadow:0 0 0 10px #ef444400;transform:scale(1.01)}}.status-icon{font-size:2rem;margin-bottom:.5rem;transition:transform .3s ease}.turn-status:hover .status-icon{transform:scale(1.15)}.turn-status.meltdown .status-icon{animation:fireShake .5s infinite}@keyframes fireShake{0%,to{transform:rotate(0)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}.status-text{font-size:1rem;font-weight:600;color:#333}.turn-status.normal .status-text{color:#166534}.turn-status.meltdown .status-text{color:#991b1b;animation:textPulse 1s infinite}@keyframes textPulse{0%,to{opacity:1}50%{opacity:.7}}.status-desc{font-size:.8rem;color:#666;margin-top:.25rem}.turn-status.meltdown .status-desc{color:#b91c1c}.end-turn-button{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem 1.5rem;border:none;border-radius:12px;background:linear-gradient(135deg,#4a90d9,#2563eb);color:#fff;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #2563eb4d;position:relative;overflow:hidden}.end-turn-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.end-turn-button:hover:not(:disabled):before{left:100%}.end-turn-button:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 20px #2563eb66}.end-turn-button:active:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #2563eb4d}.end-turn-button:disabled{background:linear-gradient(135deg,#9ca3af,#6b7280);cursor:not-allowed;box-shadow:none;transform:none}.end-turn-button.clicked{animation:buttonClick .3s ease-out}@keyframes buttonClick{0%{transform:scale(1)}50%{transform:scale(.95)}to{transform:scale(1)}}.button-icon{font-size:1.5rem;margin-bottom:.25rem;transition:transform .3s ease}.end-turn-button:hover:not(:disabled) .button-icon{transform:rotate(90deg)}.button-text{font-size:1.1rem;font-weight:600}.button-turn{font-size:.75rem;opacity:.8;margin-top:.25rem}.exam-reminder{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;border-radius:8px;background:linear-gradient(135deg,#fffbeb,#fef3c7);border:1px solid #fcd34d;animation:examReminderPulse 1.5s infinite}@keyframes examReminderPulse{0%,to{opacity:1;transform:scale(1);box-shadow:0 0 #fcd34d66}50%{opacity:.9;transform:scale(1.01);box-shadow:0 0 0 6px #fcd34d00}}.reminder-icon{font-size:1.25rem;animation:bellRing 2s infinite}@keyframes bellRing{0%,80%,to{transform:rotate(0)}85%{transform:rotate(15deg)}90%{transform:rotate(-15deg)}95%{transform:rotate(10deg)}}.reminder-text{font-size:.9rem;font-weight:600;color:#92400e}.shortcut-hint{text-align:center;font-size:.75rem;color:#999;margin-top:.25rem}.shortcut-key{display:inline-block;padding:.125rem .375rem;background:#f0f0f0;border:1px solid #ddd;border-radius:4px;font-family:monospace;font-size:.7rem}@media(max-width:1200px){.turn-control{padding:1rem}}@media(max-width:768px){.turn-control{padding:1rem;animation:fadeIn .3s ease-out}.end-turn-button{padding:.875rem 1.25rem}.button-icon{font-size:1.25rem}.button-text{font-size:1rem}.turn-status{padding:.75rem}.status-icon{font-size:1.75rem}}@media(max-width:480px){.turn-control{padding:.875rem;gap:.75rem}.end-turn-button{padding:.75rem 1rem}.button-icon{font-size:1.1rem}.button-text{font-size:.95rem}.exam-reminder{padding:.625rem}.reminder-text{font-size:.85rem}}.event-log{background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 2px 12px #00000014;display:flex;flex-direction:column;height:100%;min-height:300px;max-height:500px;animation:slideInRight .4s ease-out .1s both}.event-log .panel-title{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;color:#333;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid #f0f0f0}.title-icon{font-size:1.1rem;transition:transform .3s ease}.event-log:hover .title-icon{transform:rotate(15deg)}.log-count{margin-left:auto;font-size:.75rem;font-weight:500;color:#666;background:#f0f0f0;padding:.25rem .5rem;border-radius:12px;transition:all .3s ease}.log-count.new-message{animation:badgePop .4s ease-out;background:#4a90d9;color:#fff}@keyframes badgePop{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.log-container{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem;padding-right:.5rem;scroll-behavior:smooth}.log-container::-webkit-scrollbar{width:6px}.log-container::-webkit-scrollbar-track{background:#f0f0f0;border-radius:3px}.log-container::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px;transition:background .3s ease}.log-container::-webkit-scrollbar-thumb:hover{background:#aaa}.log-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;color:#999;animation:fadeIn .5s ease-out}.empty-icon{font-size:2rem;margin-bottom:.5rem;opacity:.5;animation:floatIdle 3s ease-in-out infinite}@keyframes floatIdle{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.empty-text{font-size:.9rem}.log-item{padding:.75rem;border-radius:8px;border-left:3px solid;background:#f8f9fa;animation:logSlideIn .3s ease-out;transition:all .2s ease}@keyframes logSlideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.log-item:hover{transform:translate(4px);box-shadow:0 2px 8px #00000014}.log-item.new{animation:logSlideIn .3s ease-out,newLogHighlight 2s ease-out}@keyframes newLogHighlight{0%{background:#4a90d933}to{background:#f8f9fa}}.log-item-operation{border-left-color:#4a90d9;background:linear-gradient(135deg,#f0f7ff,#e8f2ff)}.log-item-event{border-left-color:#f59e0b;background:linear-gradient(135deg,#fffbeb,#fef3c7)}.log-item-event.negative{border-left-color:#ef4444;background:linear-gradient(135deg,#fef2f2,#fee2e2)}.log-item-event.positive{border-left-color:#22c55e;background:linear-gradient(135deg,#f0fdf4,#dcfce7)}.log-item-exam{border-left-color:#8b5cf6;background:linear-gradient(135deg,#faf5ff,#f3e8ff)}.log-item-system{border-left-color:#6b7280;background:linear-gradient(135deg,#f9fafb,#f3f4f6)}.log-item-meltdown{border-left-color:#ef4444;background:linear-gradient(135deg,#fef2f2,#fee2e2);animation:logSlideIn .3s ease-out,meltdownFlash 1s ease-out}@keyframes meltdownFlash{0%,50%{background:#ef44444d}to{background:linear-gradient(135deg,#fef2f2,#fee2e2)}}.log-item-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.375rem;font-size:.75rem}.log-icon{font-size:.9rem;transition:transform .3s ease}.log-item:hover .log-icon{transform:scale(1.2)}.log-label{font-weight:600;text-transform:uppercase;letter-spacing:.5px}.log-item-operation .log-label{color:#2563eb}.log-item-event .log-label{color:#d97706}.log-item-event.negative .log-label{color:#dc2626}.log-item-event.positive .log-label{color:#16a34a}.log-item-exam .log-label{color:#7c3aed}.log-item-system .log-label{color:#4b5563}.log-item-meltdown .log-label{color:#dc2626}.log-turn{color:#666;margin-left:auto}.log-time{color:#999;font-size:.7rem}.log-message{font-size:.85rem;color:#333;line-height:1.4}.log-details{margin-top:.5rem;padding-top:.5rem;border-top:1px dashed rgba(0,0,0,.1);font-size:.8rem;color:#666}.log-changes{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.375rem}.log-change{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .375rem;border-radius:4px;font-size:.75rem;font-weight:500}.log-change.positive{background:#22c55e26;color:#16a34a}.log-change.negative{background:#ef444426;color:#dc2626}@media(max-width:1200px){.event-log{padding:1rem;min-height:250px;max-height:400px}}@media(max-width:768px){.event-log{padding:1rem;min-height:200px;max-height:300px;animation:fadeIn .3s ease-out}.log-item{padding:.625rem}.log-item-header{flex-wrap:wrap}.log-turn{margin-left:0}.log-message{font-size:.8rem}}@media(max-width:480px){.event-log{padding:.875rem;min-height:180px;max-height:250px}.event-log .panel-title{font-size:.9rem}.log-item{padding:.5rem}.log-icon{font-size:.8rem}.log-label{font-size:.65rem}.log-message{font-size:.75rem}}.exam-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;animation:overlayFadeIn .25s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.exam-modal{background:#fff;border-radius:16px;padding:2rem;max-width:450px;width:90%;box-shadow:0 20px 60px #0000004d;animation:modalSlideUp .4s cubic-bezier(.34,1.56,.64,1);position:relative;overflow:hidden}.exam-modal:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at center,rgba(102,126,234,.1) 0%,transparent 50%);animation:bgRotate 20s linear infinite;pointer-events:none}@keyframes bgRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.exam-modal-header{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-bottom:1.5rem;position:relative}.exam-icon{font-size:2rem;animation:examIconPop .5s ease-out .2s both}@keyframes examIconPop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.exam-modal-header h2{font-size:1.5rem;color:#1a1a2e;margin:0;animation:titleFadeIn .4s ease-out .3s both}@keyframes titleFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.exam-scenario{text-align:center;padding:1rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;margin-bottom:1rem;animation:scenarioSlideIn .4s ease-out .4s both;position:relative;overflow:hidden}@keyframes scenarioSlideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.exam-scenario:after{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:scenarioShine 3s ease-in-out infinite}@keyframes scenarioShine{0%,to{left:-100%}50%{left:150%}}.scenario-label{display:block;font-size:.85rem;color:#fffc;margin-bottom:.25rem}.scenario-name{display:block;font-size:1.25rem;font-weight:700;color:#fff}.difficulty-badge{display:inline-block;margin-top:.5rem;padding:.25rem .75rem;background:#fff3;border-radius:20px;font-size:.8rem;color:#fff;font-weight:600}.exam-focus-dimensions{text-align:center;padding:.75rem;background:#f0f4ff;border-radius:10px;margin-bottom:1rem;animation:focusFadeIn .4s ease-out .45s both}@keyframes focusFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.focus-label{display:block;font-size:.8rem;color:#666;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.focus-dimensions-list{display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap}.focus-dimension-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.35rem .75rem;border-radius:20px;font-size:.85rem;font-weight:600;color:#fff}.focus-dimension-tag.algorithm{background:linear-gradient(135deg,#3b82f6,#60a5fa)}.focus-dimension-tag.dataProcessing{background:linear-gradient(135deg,#8b5cf6,#a78bfa)}.focus-dimension-tag.stability{background:linear-gradient(135deg,#10b981,#34d399)}.focus-dimension-tag.userExperience{background:linear-gradient(135deg,#f59e0b,#fbbf24)}.exam-calculation{background:#f8f9fa;border-radius:12px;padding:1.25rem;margin-bottom:1.5rem;animation:calcFadeIn .4s ease-out .5s both}@keyframes calcFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.exam-calculation h3{font-size:.9rem;color:#666;text-transform:uppercase;letter-spacing:.5px;margin:0 0 1rem;text-align:center}.calc-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #eee;transition:all .2s ease}.calc-row:hover{background:#00000005;padding-left:.5rem;padding-right:.5rem;margin-left:-.5rem;margin-right:-.5rem;border-radius:4px}.calc-row:last-of-type{border-bottom:none}.calc-label{color:#666;font-size:.95rem}.calc-value{font-weight:600;color:#333;font-size:.95rem}.stability-desc,.dimension-bonus-desc{font-size:.8rem;font-weight:400;color:inherit;margin-left:.5rem}.dimension-bonus-high .calc-value{color:#27ae60}.dimension-bonus-mid .calc-value{color:#3498db}.dimension-bonus-low .calc-value{color:#e74c3c}.stability-safe .calc-value{color:#27ae60}.stability-warning .calc-value{color:#f39c12}.stability-danger .calc-value{color:#e74c3c}.stability-meltdown .calc-value{color:#c0392b;font-weight:700;animation:meltdownPulse 1s infinite}@keyframes meltdownPulse{0%,to{opacity:1}50%{opacity:.6}}.calc-divider{height:2px;background:linear-gradient(90deg,transparent,#ddd,transparent);margin:.75rem 0}.calc-formula{text-align:center;padding:.5rem 0}.formula-text{font-family:Courier New,monospace;font-size:.9rem;color:#666;background:#fff;padding:.5rem 1rem;border-radius:6px;display:inline-block;border:1px solid #eee}.exam-result{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1.25rem;border-radius:12px;margin-bottom:1rem;animation:resultPopIn .5s cubic-bezier(.34,1.56,.64,1) .6s both}@keyframes resultPopIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.result-passed{background:linear-gradient(135deg,#d4edda,#c3e6cb);border:2px solid #86efac}.result-failed{background:linear-gradient(135deg,#f8d7da,#f5c6cb);border:2px solid #fca5a5}.result-label{font-size:.9rem;color:#666}.result-value{font-size:1.75rem;font-weight:700;animation:valueCountUp .8s ease-out .7s both}@keyframes valueCountUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.result-passed .result-value{color:#155724}.result-failed .result-value{color:#721c24}.result-icon{font-size:1.5rem;animation:iconBounce .6s ease-out .8s both}@keyframes iconBounce{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.3)}to{opacity:1;transform:scale(1)}}.exam-warning{text-align:center;padding:.75rem;background:#fff3cd;border-radius:8px;color:#856404;font-size:.9rem;margin-bottom:1rem;border:1px solid #ffeeba;animation:warningShake .5s ease-out .9s both}@keyframes warningShake{0%,to{transform:translate(0)}20%,60%{transform:translate(-3px)}40%,80%{transform:translate(3px)}}.exam-continue-button{width:100%;padding:1rem;font-size:1.1rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;animation:buttonFadeIn .4s ease-out 1s both}.exam-continue-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.exam-continue-button:hover:before{left:100%}.exam-continue-button:hover{transform:translateY(-3px);box-shadow:0 8px 25px #667eea66}.exam-continue-button:active{transform:translateY(-1px)}@media(max-width:480px){.exam-modal{padding:1.5rem;margin:1rem;border-radius:12px}.exam-modal-header h2{font-size:1.25rem}.exam-icon{font-size:1.75rem}.result-value{font-size:1.5rem}.exam-scenario{padding:.875rem}.scenario-name{font-size:1.1rem}.exam-calculation{padding:1rem}.calc-label,.calc-value{font-size:.85rem}.exam-continue-button{padding:.875rem;font-size:1rem}}.exam-threshold{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.9rem;animation:thresholdFadeIn .4s ease-out .85s both}@keyframes thresholdFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.threshold-met{background:linear-gradient(135deg,#d4edda,#c3e6cb);border:1px solid #86efac}.threshold-not-met{background:linear-gradient(135deg,#f8d7da,#f5c6cb);border:1px solid #fca5a5}.threshold-label{color:#666;font-weight:500}.threshold-value{font-weight:600;color:#333}.threshold-status{font-weight:600}.threshold-met .threshold-status{color:#155724}.threshold-not-met .threshold-status{color:#721c24}.game-over-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;animation:darkOverlayFadeIn .4s ease-out;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}@keyframes darkOverlayFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}to{opacity:1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}}.game-over-modal{background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:16px;padding:2rem;max-width:450px;width:90%;box-shadow:0 20px 60px #00000080,0 0 40px #e74c3c33;animation:gameOverSlideUp .5s cubic-bezier(.34,1.56,.64,1);border:1px solid rgba(231,76,60,.3);position:relative;overflow:hidden}@keyframes gameOverSlideUp{0%{opacity:0;transform:translateY(50px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.game-over-modal:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,rgba(231,76,60,.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(231,76,60,.1) 0%,transparent 50%);pointer-events:none;animation:bgPulse 4s ease-in-out infinite}@keyframes bgPulse{0%,to{opacity:.5}50%{opacity:1}}.game-over-modal-header{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-bottom:1.5rem;position:relative}.game-over-icon{font-size:2.5rem;animation:skullPulse 2s ease-in-out infinite}@keyframes skullPulse{0%,to{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.15);filter:brightness(1.2)}}.game-over-modal-header h2{font-size:1.75rem;color:#e74c3c;margin:0;text-shadow:0 0 20px rgba(231,76,60,.5);animation:titleGlitch 3s ease-in-out infinite}@keyframes titleGlitch{0%,90%,to{transform:translate(0);text-shadow:0 0 20px rgba(231,76,60,.5)}92%{transform:translate(-2px);text-shadow:-2px 0 #e74c3c,2px 0 #3498db}94%{transform:translate(2px);text-shadow:2px 0 #e74c3c,-2px 0 #3498db}96%{transform:translate(-1px);text-shadow:-1px 0 #e74c3c,1px 0 #3498db}98%{transform:translate(1px);text-shadow:1px 0 #e74c3c,-1px 0 #3498db}}.game-over-reason{text-align:center;padding:1rem;background:#e74c3c33;border-radius:12px;margin-bottom:1.5rem;border:1px solid rgba(231,76,60,.3);animation:reasonFadeIn .4s ease-out .3s both}@keyframes reasonFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.reason-label{display:block;font-size:.85rem;color:#fff9;margin-bottom:.5rem}.reason-text{display:block;font-size:1.1rem;font-weight:700;color:#e74c3c}.game-over-stats{background:#ffffff0d;border-radius:12px;padding:1.25rem;margin-bottom:1.5rem;animation:statsFadeIn .4s ease-out .4s both}@keyframes statsFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.game-over-stats h3{font-size:.9rem;color:#fff9;text-transform:uppercase;letter-spacing:.5px;margin:0 0 1rem;text-align:center}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.1);transition:all .2s ease}.stat-row:hover{background:#ffffff0d;padding-left:.5rem;padding-right:.5rem;margin-left:-.5rem;margin-right:-.5rem;border-radius:4px}.stat-row:last-of-type{border-bottom:none}.stat-label{color:#ffffffb3;font-size:.95rem}.stat-value{font-weight:600;color:#fff;font-size:.95rem}.stat-value.negative{color:#e74c3c}.stat-value.positive{color:#2ecc71}.game-over-message{text-align:center;margin-bottom:1.5rem;animation:messageFadeIn .4s ease-out .5s both}@keyframes messageFadeIn{0%{opacity:0}to{opacity:1}}.game-over-message p{color:#fffc;font-size:.95rem;margin:.5rem 0;line-height:1.5}.game-over-message p:first-child{color:#fff9}.game-over-message p:last-child{color:#f39c12;font-style:italic}.game-over-restart-button{width:100%;padding:1rem;font-size:1.1rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#e74c3c,#c0392b);border:none;border-radius:10px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;animation:buttonFadeIn .4s ease-out .6s both}@keyframes buttonFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.game-over-restart-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.game-over-restart-button:hover:before{left:100%}.game-over-restart-button:hover{transform:translateY(-3px);box-shadow:0 8px 25px #e74c3c66}.game-over-restart-button:active{transform:translateY(-1px)}.restart-icon{margin-right:.5rem;display:inline-block;transition:transform .3s ease}.game-over-restart-button:hover .restart-icon{transform:rotate(180deg)}@media(max-width:480px){.game-over-modal{padding:1.5rem;margin:1rem;border-radius:12px}.game-over-modal-header h2{font-size:1.5rem}.game-over-icon{font-size:2rem}.game-over-reason{padding:.875rem}.reason-text{font-size:1rem}.game-over-stats{padding:1rem}.stat-label,.stat-value,.game-over-message p{font-size:.85rem}.game-over-restart-button{padding:.875rem;font-size:1rem}}.equipment-panel{background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 2px 12px #00000014}.equipment-panel .panel-title{font-size:1rem;font-weight:600;color:#333;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid #f0f0f0}.equipment-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.equipment-item{background:#f8f9fa;border-radius:8px;padding:.75rem;transition:all .3s ease;border:2px solid transparent}.equipment-item.can-upgrade{border-color:#4a90d9;background:linear-gradient(135deg,#f0f7ff,#e8f4ff)}.equipment-item.can-upgrade:hover{transform:translateY(-2px);box-shadow:0 4px 12px #4a90d933}.equipment-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.equipment-icon{font-size:1.5rem}.equipment-info{display:flex;flex-direction:column}.equipment-name{font-weight:600;color:#333;font-size:.9rem}.equipment-level{font-size:.75rem;color:#666}.equipment-current{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding:.25rem .5rem;background:#fffc;border-radius:4px}.current-name{font-size:.8rem;color:#555}.current-bonus{font-size:.8rem;font-weight:600;color:#22c55e}.upgrade-button{width:100%;display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem;border:none;border-radius:6px;background:linear-gradient(135deg,#4a90d9,#357abd);color:#fff;cursor:pointer;transition:all .3s ease}.upgrade-button:hover:not(:disabled){background:linear-gradient(135deg,#357abd,#2563eb);transform:scale(1.02)}.upgrade-button:disabled{background:#ccc;cursor:not-allowed;opacity:.7}.upgrade-text{font-size:.75rem;font-weight:500}.upgrade-cost{font-size:.7rem;opacity:.9}.max-level{text-align:center;padding:.5rem;font-size:.8rem;color:#22c55e;font-weight:600;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-radius:6px}@media(max-width:768px){.equipment-grid{grid-template-columns:1fr}}.toast-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:.75rem;max-width:400px;pointer-events:none}.toast{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-radius:12px;background:#fff;box-shadow:0 4px 20px #00000026;animation:toastSlideIn .3s cubic-bezier(.34,1.56,.64,1);pointer-events:auto;border-left:4px solid;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}.toast.toast-exit{animation:toastSlideOut .3s ease-out forwards}@keyframes toastSlideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100px)}}.toast-success{border-left-color:#22c55e;background:linear-gradient(135deg,#f0fdf4,#dcfce7)}.toast-success .toast-icon{color:#22c55e}.toast-error{border-left-color:#ef4444;background:linear-gradient(135deg,#fef2f2,#fee2e2)}.toast-error .toast-icon{color:#ef4444}.toast-warning{border-left-color:#f59e0b;background:linear-gradient(135deg,#fffbeb,#fef3c7)}.toast-warning .toast-icon{color:#f59e0b}.toast-info{border-left-color:#3b82f6;background:linear-gradient(135deg,#eff6ff,#dbeafe)}.toast-info .toast-icon{color:#3b82f6}.toast-icon{font-size:1.25rem;flex-shrink:0}.toast-message{flex:1;font-size:.95rem;color:#333;line-height:1.4}.toast-close{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#0000001a;border:none;border-radius:50%;cursor:pointer;font-size:1rem;color:#666;transition:all .2s ease;padding:0;line-height:1}.toast-close:hover{background:#0003;color:#333}@media(max-width:480px){.toast-container{top:10px;right:10px;left:10px;max-width:none}.toast{padding:.875rem 1rem}.toast-message{font-size:.9rem}}.team-member-card{background:linear-gradient(145deg,#fff,#f8fafc);border-radius:12px;padding:1rem;box-shadow:0 2px 8px #0000000f,0 1px 3px #0000000a;border:1px solid #e5e7eb;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.team-member-card.rarity-common{border-left:3px solid #9e9e9e}.team-member-card.rarity-rare{border-left:3px solid #2196f3}.team-member-card.rarity-epic{border-left:3px solid #9c27b0}.team-member-card.rarity-legendary{border-left:3px solid #ff9800;background:linear-gradient(145deg,#fffbeb,#fef3c7)}.team-member-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#6366f1,#8b5cf6,#a855f7);opacity:0;transition:opacity .3s ease}.team-member-card:hover{box-shadow:0 8px 24px #6366f126,0 4px 12px #00000014;transform:translateY(-3px);border-color:#c7d2fe}.team-member-card:hover:before{opacity:1}.member-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.875rem}.member-info{display:flex;align-items:center;gap:.625rem;flex-wrap:wrap}.member-name{font-size:1.05rem;font-weight:700;color:#1e293b;letter-spacing:-.01em}.rarity-badge{font-size:.65rem;font-weight:700;color:#fff;padding:.15rem .5rem;border-radius:8px;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 1px 3px #0003}.rarity-badge.rarity-common{background:#9e9e9e}.rarity-badge.rarity-rare{background:#2196f3}.rarity-badge.rarity-epic{background:#9c27b0}.rarity-badge.rarity-legendary{background:linear-gradient(135deg,#ff9800,#f57c00);animation:legendaryGlow 2s ease-in-out infinite}@keyframes legendaryGlow{0%,to{box-shadow:0 1px 3px #ff98004d}50%{box-shadow:0 2px 8px #ff980099}}.member-level{font-size:.7rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#6366f1,#4f46e5);padding:.2rem .625rem;border-radius:12px;box-shadow:0 2px 6px #6366f159;animation:levelBadgePulse 2s ease-in-out infinite;text-transform:uppercase;letter-spacing:.5px}@keyframes levelBadgePulse{0%,to{box-shadow:0 2px 6px #6366f159}50%{box-shadow:0 2px 12px #6366f180}}.member-level.max-level{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 2px 6px #f59e0b66;animation:maxLevelGlow 1.5s ease-in-out infinite}@keyframes maxLevelGlow{0%,to{box-shadow:0 2px 6px #f59e0b66}50%{box-shadow:0 2px 16px #f59e0b99}}.fire-button{font-size:.75rem;font-weight:600;padding:.3rem .75rem;background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626;border:1px solid #fca5a5;border-radius:8px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1)}.fire-button:hover{background:linear-gradient(135deg,#fecaca,#fca5a5);border-color:#f87171;transform:scale(1.02);box-shadow:0 2px 8px #dc262633}.fire-button:active{transform:scale(.98)}.base-stats-section{margin-bottom:.75rem;padding:.625rem;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:8px;border:1px solid #bae6fd}.stats-label{display:block;font-size:.65rem;font-weight:600;color:#0369a1;text-transform:uppercase;letter-spacing:.75px;margin-bottom:.5rem}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.stat-item{display:flex;flex-direction:column;align-items:center;gap:.125rem;padding:.375rem;background:#ffffffb3;border-radius:6px}.stat-icon{font-size:.875rem}.stat-name{font-size:.6rem;font-weight:500;color:#64748b;text-transform:uppercase}.stat-value{font-size:.85rem;font-weight:700;color:#0284c7}.salary-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding:.5rem .75rem;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:8px;border:1px solid #fcd34d}.salary-label{font-size:.7rem;font-weight:600;color:#92400e;text-transform:uppercase;letter-spacing:.5px}.salary-value{font-size:.85rem;font-weight:700;color:#b45309}.exp-section{margin-bottom:1rem;padding:.75rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:10px;border:1px solid #e2e8f0}.exp-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.exp-label{font-size:.7rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.75px}.exp-value{font-size:.8rem;font-weight:600;color:#4f46e5}.exp-bar{height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden;position:relative}.exp-bar:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.exp-bar-fill{height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6,#a855f7);border-radius:4px;transition:width .6s cubic-bezier(.4,0,.2,1);position:relative;box-shadow:0 0 8px #6366f166}.exp-bar-fill.max-level{background:linear-gradient(90deg,#f59e0b,#d97706,#b45309);box-shadow:0 0 8px #f59e0b80}.traits-section{display:flex;flex-direction:column;gap:.625rem}.traits-label{font-size:.7rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.75px}.traits-list{display:flex;flex-wrap:wrap;gap:.5rem}.no-traits{font-size:.75rem;color:#94a3b8;font-style:italic;padding:.25rem 0}.trait-tag{display:inline-flex;align-items:center;gap:.375rem;font-size:.8rem;padding:.375rem .625rem;border-radius:8px;cursor:help;transition:all .25s cubic-bezier(.4,0,.2,1);border:1px solid transparent;font-weight:500}.trait-tag:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 4px 12px #0000001a}.trait-icon{font-size:1rem}.trait-name{font-weight:600}.trait-tag.algorithm_expert{background:linear-gradient(135deg,#ede9fe,#ddd6fe);border-color:#c4b5fd;color:#6d28d9}.trait-tag.data_engineer{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-color:#93c5fd;color:#1d4ed8}.trait-tag.architect{background:linear-gradient(135deg,#dcfce7,#bbf7d0);border-color:#86efac;color:#15803d}.trait-tag.product_manager{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#fcd34d;color:#b45309}.trait-tag.fullstack{background:linear-gradient(135deg,#f3e8ff,#e9d5ff);border-color:#d8b4fe;color:#7c3aed}.trait-tag.efficiency{background:linear-gradient(135deg,#ffedd5,#fed7aa);border-color:#fdba74;color:#c2410c}.trait-tag.cost_control{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:#6ee7b7;color:#047857}.trait-tag.data_mining{background:linear-gradient(135deg,#cffafe,#a5f3fc);border-color:#67e8f9;color:#0e7490}.trait-tag:not([class*=algorithm_expert]):not([class*=data_engineer]):not([class*=architect]):not([class*=product_manager]):not([class*=fullstack]):not([class*=efficiency]):not([class*=cost_control]):not([class*=data_mining]){background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-color:#d1d5db;color:#374151}@media(max-width:768px){.team-member-card{padding:.875rem}.member-name{font-size:.95rem}.member-level{font-size:.65rem;padding:.15rem .5rem}.trait-tag{font-size:.75rem;padding:.3rem .5rem}.exp-section{padding:.625rem}}@media(max-width:480px){.team-member-card{padding:.75rem}.member-header{flex-direction:column;align-items:flex-start;gap:.5rem}.fire-button{align-self:flex-end}.trait-tag{font-size:.7rem;padding:.25rem .4rem}.trait-icon{font-size:.875rem}}.hiring-pool{background:linear-gradient(145deg,#f8fafc,#f1f5f9);border-radius:12px;padding:1rem;border:1px solid #e2e8f0;box-shadow:inset 0 1px 3px #0000000a}.hiring-pool-title{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:700;color:#334155;margin:0 0 .875rem}.title-icon{font-size:1.125rem;animation:bounce 2s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.candidate-count{font-size:.75rem;font-weight:500;color:#64748b;background:#e2e8f0;padding:.125rem .5rem;border-radius:8px}.no-candidates{text-align:center;padding:2rem 1.5rem;color:#94a3b8;font-size:.875rem;background:#ffffff80;border-radius:10px;border:2px dashed #cbd5e1}.candidates-list{display:flex;flex-direction:column;gap:.875rem}.candidate-card{background:#fff;border-radius:10px;padding:1rem;border:1px solid #e2e8f0;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.candidate-card.rarity-common{border-left:3px solid #9e9e9e}.candidate-card.rarity-rare{border-left:3px solid #2196f3}.candidate-card.rarity-epic{border-left:3px solid #9c27b0}.candidate-card.rarity-legendary{border-left:3px solid #ff9800;background:linear-gradient(145deg,#fffbeb,#fef3c7)}.candidate-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#22c55e,#16a34a);opacity:0;transition:opacity .3s ease}.candidate-card:hover{border-color:#86efac;box-shadow:0 4px 16px #22c55e1f;transform:translateY(-2px)}.candidate-card:hover:before{opacity:1}.candidate-card.unaffordable{opacity:.6;background:#f8fafc}.candidate-card.unaffordable:hover{transform:none;box-shadow:none;border-color:#e2e8f0}.candidate-card.unaffordable:before{display:none}.candidate-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.candidate-name-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.candidate-name{font-size:.95rem;font-weight:700;color:#1e293b;letter-spacing:-.01em}.candidate-rarity{font-size:.6rem;font-weight:700;color:#fff;padding:.125rem .4rem;border-radius:6px;text-transform:uppercase;letter-spacing:.5px}.candidate-rarity.rarity-legendary{animation:legendaryPulse 2s ease-in-out infinite}@keyframes legendaryPulse{0%,to{box-shadow:0 0 4px #ff980066}50%{box-shadow:0 0 8px #ff9800b3}}.candidate-cost{font-size:.8rem;font-weight:600;color:#ca8a04;background:linear-gradient(135deg,#fef9c3,#fef08a);padding:.2rem .625rem;border-radius:8px;border:1px solid #fde047;display:flex;align-items:center;gap:.25rem}.candidate-cost:before{content:"💰";font-size:.75rem}.candidate-stats{display:flex;gap:.5rem;margin-bottom:.625rem}.stat-badge{display:flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:6px;border:1px solid #bae6fd}.stat-badge .stat-icon{font-size:.75rem}.stat-badge .stat-val{font-size:.75rem;font-weight:700;color:#0284c7}.candidate-salary{display:flex;align-items:center;gap:.375rem;margin-bottom:.625rem;padding:.375rem .5rem;background:linear-gradient(135deg,#fef9c3,#fef08a);border-radius:6px;border:1px solid #fde047}.candidate-salary .salary-icon{font-size:.75rem}.candidate-salary .salary-text{font-size:.7rem;font-weight:600;color:#92400e}.candidate-traits{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.875rem;min-height:1.5rem}.no-traits-hint{font-size:.7rem;color:#94a3b8;font-style:italic}.candidate-trait{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;padding:.3rem .5rem;border-radius:6px;border:1px solid transparent;cursor:help;transition:all .2s ease;font-weight:500}.candidate-trait:hover{transform:scale(1.05)}.candidate-trait .trait-icon{font-size:.85rem}.candidate-trait .trait-name{font-weight:600}.candidate-trait.algorithm_expert{background:linear-gradient(135deg,#ede9fe,#ddd6fe);border-color:#c4b5fd;color:#6d28d9}.candidate-trait.data_engineer{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-color:#93c5fd;color:#1d4ed8}.candidate-trait.architect{background:linear-gradient(135deg,#dcfce7,#bbf7d0);border-color:#86efac;color:#15803d}.candidate-trait.product_manager{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#fcd34d;color:#b45309}.candidate-trait.fullstack{background:linear-gradient(135deg,#f3e8ff,#e9d5ff);border-color:#d8b4fe;color:#7c3aed}.candidate-trait.efficiency{background:linear-gradient(135deg,#ffedd5,#fed7aa);border-color:#fdba74;color:#c2410c}.candidate-trait.cost_control{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:#6ee7b7;color:#047857}.candidate-trait.data_mining{background:linear-gradient(135deg,#cffafe,#a5f3fc);border-color:#67e8f9;color:#0e7490}.hire-button{width:100%;padding:.625rem;font-size:.85rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#22c55e,#16a34a);border:none;border-radius:8px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-transform:uppercase;letter-spacing:.5px}.hire-button:hover:not(.disabled){background:linear-gradient(135deg,#16a34a,#15803d);transform:translateY(-2px);box-shadow:0 4px 12px #22c55e59}.hire-button:active:not(.disabled){transform:translateY(0);box-shadow:0 2px 6px #22c55e40}.hire-button.disabled{background:linear-gradient(135deg,#94a3b8,#64748b);cursor:not-allowed;opacity:.7}@media(max-width:768px){.hiring-pool,.candidate-card{padding:.875rem}.candidate-name{font-size:.9rem}.candidate-trait{font-size:.7rem;padding:.25rem .4rem}}@media(max-width:480px){.hiring-pool{padding:.75rem}.candidate-header{flex-direction:column;align-items:flex-start;gap:.375rem}.candidate-cost{align-self:flex-end}}.team-panel{background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 2px 12px #00000014;animation:slideInRight .4s ease-out}.team-panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid #f0f0f0}.team-panel .panel-title{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;color:#333;margin:0}.team-panel .title-icon{font-size:1.125rem}.team-count{font-size:.875rem;font-weight:600;color:#4b5563;background:#f3f4f6;padding:.25rem .75rem;border-radius:12px;transition:all .2s ease}.team-count.full{color:#dc2626;background:#fee2e2}.salary-overview{margin-bottom:1rem;padding:.875rem;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-radius:10px;border:1px solid #86efac;transition:all .3s ease}.salary-overview.warning{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#fcd34d}.salary-overview-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.625rem}.salary-overview-icon{font-size:1rem}.salary-overview-title{font-size:.8rem;font-weight:700;color:#166534;text-transform:uppercase;letter-spacing:.5px}.salary-overview.warning .salary-overview-title{color:#92400e}.salary-overview-content{display:flex;flex-direction:column;gap:.5rem}.salary-row{display:flex;justify-content:space-between;align-items:center}.salary-label{font-size:.8rem;color:#4b5563}.salary-amount{font-size:.9rem;font-weight:700;color:#15803d}.salary-amount.danger{color:#dc2626}.salary-turns{font-size:.85rem;font-weight:600;color:#6366f1}.salary-warning{margin-top:.5rem;padding:.5rem;font-size:.75rem;color:#b45309;background:#fff9;border-radius:6px;text-align:center}.section-title{font-size:.85rem;font-weight:600;color:#4b5563;margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.5px}.team-section{margin-bottom:1.25rem}.empty-team{text-align:center;padding:1.5rem;color:#9ca3af;font-size:.875rem;background:#f9fafb;border-radius:8px;border:1px dashed #e5e7eb}.team-members-list{display:flex;flex-direction:column;gap:.75rem}.hiring-section{position:relative}.team-full-warning{margin-top:.75rem;padding:.625rem;font-size:.8rem;color:#b45309;background:#fef3c7;border-radius:6px;text-align:center}@media(max-width:1200px){.team-panel{padding:1rem}}@media(max-width:768px){.team-panel{padding:1rem;animation:fadeIn .3s ease-out}.team-panel-header{flex-direction:column;align-items:flex-start;gap:.5rem}.team-count{align-self:flex-end}}@media(max-width:480px){.team-panel{padding:.875rem}.team-panel .panel-title{font-size:.9rem}.section-title{font-size:.8rem}}.save-load-panel{background:#fff;border-radius:12px;padding:1rem;box-shadow:0 2px 12px #00000014;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.save-load-header{margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:2px solid #f0f0f0}.save-load-panel .panel-title{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;color:#333;margin:0}.save-load-panel .title-icon{font-size:1rem}.save-load-buttons{display:flex;gap:.5rem}.save-load-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.375rem;padding:.625rem .75rem;border:none;border-radius:8px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease}.save-load-btn:disabled{opacity:.5;cursor:not-allowed}.save-load-btn .btn-icon{font-size:.9rem}.export-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.export-btn:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px);box-shadow:0 2px 8px #2563eb4d}.import-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.import-btn:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px);box-shadow:0 2px 8px #0596694d}.save-load-message{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;padding:.5rem .75rem;border-radius:6px;font-size:.8rem;animation:slideIn .2s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.save-load-message.success{background:#d1fae5;color:#065f46}.save-load-message.error{background:#fee2e2;color:#991b1b}.save-load-message.info{background:#dbeafe;color:#1e40af}.message-icon{font-size:.9rem}.import-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.import-modal{background:#fff;border-radius:12px;width:90%;max-width:500px;max-height:90vh;overflow:hidden;box-shadow:0 20px 60px #0000004d;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.95) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.import-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb}.import-modal-header h4{margin:0;font-size:1rem;font-weight:600;color:#333}.close-btn{background:none;border:none;font-size:1.5rem;color:#9ca3af;cursor:pointer;padding:0;line-height:1;transition:color .2s ease}.close-btn:hover{color:#4b5563}.import-modal-body{padding:1.25rem}.import-instructions{margin:0 0 .75rem;font-size:.875rem;color:#4b5563}.import-textarea{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:8px;font-size:.8rem;font-family:monospace;resize:vertical;min-height:120px;transition:border-color .2s ease,box-shadow .2s ease}.import-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.import-textarea::placeholder{color:#9ca3af}.paste-btn{display:flex;align-items:center;justify-content:center;gap:.375rem;width:100%;margin-top:.75rem;padding:.625rem;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;font-size:.8rem;color:#4b5563;cursor:pointer;transition:all .2s ease}.paste-btn:hover{background:#e5e7eb;color:#374151}.import-modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.25rem;border-top:1px solid #e5e7eb;background:#f9fafb}.cancel-btn,.confirm-btn{padding:.625rem 1.25rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.cancel-btn{background:#fff;border:1px solid #d1d5db;color:#4b5563}.cancel-btn:hover{background:#f3f4f6;border-color:#9ca3af}.confirm-btn{background:linear-gradient(135deg,#10b981,#059669);border:none;color:#fff}.confirm-btn:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px);box-shadow:0 2px 8px #0596694d}.confirm-btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.save-load-panel{padding:.875rem}.save-load-buttons{flex-direction:column}.save-load-btn{padding:.75rem}.import-modal{width:95%;margin:1rem}}@media(max-width:480px){.save-load-panel .panel-title{font-size:.85rem}.save-load-btn{font-size:.75rem}.import-modal-header,.import-modal-body,.import-modal-footer{padding:.875rem}}.tutorial-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;animation:overlayFadeIn .3s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:1rem}@keyframes overlayFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}to{opacity:1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}}.tutorial-modal{background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:20px;width:100%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 25px 80px #00000080,0 0 40px #667eea33;animation:modalSlideUp .4s cubic-bezier(.34,1.56,.64,1);border:1px solid rgba(255,255,255,.1);overflow:hidden}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.tutorial-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;background:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.1)}.tutorial-title-area{display:flex;align-items:center;gap:.75rem}.tutorial-icon{font-size:1.75rem}.tutorial-header h2{font-size:1.5rem;font-weight:700;color:#fff;margin:0}.tutorial-close-button{width:36px;height:36px;border-radius:50%;border:none;background:#ffffff1a;color:#ffffffb3;font-size:1.25rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.tutorial-close-button:hover{background:#ef44444d;color:#fff;transform:rotate(90deg)}.tutorial-nav{display:flex;gap:.25rem;padding:.75rem 1rem;background:#0003;border-bottom:1px solid rgba(255,255,255,.05);overflow-x:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}.tutorial-nav::-webkit-scrollbar{height:4px}.tutorial-nav::-webkit-scrollbar-track{background:transparent}.tutorial-nav::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}.tutorial-nav-item{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border:none;border-radius:8px;background:transparent;color:#fff9;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;flex-shrink:0}.tutorial-nav-item:hover{background:#ffffff1a;color:#ffffffe6}.tutorial-nav-item.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea66}.nav-icon{font-size:1.1rem}.nav-title{font-size:.85rem}.tutorial-content{flex:1;overflow-y:auto;padding:1.5rem;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}.tutorial-content::-webkit-scrollbar{width:6px}.tutorial-content::-webkit-scrollbar-track{background:transparent}.tutorial-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.tutorial-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.chapter-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid rgba(102,126,234,.3)}.chapter-icon{font-size:2.5rem}.chapter-title{font-size:1.75rem;font-weight:700;color:#fff;margin:0;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.chapter-body{display:flex;flex-direction:column;gap:1.5rem}.tutorial-section{background:#ffffff08;border-radius:12px;padding:1.25rem;border:1px solid rgba(255,255,255,.05)}.section-title{font-size:1.15rem;font-weight:600;color:#fff;margin:0 0 .75rem;display:flex;align-items:center;gap:.5rem}.section-title:before{content:"";width:4px;height:1.15rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:2px}.section-paragraph{font-size:.95rem;line-height:1.7;color:#fffc;margin:0 0 .75rem}.section-paragraph:last-of-type{margin-bottom:0}.section-highlights{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;margin-top:1rem}.highlight-item{display:flex;flex-direction:column;gap:.25rem;padding:.75rem 1rem;background:#ffffff0d;border-radius:8px;border-left:3px solid var(--highlight-color, #667eea);transition:all .2s ease}.highlight-item:hover{background:#ffffff14;transform:translate(4px)}.highlight-label{font-size:.9rem;font-weight:600;color:var(--highlight-color, #667eea)}.highlight-value{font-size:.85rem;color:#ffffffb3}.section-tips{margin-top:1rem;padding:1rem;background:linear-gradient(135deg,#f59e0b1a,#f59e0b0d);border-radius:10px;border:1px solid rgba(245,158,11,.2)}.tips-header{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;color:#f59e0b;margin-bottom:.5rem}.tips-icon{font-size:1.1rem}.tips-list{margin:0;padding-left:1.25rem;list-style-type:disc}.tips-list li{font-size:.9rem;color:#ffffffbf;line-height:1.6;margin-bottom:.25rem}.tips-list li:last-child{margin-bottom:0}.tutorial-footer{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:#0003;border-top:1px solid rgba(255,255,255,.05)}.tutorial-nav-button{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.25rem;border:none;border-radius:8px;background:#ffffff1a;color:#fff;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.tutorial-nav-button:hover:not(:disabled){background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 15px #667eea4d}.tutorial-nav-button:disabled{opacity:.4;cursor:not-allowed}.nav-arrow{font-size:1rem}.tutorial-pagination{display:flex;gap:.5rem}.pagination-dot{width:10px;height:10px;border-radius:50%;border:none;background:#fff3;cursor:pointer;transition:all .2s ease;padding:0}.pagination-dot:hover{background:#fff6;transform:scale(1.2)}.pagination-dot.active{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 0 10px #667eea80;transform:scale(1.2)}@media(max-width:768px){.tutorial-modal-overlay{padding:.5rem}.tutorial-modal{max-height:95vh;border-radius:16px}.tutorial-header{padding:1rem}.tutorial-header h2{font-size:1.25rem}.tutorial-nav{padding:.5rem}.tutorial-nav-item{padding:.5rem .75rem}.nav-title{display:none}.nav-icon{font-size:1.25rem}.tutorial-content{padding:1rem}.chapter-header{margin-bottom:1rem;padding-bottom:.75rem}.chapter-icon{font-size:2rem}.chapter-title{font-size:1.4rem}.tutorial-section{padding:1rem}.section-title{font-size:1.05rem}.section-paragraph{font-size:.9rem}.section-highlights{grid-template-columns:1fr}.tutorial-footer{padding:.75rem 1rem}.tutorial-nav-button{padding:.5rem 1rem;font-size:.85rem}.tutorial-nav-button span:not(.nav-arrow){display:none}}@media(max-width:480px){.tutorial-header{padding:.875rem}.tutorial-icon{font-size:1.5rem}.tutorial-header h2{font-size:1.1rem}.tutorial-close-button{width:32px;height:32px;font-size:1rem}.chapter-icon{font-size:1.75rem}.chapter-title{font-size:1.25rem}.section-tips{padding:.75rem}.pagination-dot{width:8px;height:8px}}@media(prefers-reduced-motion:reduce){.tutorial-modal-overlay,.tutorial-modal{animation:none}.tutorial-close-button:hover,.highlight-item:hover,.pagination-dot:hover,.pagination-dot.active{transform:none}}.onboarding-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:2000;pointer-events:none}.onboarding-mask{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:auto}.onboarding-mask-svg{position:absolute;top:0;left:0;width:100%;height:100%}.highlight-animate{animation:highlightPulse .3s ease-out}@keyframes highlightPulse{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.onboarding-highlight{position:fixed;border:3px solid #667eea;border-radius:12px;box-shadow:0 0 0 4px #667eea4d,0 0 20px #667eea66,inset 0 0 20px #667eea1a;pointer-events:none;transition:all .3s cubic-bezier(.34,1.56,.64,1);z-index:2001}.onboarding-highlight.animate{animation:highlightAppear .4s cubic-bezier(.34,1.56,.64,1)}@keyframes highlightAppear{0%{opacity:0;transform:scale(.9)}50%{opacity:1;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}.onboarding-highlight:after{content:"";position:absolute;top:-6px;left:-6px;right:-6px;bottom:-6px;border:2px solid rgba(102,126,234,.5);border-radius:16px;animation:highlightBreath 2s ease-in-out infinite}@keyframes highlightBreath{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.6;transform:scale(1.02)}}.onboarding-tooltip{position:fixed;width:320px;background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:16px;box-shadow:0 20px 60px #00000080,0 0 30px #667eea33;border:1px solid rgba(255,255,255,.1);pointer-events:auto;z-index:2002;overflow:hidden}.onboarding-tooltip.animate{animation:tooltipAppear .4s cubic-bezier(.34,1.56,.64,1)}@keyframes tooltipAppear{0%{opacity:0;transform:translateY(10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.tooltip-arrow{position:absolute;width:16px;height:16px;background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid rgba(255,255,255,.1);transform:rotate(45deg);z-index:-1}.tooltip-arrow.top{bottom:-8px;left:50%;margin-left:-8px;border-top:none;border-left:none}.tooltip-arrow.bottom{top:-8px;left:50%;margin-left:-8px;border-bottom:none;border-right:none}.tooltip-arrow.left{right:-8px;top:50%;margin-top:-8px;border-top:none;border-left:none}.tooltip-arrow.right{left:-8px;top:50%;margin-top:-8px;border-bottom:none;border-right:none}.tooltip-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.1)}.tooltip-title-area{display:flex;align-items:center;gap:.6rem}.tooltip-icon{font-size:1.5rem}.tooltip-title{font-size:1.1rem;font-weight:700;color:#fff;margin:0}.tooltip-step-indicator{font-size:.8rem;font-weight:600;color:#ffffff80;background:#ffffff1a;padding:.25rem .6rem;border-radius:12px}.tooltip-content{padding:1rem 1.25rem}.tooltip-description{font-size:.9rem;line-height:1.6;color:#ffffffd9;margin:0 0 .75rem}.tooltip-tips{margin-top:.75rem;padding:.75rem;background:linear-gradient(135deg,#f59e0b1a,#f59e0b0d);border-radius:8px;border:1px solid rgba(245,158,11,.2)}.tooltip-tips .tips-header{display:flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:600;color:#f59e0b;margin-bottom:.4rem}.tooltip-tips .tips-icon{font-size:.9rem}.tooltip-tips .tips-list{margin:0;padding-left:1rem;list-style-type:disc}.tooltip-tips .tips-list li{font-size:.8rem;color:#ffffffb3;line-height:1.5;margin-bottom:.2rem}.tooltip-tips .tips-list li:last-child{margin-bottom:0}.tooltip-progress{display:flex;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;border-top:1px solid rgba(255,255,255,.05)}.progress-dot{width:10px;height:10px;border-radius:50%;border:none;background:#fff3;cursor:pointer;transition:all .2s ease;padding:0}.progress-dot:hover{background:#fff6;transform:scale(1.2)}.progress-dot.active{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 0 10px #667eea80;transform:scale(1.2)}.progress-dot.completed{background:#667eea80}.tooltip-footer{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.25rem;background:#0003;border-top:1px solid rgba(255,255,255,.05)}.tooltip-nav-buttons{display:flex;gap:.5rem}.tooltip-button{display:flex;align-items:center;gap:.4rem;padding:.5rem 1rem;border:none;border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.tooltip-button.skip{background:transparent;color:#ffffff80}.tooltip-button.skip:hover{color:#fffc;background:#ffffff0d}.tooltip-button.prev{background:#ffffff1a;color:#fffc}.tooltip-button.prev:hover{background:#ffffff26;color:#fff}.tooltip-button.next{background:#ffffff1a;color:#fffc}.tooltip-button.next.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea4d}.tooltip-button.next.primary:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-1px)}.tooltip-button .nav-arrow{font-size:.9rem}@media(max-width:768px){.onboarding-tooltip{width:calc(100vw - 32px);max-width:320px}.tooltip-header{padding:.875rem 1rem}.tooltip-icon{font-size:1.25rem}.tooltip-title{font-size:1rem}.tooltip-content{padding:.875rem 1rem}.tooltip-description{font-size:.85rem}.tooltip-tips{padding:.6rem}.tooltip-tips .tips-header,.tooltip-tips .tips-list li{font-size:.75rem}.tooltip-progress{padding:.6rem 1rem}.progress-dot{width:8px;height:8px}.tooltip-footer{padding:.6rem 1rem;flex-direction:column;gap:.5rem}.tooltip-button{padding:.4rem .75rem;font-size:.8rem}.tooltip-nav-buttons{width:100%;justify-content:flex-end}}@media(max-width:480px){.onboarding-tooltip{width:calc(100vw - 24px)}.tooltip-header,.tooltip-content{padding:.75rem}.tooltip-footer{padding:.5rem .75rem}}@media(prefers-reduced-motion:reduce){.onboarding-highlight,.onboarding-tooltip{animation:none}.onboarding-highlight:after{animation:none}.highlight-animate{animation:none}.progress-dot:hover,.progress-dot.active,.tooltip-button.next.primary:hover{transform:none}}.game-board{min-height:100vh;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);padding:1rem;animation:boardFadeIn .6s ease-out}@keyframes boardFadeIn{0%{opacity:0}to{opacity:1}}@keyframes headerSlideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.game-title{font-size:2rem;color:#fff;margin:0;display:flex;align-items:center;justify-content:center;gap:.5rem;text-shadow:0 2px 10px rgba(0,0,0,.3)}.title-icon{font-size:2.5rem;animation:titleIconPulse 3s ease-in-out infinite}@keyframes titleIconPulse{0%,to{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.1);filter:brightness(1.2)}}.game-subtitle{color:#a0a0a0;margin:.5rem 0 0;font-size:1rem}.header-buttons{position:absolute;top:1rem;right:1rem;display:flex;gap:.5rem}.help-button,.guide-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fffc;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.help-button:hover,.guide-button:hover{background:#667eea4d;border-color:#667eea80;color:#fff;transform:translateY(-2px);box-shadow:0 4px 15px #667eea4d}.help-button:active,.guide-button:active{transform:translateY(0)}.help-icon,.guide-icon{font-size:1.1rem}.help-text,.guide-text{font-size:.85rem}.game-header{position:relative;text-align:center;margin-bottom:1.5rem;padding:1rem;animation:headerSlideDown .5s ease-out}.game-main{display:grid;grid-template-columns:280px 1fr 320px;gap:1rem;max-width:1400px;margin:0 auto}.game-sidebar{display:flex;flex-direction:column;gap:.875rem}.left-sidebar{animation:sidebarSlideLeft .5s ease-out .2s both}@keyframes sidebarSlideLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.right-sidebar{animation:sidebarSlideRight .5s ease-out .2s both;max-height:calc(100vh - 150px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.3) transparent}.right-sidebar::-webkit-scrollbar{width:6px}.right-sidebar::-webkit-scrollbar-track{background:transparent}.right-sidebar::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:3px}.right-sidebar::-webkit-scrollbar-thumb:hover{background:#ffffff80}@keyframes sidebarSlideRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.game-center{display:flex;flex-direction:column;gap:.875rem;animation:centerFadeIn .5s ease-out .3s both}@keyframes centerFadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@media(min-width:1600px){.game-main{grid-template-columns:300px 1fr 360px;gap:1.25rem;max-width:1500px}.game-board{padding:1.5rem}}@media(min-width:1400px)and (max-width:1599px){.game-main{grid-template-columns:280px 1fr 340px;gap:1rem}}@media(max-width:1399px){.game-main{grid-template-columns:260px 1fr 300px}.game-title{font-size:1.75rem}.title-icon{font-size:2rem}}@media(max-width:1200px){.game-main{grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto}.left-sidebar{grid-column:1;grid-row:1}.game-center{grid-column:2;grid-row:1}.right-sidebar{grid-column:1 / -1;grid-row:2;flex-direction:row;flex-wrap:wrap;max-height:none;overflow-y:visible}.right-sidebar>*{flex:1 1 300px;min-width:280px}}@media(max-width:768px){.game-board{padding:.5rem}.game-header{padding:.5rem;margin-bottom:1rem}.game-title{font-size:1.5rem}.title-icon{font-size:2rem}.game-subtitle{font-size:.875rem}.header-buttons{top:.5rem;right:.5rem;gap:.25rem}.help-button,.guide-button{padding:.4rem .75rem}.help-text,.guide-text{display:none}.game-main{grid-template-columns:1fr;grid-template-rows:auto;gap:.75rem}.left-sidebar,.game-center,.right-sidebar{grid-column:1;animation:none}.left-sidebar{grid-row:1}.game-center{grid-row:2}.right-sidebar{grid-row:3;flex-direction:column;max-height:none;overflow-y:visible}.right-sidebar>*{flex:none;min-width:auto}}@media(max-width:480px){.game-board{padding:.375rem}.game-header{padding:.375rem;margin-bottom:.75rem}.game-title{font-size:1.25rem}.title-icon{font-size:1.5rem}.game-subtitle{font-size:.8rem}.game-main,.game-sidebar{gap:.5rem}}.game-board .resource-panel,.game-board .metrics-panel,.game-board .dimensions-display,.game-board .operations-panel,.game-board .turn-control,.game-board .team-panel,.game-board .save-load-panel,.game-board .event-log{background:#fffffff2;border-radius:12px;box-shadow:0 4px 20px #00000026;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.game-board .resource-panel:hover,.game-board .metrics-panel:hover,.game-board .dimensions-display:hover,.game-board .operations-panel:hover,.game-board .turn-control:hover,.game-board .team-panel:hover,.game-board .save-load-panel:hover,.game-board .event-log:hover{box-shadow:0 6px 25px #0003}.game-board .panel-title{font-size:1rem;font-weight:600;color:#1a1a2e;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid #e0e0e0}.game-board.loading{pointer-events:none;opacity:.7}.game-board.loading:after{content:"";position:fixed;top:50%;left:50%;width:40px;height:40px;margin:-20px 0 0 -20px;border:3px solid rgba(255,255,255,.3);border-top-color:#4a90d9;border-radius:50%;animation:loadingSpin .8s linear infinite;z-index:1000}@keyframes loadingSpin{to{transform:rotate(360deg)}}.game-board.paused:before{content:"游戏暂停";position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#fff;z-index:999;animation:fadeIn .3s ease-out}.game-board.meltdown-active{animation:meltdownBorder 2s infinite}@keyframes meltdownBorder{0%,to{box-shadow:inset 0 0 #ef444400}50%{box-shadow:inset 0 0 30px 5px #ef44444d}}.game-board.meltdown-active .game-header{animation:headerShake .5s ease-in-out}@keyframes headerShake{0%,to{transform:translate(0)}20%,60%{transform:translate(-3px)}40%,80%{transform:translate(3px)}}@media print{.game-board{background:#fff;padding:0}.game-board .resource-panel,.game-board .metrics-panel,.game-board .operations-panel,.game-board .turn-control,.game-board .event-log{box-shadow:none;border:1px solid #ddd}}.resource-change-container{position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:1000;overflow:hidden}.resource-change-indicator{position:absolute;font-size:1.25rem;font-weight:700;padding:.25rem .5rem;border-radius:6px;animation:floatUp 1s ease-out forwards;white-space:nowrap;text-shadow:0 1px 2px rgba(0,0,0,.2)}@keyframes floatUp{0%{opacity:1;transform:translateY(0) scale(1)}50%{opacity:1;transform:translateY(-20px) scale(1.1)}to{opacity:0;transform:translateY(-40px) scale(.9)}}.resource-change-indicator.positive{color:#16a34a;background:#22c55e33;border:1px solid rgba(34,197,94,.4)}.resource-change-indicator.negative{color:#dc2626;background:#ef444433;border:1px solid rgba(239,68,68,.4)}.resource-change-indicator.large{font-size:1.5rem;animation:floatUpLarge 1.2s ease-out forwards}@keyframes floatUpLarge{0%{opacity:1;transform:translateY(0) scale(1)}30%{transform:translateY(-10px) scale(1.3)}to{opacity:0;transform:translateY(-60px) scale(.8)}}.resource-change-indicator.budget:before{content:"💰 "}.resource-change-indicator.data:before{content:"📊 "}.resource-change-indicator.fit-score:before{content:"📈 "}.resource-change-indicator.entropy:before{content:"🔥 "}:root{--color-primary: #4a90d9;--color-primary-dark: #2563eb;--color-secondary: #667eea;--color-accent: #764ba2;--color-success: #22c55e;--color-warning: #f59e0b;--color-danger: #ef4444;--color-info: #3b82f6;--bg-dark: #1a1a2e;--bg-darker: #16213e;--bg-darkest: #0f3460;--bg-light: #f8f9fa;--bg-white: #ffffff;--text-primary: #333333;--text-secondary: #666666;--text-muted: #999999;--text-light: #ffffff;--border-radius-sm: 6px;--border-radius-md: 12px;--border-radius-lg: 16px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .08);--shadow-md: 0 4px 16px rgba(0, 0, 0, .12);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .16);--transition-fast: .15s;--transition-normal: .25s;--transition-slow: .4s}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100vh}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-dark);color:var(--text-primary);line-height:1.5}.app{min-height:100vh;animation:appFadeIn .5s ease-out}@keyframes appFadeIn{0%{opacity:0}to{opacity:1}}button{cursor:pointer;font-family:inherit;border:none;outline:none;transition:all var(--transition-normal) ease}button:disabled{cursor:not-allowed;opacity:.6}button:hover:not(:disabled){transform:translateY(-2px)}button:active:not(:disabled){transform:translateY(0)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px;transition:background var(--transition-fast)}::-webkit-scrollbar-thumb:hover{background:#a1a1a1}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes heartbeat{0%,to{transform:scale(1)}25%{transform:scale(1.05)}50%{transform:scale(1)}75%{transform:scale(1.05)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes glow{0%,to{box-shadow:0 0 5px currentColor}50%{box-shadow:0 0 20px currentColor,0 0 30px currentColor}}@keyframes valueChange{0%{background-color:#4a90d94d}to{background-color:transparent}}@keyframes successFlash{0%{background-color:#22c55e66}to{background-color:transparent}}@keyframes warningFlash{0%{background-color:#f59e0b66}to{background-color:transparent}}@keyframes dangerFlash{0%{background-color:#ef444466}to{background-color:transparent}}@keyframes ripple{0%{transform:scale(0);opacity:1}to{transform:scale(4);opacity:0}}.fade-in{animation:fadeIn .3s ease-out}.slide-in-left{animation:slideInLeft .3s ease-out}.slide-in-right{animation:slideInRight .3s ease-out}.scale-in{animation:scaleIn .3s ease-out}.pulse{animation:pulse 2s infinite}.heartbeat{animation:heartbeat 1.5s infinite}.shake{animation:shake .5s ease-in-out}.bounce{animation:bounce 1s infinite}.blink{animation:blink 1s infinite}.spin{animation:spin 1s linear infinite}.glow{animation:glow 2s infinite}.value-changed{animation:valueChange .6s ease-out}.value-increased{animation:successFlash .6s ease-out}.value-decreased{animation:dangerFlash .6s ease-out}.transition-fast{transition:all var(--transition-fast) ease}.transition-normal{transition:all var(--transition-normal) ease}.transition-slow{transition:all var(--transition-slow) ease}.hover-lift:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.hover-scale:hover{transform:scale(1.02)}.hover-glow:hover{box-shadow:0 0 20px #4a90d966}.click-shrink:active{transform:scale(.98)}.disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.loading{position:relative;pointer-events:none}.loading:after{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:spin .8s linear infinite}@media(max-width:768px){.hide-mobile{display:none!important}}@media(min-width:769px){.hide-desktop{display:none!important}}@media(max-width:1024px){.hide-tablet{display:none!important}}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.toast{position:fixed;top:20px;right:20px;padding:1rem 1.5rem;border-radius:var(--border-radius-md);background:var(--bg-white);box-shadow:var(--shadow-lg);z-index:9999;animation:slideInRight .3s ease-out}.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-info{border-left:4px solid var(--color-info)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.skip-link{position:absolute;top:-40px;left:0;background:var(--color-primary);color:var(--text-light);padding:8px;z-index:100;transition:top .3s}.skip-link:focus{top:0}
