.animation-centered{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.animation-overlay{position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;overflow:hidden}.animation-container-base{position:absolute;pointer-events:none}.animation-layer{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.feedback-wrapper{position:fixed;bottom:1rem;right:1rem;z-index:1000;min-width:300px;padding:1rem;background:var(--overlay-70);border-radius:var(--radius-md)}.feedback-toast{background:var(--color-bg-primary);color:var(--color-text-light);padding:.75rem 1rem;border-radius:var(--radius-md);box-shadow:0 2px 8px var(--overlay-30);display:flex;flex-direction:column;gap:.5rem}.feedback-toolbar{display:flex;justify-content:flex-end;gap:.5rem}.feedback-toolbar button{background:none;border:none;color:inherit;cursor:pointer;font-size:1rem;padding:.25rem}.feedback-history{margin-top:1rem;max-height:200px;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem}.feedback-entry{padding:.5rem;border-radius:var(--radius-sm);display:flex;justify-content:space-between;align-items:center}.timestamp{font-size:.75rem;color:var(--color-grey);margin-left:auto}.feedback-text{color:var(--color-text-light)}.feedback-success .timestamp,.feedback-log .timestamp,.feedback-warning .timestamp{color:var(--color-text-dark, var(--color-text-dark))}.feedback-success{color:var(--color-text-light)}.feedback-warning{color:var(--color-warning)}.feedback-error{color:var(--color-danger-dark)}.feedback-info{color:var(--color-secondary)}.feedback-log{color:var(--color-grey)}.feedback-history .feedback-success{background-color:var(--color-success);color:var(--color-text-light)}.feedback-history .feedback-warning{background-color:var(--color-warning);color:var(--color-text-dark)}.feedback-history .feedback-error{background-color:var(--color-danger-dark);color:var(--color-text-light)}.feedback-history .feedback-info{background-color:var(--color-secondary);color:var(--color-text-dark)}.feedback-history .feedback-log{background-color:var(--color-grey);color:var(--color-text-dark)}.feedback-{background-color:var( --color-bg, var(--color-text-dark));color:var(--color-text-dark, var(--color-text-dark))}.feedback-latest{outline:2px solid var(--color-primary);outline-offset:-2px}@keyframes wipeIn{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}.feedback-text-enter{animation:wipeIn .5s cubic-bezier(.25,1,.5,1) forwards}.contextual-message-overlay{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999;overflow:hidden}.contextual-message-overlay .contextual-message{position:absolute;padding:var(--space-sm) var(--space-md);background-color:var(--overlay-95);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);pointer-events:none;white-space:nowrap;animation:contextualRiseFade var(--animation-duration, 2s) ease-out forwards}.contextual-message-overlay .contextual-message-text{color:var(--color-text-light);font-size:var(--fs-md);font-weight:var(--fw-medium);font-family:var(--font-body);-webkit-user-select:none;user-select:none}.contextual-message-overlay .contextual-message.contextual-message-error{display:flex;align-items:center;gap:var(--space-xs)}.contextual-message-overlay .contextual-message-icon{color:var(--color-danger);flex-shrink:0}@keyframes contextualRiseFade{0%{opacity:0;transform:translate(-50%,-100%) translateY(0) scale(.8)}10%{opacity:1;transform:translate(-50%,-100%) translateY(-5px) scale(1)}80%{opacity:1;transform:translate(-50%,-100%) translateY(-40px) scale(1)}to{opacity:0;transform:translate(-50%,-100%) translateY(-50px) scale(.9)}}@media (max-width: 767px){.contextual-message-overlay .contextual-message{padding:var(--space-xs) var(--space-sm)}.contextual-message-overlay .contextual-message-text{font-size:var(--fs-sm)}}.resource-bar{position:fixed;top:0;left:0;right:0;height:45px;background:linear-gradient(to bottom,var(--color-bg-tertiary),var(--color-bg-primary));border-bottom:2px solid var(--color-primary-bright);display:flex;align-items:center;padding:0 1.5rem;z-index:100;gap:1.8rem;font-family:Segoe UI,sans-serif}.resource-item{display:flex;align-items:center;gap:.4rem;font-size:15px;font-weight:var(--fw-medium);color:var(--color-grey-light);text-shadow:0 0 2px var(--overlay-40)}.resource-item span:first-child{font-size:17px}.resource-amount{color:var(--color-primary-bright);font-weight:var(--fw-semibold);min-width:40px;text-align:right}.resource-amount.depleting{animation:deplete .5s}@keyframes deplete{0%{transform:scale(1.2);color:var(--color-danger-dark)}to{transform:scale(1);color:var(--color-primary-bright)}}.planet-view{width:100%;height:100vh;background:var(--color-bg-primary);color:#fff}.planet-content{padding-top:60px}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);background-color:transparent;border:1px solid var(--color-secondary-tint-40);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-lg);color:var(--color-text);font-weight:var(--fw-bold);font-family:var(--font-heading);font-size:var(--fs-lg);cursor:pointer;transition:all .2s ease-in-out}.button:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);box-shadow:0 0 10px 0 var(--color-primary)}.button:active:not(:disabled){background-color:var(--color-primary-tint);box-shadow:0 0 15px 2px var(--color-primary)}.button:disabled{border-color:var(--color-border);color:var(--color-grey);cursor:not-allowed;opacity:.5}.button.button-cta{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-dark);box-shadow:0 0 8px 0 var(--color-primary-tint-50);position:relative;overflow:hidden;width:100%}.button.button-cta:hover:not(:disabled){box-shadow:0 0 15px 2px var(--color-primary);color:var(--color-text-dark);transform:scale(1.02)}.button.button-cta:disabled{background:var(--color-border);border-color:var(--color-border);color:var(--color-grey);opacity:.6;box-shadow:none}.button.button-cta.button-cta-combo{border:3px solid transparent}.button.button-cta.button-cta-combo:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:var(--radius-full);background:radial-gradient(circle,var(--color-primary-bright, var(--color-primary))99 0%,transparent 70%);transform:translate(-50%,-50%);opacity:0}.button.button-cta.button-cta-combo:hover:not(:disabled){animation:button-border-sweep 1.2s ease-in-out infinite}.button.button-cta.button-cta-combo:hover:not(:disabled):before{animation:button-energy-pulse 1.2s ease-out infinite}@keyframes button-border-sweep{0%{border-color:transparent}20%{border-top-color:var(--color-primary-light)}40%{border-top-color:var(--color-primary-light);border-right-color:var(--color-primary-light)}60%{border-top-color:var(--color-primary-light);border-right-color:var(--color-primary-light);border-bottom-color:var(--color-primary-light)}80%{border-color:var(--color-primary-light)}to{border-color:transparent}}@keyframes button-energy-pulse{0%{width:0;height:0;opacity:1}to{width:200%;height:200%;opacity:0}}.button.button-cta.button-cta-arrow{gap:var(--space-md)}.button.button-cta.button-cta-arrow .arrow-svg{width:30px;height:20px;display:flex;align-items:center}.button.button-cta.button-cta-arrow .arrow-svg svg{width:100%;height:100%}.button.button-cta.button-cta-arrow path.arrow-one{transition:.4s;transform:translate(-60%);fill:var(--color-text-dark)}.button.button-cta.button-cta-arrow path.arrow-two{transition:.5s;transform:translate(-30%);fill:var(--color-text-dark)}.button.button-cta.button-cta-arrow path.arrow-three{fill:var(--color-text-dark)}.button.button-cta.button-cta-arrow:hover:not(:disabled){background:var(--color-primary-light);border-color:var(--color-primary-light);box-shadow:0 0 20px 4px var(--color-primary-tint-strong, var(--color-primary-tint-50))}.button.button-cta.button-cta-arrow:hover path.arrow-three{animation:button-arrow-flash 1s infinite .2s}.button.button-cta.button-cta-arrow:hover path.arrow-one{transform:translate(0);animation:button-arrow-flash 1s infinite .6s}.button.button-cta.button-cta-arrow:hover path.arrow-two{transform:translate(0);animation:button-arrow-flash 1s infinite .4s}@keyframes button-arrow-flash{0%{fill:var(--color-text-dark)}50%{fill:var(--color-text-light)}to{fill:var(--color-text-dark)}}.button.button-secondary{border:2px solid var(--color-border);color:var(--color-text)}.button.button-secondary:hover:not(:disabled){border-color:var(--color-text);color:var(--color-text-light);box-shadow:none}.button.button-secondary:active:not(:disabled){transform:scale(.98);background-color:transparent}.button.button-danger{border:2px solid var(--color-danger-dark);color:var(--color-danger-dark)}.button.button-danger:hover:not(:disabled){background-color:var(--color-danger-tint);border-color:var(--color-danger-dark);color:var(--color-danger-dark);box-shadow:0 0 12px var(--color-danger-tint-50)}.button.button-danger:active:not(:disabled){background-color:var(--color-danger-tint-20);box-shadow:0 0 15px var(--color-danger-dark);transform:scale(.98)}.button.button-danger:disabled{border-color:var(--color-border);color:var(--color-grey);opacity:.5}.button.button-small{padding:var(--space-xs) var(--space-md);font-size:var(--fs-md)}.button.button-large{padding:var(--space-md) var(--space-xl);font-size:var(--fs-xl)}.button-square{--button-square-size: 44px;--button-square-icon: 24px;display:flex;align-items:center;justify-content:center;width:var(--button-square-size);height:var(--button-square-size);min-width:var(--button-square-size);min-height:var(--button-square-size);background-color:transparent;border:1px solid var(--color-secondary);border-radius:var(--radius-sm);color:var(--color-text-light);cursor:pointer;transition:all .2s ease;padding:0;margin:0}.button-square:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);box-shadow:0 0 8px var(--color-primary-tint-50)}.button-square:active:not(:disabled){background-color:var(--color-primary-tint)}.button-square:disabled{border-color:var(--color-border);color:var(--color-border);cursor:not-allowed;opacity:.5}.button-square svg{width:var(--button-square-icon);height:var(--button-square-icon)}.button-square.button-square-delete{border-color:var(--color-danger-dark);color:var(--color-danger-dark)}.button-square.button-square-delete:hover:not(:disabled){border-color:var(--color-danger-dark);color:var(--color-danger-dark);box-shadow:0 0 8px var(--color-danger-tint-50);background-color:var(--color-danger-tint)}.button-square.button-square-delete:active:not(:disabled){background-color:var(--color-danger-tint-20)}@media (max-width: 767px){.button-square{--button-square-size: 38px;--button-square-icon: 20px}}@media (max-width: 479px){.button-square{--button-square-size: 34px;--button-square-icon: 18px}}.button-mini{--button-mini-size: 28px;--button-mini-icon: 14px;display:inline-flex;align-items:center;justify-content:center;width:var(--button-mini-size);height:var(--button-mini-size);min-width:var(--button-mini-size);min-height:var(--button-mini-size);padding:0;background-color:transparent;border:1px solid var(--color-secondary);border-radius:var(--radius-full);color:var(--color-secondary);cursor:pointer;transition:all .2s ease}.button-mini:hover:not(:disabled){background-color:var(--color-secondary-tint-40);border-color:var(--color-secondary);color:var(--color-text)}.button-mini:active:not(:disabled){background-color:var(--color-secondary-tint);transform:scale(.95)}.button-mini:disabled{opacity:.5;cursor:not-allowed}.button-mini svg{width:var(--button-mini-icon);height:var(--button-mini-icon)}.button-mini.button-mini-cta{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-bg)}.button-mini.button-mini-cta:hover:not(:disabled){background-color:var(--color-primary-light);border-color:var(--color-primary-light);color:var(--color-bg)}.button-mini.button-mini-cta:active:not(:disabled){background-color:var(--color-primary);transform:scale(.95)}.button-mini.button-mini-danger{border-color:var(--color-danger);color:var(--color-danger)}.button-mini.button-mini-danger:hover:not(:disabled){background-color:var(--color-danger-tint-20);border-color:var(--color-danger);color:var(--color-danger)}.button-mini.button-mini-danger:active:not(:disabled){background-color:var(--color-danger-tint-20);transform:scale(.95)}.button-enhanced{display:flex;align-items:center;justify-content:center;background:var(--color-bg-tertiary, var(--color-bg));color:var(--color-primary);border:2px solid var(--color-primary);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-lg);font-weight:var(--fw-bold);font-family:var(--font-heading);font-size:var(--fs-lg);cursor:pointer;box-shadow:0 0 6px var(--color-primary-tint-50),0 0 12px var(--color-primary-tint-40);transition:transform .2s ease,color .2s ease,background .3s ease}.button-enhanced:hover:not(:disabled){transform:scale(1.02);box-shadow:0 0 10px var(--color-primary-tint-50),0 0 20px var(--color-primary-tint-40)}.button-enhanced:active:not(:disabled){transform:scale(.98)}.button-enhanced:disabled{opacity:.5;cursor:not-allowed}.button-selectable{border:2px solid var(--color-primary);border-radius:var(--radius-md);background:radial-gradient(circle at 30% 30%,var(--color-primary-tint),var(--color-bg-tertiary, var(--color-bg))66);cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.button-selectable:hover:not(.selected):not(:disabled){border-color:var(--color-primary);box-shadow:0 0 8px var(--color-primary-tint-50)}.button-selectable.selected{border-color:var(--color-primary);background:radial-gradient(circle at 30% 30%,var(--color-bg-tertiary, var(--color-bg)),var(--overlay-40));box-shadow:0 0 15px 3px var(--color-primary),inset 0 0 20px var(--color-primary-tint);animation:button-pulse-glow 2s ease-in-out infinite}@keyframes button-pulse-glow{0%,to{box-shadow:0 0 15px 3px var(--color-primary),inset 0 0 20px var(--color-primary-tint)}50%{box-shadow:0 0 25px 5px var(--color-primary),inset 0 0 30px var(--color-primary-tint-40)}}.button.button-attention{animation:button-border-sweep 1.5s ease-in-out infinite,button-pulse-glow 2s ease-in-out infinite}.button-selectable:disabled{opacity:.5;cursor:not-allowed}.loading-bar{position:fixed;top:0;left:0;width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;z-index:9999}.loading-bar .loading-bar-content{display:flex;flex-direction:column;align-items:center;gap:var(--space-lg);width:400px;max-width:90%}.loading-bar .loading-bar-message{font-size:var(--fs-xl);font-weight:var(--fw-semibold);text-align:center;margin:0}.loading-bar .loading-bar-track{width:100%;height:12px;background-color:var(--glass-10);border-radius:var(--radius-sm);overflow:hidden;position:relative}.loading-bar .loading-bar-fill{height:100%;transition:width .15s linear;border-radius:var(--radius-sm)}.loading-bar .loading-bar-percentage{font-size:var(--fs-lg);font-weight:var(--fw-medium);margin:0;opacity:.8}.floating-controls{position:fixed;z-index:var(--z-modal, 100);display:flex;flex-direction:column;gap:var(--space-sm);pointer-events:none}.floating-controls>*{pointer-events:auto}.floating-controls--top-left{top:var(--space-lg);left:var(--space-lg);align-items:flex-start}.floating-controls--top-right{top:var(--space-lg);right:var(--space-lg);align-items:flex-end}.floating-controls--bottom-left{bottom:var(--space-lg);left:var(--space-lg);align-items:flex-start}.floating-controls--bottom-right{bottom:var(--space-lg);right:var(--space-lg);align-items:flex-end}@media (max-width: 767px){.floating-controls--top-left,.floating-controls--bottom-left{left:var(--space-md)}.floating-controls--top-right,.floating-controls--bottom-right{right:var(--space-md)}.floating-controls--top-left,.floating-controls--top-right{top:var(--space-md)}.floating-controls--bottom-left,.floating-controls--bottom-right{bottom:var(--space-md)}}.slider-wrapper{display:flex;flex-direction:column;gap:var(--space-sm);flex:1}.slider-label{font-weight:var(--fw-medium);font-size:var(--fs-md);color:var(--color-text-light);padding-left:.25rem}.slider-container{display:flex;align-items:center;gap:var(--space-md);width:100%}.slider-min,.slider-max{font-size:var(--fs-md);color:var(--color-text-light);font-weight:var(--fw-semibold);min-width:2ch;text-align:center}.slider-value-display{text-align:center;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--color-secondary);margin-top:var(--space-xs)}.slider-input--full{flex:1;min-width:120px}.slider-input--compact{-webkit-appearance:none;appearance:none;width:100%;height:6px;background:var(--color-border);border-radius:var(--radius-xs);cursor:pointer}.slider-input--compact::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;background:var(--color-secondary);border-radius:50%;cursor:pointer;transition:transform .15s ease}.slider-input--compact::-webkit-slider-thumb:hover{transform:scale(1.15)}.slider-input--compact::-moz-range-thumb{width:18px;height:18px;background:var(--color-secondary);border:none;border-radius:50%;cursor:pointer}.slider-input--mini{-webkit-appearance:none;appearance:none;width:80px;flex:0 0 80px;height:6px;background:var(--color-border);border-radius:var(--radius-xs);cursor:pointer}.slider-input--mini::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;background:var(--color-secondary);border-radius:50%;cursor:pointer;transition:transform .15s ease}.slider-input--mini::-webkit-slider-thumb:hover{transform:scale(1.15)}.slider-input--mini::-moz-range-thumb{width:14px;height:14px;background:var(--color-secondary);border:none;border-radius:50%;cursor:pointer}.slider-input--disabled{opacity:.5;cursor:not-allowed}.slider-input--disabled::-webkit-slider-thumb{cursor:not-allowed;background:var(--color-grey)}.slider-input--disabled::-moz-range-thumb{cursor:not-allowed;background:var(--color-grey)}@media (max-width: 480px){.slider-container{gap:var(--space-sm)}.slider-min,.slider-max{font-size:var(--fs-sm)}.slider-input--full{min-height:44px}.slider-input--mini{width:60px}}.music-widget{position:relative;display:flex;align-items:center}.music-widget__sliders{display:flex;flex-direction:column;gap:var(--space-xs);width:0;margin-left:0;opacity:0;transition:width var(--transition-normal, .25s ease),margin-left var(--transition-normal, .25s ease),opacity var(--transition-normal, .25s ease)}.music-widget.music-widget--expanded .music-widget__sliders{width:260px;margin-left:var(--space-sm);opacity:1}.music-widget__slider-row{display:flex;align-items:center;gap:var(--space-sm);white-space:nowrap}.music-widget__label{font-size:var(--fs-sm);color:var(--color-text-secondary);min-width:40px;text-transform:uppercase;letter-spacing:var(--letter-spacing-wide, .5px);font-weight:var(--fw-medium, 500)}.select-button{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);background-color:var(--color-bg-secondary);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);font-family:var(--font-body);font-size:var(--fs-lg);cursor:pointer;transition:all .2s ease;width:100%;text-align:left}.select-button:hover:not(:focus):not(:disabled){border-color:var(--color-primary);box-shadow:0 0 10px 0 var(--color-primary)}.select-button:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 5px var(--color-primary)}.select-button.open{border-color:var(--color-primary);box-shadow:0 0 5px var(--color-primary)}.select-button:disabled{opacity:.6;cursor:not-allowed}.select-value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-icon{flex-shrink:0;transition:transform .2s ease;color:var(--color-text-light)}.select-icon.rotate{transform:rotate(180deg)}.select-backdrop{position:fixed;inset:0;z-index:1049}.select-dropdown{background-color:var(--color-bg);border:2px solid var(--color-secondary);border-radius:var(--radius-sm);box-shadow:0 8px 24px var(--overlay-40);z-index:1050;overflow:hidden;animation:selectSlideIn .2s ease-out;max-height:300px;overflow-y:auto}@keyframes selectSlideIn{0%{opacity:0}to{opacity:1}}.select-option{width:100%;padding:var(--space-sm) var(--space-md);text-align:left;background-color:transparent;color:var(--color-text);border:none;cursor:pointer;transition:background-color .2s ease;display:flex;justify-content:space-between;align-items:center;font-size:var(--fs-lg);gap:var(--space-sm)}.select-option:hover{background-color:var(--color-border);box-shadow:inset 0 0 8px var(--color-primary-tint)}.select-option.selected{background-color:var(--color-primary-tint);color:var(--color-primary)}.select-option .check-icon{flex-shrink:0;color:var(--color-primary)}.select-option.with-description{flex-direction:row;align-items:flex-start;padding:var(--space-sm)}.select-option-content{display:flex;flex-direction:column;gap:var(--space-xs);flex:1;min-width:0}.select-option-label{font-size:var(--fs-md);font-weight:var(--fw-semibold);color:inherit}.select-option-description{font-size:var(--fs-sm);color:var(--color-text);line-height:1.4}.select-option.selected .select-option-description{color:var(--color-secondary-light)}.select-dropdown::-webkit-scrollbar{width:10px}.select-dropdown::-webkit-scrollbar-track{background:var(--color-bg);border-radius:var(--radius-sm)}.select-dropdown::-webkit-scrollbar-thumb{background:var(--color-secondary-tint-40);border-radius:var(--radius-sm);border:2px solid var(--color-bg)}.select-dropdown::-webkit-scrollbar-thumb:hover{background:var(--color-secondary)}.select-dropdown{scrollbar-width:auto;scrollbar-color:var(--color-secondary-tint-40) var(--color-bg)}.select-special-actions{border-top:1px solid var(--color-border);margin-top:var(--space-xs);padding-top:var(--space-xs)}.select-special-action{color:var(--color-danger-dark)!important;justify-content:space-between}.select-special-action:hover:not(:disabled){background-color:var(--color-danger-dark)1a!important;color:var(--color-danger-dark)!important}.select-special-action:disabled{color:var(--color-grey-dark)!important;cursor:not-allowed;opacity:.5}.action-hint{margin-left:auto;font-size:.9em;opacity:.7;cursor:help}.language-selector{position:relative}.language-selector__flag{font-size:1.25rem;line-height:1}.language-selector__option{display:flex;align-items:center;gap:var(--space-sm);width:100%}.language-selector__option-flag{font-size:1.25rem;line-height:1}.language-selector__option-name{flex:1;font-size:var(--fs-md);font-weight:var(--fw-medium, 500)}.language-selector__option-check{color:var(--color-primary);font-weight:var(--fw-bold)}.login-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background-size:cover;background-position:center;background-repeat:no-repeat;position:relative;padding:0 var(--space-lg)}.login-container:before{content:"";position:absolute;inset:0;background:var(--overlay-50);z-index:0}.login-container>*{position:relative;z-index:1}.login-logo{max-width:400px;margin-bottom:var(--space-sm);width:100%;padding:0 1rem}.auth-title{font-size:var(--fs-2xl);color:var(--color-primary);margin-bottom:var(--space-lg);text-align:center}.login-form{display:flex;flex-direction:column;gap:1.5rem;width:100%;max-width:400px}.login-register-link{text-align:center;color:var(--color-grey);font-size:var(--fs-lg);margin-top:var(--space-sm)}.login-register-link a{color:var(--color-primary);text-decoration:none;font-weight:var(--fw-semibold)}.login-register-link a:hover{text-decoration:underline}.register-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background-size:cover;background-position:center;background-repeat:no-repeat;position:relative;padding:0 var(--space-lg)}.register-container:before{content:"";position:absolute;inset:0;background:var(--overlay-50);z-index:0}.register-container>*{position:relative;z-index:1}.register-logo{max-width:550px;margin-bottom:var(--space-md);width:100%;padding:0 2rem}.auth-title{font-size:var(--fs-xl);color:var(--color-primary);margin-bottom:var(--space-lg);text-align:center}.register-form{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:400px}.register-terms{display:flex;align-items:center;gap:var(--space-md);color:var(--color-text);font-size:var(--fs-sm);cursor:pointer}.register-terms span{-webkit-user-select:none;user-select:none}.register-login-link{text-align:center;color:var(--color-grey);font-size:var(--fs-sm);margin-top:var(--space-sm)}.register-login-link a{color:var(--color-primary);text-decoration:none;font-weight:var(--fw-semibold)}.register-login-link a:hover{text-decoration:underline}.beta-warning{text-align:center;color:var(--color-warning);font-size:var(--fs-md);padding:var(--space-sm) var(--space-md);background:var(--color-warning-tint-15);border:1px solid var(--color-warning);border-radius:var(--radius-sm)}.version-badge{position:fixed;bottom:var(--space-md);right:var(--space-md);font-size:var(--fs-sm);color:var(--color-grey);opacity:.7;z-index:10}.modal-overlay{position:fixed;inset:0;background-color:var(--overlay-80);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-lg);animation:modalFadeIn .2s ease-out}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-content{position:relative;background-color:var(--color-bg);border:2px solid var(--color-secondary);border-radius:var(--radius-md);padding:1.5rem;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px var(--overlay-60);animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;align-items:center;justify-content:flex-start;gap:var(--space-md);margin-bottom:var(--space-lg);padding-bottom:var(--space-md);border-bottom:1px solid var(--color-border)}.modal-title{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--color-text);margin:0;text-transform:uppercase;letter-spacing:.05em}.modal-header .button-square{margin-left:auto;flex-shrink:0}@media (max-width: 480px){.modal-overlay{padding:var(--space-md)}.modal-content{padding:var(--space-lg);max-width:100%}.modal-title{font-size:var(--fs-lg)}}.modal-content.bug-report-modal{max-width:520px}.bug-report-modal .bug-report-content{display:flex;flex-direction:column;gap:var(--space-lg)}.bug-report-modal .bug-report-section{display:flex;flex-direction:column;gap:var(--space-sm)}.bug-report-modal .bug-report-section-title{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--fs-md);font-weight:var(--fw-semibold);color:var(--color-text);margin:0;text-transform:uppercase;letter-spacing:.05em}.bug-report-modal .bug-report-options{display:flex;flex-direction:column;gap:var(--space-sm)}.bug-report-modal .bug-report-options.bug-report-options--horizontal{flex-direction:row;flex-wrap:wrap}.bug-report-modal .bug-report-option{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--color-secondary-tint);border:1px solid var(--color-border);border-radius:var(--space-sm);cursor:pointer;transition:all .2s ease;flex:1;min-width:100px;font-family:inherit;color:var(--color-text)}.bug-report-modal .bug-report-option:hover{background:var(--color-secondary-tint);border-color:var(--color-secondary-tint-40)}.bug-report-modal .bug-report-option.bug-report-option--selected{background:var(--color-secondary-tint-40);border-color:var(--color-secondary)}.bug-report-modal .bug-report-option-label{font-size:var(--fs-md);font-weight:var(--fw-semibold);color:var(--color-text)}.bug-report-modal .bug-report-option.bug-report-option--selected .bug-report-option-label{color:var(--color-secondary)}.bug-report-modal .bug-report-option.bug-report-option--severity{justify-content:center}.bug-report-modal .bug-report-option.bug-report-option--severity.bug-report-option--selected{border-color:var(--severity-color);background:color-mix(in srgb,var(--severity-color) 15%,transparent)}.bug-report-modal .bug-report-option.bug-report-option--severity.bug-report-option--selected .bug-report-option-label{color:var(--severity-color)}.bug-report-modal .bug-report-textarea{width:100%;padding:var(--space-md);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--space-sm);color:var(--color-text);font-family:inherit;font-size:var(--fs-lg);resize:vertical;min-height:100px;transition:border-color .2s ease}.bug-report-modal .bug-report-textarea:focus{outline:none;border-color:var(--color-secondary)}.bug-report-modal .bug-report-textarea::placeholder{color:var(--color-grey)}.bug-report-modal .bug-report-char-count{font-size:var(--fs-xs);color:var(--color-grey);text-align:right}.bug-report-modal .bug-report-screenshot-container{background:var(--color-bg);border:1px dashed var(--color-border);border-radius:var(--space-sm);padding:var(--space-md);min-height:120px;display:flex;align-items:center;justify-content:center}.bug-report-modal .bug-report-screenshot-loading{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);color:var(--color-text)}.bug-report-modal .bug-report-screenshot-preview{width:100%;display:flex;flex-direction:column;gap:var(--space-sm)}.bug-report-modal .bug-report-screenshot-preview img{width:100%;max-height:200px;object-fit:contain;border-radius:var(--space-xs);background:var(--color-text-dark)}.bug-report-modal .bug-report-screenshot-actions{display:flex;gap:var(--space-sm);justify-content:center}.bug-report-modal .bug-report-screenshot-btn{padding:var(--space-xs) var(--space-sm);font-size:var(--fs-xs);display:flex;align-items:center;gap:var(--space-xs)}.bug-report-modal .bug-report-screenshot-btn.bug-report-screenshot-btn--danger{border-color:var(--color-danger);color:var(--color-danger)}.bug-report-modal .bug-report-screenshot-btn.bug-report-screenshot-btn--danger:hover{background:var(--color-danger-tint)}.bug-report-modal .bug-report-capture-btn{display:flex;align-items:center;gap:var(--space-sm)}.bug-report-modal .bug-report-section.bug-report-section--checkbox{padding:var(--space-sm) 0}.bug-report-modal .bug-report-checkbox{display:flex;align-items:center;gap:var(--space-sm);cursor:pointer;font-size:var(--fs-md);color:var(--color-text)}.bug-report-modal .bug-report-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-secondary)}.bug-report-modal .bug-report-actions{display:flex;justify-content:flex-end;gap:var(--space-md);margin-top:var(--space-sm);padding-top:var(--space-md);border-top:1px solid var(--color-border)}.bug-report-modal .bug-report-actions .button{min-width:100px}@media (max-width: 480px){.modal-content.bug-report-modal{max-width:100%}.bug-report-modal .bug-report-options.bug-report-options--horizontal{flex-direction:column}.bug-report-modal .bug-report-option{min-width:unset}.bug-report-modal .bug-report-actions{flex-direction:column}.bug-report-modal .bug-report-actions .button{width:100%}}.debug-panel{display:flex;align-items:center;gap:8px;padding:4px 8px;background:#ff98001a;border:1px solid rgba(255,152,0,.3);border-radius:var(--radius-sm);margin-left:12px}.debug-indicator{display:flex;align-items:center;gap:4px;color:var(--color-warning);font-size:11px;font-weight:var(--fw-bold);text-transform:uppercase;opacity:.8}.debug-button{display:flex;align-items:center;gap:4px;padding:4px 8px;font-size:12px;border:1px solid;border-radius:var(--radius-xs);cursor:pointer;transition:all .2s ease;background:#0003;color:#fff}.debug-button:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000004d}.debug-button:active{transform:translateY(0)}.reset-button{border-color:var(--color-warning);background:#ffa72633}.reset-button:hover{background:#ffa7264d;border-color:var(--color-warning)}.randomize-button{border-color:var(--color-success);background:#66bb6a33}.randomize-button:hover{background:#66bb6a4d;border-color:var(--color-success-light)}.kill-button{border-color:var(--color-danger);background:#ef535033}.kill-button:hover{background:#ef53504d;border-color:var(--color-danger)}.kill-button.active{background:#ef535080;border-color:var(--color-danger-dark);animation:pulse-red 1.5s infinite}.report-button{border-color:var(--color-tertiary);background:#7c4dff33}.report-button:hover{background:#7c4dff4d;border-color:var(--color-tertiary)}@keyframes pulse-red{0%,to{box-shadow:0 0 5px #ff174480}50%{box-shadow:0 0 15px #ff1744cc}}@media (max-width: 768px){.debug-button span,.debug-indicator span{display:none}}.debug-kill-mode-overlay,.debug-kill-mode-overlay .map-object[data-object-type=unit]{cursor:crosshair!important}.debug-kill-mode-overlay .map-object[data-object-type=unit]:hover .object-layer.unit{border-color:var(--color-danger-dark)!important;box-shadow:0 0 20px #f00c!important;animation:pulse-red-unit .8s infinite}@keyframes pulse-red-unit{0%,to{transform:scale(1.1)}50%{transform:scale(1.2)}}.tutorial-modal.modal-content{max-width:900px}.tutorial-content{display:flex;gap:var(--space-lg);min-height:400px}.tutorial-video-section{flex:1;display:flex;flex-direction:column;gap:var(--space-md)}.tutorial-video-container{position:relative;width:100%;padding-bottom:56.25%;background-color:var(--color-bg);border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--color-border)}.tutorial-video-container iframe{position:absolute;top:0;left:0;width:100%;height:100%}.tutorial-video-info{padding:var(--space-sm) 0}.tutorial-video-title{margin:0 0 var(--space-xs) 0;font-size:var(--fs-lg);color:var(--color-primary)}.tutorial-video-description{margin:0;font-size:var(--fs-md);color:var(--color-grey)}.tutorial-navigation{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--color-border);margin-top:auto}.tutorial-navigation .button{width:auto;min-width:140px}.tutorial-progress{font-size:var(--fs-md);color:var(--color-grey)}.tutorial-video-list{width:200px;flex-shrink:0;border-left:1px solid var(--color-border);padding-left:var(--space-md)}.tutorial-list-title{margin:0 0 var(--space-md) 0;font-size:var(--fs-md);color:var(--color-grey);text-transform:uppercase;letter-spacing:.05em}.tutorial-video-list ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-xs)}.tutorial-video-item{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm);border-radius:var(--radius-sm);cursor:pointer;transition:background-color .2s ease,color .2s ease;font-size:var(--fs-md);color:var(--color-text)}.tutorial-video-item:hover{background-color:var(--color-bg-secondary)}.tutorial-video-item.active{background-color:var(--color-primary);color:var(--color-text-dark)}.tutorial-video-item.active .tutorial-video-icon{color:var(--color-text-dark)}.tutorial-video-item.watched .tutorial-video-icon{color:var(--color-success)}.tutorial-video-item.active.watched .tutorial-video-icon{color:var(--color-text-dark)}.tutorial-video-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--color-grey)}.tutorial-video-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tutorial-video-item.tutorial-video-item--highlight{font-weight:var(--fw-semibold)}.tutorial-video-item.tutorial-video-item--highlight:before{content:"⭐";font-size:10px;margin-right:var(--space-xs)}.tutorial-video-item.tutorial-video-item--highlight:not(.active){color:var(--color-primary-light)}@media (max-width: 1023px){.tutorial-modal.modal-content{max-width:700px}.tutorial-video-list{width:160px}}@media (max-width: 767px){.tutorial-modal.modal-content{max-width:100%}.tutorial-content{flex-direction:column;min-height:auto}.tutorial-video-list{width:100%;border-left:none;border-top:1px solid var(--color-border);padding-left:0;padding-top:var(--space-md)}.tutorial-video-list ul{flex-direction:row;flex-wrap:wrap;gap:var(--space-sm)}.tutorial-video-item{flex:0 0 auto;padding:var(--space-xs) var(--space-sm)}}@media (max-width: 479px){.tutorial-navigation{flex-wrap:wrap;gap:var(--space-sm)}.tutorial-navigation .button{flex:1;min-width:100px}.tutorial-progress{width:100%;text-align:center;order:-1}}.main-menu{display:flex;align-items:center;padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-md);background-color:var(--color-bg-primary)80;border-bottom:1px solid var(--color-border)}.menu-logo-container{display:flex;align-items:center;gap:var(--space-md);margin-right:var(--space-md)}.menu-logo{height:40px;width:auto;min-width:40px;display:block;object-fit:contain}.feedback-display{flex-grow:1;text-align:center;font-weight:var(--fw-medium);font-family:var(--font-body)}.feedback-text{display:inline-block;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm)}.menu-actions{display:flex;align-items:center;gap:var(--space-sm)}.menu-actions>button,.menu-actions>.menu-dropdown>.menu-dropdown-trigger{display:flex;align-items:center;justify-content:center}@media (max-width: 767px){.main-menu{padding:var(--space-xs) var(--space-sm);margin-bottom:var(--space-sm)}.menu-logo-container{gap:var(--space-sm);margin-right:auto}.menu-logo{height:28px;min-width:28px}.feedback-display{font-size:var(--fs-md, .875rem)}.feedback-text{padding:var(--space-xs) var(--space-sm);font-size:var(--fs-md, .875rem)}.menu-actions{gap:var(--space-xs)}}@media (max-width: 479px){.main-menu{flex-wrap:wrap}.feedback-display{order:3;flex-basis:100%;margin-top:var(--space-xs)}}.menu-dropdown{position:relative}.menu-dropdown-trigger{display:flex;align-items:center;gap:var(--space-xs);width:auto;min-width:auto;padding:0 var(--space-sm)}.menu-dropdown-trigger.active{background-color:var(--color-primary);color:var(--color-text-dark);border-color:var(--color-primary)}.menu-dropdown-content{position:absolute;top:calc(100% + var(--space-xs));right:0;min-width:160px;background-color:var(--color-bg);border:1px solid var(--color-primary);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);z-index:1000;overflow:hidden;animation:dropdownFadeIn .15s ease-out}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.menu-dropdown-item{display:flex;align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-sm) var(--space-md);background:transparent;border:none;color:var(--color-text);font-size:var(--fs-md);font-family:var(--font-body);cursor:pointer;transition:background-color .15s ease,color .15s ease;text-align:left}.menu-dropdown-item:hover{background-color:var(--color-primary);color:var(--color-text-dark)}.menu-dropdown-item:not(:last-child){border-bottom:1px solid var(--color-border)}.menu-tutorial-hint{position:absolute;top:calc(100% + var(--space-sm));right:0;background-color:var(--color-primary);color:var(--color-text-dark);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font-size:var(--fs-md);font-weight:var(--fw-semibold);white-space:nowrap;box-shadow:var(--shadow-md);z-index:999;animation:hintPulse 2s ease-in-out infinite}.menu-tutorial-hint-arrow{position:absolute;top:-6px;right:12px;width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid var(--color-primary)}@keyframes hintPulse{0%,to{transform:translateY(0);box-shadow:var(--shadow-md)}50%{transform:translateY(2px);box-shadow:0 0 15px var(--color-primary)}}.menu-dropdown-version{padding:var(--space-xs) var(--space-md);font-size:var(--fs-sm);color:var(--color-text);text-align:center;border-top:1px solid var(--color-border)}@media (max-width: 767px){.menu-dropdown-content{min-width:140px}.menu-dropdown-item{padding:var(--space-xs) var(--space-sm);font-size:var(--fs-sm)}.menu-tutorial-hint{font-size:var(--fs-sm);padding:var(--space-xs) var(--space-sm)}.menu-dropdown-version{font-size:var(--fs-xs);padding:var(--space-xs) var(--space-sm)}}.loader{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-lg);padding:var(--space-xl);min-height:150px}.loader .loader-content{display:flex;flex-direction:column;align-items:center;gap:var(--space-lg)}.loader .loader-message{color:var(--color-text);font-weight:var(--fw-medium);font-size:var(--fs-lg);margin:0}.loader.loader--overlay{position:fixed;inset:0;background:var(--overlay-80);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;padding:0;min-height:auto}.loader.loader--overlay .loader-content{padding:var(--space-xl);background:var(--overlay-95);border-radius:var(--radius-md);box-shadow:0 0 40px var(--color-secondary-tint-40)}.toggle-buttons{display:inline-flex;gap:0}.toggle-buttons__btn{flex:0 0 auto;padding:var(--space-sm) var(--space-md);background:var(--color-bg);border:1px solid var(--color-border);border-radius:0;color:var(--color-text-light);font-size:var(--fs-sm);font-weight:var(--fw-medium);cursor:pointer;transition:all .15s ease;display:flex;align-items:center;gap:var(--space-xs)}.toggle-buttons__btn:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm);border-right:none}.toggle-buttons__btn:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.toggle-buttons__btn:not(:first-child):not(:last-child){border-right:none}.toggle-buttons__btn:hover:not(:disabled):not(.toggle-buttons__btn--active){background:var(--color-bg-secondary);color:var(--color-text)}.toggle-buttons__btn.toggle-buttons__btn--active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-dark)}.toggle-buttons__btn.toggle-buttons__btn--active+.toggle-buttons__btn{border-left-color:var(--color-primary)}.toggle-buttons--disabled{opacity:.5;pointer-events:none}.toggle-buttons__btn:disabled{cursor:not-allowed}.toggle-buttons__icon{display:flex;align-items:center}.toggle-buttons__icon svg{width:14px;height:14px}@media (max-width: 479px){.toggle-buttons__btn{padding:var(--space-xs) var(--space-sm);font-size:var(--fs-xs)}}.tag.status-tag{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);font-size:var(--fs-md);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);border-radius:var(--radius-sm);border:none;box-shadow:var(--shadow-sm)}.status-tag-icon{width:var(--icon-size-sm);height:var(--icon-size-sm);display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.tag.status-tag-lobby{background:linear-gradient(135deg,var(--color-info-light) 0%,var(--color-info-light)26 100%);color:var(--color-info-light);border-left:3px solid var(--color-info-light);border-right:3px solid var(--color-info-light)}.tag.status-tag-lobby .status-tag-icon{background:var(--color-info-light)}.tag.status-tag-deploy{background:linear-gradient(135deg,var(--color-primary-tint-40) 0%,var(--color-primary-light)26 100%);color:var(--color-primary-light);border-left:3px solid var(--color-primary);border-right:3px solid var(--color-primary-light)}.tag.status-tag-deploy .status-tag-icon{background:var(--color-primary-tint-40)}.tag.status-tag-plan{background:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-light)26 100%);color:var(--color-success-light);border-left:3px solid var(--color-success);border-right:3px solid var(--color-success-light)}.tag.status-tag-plan .status-tag-icon{background:var(--color-success)}.tag.status-tag-resolve,.tag.status-tag-resolved{background:linear-gradient(135deg,var(--color-secondary-tint-40) 0%,var(--color-secondary-bright)26 100%);color:var(--color-secondary-bright);border-left:3px solid var(--color-secondary-bright);border-right:3px solid var(--color-secondary-bright)}.tag.status-tag-resolve .status-tag-icon,.tag.status-tag-resolved .status-tag-icon{background:var(--color-secondary-tint-40)}.tag.status-tag-finish{background:linear-gradient(135deg,var(--color-text) 0%,var(--color-success-light)26 100%);color:var(--color-success-light);border-left:3px solid var(--color-text);border-right:3px solid var(--color-success-light)}.tag.status-tag-finish .status-tag-icon{background:var(--color-text)}.tag.status-tag-error{background:linear-gradient(135deg,var(--color-danger-dark)40 0%,var(--color-danger)26 100%);color:var(--color-danger);border-left:3px solid var(--color-danger);border-right:3px solid var(--color-danger)}.tag.status-tag-error .status-tag-icon{background:var(--color-danger-dark)4d}.tooltip-trigger{display:inline-block}.xhelos-tooltip{padding:8px;border-radius:var(--radius-sm);font-size:var(--fs-md);line-height:1.4;opacity:0;transform:scale(.95);transition-property:opacity,transform;transition-duration:.15s;transition-timing-function:ease-in-out;max-width:200px;width:100%}.xhelos-tooltip:has(.stat-tooltip-container){max-width:300px;padding:0;text-align:left;background:transparent}.xhelos-tooltip:has(.stat-tooltip-simple){max-width:200px}.xhelos-tooltip:has(.card-tooltip-content-action){max-width:320px}.xhelos-tooltip:has(.card-tooltip-content-effect){max-width:280px}.xhelos-tooltip:has(.action-tooltip){max-width:360px;padding:8px}.xhelos-tooltip:has(.effect-tooltip){max-width:360px;padding:8px}.xhelos-tooltip[data-open]{opacity:1;transform:scale(1);pointer-events:auto}.xhelos-tooltip.theme-dark{background-color:var(--color-bg);color:#fff}.xhelos-tooltip.theme-light{background-color:var(--color-grey-light);color:var(--color-bg);border:1px solid var(--color-grey-light)}.tooltip-arrow{position:absolute;width:8px;height:8px;background:inherit;transform:rotate(45deg)}.theme-light .tooltip-arrow{border-color:var(--color-grey-light);border-style:solid;border-width:0 1px 1px 0}.tag.turn-tag{display:inline-flex;align-items:center;justify-content:center;gap:4px;height:24px;padding:0 8px;font-size:var(--fs-lg);font-weight:var(--fw-bold);border-radius:var(--radius-sm);border:2px solid transparent;transition:all .2s ease}.turn-tag-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.tag.turn-tag-lobby{background:var(--color-bg);color:var(--color-grey);border-color:var(--color-border)}.tag.turn-tag-deploy{background:var(--color-primary);color:var(--color-text-dark);border-color:var(--color-primary)}.tag.turn-tag-plan,.tag.turn-tag-resolve,.tag.turn-tag-resolved{background:var(--color-secondary);color:var(--color-text-dark);border-color:var(--color-secondary);box-shadow:0 0 8px var(--color-secondary)}.tag.turn-tag-finish{background:var(--color-primary);color:var(--color-text-dark);border-color:var(--color-primary)}.tag.turn-tag-error{background:var(--color-danger-dark);color:var(--color-text-light);border-color:var(--color-danger-dark)}.tabs{display:flex;flex-direction:column;width:100%;height:100%}.tabs-header{display:flex;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-bottom:1px solid var(--color-secondary-tint-40)}.tabs-tab{position:relative;padding:var(--space-xs) var(--space-sm);background:transparent;border:1px solid transparent;border-radius:var(--radius-sm, 4px);color:var(--color-text-light);font-size:.875rem;font-weight:var(--fw-medium);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.375rem;flex:1}.tabs-tab:hover:not(.tabs-tab-disabled):not(.tabs-tab-active){color:var(--color-text);background:var(--color-secondary-tint);border-color:var(--color-border)}.tabs-tab-active{color:var(--color-secondary);background:var(--color-secondary-tint);border-color:var(--color-secondary)}.tabs-tab-active:after{display:none}.tabs-tab-disabled{opacity:.5;cursor:not-allowed}.tabs-tab-icon{display:flex;align-items:center}.tabs-tab-icon svg{width:14px;height:14px}.tabs-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:0 var(--space-md)}.tabs-content::-webkit-scrollbar{width:6px}.tabs-content::-webkit-scrollbar-track{background:var(--glass-5);border-radius:var(--radius-xs)}.tabs-content::-webkit-scrollbar-thumb{background:var(--glass-20);border-radius:var(--radius-xs)}.tabs-content::-webkit-scrollbar-thumb:hover{background:var(--glass-30)}@media (max-width: 767px){.tabs-header{padding:0 .25rem}.tabs-tab{padding:.375rem .5rem;font-size:.8rem}.tabs-tab-icon svg{width:12px;height:12px}}@media (max-width: 479px){.tabs-header{padding:0}.tabs-tab{padding:.25rem .375rem;font-size:.75rem;gap:.25rem}}.tabs.tabs--config{height:auto}.tabs.tabs--config .tabs-header{gap:var(--space-xs);padding:0;padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-lg)}.tabs.tabs--config .tabs-tab{flex:0 0 auto;padding:var(--space-sm) var(--space-md);font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.05em}.tabs.tabs--config .tabs-tab:hover:not(.tabs-tab-disabled):not(.tabs-tab-active){background:var(--color-bg)}.tabs.tabs--config .tabs-tab-active{color:var(--color-secondary);background:var(--color-bg);border-color:transparent}.tabs.tabs--config .tabs-content{padding:0;min-height:200px}@media (max-width: 650px){.tabs.tabs--config .tabs-tab span{display:none}.tabs.tabs--config .tabs-tab{padding:var(--space-sm);min-width:auto}.tabs.tabs--config .tabs-tab-icon svg{width:22px;height:22px}}@media (max-width: 480px){.tabs.tabs--config .tabs-header{justify-content:center;gap:var(--space-sm)}.tabs.tabs--config .tabs-tab{flex:0;padding:var(--space-sm) var(--space-md)}}.tabs.tabs--underline{height:auto}.tabs.tabs--underline .tabs-header{display:flex;gap:0;padding:0;margin-bottom:var(--space-lg);border-bottom:2px solid var(--color-border)}.tabs.tabs--underline .tabs-tab{flex:1;padding:var(--space-md) var(--space-lg);background:var(--glass-10);border:none;border-bottom:3px solid transparent;border-radius:0;font-size:var(--fs-md);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.tabs.tabs--underline .tabs-tab:hover:not(.tabs-tab-disabled):not(.tabs-tab-active){background:var(--color-primary-tint);color:var(--color-primary)}.tabs.tabs--underline .tabs-tab-active{color:var(--color-primary);border-bottom-color:var(--color-primary);background:var(--color-primary-tint)}.tabs.tabs--underline .tabs-content{padding:0;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.tabs.tabs--segmented{height:auto}.tabs.tabs--segmented .tabs-header{display:inline-flex;gap:0;padding:0;border-bottom:none}.tabs.tabs--segmented .tabs-tab{flex:0 0 auto;padding:var(--space-sm) var(--space-md);background:var(--color-bg);border:1px solid var(--color-border);border-radius:0;font-size:var(--fs-sm);transition:all .15s ease}.tabs.tabs--segmented .tabs-tab:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm);border-right:none}.tabs.tabs--segmented .tabs-tab:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.tabs.tabs--segmented .tabs-tab:not(:first-child):not(:last-child){border-right:none}.tabs.tabs--segmented .tabs-tab:hover:not(.tabs-tab-disabled):not(.tabs-tab-active){background:var(--color-bg-secondary);color:var(--color-text)}.tabs.tabs--segmented .tabs-tab-active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-dark)}.tabs.tabs--segmented .tabs-tab-active+.tabs-tab{border-left-color:var(--color-primary)}@media (max-width: 479px){.tabs.tabs--segmented .tabs-tab{padding:var(--space-xs) var(--space-sm);font-size:var(--fs-xs)}}.dashboard-container{padding:0 0 var(--space-lg);margin:0 auto;text-align:center;max-width:1100px}.tab-label{position:relative}.games-badge{position:absolute;top:-14px;right:-24px;background-color:var(--color-primary);color:var(--color-text-dark);border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:var(--fw-bold);border:2px solid var(--color-bg);box-shadow:0 0 8px var(--color-primary-tint-50);z-index:10}.player-selector-wrapper{display:flex;align-items:center;gap:var(--space-sm);width:100%}.player-selector-wrapper>:first-child{flex-basis:0;flex-grow:1;flex-shrink:1}.create-player-form{display:flex;flex-direction:column;gap:var(--space-md)}.create-player-form .form-input{width:100%;padding:var(--space-md);background-color:var(--color-bg-secondary);border:1px solid var(--color-text);border-radius:var(--radius-sm);color:var(--color-text);font-size:var(--fs-lg)}.create-player-form .form-input:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 2px var(--color-secondary-tint-40)}.warning-message{color:var(--color-warning);font-size:var(--fs-lg);text-align:center;padding:var(--space-md)}.player-selector-row{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-md)}.style-primary h3,.style-secondary h3{font-size:1.5rem;margin:0}.create-player-form{display:flex;gap:var(--space-md)}.create-player-form input{flex-grow:1}.create-game-form .button.button-cta{width:100%;margin-top:var(--space-lg)}.create-game-form{text-align:left;margin-top:var(--space-md);margin-bottom:var(--space-lg)}.create-game-form h4{margin-bottom:var(--space-md);margin-top:var(--space-xl)}.form-section{margin-bottom:var(--space-md)}.code-input-wrapper{position:relative}.code-input-wrapper input{padding-right:40px}.code-input-wrapper input:disabled{opacity:.4;cursor:not-allowed}.copy-button-inside{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:transparent;border:none;padding:8px;cursor:pointer;color:var(--color-text-light);transition:all .2s ease;display:flex;align-items:center;justify-content:center}.copy-button-inside:hover:not(:disabled){color:var(--color-secondary);transform:translateY(-50%) scale(1.1)}.copy-button-inside:disabled{opacity:.3;cursor:not-allowed}.game-list-item{display:flex;align-items:stretch;justify-content:space-between;gap:.5rem;list-style:none}.game-list-item .game-link{display:flex;justify-content:space-between;align-items:center;flex:1;text-decoration:none;padding:var(--space-sm) var(--space-md);background-color:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:var(--radius-sm);transition:all .2s ease;gap:var(--space-md)}.game-list-item .game-link:hover{background:var(--color-primary-tint);border:2px solid var(--color-primary-tint-strong);transform:translateY(-3px) scale(1.01);box-shadow:0 6px 16px var(--overlay-40)}.game-list-item .game-link:active{transform:scale(.98);border:2px solid var(--color-primary)}.game-info-left{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;flex:1}.game-list-item .game-name{font-size:var(--fs-lg);font-weight:var(--fw-medium);color:var(--color-text)}.game-list-item .game-code{font-size:var(--fs-md);font-family:monospace;color:var(--color-text-light);background:var(--overlay-30);padding:.125rem .5rem;border-radius:var(--radius-sm)}.game-info-right{display:flex;align-items:center;gap:var(--space-md)}.game-players-group,.game-status-group{display:flex;align-items:center;gap:var(--space-sm)}.game-turn{display:flex;align-items:center;gap:.25rem;font-size:var(--fs-md);font-weight:var(--fw-semibold);color:var(--color-secondary);white-space:nowrap}.tag.tag-mini{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:4px 8px;font-size:.9rem;font-weight:var(--fw-semibold);border-radius:var(--radius-md);vertical-align:middle}.tag.tag-mini-humans{background:var(--color-secondary-tint);border-color:var(--color-secondary-tint-40);color:var(--color-text)}.tag.tag-mini-bots{background:var(--color-tertiary-tint);border-color:var(--color-tertiary-tint);color:var(--color-text)}.game-filters.segmented-control{margin:var(--space-lg) 0;justify-content:center;width:100%}.game-filters .segmented-control__option{flex:1;justify-content:center;padding:var(--space-sm) var(--space-lg);font-weight:var(--fw-semibold)}.switch{position:relative;display:inline-block;width:180px;height:43px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:var(--color-bg-secondary);border-radius:var(--radius-full);font-weight:var(--fw-bold);text-transform:uppercase;overflow:hidden;border:2px solid var(--color-border);box-shadow:none;transition:all .3s ease;display:flex;align-items:center;justify-content:space-between;padding:0 14px;color:var(--glass-30)}.slider:before,.slider:after{position:relative;z-index:1;font-size:.8rem;color:var(--color-text-light)}.slider:before{content:"Private"}.slider:after{content:"Public"}.slider span{position:absolute;height:38px;width:90px;left:2px;bottom:2px;background-color:var(--color-primary);border-radius:var(--radius-full);transition:all .3s ease;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:var(--fw-bold);color:var(--color-text-dark);z-index:2;transform:translate(1px)}.switch input:checked+.slider span{transform:translate(83px);background-color:var(--color-primary)}.private-code-section{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem;border-radius:var(--radius-lg);background:linear-gradient(to bottom right,var(--color-bg),var(--color-bg));border:1px solid var(--color-secondary);box-shadow:0 6px 16px var(--overlay-50);text-align:center;width:100%;max-width:auto;margin:2rem auto}.private-code-section h3{font-size:1.2rem;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.12em;color:var(--color-secondary)}.input-container{display:flex;width:100%}.private-code-input{flex-grow:1;padding:1rem;border-radius:var(--radius-md) 0 0 var(--radius-md);font-size:1.1rem;font-family:monospace;background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);border-right:none;outline:none}.private-code-input:focus{border-color:var(--color-secondary);box-shadow:0 0 8px var(--color-secondary)}.private-code-btn{padding:1rem 1.5rem;border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--color-secondary);color:var(--color-bg);font-weight:var(--fw-bold);cursor:pointer;transition:transform .2s,box-shadow .2s;border:1px solid var(--color-secondary);border-left:none}.private-code-btn:hover{transform:scale(1.05);box-shadow:0 4px 12px var(--color-secondary)}.form-row.game-creation-wrapper{display:flex;flex-direction:column;gap:var(--space-sm)}.game-name-visibility-wrapper{display:flex;gap:var(--space-md);align-items:flex-start;width:100%;flex-basis:100%}.game-name-row{flex-basis:60%;display:flex;gap:var(--space-md);align-items:center;width:100%}.game-name-row input{flex:1;min-width:200px}.visibility-row{flex-basis:40%;min-width:400px;display:flex;gap:var(--space-md);align-items:flex-start}.switch-inline{flex-shrink:0;width:180px;height:43px}.map-dimensions-row{display:flex;gap:var(--space-md);width:100%}.map-dimensions-row>*{flex:1 1 0;min-width:150px}@media (max-width: 1023px) and (min-width: 768px){.game-name-visibility-wrapper{flex-direction:column}.game-name-row,.visibility-row{flex-basis:auto;width:100%}.visibility-row{min-width:unset}}@media (max-width: 767px) and (min-width: 481px){.game-name-visibility-wrapper{flex-direction:column}.game-name-row,.visibility-row{flex-basis:auto;width:100%}.visibility-row{min-width:unset}.game-name-row input{width:100%}.map-dimensions-row{flex-direction:column}.map-dimensions-row>*{width:100%}}@media (max-width: 479px){.form-row.game-creation-wrapper{gap:var(--space-sm)}.game-name-visibility-wrapper{flex-direction:column}.game-name-row{flex-direction:column;align-items:flex-start;gap:var(--space-xs)}.game-name-row input{width:100%}.visibility-row{flex-direction:column;align-items:stretch;min-width:unset}.map-dimensions-row{flex-direction:column}.map-dimensions-row>*{width:100%}.form-group input[readonly]{font-family:monospace;text-align:center;font-weight:var(--fw-bold)}}@media (max-width: 1024px) and (min-width: 481px){.dashboard-container{padding:0 var(--space-md)}.create-player-form{flex-direction:column;gap:var(--space-sm)}.create-player-form input,.create-player-form button{width:100%}}@media (max-width: 479px){.dashboard-container{max-width:100%;padding:0 var(--space-sm)}.style-primary h3,.style-secondary h3{font-size:1.25rem}.create-player-form{flex-direction:column;gap:var(--space-sm)}.create-player-form input,.create-player-form button{width:100%}.form-row{flex-direction:column;gap:var(--space-md)}.form-group{width:100%!important}.form-group input{width:100%;box-sizing:border-box}.game-filters{flex-wrap:wrap;gap:var(--space-sm)}.game-filters button{padding:var(--space-sm) var(--space-md);font-size:var(--fs-md)}.player-selector-row{flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.game-list-item .game-link{padding:var(--space-sm) var(--space-md);font-size:.9rem;flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.game-info-left,.game-info-right{width:100%}.game-info-right{justify-content:space-between}.private-code-section{padding:var(--space-md);margin:var(--space-lg) 0}.private-code-section h3{font-size:1rem}.private-code-input,.private-code-btn{padding:var(--space-sm) var(--space-md);font-size:1rem}}.delete-player-modal{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-md)}.delete-player-modal p{margin:0;line-height:1.6}.delete-player-modal strong{color:var(--color-primary)}.info-message{color:var(--color-text);font-size:var(--fs-md)}.modal-actions{display:flex;gap:var(--space-md);justify-content:flex-end;margin-top:var(--space-lg)}.modal-actions button{flex:1}.main-container--dashboard{max-width:1200px}.dashboard-container .style-primary{margin-top:0}button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.player-selector-wrapper button:hover{background:var(--color-primary-tint);border-color:var(--color-primary)}.error-message{background:var(--color-danger-tint);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);border-left:3px solid var(--color-danger-dark);color:var(--color-danger-dark);margin-bottom:var(--space-md)}.main-container.main-container--onboarding{max-width:100%;padding:0;min-height:100vh}.onboarding-content{width:100%;max-width:1200px;margin:var(--space-lg) auto 0;padding:var(--space-lg)}.onboarding-title{font-size:var(--fs-xl);color:var(--color-text);margin-bottom:var(--space-xs);text-align:center}.onboarding-subtitle{font-size:var(--fs-md);color:var(--color-grey);margin-bottom:var(--space-lg);text-align:center}.onboarding-form{display:flex;flex-direction:column;gap:var(--space-lg)}.onboarding-section--name{display:flex;align-items:center;gap:var(--space-md)}.onboarding-section--name .onboarding-label{white-space:nowrap;flex-shrink:0}.onboarding-section--name .onboarding-input{flex:1}.onboarding-section--modes{display:flex;flex-direction:column;gap:var(--space-sm)}.onboarding-label{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--color-primary)}.onboarding-input{padding:var(--space-md);font-size:var(--fs-lg);border-radius:var(--radius-sm);border:1px solid var(--color-text);background:var(--color-bg-secondary);color:var(--color-text)}.onboarding-input:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 2px var(--color-secondary-tint-40)}.onboarding-modes{display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--space-sm);justify-content:center}.onboarding-mode-card{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:var(--space-md);background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;position:relative;text-align:center;flex:1;min-width:200px}.onboarding-mode-card:hover:not(.disabled){border-color:var(--color-secondary);transform:translateY(-2px)}.onboarding-mode-card.onboarding-mode-card.selected{border-color:var(--color-primary);background:linear-gradient(135deg,var(--color-bg) 0%,var(--color-bg) 100%);box-shadow:0 0 12px var(--color-primary-tint-40)}.onboarding-mode-card.onboarding-mode-card.disabled{opacity:.8;cursor:not-allowed}.onboarding-mode-card.onboarding-mode-card.disabled:hover{transform:none;border-color:var(--color-border)}.mode-image-wrapper{width:100%;height:120px;overflow:hidden;border-radius:var(--radius-sm);margin-bottom:var(--space-sm)}.mode-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.onboarding-mode-card:hover:not(.disabled) .mode-image{transform:scale(1.05)}.mode-name{font-family:var(--font-heading);font-size:var(--fs-xl);font-weight:var(--fw-semibold);color:var(--color-primary);text-shadow:0 1px 2px var(--overlay-50)}.mode-description{font-size:var(--fs-lg);color:var(--color-text)}.mode-badge{background:var(--color-border);color:var(--color-text);font-size:var(--fs-lg);font-weight:var(--fw-semibold);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-sm);margin-top:var(--space-sm);border:1px solid var(--color-text)}.onboarding-form .button.button-cta{margin-top:var(--space-md);align-self:stretch}.player-status-wrapper{display:flex;flex-direction:column;height:100%}.player-status-content{padding:.5rem 0}.player-status-wrapper .tag{font-size:var(--fs-sm);padding:var(--space-xs) var(--space-sm)}.player-status-wrapper .status-tag-icon,.player-status-wrapper .turn-tag-icon{width:20px;height:20px}.game-header{margin-bottom:var(--space-md);overflow:hidden}.game-title{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--color-text-light);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;text-shadow:-1px -1px 0 var(--color-text-dark),1px -1px 0 var(--color-text-dark),-1px 1px 0 var(--color-text-dark),1px 1px 0 var(--color-text-dark);margin-bottom:var(--space-xs)}.game-progress-row{display:flex;align-items:center;gap:var(--space-sm)}.game-progress-row .game-progress-bar{flex:1}.player-status-item{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.player-row{display:flex;align-items:center;gap:8px}.player-name{flex:1;font-weight:var(--fw-bold);color:var(--color-text-light);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.player-id-hidden{margin-left:6px;color:var(--color-grey);font-size:var(--fs-md)}.status-circle{min-width:20px;height:20px;padding:0 4px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-weight:var(--fw-bold);font-size:var(--fs-sm);border:2px solid transparent;cursor:help;transition:all .2s ease}.status-circle.status-deploying,.status-circle.status-planning{background:var(--color-primary);color:var(--color-text-dark);border-color:var(--color-primary);box-shadow:0 0 6px var(--color-primary)}.status-circle.status-deployed,.status-circle.status-resolving{background:var(--color-secondary);color:var(--color-text-dark);border-color:var(--color-secondary);box-shadow:0 0 6px var(--color-secondary)}.status-circle.status-unknown{background:var(--color-bg);color:var(--color-grey);border-color:var(--color-border)}.status-circle.status-finished{background:var(--color-primary);color:var(--color-text-dark);border-color:var(--color-primary)}.energy-icon{color:var(--color-text-dark);stroke-width:1}.your-turn-indicator{margin-top:10px;color:var(--color-success-light);font-weight:var(--fw-bold);text-align:center}@media (max-width: 1023px){.energy-icon{width:20px;height:20px}.player-status-item{margin-bottom:8px}.status-circle{min-width:18px;height:18px}}@media (max-width: 767px){.energy-icon{width:18px;height:18px}.player-status-item{gap:2px;margin-bottom:6px}.player-row{gap:6px}.status-circle{min-width:16px;height:16px;padding:0 3px;font-size:.7rem}.game-title{font-size:var(--fs-md);margin-bottom:2px}.player-status-content{padding:.25rem 0}.game-progress-bar{display:none}.game-header{margin-bottom:var(--space-sm)}}@media (max-width: 479px){.game-header{margin-bottom:var(--space-xs)}.player-name{font-size:.9rem}.player-id-hidden{display:none}.player-status-wrapper .tag{font-size:.7rem;padding:2px 4px}.player-status-wrapper .status-tag-icon,.player-status-wrapper .turn-tag-icon{width:16px;height:16px}}.game-progress-bar{display:flex;align-items:center;gap:0}.game-progress-bar .tooltip-trigger{flex:0 0 auto}.progress-node{flex:0 0 auto;width:28px;min-width:28px;height:24px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:var(--fs-sm);font-weight:var(--fw-bold);cursor:help;transition:all .2s ease;border:2px solid transparent}.progress-node.progress-node-upcoming{background:var(--color-bg);color:var(--color-grey);border-color:var(--color-border)}.progress-node.progress-node-completed{background:var(--color-primary);color:var(--color-text-dark);border-color:var(--color-primary)}.progress-node.progress-node-current{background:var(--color-secondary);color:var(--color-text-dark);border-color:var(--color-secondary);box-shadow:0 0 8px var(--color-secondary);animation:phase-pulse .6s ease-out}@keyframes phase-pulse{0%{transform:scale(1);box-shadow:0 0 8px var(--color-secondary)}50%{transform:scale(1.2);box-shadow:0 0 20px var(--color-secondary),0 0 30px var(--color-secondary)}to{transform:scale(1);box-shadow:0 0 8px var(--color-secondary)}}.progress-connector{flex:1;height:6px;min-width:8px;max-width:16px;transition:background .2s ease}.progress-connector.progress-connector-filled{background:var(--color-primary)}.progress-connector.progress-connector-empty{background:var(--color-border)}.game-progress-label{padding:var(--space-xs) var(--space-md);border-radius:var(--radius-sm);font-size:var(--fs-md);font-weight:var(--fw-bold);text-transform:uppercase}.game-progress-label.progress-node-current{background:var(--color-secondary);color:var(--color-text-dark);box-shadow:0 0 8px var(--color-secondary);animation:phase-pulse-label .6s ease-out}@keyframes phase-pulse-label{0%{transform:scale(1);box-shadow:0 0 8px var(--color-secondary)}50%{transform:scale(1.05);box-shadow:0 0 16px var(--color-secondary),0 0 24px var(--color-secondary)}to{transform:scale(1);box-shadow:0 0 8px var(--color-secondary)}}.game-status-button-panel .helper-text{font-size:.875rem;color:var(--color-grey);margin:0;padding:.5rem;background:var(--glass-5);border-radius:var(--radius-sm);text-align:center;font-style:italic}.game-status-button-panel .loading-spinner{display:inline-flex;align-items:center;gap:.5rem}.game-status-button-panel .loading-spinner:before{content:"";width:14px;height:14px;border:2px solid var(--glass-30);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@media (max-width: 768px){.game-status-button-panel{margin-top:var(--space-lg)}.game-status-button-panel .helper-text{font-size:.75rem;padding:.375rem}}.minimap-container{display:flex;flex-direction:column;align-items:center;padding:var(--space-sm);gap:var(--space-sm)}.minimap-container.minimap-empty{justify-content:center;min-height:150px;color:var(--color-grey)}.minimap-grid{position:relative;border:2px solid var(--color-secondary);border-radius:var(--radius-sm);cursor:pointer;overflow:hidden;box-shadow:0 0 10px var(--color-secondary-tint-40);transition:box-shadow .2s ease}.minimap-grid:hover{box-shadow:0 0 15px var(--color-secondary-tint-40)}.minimap-tile{position:absolute;box-sizing:border-box}.minimap-unit{position:absolute;border-radius:50%;box-shadow:0 0 2px var(--overlay-50);z-index:2;pointer-events:none}.minimap-viewport{position:absolute;border:2px solid var(--color-primary);background:var(--color-primary-tint);z-index:3;pointer-events:none;box-shadow:0 0 6px var(--color-primary)}.minimap-hint{font-size:var(--fs-sm);color:var(--color-grey);margin:0;text-align:center}.stat-bar{position:relative;height:1.5rem;min-height:1.5rem;background:var(--color-bg);border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--color-border)}.stat-bar.stat-bar-small{height:1.25rem;min-height:1.25rem}.stat-bar-fill{height:100%;transition:width .3s ease,background-color .3s ease}.stat-bar-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:4px;font-size:.875rem;font-weight:var(--fw-semibold);pointer-events:none}@media (max-width: 1023px){.stat-bar{height:1.25rem;min-height:1.25rem}.stat-bar.stat-bar-small{height:1rem;min-height:1rem}.stat-bar-text{font-size:.8rem;gap:2px}}@media (max-width: 767px){.stat-bar{height:1rem;min-height:1rem}.stat-bar.stat-bar-small{height:.875rem;min-height:.875rem}.stat-bar-text{font-size:.75rem}}@media (max-width: 479px){.stat-bar{height:.875rem;min-height:.875rem}.stat-bar.stat-bar-small{height:.75rem;min-height:.75rem}.stat-bar-text{font-size:.7rem}}.net-overlay{position:absolute;inset:-2px;pointer-events:none;z-index:15;border-radius:25%;overflow:hidden}.net-overlay .net-svg{width:100%;height:100%}.net-overlay .net-lines-group line{stroke:var(--color-text-light);stroke-width:3;stroke-linecap:round;fill:none;filter:drop-shadow(0 0 1px var(--color-text-dark)) drop-shadow(0 0 1px var(--color-text-dark))}.net-overlay .net-knots circle{fill:var(--color-text-light);stroke:var(--color-text-dark);stroke-width:2}@keyframes net-sway{0%,to{transform:translate(0)}25%{transform:translate(1px)}75%{transform:translate(-1px)}}.net-overlay .net-lines-diagonal-1{animation:net-sway 3s ease-in-out infinite}.net-overlay .net-lines-diagonal-2{animation:net-sway 3s ease-in-out infinite reverse}.sleep-overlay{position:absolute;inset:0;pointer-events:none;z-index:20}.sleep-overlay .sleep-zzz-container{position:absolute;top:-8px;right:-8px;width:28px;height:35px}.sleep-overlay .sleep-z{position:absolute;font-family:Arial Black,sans-serif;font-weight:var(--fw-extrabold);color:var(--color-tertiary-light);-webkit-text-stroke:1px var(--color-tertiary);text-shadow:0 0 3px var(--color-text-dark),0 0 6px var(--color-tertiary),0 0 10px var(--color-tertiary),1px 1px 2px var(--color-text-dark);opacity:0}.sleep-overlay .sleep-z-1{font-size:16px;right:2px;bottom:0;animation:sleep-float 2.2s ease-in-out infinite}.sleep-overlay .sleep-z-2{font-size:12px;right:10px;bottom:10px;animation:sleep-float 2.2s ease-in-out infinite .5s}.sleep-overlay .sleep-z-3{font-size:9px;right:16px;bottom:18px;animation:sleep-float 2.2s ease-in-out infinite 1s}@keyframes sleep-float{0%{opacity:0;transform:translateY(0) scale(.7)}20%{opacity:1;transform:translateY(-2px) scale(1)}80%{opacity:1;transform:translateY(-12px) scale(1)}to{opacity:0;transform:translateY(-18px) scale(.5)}}.sleep-overlay .sleep-text{position:absolute;bottom:-16px;left:50%;transform:translate(-50%);font-size:10px;font-weight:var(--fw-bold);color:var(--color-tertiary-light);background:var(--color-tertiary-tint);padding:1px 6px;border-radius:var(--radius-sm);border:1px solid var(--color-tertiary);white-space:nowrap;text-shadow:0 1px 2px var(--color-text-dark);box-shadow:var(--shadow-sm);animation:sleep-text-pulse 2s ease-in-out infinite}@keyframes sleep-text-pulse{0%,to{opacity:.9}50%{opacity:1}}.shield-overlay{position:absolute;inset:-8px -4px -4px;pointer-events:none;z-index:14;overflow:visible}.shield-overlay .shield-svg{width:100%;height:100%;overflow:visible}.shield-overlay .shield-dome{animation:shield-pulse 2s ease-in-out infinite}.shield-overlay .shield-highlight{animation:shield-shimmer 3s ease-in-out infinite}@keyframes shield-pulse{0%,to{opacity:.8;filter:url(#shieldGlow)}50%{opacity:1;filter:url(#shieldGlow) brightness(1.2)}}@keyframes shield-shimmer{0%,to{stroke-opacity:.3;transform:translate(0)}50%{stroke-opacity:.7;transform:translate(2px)}}.unit-icon{display:flex;align-items:center;justify-content:center;border-radius:25%;font-weight:var(--fw-bold);color:#fff;-webkit-user-select:none;user-select:none;border:3px solid var(--glass-90);transition:all .2s ease;position:relative;z-index:2;overflow:visible;aspect-ratio:1}.unit-icon-letter{transition:all .2s ease}.objects-layer .unit-icon:hover{opacity:.5;transform:scale(1.05);z-index:1}.objects-layer .unit-icon:hover .unit-icon-letter{transform:translateY(-8px);font-size:.8em;opacity:.9;transition:all .2s ease}.objects-layer .unit-icon.selected:hover{z-index:8}.unit-icon.team-own{box-shadow:0 0 12px var(--team-glow-own),0 0 24px var(--team-glow-own-soft),0 2px 4px var(--overlay-50);border-color:var(--team-border-own)}.unit-icon.team-ally{box-shadow:0 0 12px var(--team-glow-ally),0 0 24px var(--team-glow-ally-soft),0 2px 4px var(--overlay-50);border-color:var(--team-border-ally)}.unit-icon.team-enemy{box-shadow:0 0 12px var(--team-glow-enemy),0 0 24px var(--team-glow-enemy-soft),0 2px 4px var(--overlay-50);border-color:var(--team-border-enemy)}.unit-icon.team-self{background-color:var(--color-success-dark);box-shadow:0 0 12px var(--team-glow-own),0 0 24px var(--team-glow-own-soft),0 2px 4px var(--overlay-50);border-color:var(--team-border-own)}.unit-icon.size-small{width:var(--unit-icon-small);height:var(--unit-icon-small);font-size:calc(var(--unit-icon-small) * .5)}.unit-icon.size-map{width:var(--tile-size);height:var(--tile-size);font-size:calc(var(--tile-size) * .5)}.unit-icon.size-big{width:var(--unit-icon-big);height:var(--unit-icon-big);font-size:calc(var(--unit-icon-big) * .48);border-width:3px}.map-container .unit-icon.selected{border:3px solid var(--color-primary-bright);box-shadow:0 0 0 2px var(--color-primary-bright) 4d,0 0 12px var(--color-primary-bright) 99,0 1px 3px var(--overlay-50);transform:scale(1.1);z-index:10}.unit-icon.selected.size-big{border-width:4px;transform:scale(1.05)}@keyframes pulse-unit-selected{0%,to{box-shadow:0 0 0 2px var(--color-primary-bright) 4d,0 0 12px var(--color-primary-bright) 99,0 1px 3px var(--overlay-50)}50%{box-shadow:0 0 0 4px var(--color-primary-bright) 80,0 0 20px var(--color-primary-bright) cc,0 1px 3px var(--overlay-50)}}.map-container .unit-icon.selected{animation:pulse-unit-selected 2s ease-in-out infinite}.unit-icon-sprite{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;border-radius:50%;aspect-ratio:1;filter:brightness(2) contrast(1.2) saturate(1.2)}.unit-icon-letter{font-family:var(--font-family, "Arial", sans-serif);font-weight:var(--fw-bold);text-shadow:1px 1px 2px var(--overlay-80)}.unit-icon:hover:not(.selected){transform:scale(1.05);border-color:var(--glass-90)}.unit-icon.selected:hover{transform:scale(1.15);box-shadow:0 0 0 3px var(--color-primary-bright) 66,0 0 16px var(--color-primary-bright) cc,0 2px 8px var(--overlay-70)}.unit-icon.in-aoe-preview.aoe-harmful{border-color:var(--color-aoe-preview);box-shadow:0 0 0 3px var(--color-aoe-preview-tint-40),0 0 16px var(--color-aoe-preview-tint-80),0 0 24px var(--color-aoe-preview-tint-50),0 2px 4px var(--overlay-50);animation:pulse-aoe-target-harmful 1s ease-in-out infinite}@keyframes pulse-aoe-target-harmful{0%,to{box-shadow:0 0 0 3px var(--color-aoe-preview-tint-40),0 0 16px var(--color-aoe-preview-tint-80),0 0 24px var(--color-aoe-preview-tint-50),0 2px 4px var(--overlay-50)}50%{box-shadow:0 0 0 5px var(--color-aoe-preview-tint-60),0 0 24px var(--color-aoe-preview),0 0 32px var(--color-aoe-preview-tint-80),0 2px 4px var(--overlay-50)}}.unit-icon.in-aoe-preview.aoe-beneficial{border-color:var(--color-aoe-beneficial);box-shadow:0 0 0 3px var(--color-aoe-beneficial-tint-40),0 0 16px var(--color-aoe-beneficial-tint-80),0 0 24px var(--color-aoe-beneficial-tint-50),0 2px 4px var(--overlay-50);animation:pulse-aoe-target-beneficial 1s ease-in-out infinite}@keyframes pulse-aoe-target-beneficial{0%,to{box-shadow:0 0 0 3px var(--color-aoe-beneficial-tint-40),0 0 16px var(--color-aoe-beneficial-tint-80),0 0 24px var(--color-aoe-beneficial-tint-50),0 2px 4px var(--overlay-50)}50%{box-shadow:0 0 0 5px var(--color-aoe-beneficial-tint-60),0 0 24px var(--color-aoe-beneficial),0 0 32px var(--color-aoe-beneficial-tint-80),0 2px 4px var(--overlay-50)}}.unit-icon.unit-container{position:relative}.unit-icon.unit-container .state-indicator{position:absolute;bottom:-3px;left:50%;transform:translate(-50%);z-index:15}.unit-icon.selected .state-indicator{z-index:20}.initiative-badge{position:absolute;top:-10px;left:-10px;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid;z-index:20;box-shadow:0 2px 4px var(--overlay-30);pointer-events:none}.initiative-badge.team-own{background-color:var(--color-success-dark);border-color:var(--team-border-own)}.initiative-badge.team-ally{background-color:var(--color-success-light);border-color:var(--team-border-ally)}.initiative-badge.team-enemy{background-color:var(--color-danger);border-color:var(--team-border-enemy)}.initiative-badge.team-unknown{background-color:var(--color-grey);border-color:var(--glass-70)}.initiative-number{color:#fff;font-size:11px;font-weight:var(--fw-bold);font-family:var(--font-heading, "Exo 2", sans-serif);line-height:1}@media (max-width: 767px){.unit-icon.unit-container .state-indicator{bottom:-1px}.initiative-badge{width:18px;height:18px;top:-8px;left:-8px}.initiative-number{font-size:10px}}.undeploy-button{position:absolute;top:-8px;right:-8px;width:20px;height:20px;border-radius:50%;background-color:var(--color-danger, var(--color-danger-dark));border:2px solid var(--glass-90);color:#fff;font-size:12px;font-weight:var(--fw-bold);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:25;transition:all .2s ease;padding:0;line-height:1}.undeploy-button:hover{background-color:var(--color-danger-dark);transform:scale(1.15);box-shadow:0 0 8px var(--color-danger-dark) 99}.undeploy-button:active{transform:scale(.95)}@media (max-width: 767px){.undeploy-button{width:18px;height:18px;top:-6px;right:-6px;font-size:10px}}.unit-icon.unit-icon-effect-taunt{filter:sepia(1) saturate(3) hue-rotate(-20deg) brightness(.9);box-shadow:0 0 12px var(--color-danger-dark) cc,0 0 24px var(--color-danger-dark) 80,0 2px 4px var(--overlay-50);border-color:var(--color-danger-dark)}@keyframes taunt-pulse{0%,to{filter:sepia(1) saturate(3) hue-rotate(-20deg) brightness(.9);box-shadow:0 0 12px var(--color-danger-dark) cc,0 0 24px var(--color-danger-dark) 80,0 2px 4px var(--overlay-50)}50%{filter:sepia(1) saturate(4) hue-rotate(-20deg) brightness(1);box-shadow:0 0 16px var(--color-danger-dark) ee,0 0 32px var(--color-danger-dark) aa,0 2px 4px var(--overlay-50)}}.unit-icon.unit-icon-effect-taunt{animation:taunt-pulse 1.5s ease-in-out infinite}.unit-icon.unit-icon-effect-net{filter:saturate(.7) brightness(.85)}.unit-icon.unit-icon-effect-taunt.unit-icon-effect-net{filter:sepia(1) saturate(2.5) hue-rotate(-20deg) brightness(.85)}.unit-icon.unit-icon-effect-sleep,.unit-icon.unit-icon-effect-taunt.unit-icon-effect-sleep,.unit-icon.unit-icon-effect-net.unit-icon-effect-sleep{filter:saturate(.5) brightness(.75)}.unit-state-death{filter:grayscale(70%) brightness(.7) contrast(.8)}.unit-state-death .team-color-own,.unit-state-death[data-team-class=own]{background-color:#6b5b5b!important;border-color:#5a4a4a!important}.unit-state-death .team-color-ally,.unit-state-death[data-team-class=ally]{background-color:#5a5a6b!important;border-color:#4a4a5a!important}.unit-state-death .team-color-enemy,.unit-state-death[data-team-class=enemy]{background-color:#6b5a5a!important;border-color:#5a4a4a!important}.unit-state-death svg{filter:grayscale(50%) brightness(.6)}.unit-state-death .unit-icon{filter:grayscale(60%) brightness(.7)}.unit-state-death .unit-name,.unit-state-death .unit-text{color:var(--color-grey)!important}.unit-state-death .hp-bar,.unit-state-death .health-bar{background-color:#8b4513!important;opacity:.8}.unit-state-death .hp-bar-fill,.unit-state-death .health-fill{background-color:#654321!important}.unit-state-death:hover{filter:grayscale(60%) brightness(.8) contrast(.9);cursor:default}.unit-death-transition{transition:filter .5s ease-in-out,opacity .5s ease-in-out}.unit-container{position:relative}.unit-container .state-indicator{position:absolute;bottom:-2px;left:50%;transform:translate(-50%);z-index:15}.unit-container .state-indicator-corner{bottom:-2px;right:-2px;transform:none}.unit-container .state-indicator-center-bottom{bottom:-4px;left:50%;transform:translate(-50%)}.unit-container:hover .state-indicator{z-index:20}.unit-container.selected .state-indicator{z-index:25}@media (max-width: 768px){.unit-container .state-indicator{bottom:-1px}.unit-state-death{filter:grayscale(50%) brightness(.8)}}.unit-state-death[aria-label]:after{content:" (death)";position:absolute;left:-9999px}@media print{.unit-state-death{filter:none!important;opacity:.7!important;background-color:var(--color-grey-light)!important}}.spawn-beacon-icon{display:flex;align-items:center;justify-content:center;border-radius:50%;box-sizing:border-box;border:2px solid var(--glass-60);box-shadow:0 1px 3px var(--overlay-50)}.spawn-beacon-icon.team-own{background-color:var(--team-color-own)}.spawn-beacon-icon.team-ally{background-color:var(--team-color-ally)}.spawn-beacon-icon.team-enemy{background-color:var(--team-color-enemy)}.spawn-beacon-icon.size-small{width:32px;height:32px}.spawn-beacon-icon.size-big{width:80px;height:80px;border-width:3px}.map-tile{position:relative;width:var(--tile-size);height:var(--tile-size);outline:1px solid #9994;outline:1px solid var(--color-grey-light);display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--color-grey);background-size:cover;background-position:center;filter:brightness(.6) contrast(1.5) saturate(.6);opacity:.9}.terrain-layer{position:absolute;inset:0;pointer-events:none}.terrain-grass{background-color:var(--color-success-dark)}.terrain-sand{background-color:var(--color-primary-light)}.terrain-dirt{background-color:#8b7355}.terrain-rock{background-color:var(--color-grey-dark)}.terrain-sea{background-color:#3a5f7d}.terrain-snow{background-color:#e8f4f8}.tile-coordinates{position:absolute;bottom:2px;left:50%;transform:translate(-50%);font-size:11px;pointer-events:none;z-index:10;width:104%;text-align:center;display:inline;color:var(--color-text-light);font-weight:var(--fw-bold);background:var(--overlay-60);padding:1px 2px}.highlight-layer{pointer-events:none}.highlight-tile{position:absolute;transition:background-color .2s ease-in-out,opacity .2s ease-in-out;opacity:.7;background-color:var(--color-success-light);pointer-events:auto}.highlight-tile:hover{background-color:var(--color-info);cursor:pointer}.highlight-tile.aoe-preview{pointer-events:none;opacity:.5}.highlight-tile.aoe-preview.aoe-harmful,.highlight-tile.in-aoe.aoe-harmful{background-color:var(--color-aoe-preview)}.highlight-tile.in-aoe.aoe-harmful:hover{background-color:var(--color-warning);cursor:pointer}.highlight-tile.aoe-preview.aoe-beneficial,.highlight-tile.in-aoe.aoe-beneficial{background-color:var(--color-secondary)}.highlight-tile.in-aoe.aoe-beneficial:hover{background-color:var(--color-secondary);cursor:pointer}.highlight-tile.focus-tile{pointer-events:none;background-color:transparent;outline:5px solid var(--color-highlight);outline-offset:-5px;animation:focus-outline-pulse .8s ease-in-out infinite;z-index:100}@keyframes focus-outline-pulse{0%,to{outline-color:var(--color-highlight);box-shadow:0 0 10px var(--color-highlight-tint-40)}50%{outline-color:gold;box-shadow:0 0 20px var(--color-highlight)}}.objects-layer{position:absolute;width:100%;height:100%;pointer-events:none;top:0;left:0}.map-object{position:absolute;display:flex;align-items:center;justify-content:center;transition:transform .2s ease-in-out,opacity .2s ease-in-out;pointer-events:all;cursor:pointer}.map-object.cinematic-movement{transition:left .2s linear,top .2s linear,transform .2s ease-in-out,opacity .2s ease-in-out}.map-object:hover{transform:scale(1.1);z-index:5}.map-object[data-object-type=unit],.map-object[data-object-type=spawn_beacon]{cursor:pointer}.map-object[data-is-selected=true] .unit-icon{transform:scale(1.15);border-color:#ff0;box-shadow:0 0 15px var(--color-primary-bright);z-index:5}.object-layer{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:7;display:flex;align-items:center;justify-content:center}.objects-layer.targeting-mode{pointer-events:none}.objects-layer.targeting-mode .map-object{pointer-events:none!important}.object-layer.unit{width:32px;height:32px;background:var(--color-success-light);color:var(--color-text-dark);border-radius:50%;border:2px solid black;font-weight:var(--fw-bold);font-size:.9rem;display:flex;align-items:center;justify-content:center;box-shadow:0 0 2px var(--overlay-40)}.object-layer.unit{width:32px;height:32px;background:var(--color-success-light);color:var(--color-text-dark);border-radius:50%;border:2px solid black;font-weight:var(--fw-bold);font-size:.9rem;display:flex;align-items:center;justify-content:center;box-shadow:0 0 2px var(--overlay-40);transition:background-color .2s ease,border-color .2s ease}.object-layer.unit:hover{background-color:var(--color-info)}.object-layer.unit.selected{border:3px solid var(--color-primary-bright);box-shadow:0 0 10px 3px var(--color-primary-bright)}.object-layer.unit.selected:hover{background-color:var(--color-success-light)}.object-layer.spawn_beacon{width:42px;height:42px;border-radius:var(--radius-sm);border:2px solid var(--overlay-50);display:flex;align-items:center;justify-content:center;box-shadow:0 1px 3px var(--overlay-50)}.object-layer.spawn_beacon.friendly{background-color:var(--team-color-ally)}.object-layer.spawn_beacon.enemy{background-color:var(--team-color-enemy)}.object-layer.spawn_beacon{transition:transform .2s ease,box-shadow .2s ease}.object-layer.spawn_beacon:hover{background-color:var(--color-info);box-shadow:0 0 8px var(--glass-70)}.object-layer.spawn_beacon.selected{box-shadow:0 0 10px 3px var(--color-primary-bright);border-color:var(--color-primary-bright)}.planned-action-line{overflow:visible;pointer-events:none;z-index:1}.planned-action-line.completed{opacity:.4}.action-line-border,.action-line-fill{pointer-events:none}.planned-action-line.highlighted{z-index:3}.planned-action-line.highlighted .action-line-border,.planned-action-line.highlighted .action-line-fill{filter:drop-shadow(0 0 8px currentColor)}.action-lines-layer{pointer-events:none}.action-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.action-icon svg{flex-shrink:0}.action-icon-text{display:inline-flex;align-items:center;justify-content:center;font-weight:var(--fw-bold);font-family:var(--font-family, monospace);color:currentColor}.action-icon-move,.action-icon-light-move,.action-icon-heavy-move{color:var(--color-info-light)}.action-icon-melee,.action-icon-light-attack,.action-icon-heavy-attack{color:var(--color-danger)}.action-icon-range,.action-icon-ranged,.action-icon-bow,.action-icon-crossbow{color:var(--color-warning)}.action-icon-defend,.action-icon-block,.action-icon-parry{color:var(--color-success-light)}.action-icon-spell,.action-icon-magic{color:var(--color-tertiary)}.action-icon-heal{color:var(--color-tertiary-light)}.action-icon-observe,.action-icon-scout{color:var(--color-primary-bright)}.action-icon-default{color:var(--color-grey)}.action-icon.selected{color:var(--color-primary-bright);filter:drop-shadow(0 0 4px currentColor)}.action-icon.disabled{opacity:.5;filter:grayscale(1)}.action-team-own{color:var(--team-color-own)!important}.action-team-ally{color:var(--team-color-ally)!important}.action-team-enemy{color:var(--team-color-enemy)!important}.planned-action-delete{display:flex;align-items:center;justify-content:center;background:var(--color-warning)e6;border:1px solid var(--color-text);border-radius:50%;color:var(--color-text-light);cursor:pointer;transition:all .2s ease;padding:0;position:relative;z-index:10;width:18px;height:18px;box-shadow:none}.planned-action-icon .planned-action-delete{position:absolute;top:-6px;right:-6px;z-index:21}.planned-action-delete:hover{background:var(--color-bg);transform:scale(1.1);box-shadow:0 2px 8px var(--color-warning) 66}.planned-action-delete:active{transform:scale(.95)}.planned-action-delete:disabled{opacity:.6;cursor:not-allowed;transform:none}.planned-action-delete.loading{background:var(--color-grey);border-color:var(--color-grey);cursor:wait}.delete-spinner{width:60%;height:60%;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}.planned-action-delete.small{font-size:10px}.planned-action-delete.medium{font-size:12px}.planned-action-delete.large{font-size:14px}.planned-action-delete.in-tooltip{background:var(--color-warning)cc;border-width:1px}.planned-action-delete.in-tooltip:hover{background:var(--color-warning);border-color:var(--color-warning)}@keyframes fadeInScale{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.planned-action-delete{animation:fadeInScale .2s ease-out}@media (max-width: 768px){.planned-action-delete{min-width:20px;min-height:20px}}.click-popup{background:linear-gradient(135deg,var(--color-bg-primary) 0%,var(--color-bg-primary) 50%,var(--color-bg-primary) 100%);border:1px solid var(--color-secondary-dark)66;border-radius:var(--radius-md);padding:0;min-width:220px;max-width:320px;box-shadow:0 4px 12px var(--overlay-50);overflow:hidden;animation:popupFadeIn .2s ease-out;position:relative}.click-popup.pinned{border-color:var(--color-secondary-dark)99;box-shadow:0 6px 20px var(--overlay-70)}.click-popup-close{position:absolute;top:var(--space-xs);right:var(--space-xs);width:var(--space-lg);height:var(--space-lg);background:transparent;border:2px solid var(--glass-60);border-radius:50%;color:var(--glass-80);font-size:var(--fs-lg);font-weight:var(--fw-semibold);cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;line-height:1;transition:all .2s;z-index:1}.click-popup-close:hover{background:var(--glass-10);border-color:var(--glass-90);color:var(--color-text-light);transform:scale(1.1)}.click-popup-content{position:relative}.click-popup-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--color-secondary-dark)1a;border-bottom:1px solid var(--color-secondary-dark)33}.click-popup-title-group{display:flex;align-items:center;gap:8px}.click-popup-icon{display:flex;align-items:center;font-size:18px}.click-popup-title{color:var(--color-text-light);font-weight:var(--fw-semibold);font-size:14px;text-transform:capitalize}.click-popup-description{padding:8px 12px;color:var(--color-grey);font-size:var(--fs-sm);line-height:1.4}.click-popup-separator{height:1px;background:var(--color-stat-bar-bg);margin:0}.click-popup-details{display:flex;flex-direction:column;gap:calc(var(--space-xs) * .75);padding:8px 0}.click-popup-detail-row{display:flex;justify-content:space-between;align-items:center;padding:6px 12px;font-size:var(--fs-sm)}.click-popup-detail-label{color:var(--color-text);font-weight:var(--fw-medium)}.click-popup-detail-value{color:var(--color-text);text-align:right}.click-popup-detail-value.source{display:flex;align-items:center;gap:calc(var(--space-xs) * .5)}.click-popup-modifiers{padding:8px 0}.click-popup-base-row{display:flex;justify-content:space-between;align-items:center;padding:6px 12px;color:var(--color-grey);font-size:var(--fs-sm)}.click-popup-base-row .stat-value{font-weight:var(--fw-medium);color:var(--color-text-light)}.click-popup-modifier-separator{height:1px;background:var(--color-grey-dark);margin:4px 12px}.click-popup-modifiers-section{padding:4px 0}.click-popup-modifier-row{display:flex;align-items:center;padding:6px 12px;font-size:var(--fs-sm);transition:background-color .15s ease}.click-popup-modifier-row:hover{background:var(--glass-5)}.click-popup-modifier-row.positive{color:var(--color-success-light)}.click-popup-modifier-row.negative{color:var(--color-danger)}.click-popup-modifier-row .modifier-icon{font-size:14px;margin-right:6px;width:20px;display:inline-flex;align-items:center;justify-content:center}.click-popup-modifier-row .modifier-name{flex:1;font-weight:var(--fw-medium)}.click-popup-modifier-row .modifier-value{font-weight:var(--fw-semibold);margin-right:6px;min-width:28px;text-align:right}.click-popup-modifier-row .modifier-duration{font-size:var(--fs-sm);opacity:.8;white-space:nowrap}.click-popup-modifier-row .modifier-duration.unlimited{color:var(--color-primary-bright)}.click-popup-total-row{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;margin-top:4px;border-top:1px solid var(--color-stat-bar-bg);color:var(--color-grey);font-size:var(--fs-sm);font-weight:var(--fw-semibold);background:var(--color-secondary-dark)0d}.click-popup-total-row .stat-value-final{color:var(--color-text-light);font-size:14px}.counter-ready{color:var(--color-success-light, var(--color-success-light));font-weight:var(--fw-medium)}.counter-partial{color:var(--color-primary-bright);font-weight:var(--fw-medium)}.counter-depleted{color:var(--color-danger, var(--color-danger-dark));font-weight:var(--fw-medium)}@keyframes stat-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.05)}}@keyframes stat-glow{0%,to{text-shadow:0 0 4px currentColor}50%{text-shadow:0 0 8px currentColor,0 0 12px currentColor}}.stat-value.modified{font-weight:var(--fw-semibold);animation:stat-pulse 2s ease-in-out infinite}.stat-value.positive{color:var(--color-success-light);animation:stat-glow 2s ease-in-out infinite}.stat-value.negative{color:var(--color-danger);animation:stat-glow 2s ease-in-out infinite}.stat-value .base-value{font-weight:var(--fw-medium)}.stat-value .modifier-indicator{font-weight:var(--fw-bold);font-size:.9em}.tooltipeable{cursor:pointer;transition:transform .2s ease,filter .2s ease}.tooltipeable:hover{transform:translateY(-2px);filter:brightness(1.15)}.popup-trigger-active{filter:brightness(1.2)}.popup-trigger-active.tooltipeable:hover{transform:translateY(-2px);filter:brightness(1.2)}@keyframes popupFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.click-popup{min-width:180px;max-width:260px}.click-popup-title{font-size:var(--fs-lg)}.click-popup-description,.click-popup-detail-row{font-size:var(--fs-sm)}}@media (max-width: 480px){.click-popup{min-width:160px;max-width:220px}}.planned-action-icon{position:absolute;min-width:24px;height:24px;background-color:#fff;border-radius:var(--radius-lg);border:2px solid var(--color-grey-dark);display:flex;align-items:center;justify-content:center;z-index:20;transition:all .2s ease-in-out;cursor:pointer;pointer-events:auto;box-shadow:0 2px 4px var(--overlay-20),0 0 8px var(--team-glow, transparent);padding:0 4px;--team-glow: var(--color-grey);animation:action-placed .35s ease-out}@keyframes action-placed{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.15)}70%{transform:scale(.95)}to{transform:scale(1);opacity:1}}.sequence-display{position:absolute;background-color:var(--team-glow);border:2px solid white;display:flex;align-items:center;justify-content:center;z-index:35;pointer-events:none;box-shadow:0 2px 4px var(--overlay-20),0 0 6px var(--overlay-10)}.sequence-display .sequence-number{color:#fff;font-size:11px;font-weight:var(--fw-bold);font-family:var(--font-heading, "Exo 2", sans-serif);line-height:1;white-space:nowrap}.sequence-circle{width:20px;height:20px;border-radius:50%}.sequence-pill{min-width:20px;height:20px;border-radius:var(--radius-md);padding:0 6px}.sequence-stack{position:absolute;left:-17px;top:0;pointer-events:none;z-index:35}.sequence-stack .sequence-display{position:absolute;left:0}.sequence-display.sequence-top-left{top:-17px;left:-17px}.planned-action-icon.team-own .sequence-display{background-color:var(--team-color-own)}.planned-action-icon.team-ally .sequence-display{background-color:var(--team-color-ally)}.planned-action-icon.team-enemy .sequence-display{background-color:var(--team-color-enemy)}.planned-action-icon.team-unknown .sequence-display{background-color:var(--color-grey)}.planned-action-icon:hover{z-index:50}.planned-action-icon[data-interaction-mode=targeting],.planned-action-icon.targeting-mode{pointer-events:none;opacity:.6;filter:grayscale(.3);cursor:default}.planned-action-icon[data-interaction-mode=select],.planned-action-icon.select-mode{pointer-events:auto;opacity:1;filter:none;cursor:pointer}.planned-action-icon[data-interaction-mode=select]:hover,.planned-action-icon.select-mode:hover{transform:scale(1.1);box-shadow:0 4px 12px var(--overlay-30)}.planned-action-icon[data-interaction-mode=targeting]:hover,.planned-action-icon.targeting-mode:hover{transform:none;background:var(--overlay-50)}.planned-action-icon.single-action{position:relative}.delete-button-overlay{position:absolute;top:-6px;right:-6px;z-index:6;pointer-events:auto}.planned-action-icon[data-interaction-mode=targeting] .delete-button-overlay,.planned-action-icon.targeting-mode .delete-button-overlay{display:none}.single-action-delete{background:var(--color-warning)f2;border:1px solid var(--color-warning);pointer-events:auto}.planned-action-icon.multiple-actions{cursor:pointer;position:relative;transform:none}.action-icon-container{display:flex;align-items:center;justify-content:center;gap:3px}.planned-action-icon:hover{background:var(--overlay-80);border-color:var(--team-glow);transform:scale(1.1)}.planned-action-icon:hover .action-count-text,.planned-action-icon:hover .mixed-action-indicator{color:#fff}.planned-action-icon.multiple-actions:hover{background:var(--overlay-80);border-color:var(--color-secondary);box-shadow:0 0 10px 0 var(--color-secondary)}.planned-action-icon.multiple-actions[data-interaction-mode=select]:hover,.planned-action-icon.multiple-actions.select-mode:hover{transform:scale(1.1);border-width:3px;box-shadow:0 4px 12px var(--overlay-30),0 0 12px var(--team-glow, transparent)}.planned-action-icon.multiple-actions[data-interaction-mode=targeting],.planned-action-icon.multiple-actions.targeting-mode{cursor:default}.multiple-actions-tooltip .tooltip-title{color:var(--color-text-light);font-size:var(--fs-lg);font-weight:var(--fw-semibold);margin:0 0 var(--space-sm) 0}.multiple-actions-tooltip .actions-grid{display:flex;flex-direction:column;gap:var(--space-xs);max-height:300px;overflow-y:auto}.multiple-actions-tooltip .action-row{display:grid;grid-template-columns:min-content 1fr max-content;grid-auto-columns:auto;grid-auto-flow:column;gap:var(--space-xs);align-items:center;padding:4px 8px;background:var(--glass-5);border-radius:var(--radius-xs);transition:background .15s ease}.multiple-actions-tooltip .action-row:hover{background:var(--glass-10)}.multiple-actions-tooltip .action-unit-info{display:flex;align-items:center;gap:4px;white-space:nowrap;flex:0}.multiple-actions-tooltip .unit-name{font-size:12px;color:var(--color-grey-light);font-weight:var(--fw-medium)}.multiple-actions-tooltip .action-info{display:flex;align-items:center;gap:6px;min-width:0;flex:0}.multiple-actions-tooltip .action-name{font-size:var(--fs-md);color:var(--color-primary-bright);font-weight:var(--fw-semibold)}.multiple-actions-tooltip .action-sequence{display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-md);color:var(--color-primary);background:var(--color-secondary-dark)26;padding:2px 6px;border-radius:var(--radius-md);font-weight:var(--fw-semibold);white-space:nowrap;min-width:24px;flex:0}.multiple-actions-tooltip .sequence-label{opacity:.7}.multiple-actions-tooltip .sequence-value{color:var(--color-primary)}.multiple-actions-tooltip .action-delete{display:flex;align-items:center;justify-content:center;min-width:20px}.multiple-actions-tooltip .action-delete .planned-action-delete{background:var(--color-danger-dark)26;border:1px solid var(--color-danger-dark)4d;border-radius:var(--radius-sm);padding:2px;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center}.multiple-actions-tooltip .action-delete .planned-action-delete:hover{background:var(--color-danger-dark)40;border-color:var(--color-danger-dark)80;transform:scale(1.1)}.multiple-actions-tooltip .action-delete .planned-action-delete svg{stroke:var(--color-danger);width:16px;height:16px}.action-count-text{color:var(--color-bg);font-size:12px;font-weight:var(--fw-bold);line-height:1;font-family:var(--font-heading, "Exo 2", sans-serif);white-space:nowrap;margin-left:-2px}.mixed-action-indicator{font-size:14px;font-weight:var(--fw-bold);color:var(--color-bg);text-align:center;line-height:1}.mixed-action-indicator.mixed-teams{color:var(--color-bg)}.planned-action-delete.in-tooltip{background:var(--color-warning)e6;border:1px solid var(--color-warning);border-radius:var(--radius-sm);padding:4px;transition:all .2s ease;pointer-events:auto}.planned-action-delete.in-tooltip:hover{background:var(--color-warning);transform:scale(1.1);box-shadow:0 2px 8px var(--color-warning) 66}.planned-actions-tooltip-wrapper{z-index:1000}.planned-action-icon.team-own{border-color:var(--team-color-own);--team-glow: var(--team-color-own)}.planned-action-icon.team-ally{border-color:var(--team-color-ally);--team-glow: var(--team-color-ally)}.planned-action-icon.team-enemy{border-color:var(--team-color-enemy);--team-glow: var(--team-color-enemy)}.planned-action-icon.team-unknown{border-color:var(--color-grey);--team-glow: var(--color-grey)}.planned-action-icon.team-mixed{--team-glow: var(--color-border)}.planned-action-icon.targeting-mode{animation:none}@media (max-width: 768px){.planned-action-icon{min-width:20px;height:20px}.planned-action-icon.targeting-mode{opacity:.4}.planned-action-icon.select-mode{pointer-events:none;width:20px;height:20px}.multiple-actions-tooltip .actions-grid{gap:4px}.multiple-actions-tooltip .action-row{grid-template-columns:min-content 1fr max-content;gap:4px;padding:3px 6px}.delete-button-overlay{top:-4px;right:-4px}}@media (min-width: 1200px){.multiple-actions-tooltip .action-row{gap:var(--space-md)}}.planned-action-icon.has-completed-actions{opacity:.4;transition:opacity .3s ease}.planned-action-icon.all-completed{opacity:.3}.planned-action-icon.cinematic-mode .action-count{opacity:.6}.planned-action-icon:focus{outline:2px solid var(--color-primary-bright);outline-offset:2px}.processing-indicator{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:28px;height:28px;display:flex;align-items:center;justify-content:center;z-index:25;pointer-events:none}.processing-spinner{width:24px;height:24px;border-radius:50%;border:3px solid var(--glass-30);border-top-color:var(--team-color-own);animation:processing-spin .8s linear infinite;box-shadow:0 2px 8px var(--overlay-30);background:var(--glass-10)}.processing-indicator.processing-deploy .processing-spinner,.processing-indicator.processing-action .processing-spinner{border-top-color:var(--team-color-own);border-right-color:var(--team-glow-own-soft)}@keyframes processing-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.processing-indicator{animation:processing-fade-in .2s ease-out}@keyframes processing-fade-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.starting-position-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1;background-color:#fff;border-radius:50%;border:2px solid var(--color-grey-dark);width:24px;height:24px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px var(--overlay-10)}.starting-position-icon.team-own{border-color:var(--team-color-own)}.starting-position-icon.team-ally{border-color:var(--team-color-ally)}.starting-position-icon.team-enemy{border-color:var(--team-color-enemy)}.action-icons-layer{pointer-events:none}.icon-container{display:flex;align-items:center;justify-content:center}.action-icon-wrapper{position:absolute;display:flex;align-items:center;justify-content:center;pointer-events:none}.action-icon-order{position:absolute;top:2px;right:2px;background:var(--overlay-60);color:var(--color-text-light);font-size:10px;padding:1px 3px;border-radius:var(--radius-xs);pointer-events:none}.map-manager-wrapper{position:relative;width:100%;height:100%;overflow:visible}.map-container{position:relative;display:block;background-color:#000;margin:0 auto}.map-grid{display:grid;grid-template-columns:repeat(var(--map-width),var(--tile-size));grid-auto-rows:var(--tile-size);gap:0;position:relative}.map-layer{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.impact-effect{position:absolute}.impact-effect.hit-spark{background-color:var(--color-primary-bright);border-radius:50%;animation:hit-spark-animation .5s ease-out forwards}@keyframes hit-spark-animation{0%{transform:scale(.2);opacity:1}80%{transform:scale(1.2);opacity:.5}to{transform:scale(1.5);opacity:0}}.big-title-animation{position:fixed;top:40%;left:50%;transform:translate(-50%) translateY(-50%);white-space:nowrap;z-index:2000;pointer-events:none;color:var(--color-primary);font-family:var(--font-heading, "Segoe UI", sans-serif);font-weight:var(--fw-bold);letter-spacing:2px;font-size:5rem;text-shadow:-2px -2px 0 var(--color-text-dark),2px -2px 0 var(--color-text-dark),-2px 2px 0 var(--color-text-dark),2px 2px 0 var(--color-text-dark),0 0 15px var(--color-primary);animation:big-title-slide 4s forwards ease-in-out}@keyframes big-title-slide{0%{transform:translate(-50%) translateY(-200%);opacity:0}20%{transform:translate(-50%) translateY(-50%) scale(1.1);opacity:1}30%{transform:translate(-50%) translateY(-50%) scale(1);opacity:1}70%{transform:translate(-50%) translateY(-50%) scale(1);opacity:1}to{transform:translate(-50%) translateY(200%);opacity:0}}.cooldown-blocks{display:flex;align-items:center;gap:2px}.cooldown-blocks.cooldown-infinite{padding:0 2px}.cooldown-infinity{font-size:.9rem;font-weight:var(--fw-bold);color:var(--color-secondary);line-height:1;text-shadow:0 0 4px var(--color-secondary)}.cooldown-block{width:12px;height:14px;border-radius:var(--radius-xs);border:1px solid var(--color-border);transition:background .2s ease;display:flex;align-items:center;justify-content:center}.cooldown-block-text{font-size:.6rem;font-weight:var(--fw-bold);line-height:1;text-transform:uppercase}.cooldown-block.cooldown-block-empty{background:var(--color-secondary);border-color:var(--color-secondary)}.cooldown-block.cooldown-block-empty .cooldown-block-text{color:var(--color-text-dark)}.cooldown-block.cooldown-block-filled{background:var(--color-bg);border-color:var(--color-border)}.cooldown-block.cooldown-block-filled .cooldown-block-text{color:var(--color-grey)}.cooldown-block.cooldown-block-planned{background:var(--color-warning);border-color:var(--color-warning);opacity:.9}.cooldown-block.cooldown-block-planned .cooldown-block-text{color:var(--color-text-dark)}.cooldown-blocks.cooldown-duration .cooldown-block-filled{background:var(--color-secondary);border-color:var(--color-secondary)}.cooldown-blocks.cooldown-duration .cooldown-block-filled .cooldown-block-text{color:var(--color-text-dark)}.cooldown-blocks.cooldown-duration .cooldown-block-empty{background:var(--color-bg);border-color:var(--color-border)}.cooldown-blocks.cooldown-duration .cooldown-block-empty .cooldown-block-text{color:var(--color-grey)}.effect-bar .effect-icon{display:inline-flex;align-items:center;justify-content:center;width:calc(var(--space-md) * 1.3);height:calc(var(--space-md) * 1.3);font-size:var(--fs-md);cursor:pointer;position:relative}.effect-bar .effect-icon .cooldown-indicator{position:absolute;bottom:-4px;right:-4px;width:14px;height:14px;margin-left:0}.effect-bar .effect-icon .cooldown-indicator .cooldown-number{font-size:24px;color:var(--color-text-light);text-shadow:0px 0px 2px rgb(0,0,0);position:static}.effect-bar .effect-icon .effect-duration-badge{position:absolute;bottom:-6px;right:-6px;font-size:.9rem;font-weight:var(--fw-bold);color:var(--color-text-light);text-shadow:0 0 3px var(--overlay-80),0 1px 2px var(--overlay-90);line-height:1}.effect-bar .effect-icon .unicode-icon{font-size:inherit;line-height:1}.effect-bar .effect-icon img{width:100%;height:100%;object-fit:contain}.effect-bar .effect-icon .fallback-icon{font-weight:var(--fw-bold);color:var(--color-text)}.effect-bar .effect-icon-with-name{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:calc(var(--space-xs) * 1.6);background:var(--color-border);transition:background-color .2s}.effect-bar .effect-icon-with-name:hover{background:var(--color-text);color:var(--color-bg)}.effect-bar .effect-icon-with-name .effect-icon-display{display:inline-flex;align-items:center;justify-content:center;width:calc(var(--space-md) * 1.25);height:calc(var(--space-md) * 1.25);font-size:var(--fs-md);flex-shrink:0}.effect-bar .effect-icon-with-name .effect-icon-display .unicode-icon{font-size:inherit;line-height:1}.effect-bar .effect-icon-with-name .effect-icon-display img{width:100%;height:100%;object-fit:contain}.effect-bar .effect-icon-with-name .effect-name{font-size:var(--fs-sm);color:var(--color-text);white-space:nowrap}.effect-bar .effect-icon-with-name:hover .effect-name{color:var(--color-bg)}.effect-bar .effect-icon-with-name .effect-icon-display .fallback-icon{font-weight:var(--fw-bold);color:var(--color-text)}.stat-display{display:flex;align-items:center;gap:.5rem;padding:3px 6px;border:1px solid var(--color-stat-bar-bg);border-radius:var(--radius-sm);transition:all .2s ease;cursor:pointer;justify-content:center}.stat-display:hover{transform:translateY(-1px);border-color:var(--color-grey-dark)}.stat-value{font-weight:var(--fw-medium);display:inline-flex;align-items:baseline;gap:2px}.stat-value .base-value{font-weight:var(--fw-medium);color:var(--color-text-light)}.stat-value .modifier-indicator{font-size:.85em;font-weight:var(--fw-bold);padding:0 2px}.stat-value .modifier-indicator.positive{color:var(--color-success-light)}.stat-value .modifier-indicator.negative{color:var(--color-danger)}.stat-value.modified{font-weight:var(--fw-bold)}.stat-value.positive{color:var(--color-success-light);text-shadow:0 0 4px var(--color-success-light)4d}.stat-value.negative{color:var(--color-danger);text-shadow:0 0 4px var(--color-danger-dark)4d}.stat-value.neutral{color:var(--color-text);font-weight:var(--fw-bold)}.stat-display.positive{border-color:var(--color-success-light);background:var(--color-success-light)0d;color:var(--color-success-light)}.stat-display.positive:hover{border-color:var(--color-success-light);background:var(--color-success-light)1a;box-shadow:0 0 4px var(--color-success-light) 4d}.stat-display.negative{border-color:var(--color-danger);background:var(--color-danger-dark)0d;color:var(--color-danger)}.stat-display.negative:hover{border-color:var(--color-danger);background:var(--color-danger-dark)1a;box-shadow:0 0 4px var(--color-danger-dark) 4d}.stat-display.neutral{border-color:var(--color-grey-dark)}@media (max-width: 1023px){.stat-display{gap:2px;padding:5px 8px;min-width:32px;align-items:center;justify-content:center}.stat-display:hover{transform:none}.stat-value{font-size:.8rem}}.effect-bar{display:inline-flex;align-items:center;gap:4px;min-height:auto}.effect-bar.empty{visibility:hidden}.effect-bar-icon{display:inline-flex;align-items:center;justify-content:center;padding:3px;border-radius:var(--radius-sm);background:var(--overlay-40);border:1.5px solid var(--glass-30);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:all .2s ease;font-size:.9rem;line-height:1}.effect-bar-icon:hover{transform:scale(1.1);background:var(--overlay-60);filter:brightness(1.2);box-shadow:0 2px 8px var(--overlay-60)}@media (max-width: 768px){.effect-bar{gap:3px}.effect-bar-icon{padding:2px;font-size:.8rem}}@media (max-width: 480px){.effect-bar{gap:2px}.effect-bar-icon{padding:2px;font-size:.7rem;border-width:1px}}.unit-info-card{width:100%;display:flex;flex-direction:column;gap:6px}.unit-info-header{display:flex;flex-direction:row;align-items:center;gap:10px}.unit-info-header-content{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.unit-title-row{display:flex;align-items:center;gap:6px;min-width:0}.unit-title{font-size:1rem;font-weight:var(--fw-semibold);margin:0;color:var(--color-text-light);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0;text-shadow:-1px -1px 0 var(--color-text-dark),1px -1px 0 var(--color-text-dark),-1px 1px 0 var(--color-text-dark),1px 1px 0 var(--color-text-dark)}.unit-id{font-size:1rem;font-weight:var(--fw-bold);color:var(--color-text-light);background:var(--color-border);padding:4px 8px;border-radius:var(--radius-sm);flex-shrink:0}.hp-bar{cursor:pointer}.ap-display{display:flex;align-items:center;gap:8px;padding:8px;background:var(--glass-5);border-radius:var(--radius-sm);color:var(--color-primary-bright);font-size:.875rem}.ap-display svg{flex-shrink:0}.stats-container{display:flex;flex-direction:column;gap:4px;padding:2px 0}.stats-row{display:flex;gap:8px}.stats-row-combat{justify-content:center;gap:8px}.stat-group{display:flex;flex:1;justify-content:center;gap:4px}.stat-group .stat-display{flex:1;display:flex;justify-content:center;text-align:center}.stat-group-physical .stat-display{background:var(--color-stat-physical-tint-15);border-color:var(--color-stat-physical-tint-30)}.stat-group-physical .stat-display:hover{background:var(--color-stat-physical-tint-20);border-color:var(--color-stat-physical-tint-40)}.stat-group-mental .stat-display{background:var(--color-stat-mental-tint-15);border-color:var(--color-stat-mental-tint-30)}.stat-group-mental .stat-display:hover{background:var(--color-stat-mental-tint-20);border-color:var(--color-stat-mental-tint-40)}.stats-row-utility{justify-content:center;gap:6px}.stats-row-utility .stat-display{flex:1}@media (max-width: 1023px){.stats-container{gap:4px}.stat-group{padding:3px 4px;gap:2px}.stats-row-utility{gap:4px}.unit-info-header{gap:8px}}@media (max-width: 767px){.unit-info-card{gap:4px}.unit-info-header{gap:6px}.unit-title{font-size:.9rem}.stats-row{gap:4px}.ap-display{padding:6px;gap:6px;font-size:.8rem}}@media (max-width: 479px){.unit-info-card{gap:3px}.unit-title{font-size:.85rem}.stats-row-combat,.stats-row-utility{gap:3px}.stat-group{padding:2px 3px}.ap-display{padding:4px;gap:4px;font-size:.75rem}}.unit-effects{padding:8px;background:var(--glass-5);border-radius:var(--radius-sm)}.unit-effects h4{margin:0 0 8px;font-size:.875rem;color:var(--color-text-light);font-weight:var(--fw-semibold)}.effects-list{display:flex;flex-direction:column;gap:4px}.effect-item{display:flex;justify-content:space-between;align-items:center;padding:4px 8px;background:var(--glass-5);border-radius:var(--radius-sm);font-size:.75rem}.effect-name{color:var(--color-grey)}.effect-duration{color:var(--color-grey);font-weight:var(--fw-semibold)}.unit-position{text-align:left;font-size:.7rem;color:var(--color-grey);font-weight:var(--fw-medium);opacity:.8}.hp-popup{background:linear-gradient(135deg,var(--color-bg-primary) 0%,var(--color-bg-primary) 100%);border:1px solid var(--glass-10);border-radius:var(--radius-md);padding:12px;min-width:200px;box-shadow:0 4px 12px var(--overlay-50)}.hp-popup-header{display:flex;align-items:center;gap:8px;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--glass-10);color:var(--color-text-light);font-weight:var(--fw-semibold);font-size:.9rem}.hp-popup-content{display:flex;flex-direction:column;gap:6px}.hp-stat-row{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:var(--color-text)}.hp-stat-row.damage{color:var(--color-danger)}.hp-value{font-weight:var(--fw-semibold);font-family:monospace}.hp-separator{height:1px;background:var(--glass-10);margin:4px 0}.structure-info-card{background:linear-gradient(135deg,var(--color-bg-primary) 0%,var(--color-bg-primary) 50%,var(--color-bg-primary) 100%) padding-box,radial-gradient(circle at 10% 10%,var(--color-secondary-dark),var(--color-secondary-dark)) border-box;border:2px solid transparent;border-radius:1rem;width:100%;padding:16px;display:flex;flex-direction:column;gap:12px;box-shadow:0 0 6px var(--overlay-50)}.structure-header{display:flex;flex-direction:column;align-items:center;gap:8px}.structure-title{font-size:1.1rem;font-weight:var(--fw-semibold);margin:0;color:var(--color-grey-light);text-align:center}.structure-control{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;background:var(--glass-5);border-radius:var(--radius-sm);font-size:.875rem;font-weight:var(--fw-semibold)}.structure-control.team-own{color:var(--team-color-own, var(--color-success-light))}.structure-control.team-ally{color:var(--team-color-ally, var(--color-info-light))}.structure-control.team-enemy{color:var(--team-color-enemy, var(--color-danger))}.structure-capture{display:flex;flex-direction:column;gap:8px;padding:8px;background:var(--glass-5);border-radius:var(--radius-sm)}.capturing-team{display:flex;align-items:center;gap:8px;font-size:.875rem;font-weight:var(--fw-semibold)}.capturing-team.team-own{color:var(--team-color-own, var(--color-success-light))}.capturing-team.team-ally{color:var(--team-color-ally, var(--color-info-light))}.capturing-team.team-enemy{color:var(--team-color-enemy, var(--color-danger))}.structure-position,.structure-stats{text-align:center;font-size:.75rem;color:var(--color-grey)}.structure-position{padding-top:4px;border-top:1px solid var(--glass-10)}.structure-stats{padding:4px;background:var(--glass-5);border-radius:var(--radius-sm)}.ap-display{display:flex;gap:6px;align-items:center;justify-content:center}.ap-display.ap-display-small{gap:3px;justify-content:end}.ap-label{font-size:.7rem;font-weight:var(--fw-semibold);color:var(--color-grey)}.ap-display.ap-display-with-label{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:4px 10px;gap:6px}.ap-sphere{width:18px;height:18px;border-radius:50%;transition:all .2s ease-in-out}.ap-sphere.filled{background:radial-gradient(circle at 30% 30%,var(--color-tertiary-light),var(--color-tertiary));border:1px solid var(--color-tertiary-light);box-shadow:0 0 6px 1px var(--color-tertiary) b3}.ap-sphere.hollow{background:radial-gradient(circle at 30% 30%,var(--color-grey-dark),var(--color-grey));outline:1px solid var(--color-tertiary-light)}.ap-cost-mini-sphere{width:14px;height:14px;border-radius:50%;background:radial-gradient(circle at 30% 30%,var(--color-tertiary-light),var(--color-tertiary));border:1px solid var(--color-tertiary-light);box-shadow:0 0 5px 1px var(--color-tertiary) 99}.ap-cost-mini-sphere.hollow{background:radial-gradient(circle at 30% 30%,var(--color-grey-dark),var(--color-grey));outline:1px solid var(--color-tertiary-light)}.ap-cost-numeric{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background-color:var(--color-tertiary);border:1px solid var(--color-tertiary-light);border-radius:50%;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:#fff}.ap-sphere.buffed,.ap-cost-mini-sphere.buffed{border:2px solid var(--color-success)!important;box-shadow:0 0 6px 1px var(--color-success) b3}.ap-sphere.debuffed,.ap-cost-mini-sphere.debuffed{border:2px solid var(--color-danger)!important;outline:none;box-shadow:0 0 6px 1px var(--color-danger-dark) b3}.ap-sphere.disabled,.ap-cost-mini-sphere.disabled{background:radial-gradient(circle at 30% 30%,var(--color-danger-dark),var(--color-danger-dark))!important;border:2px solid var(--color-danger)!important;box-shadow:0 0 6px 1px var(--color-danger-dark) e6}.ap-sphere.hollow.disabled,.ap-cost-mini-sphere.hollow.disabled{background:transparent!important;border:2px solid var(--color-danger)!important;box-shadow:0 0 6px 1px var(--color-danger-dark) 80}.ap-sphere.hollow.buffed,.ap-cost-mini-sphere.hollow.buffed{background:radial-gradient(circle at 30% 30%,var(--color-grey-dark),var(--color-grey));border:2px solid var(--color-success)!important;outline:none}.energy-display{display:flex;align-items:center;gap:4px;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--color-primary)}.energy-display.hollow{color:var(--color-grey)}.energy-icon{fill:var(--color-primary);stroke:var(--color-text-dark);stroke-width:1.5;width:18px;height:18px;min-width:18px;min-height:18px;flex-shrink:0}.energy-icon.hollow{fill:none}.actions-panel,.actions-panel-placeholder{border-radius:var(--radius-md);padding:0rem 0;color:var(--color-text);display:flex;flex-direction:column;width:100%}.actions-panel-placeholder p{text-align:center;font-weight:var(--fw-bold)}.actions-panel-placeholder span{font-size:.85rem;color:var(--color-grey);text-align:center}.actions-panel h4{margin:0;font-size:.95rem;font-weight:var(--fw-semibold);color:var(--color-primary);text-align:center;padding-bottom:.5rem}.unit-ap-display{display:flex;flex-direction:column;gap:.25rem;align-items:center;margin-bottom:.25rem}.ap-breakdown{display:flex;flex-direction:column;gap:.15rem;align-items:center}.planned-ap-info{font-size:.8rem;color:var(--color-warning);text-align:center}.planned-ap-text{font-weight:var(--fw-medium)}.no-actions-msg{text-align:center;color:var(--color-grey);font-style:italic}.actions-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem;overflow-y:auto;overflow-x:hidden}.action-button{width:100%;display:flex;flex-direction:column;gap:.25rem;padding:.4rem .6rem;font-size:.9rem;border-radius:var(--radius-sm);border:1px solid var(--color-border);background-color:var(--color-bg-primary);color:var(--color-text-light);cursor:pointer;transition:all .2s ease;position:relative}.action-button:not(:disabled):hover{background-color:var(--color-bg-primary);border-color:var(--color-primary);transform:translateY(-1px);box-shadow:0 2px 8px var(--overlay-30)}.action-button.selected{background-color:var(--color-primary-tint-40);border-color:var(--color-primary-bright);box-shadow:0 0 12px var(--color-primary-tint-50);transform:translateY(-1px)}.action-button.selected:before{content:"";position:absolute;inset:-2px;background:linear-gradient(45deg,var(--color-primary-bright),var(--color-primary-bright),var(--color-primary-bright));border-radius:var(--radius-md);z-index:-1;opacity:.7}.action-button.selected:hover{background-color:var(--color-primary-tint-50);transform:translateY(-2px);box-shadow:0 4px 16px var(--color-primary-tint-50)}.action-button.targeted{background-color:var(--color-danger-tint);border-color:var(--color-aoe-preview);box-shadow:0 0 12px var(--color-danger-tint-50);transform:translateY(-1px)}.action-button.targeted:after{content:"Click to confirm";position:absolute;bottom:-18px;left:50%;transform:translate(-50%);font-size:.65rem;color:var(--color-aoe-preview);white-space:nowrap;opacity:.9}.action-button.targeted:hover{background-color:var(--color-danger-tint-50);box-shadow:0 0 16px var(--color-danger-tint-50)}.action-button.insufficient-ap{background-color:var(--color-danger-tint);border-color:var(--color-danger);opacity:.7}.action-button.insufficient-ap:hover{background-color:var(--color-danger-tint-50);border-color:var(--color-danger)}.action-button:disabled{background-color:var(--color-bg);color:var(--color-grey);cursor:not-allowed;opacity:.5}.action-info-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%}.action-stats-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;row-gap:.25rem;column-gap:.5rem;width:100%;font-size:.8rem}.action-stat-info{display:flex;align-items:center;gap:.35rem;flex:0 0 auto}.action-stat-icon{flex-shrink:0;color:var(--color-grey)}.action-button:not(:disabled) .action-stat-icon{color:var(--color-primary)}.action-button:not(:disabled) .action-stat-icon.damage-type-strength,.action-button:not(:disabled) .action-stat-icon.damage-type-psi{color:var(--color-danger)}.action-damage-text{font-size:.85rem;font-weight:var(--fw-semibold);color:var(--color-text-light)}.action-damage-formula{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--color-grey);margin-left:var(--space-xs);display:inline-flex;align-items:center;gap:var(--space-xxs)}.action-formula-stat-icon{vertical-align:middle;color:var(--color-secondary)}.action-stat-icon.healing-type{color:var(--color-success-light)}.action-type-label{font-size:.75rem;color:var(--color-grey);font-style:italic}.action-button:not(:disabled) .action-type-label{color:var(--color-text)}.action-effect-description{font-size:var(--fs-sm);color:var(--color-grey);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:help}.action-button:not(:disabled) .action-effect-description{color:var(--color-secondary-light)}.action-meta{display:flex;align-items:center;gap:.5rem;flex:0 0 auto;margin-left:auto}.action-range{display:flex;align-items:center;gap:.2rem;color:var(--color-grey);font-size:.75rem}.action-range-icon{color:var(--color-grey)}.action-button:not(:disabled) .action-range{color:var(--color-secondary)}.action-button:not(:disabled) .action-range-icon{color:var(--color-secondary)}.action-aoe{display:flex;align-items:center;gap:.2rem;font-size:.7rem;padding:1px 4px;border-radius:var(--radius-sm)}.action-aoe.aoe-harmful{background:var(--color-aoe-preview-tint-20);border:1px solid var(--color-aoe-preview-tint-40)}.action-aoe.aoe-harmful .aoe-label,.action-aoe.aoe-harmful .aoe-range{color:var(--color-aoe-preview)}.action-aoe.aoe-beneficial{background:var(--color-aoe-beneficial-tint-20);border:1px solid var(--color-aoe-beneficial-tint-40)}.action-aoe.aoe-beneficial .aoe-label,.action-aoe.aoe-beneficial .aoe-range{color:var(--color-aoe-beneficial)}.aoe-label{font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.5px}.aoe-range{font-weight:var(--fw-medium)}.action-button:disabled .action-aoe{opacity:.5}.action-name{flex-grow:1;font-weight:var(--fw-medium);font-size:.9rem;text-align:left;transition:color .2s ease}.action-costs{display:flex;flex-direction:row;gap:.3rem;align-items:center}.action-button.selected .action-name{color:var(--color-primary-bright);font-weight:var(--fw-semibold)}@keyframes pulse-selected{0%,to{box-shadow:0 0 12px var(--color-primary-bright) 4d}50%{box-shadow:0 0 20px var(--color-primary-bright) 80}}.action-button.selected{animation:pulse-selected 2s ease-in-out infinite}@media (max-width: 1023px){.action-button{padding:.35rem .5rem;gap:.2rem}.action-name{font-size:.85rem}.action-stats-row{font-size:.75rem}}@media (max-width: 767px){.actions-panel{padding:0rem}.actions-list{gap:.3rem}.action-button{padding:.3rem .4rem}.action-name{font-size:.8rem}.action-stats-row{font-size:.7rem;gap:.3rem}.action-meta{gap:.3rem}.action-damage-text{font-size:.8rem}}.actions-forced-warning{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-sm);background:var(--color-danger-tint);border:1px solid var(--color-danger);border-radius:var(--radius-sm);color:var(--color-danger);font-size:var(--fs-sm);margin-bottom:var(--space-sm)}.actions-forced-warning svg{flex-shrink:0}@media (max-width: 479px){.actions-list{gap:.2rem}.action-button{padding:.25rem .35rem;gap:.15rem}.action-name{font-size:.75rem}.action-info-row,.action-stats-row{gap:.25rem}.action-costs{gap:.2rem}}.all-actions-panel{display:flex;flex-direction:column;width:100%;padding:var(--space-sm) 0}.all-actions-empty{text-align:center;color:var(--color-grey);font-style:italic;padding:var(--space-lg) var(--space-md)}.all-actions-list{display:flex;flex-direction:column;gap:var(--gap-sm)}.all-actions-card{display:flex;align-items:stretch;background:var(--glass-5);border:1px solid var(--glass-10);border-radius:var(--radius-sm);transition:all .15s ease;overflow:hidden}.all-actions-card:hover{background:var(--glass-10);border-color:var(--glass-15);transform:translateY(-1px);box-shadow:0 2px 8px var(--overlay-10)}.all-actions-card-highlighted{background:var(--color-primary-tint);border-color:var(--color-primary)}.all-actions-card-highlighted:hover{background:var(--color-primary-tint)}.all-actions-card.team-own{border-left:3px solid var(--color-team-own)}.all-actions-card.team-ally{border-left:3px solid var(--color-team-ally)}.all-actions-card.team-enemy{border-left:3px solid var(--color-team-enemy)}.all-actions-card-content{display:flex;flex-direction:column;gap:var(--gap-xs);flex:1;padding:var(--space-sm);background:transparent;border:none;cursor:pointer;text-align:left;min-width:0}.all-actions-card-content:hover{background:var(--glass-5)}.all-actions-card-action{display:flex;align-items:center;gap:var(--gap-sm)}.all-actions-card-action .action-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--color-text-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.all-actions-card-unit{display:flex;align-items:center;gap:var(--gap-xs);color:var(--color-grey);font-size:var(--fs-sm)}.all-actions-card-unit .unit-name{color:var(--color-text);font-weight:var(--fw-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px}.all-actions-card-unit .action-target{display:flex;align-items:center;gap:var(--space-xxs);margin-left:auto;color:var(--color-grey);font-size:var(--fs-sm);font-family:monospace;flex-shrink:0}.all-actions-card-unit .action-target svg{opacity:.6}.all-actions-card-sidebar{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--gap-xs);padding:var(--space-xs);background:var(--glass-5);min-width:2.25rem}.all-actions-card-sidebar .order-number{font-family:monospace;font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--color-primary)}.all-actions-card .planned-action-delete{opacity:.6;transition:opacity .15s ease}.all-actions-card:hover .planned-action-delete{opacity:1}@media (max-width: 768px){.all-actions-card-content{padding:var(--space-xs)}.all-actions-card-action .action-name,.all-actions-card-unit{font-size:var(--fs-sm)}.all-actions-card-unit .unit-name{max-width:70px}.all-actions-card-sidebar{padding:var(--space-xs);min-width:2rem}.all-actions-card-sidebar .order-number{font-size:var(--fs-sm)}}.info-panel{display:flex;flex-direction:column;width:100%;height:100%}.info-panel-content{display:flex;flex-direction:column;gap:1rem;padding:.5rem 0}.info-panel-empty-content{display:flex;align-items:center;justify-content:center;padding:2rem;color:var(--color-grey);font-size:.9rem;text-align:center}.info-panel-empty-content p{margin:0;font-style:italic}.info-panel-empty{display:flex;align-items:center;justify-content:center;height:100%;padding:2rem;color:var(--color-grey);font-size:.9rem;text-align:center}.info-panel-empty p{margin:0;font-style:italic}@media (max-width: 767px){.info-panel-content{padding:.25rem 0;gap:.5rem}.info-panel-empty-content{padding:1rem}}@media (max-width: 479px){.info-panel-content{padding:.125rem 0;gap:.375rem}}:root{--drawer-width: 270px;--drawer-height-bottom: 200px;--drawer-toggle-size: 28px;--drawer-transition: .3s ease-in-out}.drawer-container{position:absolute;z-index:50;pointer-events:none;overflow:visible}.drawer-container--left{top:0;left:0;bottom:0;width:calc(var(--drawer-width) + var(--drawer-toggle-size))}.drawer-container--right{top:0;right:0;bottom:0;width:calc(var(--drawer-width) + var(--drawer-toggle-size))}.drawer-container--bottom{left:0;right:0;bottom:0;height:auto}.drawer{background-color:var(--color-bg);box-shadow:0 0 20px var(--overlay-30);transition:transform var(--drawer-transition);pointer-events:auto;overflow:visible}.drawer--left{position:absolute;top:0;left:0;bottom:0;width:var(--drawer-width);transform:translate(-100%)}.drawer--left.drawer--open{transform:translate(0)}.drawer--right{position:absolute;top:0;right:0;bottom:0;width:var(--drawer-width);transform:translate(100%)}.drawer--right.drawer--open{transform:translate(0)}.drawer--bottom{position:relative;width:100%;height:var(--drawer-height-bottom);transform:translateY(var(--drawer-height-bottom));display:flex;flex-direction:column}.drawer--bottom.drawer--open{transform:translateY(0)}.drawer--always-visible{transform:none!important}.drawer__content{height:100%;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;background-color:inherit}.drawer--bottom .drawer__content{padding:0;display:flex;flex-direction:column;flex:1;min-height:0;height:var(--drawer-height-bottom);overflow:visible}.drawer__content::-webkit-scrollbar{width:6px}.drawer__content::-webkit-scrollbar-track{background:var(--overlay-10)}.drawer__content::-webkit-scrollbar-thumb{background:var(--glass-20);border-radius:var(--radius-xs)}.drawer__content::-webkit-scrollbar-thumb:hover{background:var(--glass-30)}.drawer__toggle{position:absolute;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--color-drawer) 0%,var(--color-drawer-dark) 100%);border:1px solid var(--color-primary);color:var(--color-primary);cursor:pointer;z-index:9999;transition:background .2s ease,filter .2s ease,transform var(--drawer-transition);pointer-events:auto;-webkit-tap-highlight-color:transparent}.drawer__toggle:hover{filter:brightness(1.2);border-color:var(--color-primary)}.drawer__toggle:active{filter:brightness(1.4)}.drawer__toggle-chevron{font-size:18px;font-weight:var(--fw-bold);line-height:1}.drawer__toggle--left{right:calc(-1 * var(--drawer-toggle-size));top:50%;transform:translateY(-50%);width:var(--drawer-toggle-size);height:60px;border-radius:0 var(--radius-sm) var(--radius-sm) 0;border-left:none}.drawer__toggle--left.drawer__toggle--open{right:calc(-1 * var(--drawer-toggle-size))}.drawer__toggle--right{left:calc(-1 * var(--drawer-toggle-size));top:50%;transform:translateY(-50%);width:var(--drawer-toggle-size);height:60px;border-radius:var(--radius-sm) 0 0 var(--radius-sm);border-right:none}.drawer__toggle--right.drawer__toggle--open{left:calc(-1 * var(--drawer-toggle-size))}.drawer__toggle--bottom{position:absolute;bottom:100%;left:0;width:60px;height:var(--drawer-toggle-size);border-radius:var(--radius-sm) var(--radius-sm) 0 0;border-bottom:none}.drawer--bottom .bottom-drawer-header{left:60px;height:var(--drawer-toggle-size);display:flex;align-items:center;border-radius:0 var(--radius-sm) 0 0}.drawer--bottom .bottom-drawer-title{padding:0 var(--space-sm);font-size:var(--fs-md)}.drawer-container--left .panel{border-left:none;border-top-left-radius:0;border-bottom-left-radius:0}.drawer-container--right .panel{border-right:none;border-top-right-radius:0;border-bottom-right-radius:0}.game-area--bottom-open .drawer-container--left,.game-area--bottom-open .drawer-container--right{bottom:var(--drawer-height-bottom)}@media (max-width: 1023px){:root{--drawer-width: 220px}.drawer-container--left,.drawer-container--right{width:calc(var(--drawer-width) + var(--drawer-toggle-size))}.drawer__toggle--left.drawer__toggle--open{right:calc(-1 * var(--drawer-toggle-size) + 14px)}.drawer__toggle--right.drawer__toggle--open{left:calc(-1 * var(--drawer-toggle-size) + 14px)}}@media (max-width: 767px){:root{--drawer-width: 200px;--drawer-height-bottom: 160px;--drawer-toggle-size: 24px}.drawer-container--left,.drawer-container--right{width:calc(var(--drawer-width) + var(--drawer-toggle-size));z-index:100}.drawer-container--bottom{z-index:90}.drawer__toggle--left,.drawer__toggle--right{width:var(--drawer-toggle-size);height:48px}.drawer__toggle--left{right:calc(-1 * var(--drawer-toggle-size))}.drawer__toggle--right{left:calc(-1 * var(--drawer-toggle-size))}}@media (max-width: 479px){:root{--drawer-width: 180px;--drawer-height-bottom: 140px}.drawer-container--left,.drawer-container--right{width:calc(var(--drawer-width) + var(--drawer-toggle-size))}}@media (prefers-reduced-motion: reduce){.drawer,.drawer__toggle{transition-duration:1ms}}.drawer{touch-action:pan-y}.drawer--bottom{touch-action:pan-x}.hp-ring{position:relative;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:100%;height:100%}.hp-ring-svg{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.hp-ring-segment{transition:stroke .3s ease}.hp-ring-content{position:relative;display:flex;align-items:center;justify-content:center;width:calc(100% - 6px);height:calc(100% - 6px);z-index:1}.hp-ring-content .unit-icon{width:100%;height:100%}@media (max-width: 768px){.hp-ring-segment{stroke-width:2}.hp-ring-content{width:calc(100% - 4px);height:calc(100% - 4px)}}.unit-card{position:relative;display:flex;flex-direction:column;align-items:center;background:var(--color-bg-primary);border:2px solid var(--color-border, var(--color-bg-primary));border-radius:var(--radius-md);padding:var(--space-xs);cursor:pointer;transition:all .2s ease;flex-shrink:0;gap:2px}.unit-card.unit-card-small{width:70px;min-width:70px;padding:var(--space-xs)}.unit-card.unit-card-small .unit-card-image{width:var(--unit-icon-small);height:var(--unit-icon-small)}.unit-card.unit-card-small .unit-card-label{font-size:var(--fs-sm, 10px)}.unit-card.unit-card-small .unit-card-name{display:none}.unit-card.unit-card-medium{min-width:120px;max-width:160px;width:auto;padding:var(--space-sm);gap:var(--space-xs)}.unit-card.unit-card-medium .unit-card-image{width:var(--unit-icon-big);height:var(--unit-icon-big)}.unit-card.unit-card-medium .unit-card-label{font-size:var(--fs-md, 12px);flex-direction:column}.unit-card.unit-card-medium .unit-card-name{display:block;font-weight:var(--fw-semibold)}.unit-card.unit-card-medium .unit-card-id{font-size:var(--fs-sm, 10px);opacity:.7}.unit-card.team-own{border-color:var(--color-success-dark)80;border-bottom:4px solid var(--color-success-dark)}.unit-card.team-own:hover{box-shadow:0 0 8px var(--color-success-dark) 66}.unit-card.team-ally{border-color:var(--color-info)80;border-bottom:4px solid var(--color-info)}.unit-card.team-ally:hover{box-shadow:0 0 8px var(--color-info) 66}.unit-card.team-enemy{border-color:var(--color-danger-dark)80;border-bottom:4px solid var(--color-danger-dark)}.unit-card.team-enemy:hover{box-shadow:0 0 8px var(--color-danger-dark) 66}.unit-card.selected{background:var(--color-secondary-bright)26;border-width:2px;box-shadow:0 0 12px var(--color-secondary-bright) 99,0 0 20px var(--color-secondary-bright) 4d}.unit-card.selected.team-own{border-color:var(--color-success-dark);border-bottom-color:var(--color-success-dark);border-bottom-width:4px}.unit-card.selected.team-ally{border-color:var(--color-info);border-bottom-color:var(--color-info);border-bottom-width:4px}.unit-card.selected.team-enemy{border-color:var(--color-danger-dark);border-bottom-color:var(--color-danger-dark);border-bottom-width:4px}.unit-card:hover{transform:translateY(-2px)}.unit-card:active{transform:scale(.98)}.unit-card-image{display:flex;align-items:center;justify-content:center;flex-shrink:0}.unit-card-image .unit-icon{border:none;box-shadow:none}.unit-card-label{display:flex;align-items:center;justify-content:center;gap:2px;color:var(--color-text, #f5e6d3);text-align:center;line-height:1.2;white-space:nowrap}.unit-card-name{font-weight:var(--fw-semibold)}.unit-card-id{color:var(--color-grey)}.unit-card-badge{position:absolute;top:-8px;left:-8px;min-width:20px;height:20px;padding:0 4px;border-radius:var(--radius-md);background:var(--color-bg-primary);border:2px solid var(--color-border, var(--color-bg-primary));color:var(--color-text, #f5e6d3);font-size:var(--fs-md, 12px);font-weight:var(--fw-bold);display:flex;align-items:center;justify-content:center;z-index:5;box-sizing:border-box}.unit-card.team-own .unit-card-badge{border-color:var(--team-friendly, var(--color-success))}.unit-card.team-ally .unit-card-badge{border-color:var(--team-ally, var(--color-info))}.unit-card.team-enemy .unit-card-badge{border-color:var(--team-color-enemy, var(--color-danger))}.unit-card.selected .unit-card-badge{background:var(--color-secondary-bright);color:var(--color-bg-primary)}.unit-card-energy{margin-top:auto}@media (max-width: 1023px){.unit-card.unit-card-medium{min-width:110px;max-width:150px}}@media (max-width: 767px){.unit-card.unit-card-small{width:55px;min-width:55px;padding:2px}.unit-card.unit-card-medium{min-width:70px;max-width:100px;padding:2px;gap:1px}.unit-card.unit-card-medium .unit-card-name{font-size:.7rem}.unit-card.unit-card-medium .unit-card-id{font-size:.6rem}.unit-card-badge{width:16px;height:16px;min-width:16px;top:-5px;left:-5px;font-size:9px;padding:0 2px}}@media (max-width: 479px){.unit-card.unit-card-small{width:48px;min-width:48px}.unit-card.unit-card-medium{min-width:58px;max-width:80px;padding:2px}.unit-card.unit-card-medium .unit-card-name{font-size:.65rem}.unit-card.unit-card-medium .unit-card-id{font-size:.55rem}.unit-card-badge{width:14px;height:14px;min-width:14px;top:-4px;left:-4px;font-size:8px}}.horizontal-slider-wrapper{display:flex;flex-direction:column;gap:8px}.horizontal-slider{display:flex;overflow-x:auto;scrollbar-width:none;padding:12px;margin:-12px;cursor:grab;-webkit-user-select:none;user-select:none}.horizontal-slider::-webkit-scrollbar{display:none}.horizontal-slider.dragging{cursor:grabbing}.horizontal-slider-track{height:12px;background:var(--glass-10);border-radius:var(--radius-xs);position:relative;z-index:1;cursor:pointer;margin:0}.horizontal-slider-track:hover{background:var(--glass-20)}.horizontal-slider-thumb{height:100%;background:var(--color-primary);border-radius:var(--radius-xs);position:absolute;transition:left .05s ease-out;min-width:20px;cursor:grab}.horizontal-slider-thumb:hover{background:var(--color-primary-light)}.horizontal-slider-thumb:active{cursor:grabbing;background:var(--color-primary-light)}@media (max-width: 767px){.horizontal-slider{padding:8px;margin:-8px}.horizontal-slider-track{height:8px}.horizontal-slider-thumb{min-width:16px}}@media (max-width: 479px){.horizontal-slider{padding:6px;margin:-6px}.horizontal-slider-track{height:6px}.horizontal-slider-thumb{min-width:14px}}.finalize-button{margin:var(--space-sm) 0 0}.warning-popup{position:fixed;top:20px;right:20px;background:var(--color-bg-tertiary);color:var(--color-primary);border:2px solid var(--color-primary);border-radius:var(--radius-lg);padding:1rem 1.5rem;box-shadow:0 0 12px var(--color-primary-tint-strong),0 0 24px var(--color-primary-tint-40);display:flex;align-items:center;gap:1rem;z-index:9999}.warning-text{font-size:.95rem;font-weight:var(--fw-semibold);letter-spacing:.5px;flex-grow:1}.close-warning{background:none;border:none;padding:0;width:auto;height:auto;display:flex;align-items:center;justify-content:center;color:var(--color-primary);cursor:pointer;transition:color .2s ease,transform .2s ease}.close-warning:hover{color:var(--color-primary-light);transform:scale(1.2)}.overlay-backdrop{position:fixed;inset:0;background:var(--overlay-30);z-index:9998}.coordinate-link{display:inline-flex;align-items:center;gap:2px;padding:2px 8px;border-radius:4px;font-family:var(--font-body);font-size:.9em;font-weight:500;color:var(--color-highlight);background:var(--color-bg-tertiary);border:1px solid var(--color-highlight-tint-40);cursor:pointer;transition:all .15s ease}.coordinate-link:hover{color:gold;background:var(--color-highlight-bg);border-color:var(--color-highlight);box-shadow:0 0 8px var(--color-highlight-tint-40)}.coordinate-link:active{transform:scale(.95)}.timeline-event-card{display:flex;flex-direction:column;align-items:center;min-width:95px;background:var(--color-bg-primary);border:2px solid var(--color-border);border-left:4px solid var(--color-border);border-radius:var(--radius-md);padding:.5rem;transition:all .2s ease;cursor:pointer;position:relative;flex-shrink:0;justify-content:flex-start;gap:var(--space-xs);transform-origin:top center}.timeline-event-card.effect-event{background:linear-gradient(135deg,var(--color-bg-primary) 0%,var(--color-tertiary-tint-15) 50%,var(--color-tertiary-tint-25) 100%);border-style:dashed;border-width:2px;border-left-width:4px;border-left-style:dashed}.timeline-event-card:hover:not(.active):not(.completed){transform:translateY(-3px);box-shadow:0 6px 12px var(--overlay-50)}.timeline-event-card.completed:hover{opacity:.7;filter:grayscale(15%)}.timeline-event-card.team-own{border-color:var(--team-glow-own);border-left-color:var(--color-success-dark);border-bottom:3px solid var(--color-success-dark)}.timeline-event-card.team-own:hover:not(.active){box-shadow:0 0 12px var(--team-glow-own-soft)}.timeline-event-card.team-ally{border-color:var(--team-glow-ally);border-left-color:var(--color-info);border-bottom:3px solid var(--color-info)}.timeline-event-card.team-ally:hover:not(.active){box-shadow:0 0 12px var(--team-glow-ally-soft)}.timeline-event-card.team-enemy{border-color:var(--team-glow-enemy);border-left-color:var(--color-danger);border-bottom:3px solid var(--color-danger)}.timeline-event-card.team-enemy:hover:not(.active){box-shadow:0 0 12px var(--team-glow-enemy-soft)}.timeline-event-card.active{border-width:2px;border-left-width:4px;transform:scale(1.05);z-index:10}.timeline-event-card.active.team-own{background:var(--team-tint-own);border-color:var(--color-success-dark);box-shadow:0 0 15px var(--team-glow-own),0 0 30px var(--team-glow-own-soft),0 8px 16px var(--overlay-40)}.timeline-event-card.active.team-ally{background:var(--team-tint-ally);border-color:var(--color-info);box-shadow:0 0 15px var(--team-glow-ally),0 0 30px var(--team-glow-ally-soft),0 8px 16px var(--overlay-40)}.timeline-event-card.active.team-enemy{background:var(--team-tint-enemy);border-color:var(--color-danger);box-shadow:0 0 15px var(--team-glow-enemy),0 0 30px var(--team-glow-enemy-soft),0 8px 16px var(--overlay-40)}.timeline-event-card.completed{background:var(--color-bg);opacity:.5;filter:grayscale(30%);transform:scale(.95)}.timeline-event-card.completed.effect-event{background:linear-gradient(135deg,var(--color-bg) 0%,var(--color-tertiary-tint-08) 100%)}.timeline-event-card.completed.team-own{border-color:var(--color-success-dark)4d;border-bottom-color:var(--team-glow-own)}.timeline-event-card.completed.team-ally{border-color:var(--color-info)4d;border-bottom-color:var(--team-glow-ally)}.timeline-event-card.completed.team-enemy{border-color:var(--color-danger-dark)4d;border-bottom-color:var(--team-glow-enemy)}.timeline-event-card.artificial{background:var(--color-bg-primary);border:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.effect-icon-large{font-size:1.25rem;line-height:1}.tooltip-info{color:var(--warning-color, var(--color-warning));font-style:italic;font-size:.9em}.card-step-indicator{position:absolute;top:-8px;left:-8px;min-width:20px;height:20px;padding:0 4px;border-radius:var(--radius-md);background:var(--color-bg-primary);border:2px solid var(--color-border, var(--color-bg-primary));color:var(--color-text, #f5e6d3);font-size:var(--fs-md, .7rem);font-weight:var(--fw-bold);display:flex;align-items:center;justify-content:center;z-index:5;box-sizing:border-box}.timeline-event-card.team-own .card-step-indicator{border-color:var(--team-friendly, var(--color-success))}.timeline-event-card.team-ally .card-step-indicator{border-color:var(--team-ally, var(--color-info))}.timeline-event-card.team-enemy .card-step-indicator{border-color:var(--team-color-enemy, var(--color-danger))}.timeline-event-card.active .card-step-indicator{background:var(--color-secondary);color:var(--color-bg);font-weight:var(--fw-bold)}.card-main-icon{display:flex;align-items:center;justify-content:center;min-height:40px}.card-main-icon .timeline-action-icon{margin-bottom:0}.card-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--color-text-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;line-height:1.2;width:100%}.card-subtitle{font-size:var(--fs-sm);color:var(--color-grey);text-align:center;line-height:1.2}.card-unit-id{font-size:var(--fs-md);opacity:.8;margin-left:2px;color:var(--color-grey)}.card-unit-section{display:flex;align-items:center;justify-content:center}.card-unit-section .unit-icon{border:none;box-shadow:none}.unknown-unit{font-size:1.2rem;color:var(--color-text);display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--color-border);border-radius:50%}.card-action-section{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.2rem}.timeline-action-icon{display:flex;align-items:center;justify-content:center;margin-bottom:.1rem}.timeline-action-icon.animating{animation:rotateIcon 2s linear infinite}@keyframes rotateIcon{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.action-name-small{font-size:.7rem;color:var(--color-text-light);font-weight:var(--fw-medium);line-height:1;max-width:100%;word-break:break-word}.active .action-name-small{color:var(--color-text-light);font-weight:var(--fw-semibold)}.artificial-label{font-size:.8rem;color:var(--warning-color);font-weight:var(--fw-bold);text-align:center}.play-button-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:var(--overlay-70);border-radius:var(--radius-sm);opacity:0;transition:opacity .2s ease;pointer-events:none}.timeline-event-card:hover .play-button-overlay{opacity:1;pointer-events:auto;z-index:10;animation:fadeIn .3s ease}.play-icon{color:var(--color-text-light);filter:drop-shadow(0 2px 4px var(--overlay-50));animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.timeline-event-card.animating{pointer-events:none}.card-tooltip-content{padding:8px 12px;min-width:220px;max-width:320px;max-height:300px;overflow-y:auto}@media (max-width: 767px){.card-tooltip-content{min-width:180px;max-width:260px;max-height:250px}}.effect-tooltip-header{display:flex;align-items:center;gap:var(--space-xs);padding-bottom:4px;margin-bottom:4px;border-bottom:1px solid var(--color-border)}.effect-tooltip-icon{font-size:1.1rem}.effect-tooltip-name{font-weight:var(--fw-bold);color:var(--color-primary);flex:1}.effect-type-badge{font-size:var(--fs-sm);padding:1px 6px;border-radius:var(--radius-sm);font-weight:var(--fw-medium)}.effect-type-badge.badge-applied{background:var(--color-success-tint-30, var(--color-success-light)33);color:var(--color-success-light)}.effect-type-badge.badge-expired{background:var(--color-danger-tint);color:var(--color-danger)}.effect-type-badge.badge-tick{background:var(--color-secondary-tint, var(--color-secondary-tint-40));color:var(--color-secondary)}.effect-duration-row{display:flex;align-items:center;gap:var(--space-xs);margin-top:var(--space-xs);color:var(--color-grey);font-size:var(--fs-sm)}.tooltip-label{color:var(--color-grey);margin-right:var(--space-xs);flex-shrink:0}.tooltip-unit-ref{display:inline-flex;align-items:center;gap:2px}.tooltip-origin-row{display:flex;align-items:center}.tooltip-targets-section{margin-top:var(--space-xs)}.tooltip-targets-list-vertical{display:flex;flex-direction:column;gap:4px;margin-top:4px}.tooltip-target-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm)}.tooltip-target-result{display:flex;align-items:center;gap:var(--space-xs);margin-left:auto}.tooltip-blocked-inline{font-size:var(--fs-sm);color:var(--color-grey)}.tooltip-failure-inline{font-size:var(--fs-sm);color:var(--color-grey);font-style:italic}.tooltip-blocked-detail{display:inline-flex;align-items:center;gap:1px}.tooltip-blocked-detail .blocked-value{font-weight:var(--fw-semibold);font-size:var(--fs-md);min-width:1ch;text-align:center}.tooltip-blocked-detail .blocked-vs{margin:0 4px;color:var(--color-grey);font-size:var(--fs-sm)}.tooltip-killed-inline{font-size:var(--fs-md)}.tooltip-effects-inline{display:inline-flex;align-items:center;gap:2px}.tooltip-effect-tag{font-size:var(--fs-md)}.tooltip-effect-applied{color:var(--color-success-light);font-weight:var(--fw-bold);font-size:var(--fs-md)}.tooltip-targets-row{display:flex;align-items:center;flex-wrap:wrap}.tooltip-targets-list{display:flex;align-items:center;gap:var(--space-xs);flex-wrap:wrap}.tooltip-damage-row{margin-top:var(--space-xs)}.tooltip-blocked{display:flex;align-items:center;gap:4px;color:var(--color-grey)}.tooltip-cost-row{display:flex;align-items:center;font-size:var(--fs-sm);color:var(--color-grey)}.tooltip-effects-row{display:flex;align-items:center;flex-wrap:wrap;margin-top:var(--space-xs)}.tooltip-effects-list{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.tooltip-effect-name{display:inline-flex;align-items:center;gap:2px;color:var(--color-primary);font-weight:var(--fw-medium)}.card-tooltip-content-name{font-weight:var(--fw-bold);margin-bottom:4px;color:var(--color-primary);border-bottom:1px solid var(--color-info-light);padding-bottom:2px}.card-tooltip-content-row{margin-top:3px;color:var(--color-text)}.card-tooltip-content.multi-target-tooltip{font-size:var(--fs-md)}.card-tooltip-content-row.effect-stat-row{display:flex;align-items:center;gap:var(--space-xs)}.effect-stat-unit{display:inline-flex;align-items:center;gap:2px;margin-right:var(--space-xs);flex-shrink:0}.effect-stat-unit-id{font-size:var(--fs-sm);color:var(--color-grey)}.effect-stat-name{color:var(--color-grey);flex-shrink:0}.stat-delta{display:inline-flex;align-items:center;gap:2px;font-weight:var(--fw-semibold);margin-left:auto}.stat-delta-positive{color:var(--color-success-light)}.stat-delta-negative{color:var(--color-danger)}.card-tooltip-content-row.missed{color:var(--color-danger);margin-left:4px;font-style:italic}.card-tooltip-content-row.killed{color:var(--color-danger);font-weight:var(--fw-bold)}@media (max-width: 767px){.card-track .tooltip-trigger:has(.timeline-event-card){flex:0 0 auto}.timeline-event-card{display:grid;grid-template-columns:auto auto;gap:2px var(--space-xs)}.card-main-icon{grid-column:1;grid-row:1;min-height:auto}.card-name{grid-column:2;grid-row:1;text-align:left;align-self:center}.card-subtitle{grid-column:1 / -1}.card-unit-section{grid-column:1 / -1;justify-self:center}.card-step-indicator{top:-5px;left:-5px;min-width:16px;height:16px;font-size:.6rem}.card-info-button-wrapper{top:-4px;right:-4px}.card-info-button{width:16px;height:16px;font-size:.6rem}}.card-info-button-wrapper{position:absolute;top:-6px;right:-6px;z-index:15}.card-info-button{width:18px;height:18px;border-radius:50%;background:var(--color-bg-secondary);border:1px solid var(--color-border);color:var(--color-grey);font-size:var(--fs-sm);font-weight:var(--fw-bold);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0;line-height:1}.card-info-button:hover{background:var(--color-primary);color:var(--color-bg);border-color:var(--color-primary);transform:scale(1.1)}.action-tooltip{min-width:240px;max-width:340px;font-size:var(--fs-md)}.action-tooltip-header{background:linear-gradient(135deg,var(--color-bg-secondary) 0%,var(--color-bg-primary) 100%);border-bottom:1px solid var(--color-border);padding:10px 12px;margin:-8px -8px 0;border-radius:var(--radius-sm) var(--radius-sm) 0 0}.action-tooltip-title-row{display:flex;align-items:center;gap:var(--space-sm)}.action-tooltip-icon{flex-shrink:0}.action-tooltip-name{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--color-primary);flex:1}.action-tooltip-badge{font-size:var(--fs-sm);padding:2px 6px;border-radius:var(--radius-sm);font-weight:var(--fw-semibold)}.action-tooltip-badge.badge-counter{background:var(--color-warning-tint);color:var(--color-warning)}.action-tooltip-costs{display:flex;gap:var(--space-sm);margin-top:var(--space-xs)}.cost-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.cost-chip.cost-ap{background:var(--color-success-tint-30);color:var(--color-success-light)}.cost-chip.cost-energy{background:var(--color-secondary-tint-40);color:var(--color-secondary)}.action-tooltip-destination{padding:10px 0;border-bottom:1px solid var(--color-border)}.destination-info{display:flex;align-items:center;gap:var(--space-sm)}.destination-tile{width:36px;height:36px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;border:2px solid;position:relative;overflow:hidden}.destination-tile.team-own{background:linear-gradient(135deg,var(--team-tint-own) 0%,var(--color-success-tint-30) 100%);border-color:var(--color-success)}.destination-tile.team-ally{background:linear-gradient(135deg,var(--team-tint-ally) 0%,var(--color-info-tint) 100%);border-color:var(--color-info)}.destination-tile.team-enemy{background:linear-gradient(135deg,var(--team-tint-enemy) 0%,var(--color-danger-tint) 100%);border-color:var(--color-danger)}.destination-tile:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--color-border) 1px,transparent 1px),linear-gradient(var(--color-border) 1px,transparent 1px);background-size:12px 12px;opacity:.3}.destination-arrow{font-size:1.2rem;font-weight:var(--fw-bold);color:var(--color-text-light);z-index:1;text-shadow:0 1px 2px var(--overlay-50)}.destination-coords{display:flex;flex-direction:column}.coord-value{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--color-text-light);font-family:var(--font-mono, monospace)}.tooltip-section-label{display:block;font-size:var(--fs-sm);color:var(--color-grey);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-xs)}.action-tooltip-caster{padding:10px 0;border-bottom:1px solid var(--color-border)}.caster-info{display:flex;align-items:center;gap:var(--space-sm)}.caster-details{display:flex;flex-direction:column}.caster-name{font-weight:var(--fw-semibold);color:var(--color-text-light)}.caster-id{font-size:var(--fs-sm);color:var(--color-grey)}.action-tooltip-targets{padding-top:10px}.targets-list{display:flex;flex-direction:column;gap:var(--space-sm);max-height:200px;overflow-y:auto}.target-row{display:flex;flex-direction:column;gap:var(--space-xs);padding:8px;background:var(--color-bg-secondary);border-radius:var(--radius-sm);border-left:3px solid var(--color-success)}.target-row.target-failed{border-left-color:var(--color-grey);opacity:.85}.target-row.target-died{border-left-color:var(--color-danger);background:var(--color-danger-tint)}.target-identity{display:flex;align-items:center;gap:var(--space-sm)}.target-info{display:flex;align-items:baseline;gap:var(--space-xs)}.target-name{font-weight:var(--fw-medium);color:var(--color-text-light)}.target-id{font-size:var(--fs-sm);color:var(--color-grey)}.target-results{display:flex;flex-direction:column;gap:4px;padding-left:32px}.target-stat-changes{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.stat-change{display:inline-flex;align-items:center;gap:2px;padding:2px 6px;border-radius:var(--radius-sm);font-weight:var(--fw-semibold);font-size:var(--fs-md)}.stat-change.stat-positive{background:var(--color-success-tint-30);color:var(--color-success-light)}.stat-change.stat-negative{background:var(--color-danger-tint);color:var(--color-danger)}.target-failure{margin-top:2px}.failure-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:var(--color-bg-primary);border:1px solid var(--color-grey);border-radius:var(--radius-sm);color:var(--color-grey);font-size:var(--fs-sm);font-style:italic}.target-effects{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-top:2px}.effect-applied-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:var(--color-tertiary-tint-25);border-radius:var(--radius-sm);color:var(--color-tertiary-light);font-size:var(--fs-sm)}.target-death{margin-top:2px}.death-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:var(--color-danger-tint);border-radius:var(--radius-sm);color:var(--color-danger);font-weight:var(--fw-semibold);font-size:var(--fs-sm)}.target-success{margin-top:2px}.success-badge{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:var(--color-success-tint-30);border-radius:50%;color:var(--color-success-light);font-weight:var(--fw-bold);font-size:var(--fs-md)}.effect-tooltip{min-width:240px;max-width:340px;font-size:var(--fs-md)}.effect-tooltip-header-redesigned{background:linear-gradient(135deg,var(--color-tertiary-tint-15) 0%,var(--color-bg-primary) 100%);border-bottom:1px solid var(--color-border);padding:10px 12px;margin:-8px -8px 0;border-radius:var(--radius-sm) var(--radius-sm) 0 0}.effect-tooltip-title-row{display:flex;align-items:center;gap:var(--space-sm)}.effect-tooltip-icon-large{font-size:1.4rem;flex-shrink:0}.effect-tooltip-name-large{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--color-tertiary-light);flex:1}.effect-tooltip-badge{font-size:var(--fs-sm);padding:2px 6px;border-radius:var(--radius-sm);font-weight:var(--fw-semibold)}.effect-tooltip-badge.badge-applied{background:var(--color-success-tint-30);color:var(--color-success-light)}.effect-tooltip-badge.badge-expired{background:var(--color-danger-tint);color:var(--color-danger)}.effect-tooltip-badge.badge-tick{background:var(--color-secondary-tint-40);color:var(--color-secondary)}.effect-tooltip-meta{display:flex;gap:var(--space-sm);margin-top:var(--space-xs)}.duration-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--fs-sm);font-weight:var(--fw-semibold);background:var(--color-bg-secondary);color:var(--color-grey)}.effect-tooltip-unit-turn{padding:10px 0;border-bottom:1px solid var(--color-border)}.turn-unit-info{display:flex;align-items:center;gap:var(--space-sm)}.turn-unit-details{display:flex;flex-direction:column}.turn-unit-name{font-weight:var(--fw-semibold);color:var(--color-text-light)}.turn-unit-id{font-size:var(--fs-sm);color:var(--color-grey)}.effect-tooltip-source{padding:10px 0;border-bottom:1px solid var(--color-border)}.source-info{display:flex;align-items:center;gap:var(--space-sm)}.source-details{display:flex;flex-direction:column}.source-name{font-weight:var(--fw-semibold);color:var(--color-text-light)}.source-id{font-size:var(--fs-sm);color:var(--color-grey)}.effect-tooltip-targets{padding-top:10px}.target-effects-removed{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-top:2px}.effect-removed-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:var(--color-danger-tint);border-radius:var(--radius-sm);color:var(--color-danger);font-size:var(--fs-sm)}.bottom-drawer-panel .footer-panel-container{animation:cinematic-panel-enter .4s ease-out}@keyframes cinematic-panel-enter{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.bottom-drawer-panel .card-track .timeline-event-card{animation:card-slide-in .3s ease-out backwards}.bottom-drawer-panel .card-track .timeline-event-card:nth-child(1){animation-delay:50ms}.bottom-drawer-panel .card-track .timeline-event-card:nth-child(2){animation-delay:.1s}.bottom-drawer-panel .card-track .timeline-event-card:nth-child(3){animation-delay:.15s}.bottom-drawer-panel .card-track .timeline-event-card:nth-child(4){animation-delay:.2s}.bottom-drawer-panel .card-track .timeline-event-card:nth-child(5){animation-delay:.25s}.bottom-drawer-panel .card-track .timeline-event-card:nth-child(6){animation-delay:.3s}.bottom-drawer-panel .card-track .timeline-event-card:nth-child(n+7){animation-delay:.35s}@keyframes card-slide-in{0%{opacity:0;transform:translate(-15px) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}.bottom-drawer-content{position:relative;display:flex;flex-direction:column;height:100%;background:var(--color-bg);border:1px solid var(--color-primary);border-bottom:none}.bottom-drawer-header{position:absolute;bottom:100%;left:0;z-index:1;background:var(--color-bg);display:flex;align-items:center;gap:var(--space-md);border-radius:0 var(--radius-sm) 0 0;border-top:1px solid var(--color-primary);border-right:1px solid var(--color-primary)}.bottom-drawer-title{display:inline-block;padding:var(--space-xs) var(--space-md);font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--color-text, #f5e6d3);text-transform:uppercase;letter-spacing:.05em;animation:title-slide-in .3s ease-out}@keyframes title-slide-in{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.cinematic-header-controls{display:flex;align-items:center;gap:var(--space-sm);padding-right:var(--space-sm);animation:controls-fade-in .4s ease-out}@keyframes controls-fade-in{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.cinematic-header-controls .speed-text{font-size:var(--fs-md);color:var(--color-secondary);font-weight:var(--fw-semibold);min-width:28px;text-align:right}.cinematic-header-controls .play-btn{width:64px;height:36px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm)}.bottom-drawer-main{display:flex;flex:1;min-height:0}.bottom-drawer-tabs{display:flex;flex-direction:column;gap:var(--space-xs);padding:var(--space-xs);background:var(--color-border, var(--color-bg-primary));border-right:1px solid var(--color-grey)}.bottom-drawer-tab{display:flex;align-items:center;justify-content:center;padding:var(--space-sm);background:transparent;border:none;color:var(--text-secondary, var(--color-grey));cursor:pointer;border-radius:var(--radius-sm);transition:all .2s ease}.bottom-drawer-tab:hover{background:var(--color-bg-primary);color:var(--text-color, #f5e6d3)}.bottom-drawer-tab.active{background:var(--color-bg-primary);color:var(--color-primary)}.bottom-drawer-panel{flex:1;min-width:0;overflow:hidden}.bottom-drawer-panel .footer-panel-container{display:flex;flex-direction:column;height:100%}.bottom-drawer-panel .horizontal-slider-wrapper{flex:1;display:flex;flex-direction:column;min-height:0}.bottom-drawer-panel .horizontal-slider-track{flex-shrink:0;min-height:10px}@media (max-width: 1023px){.bottom-drawer-tab{padding:var(--space-xs)}.bottom-drawer-tabs{padding:2px;gap:2px}}@media (max-width: 767px){.bottom-drawer-main{flex-direction:column}.bottom-drawer-tabs{flex-direction:row;border-right:none;border-bottom:1px solid var(--color-grey);justify-content:flex-start;padding:2px var(--space-xs);gap:var(--space-xs)}.bottom-drawer-tab{padding:4px 8px;flex:0}.bottom-drawer-panel{min-height:0;flex:1}.bottom-drawer-panel .horizontal-slider-track{height:8px;min-height:8px}.bottom-drawer-title{font-size:var(--fs-md);padding:var(--space-xs) var(--space-sm)}.cinematic-header-controls .play-btn{width:48px;height:28px}}@media (max-width: 479px){.bottom-drawer-tabs{padding:1px 2px;gap:2px}.bottom-drawer-tab{padding:3px 6px}.bottom-drawer-title{font-size:.75rem}.bottom-drawer-panel .horizontal-slider-track{height:6px;min-height:6px}.cinematic-header-controls .slider-input--mini,.cinematic-header-controls .speed-text{display:none}}.critical-error-banner{position:fixed;top:0;left:0;right:0;z-index:9999;display:flex;align-items:center;gap:1rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,var(--color-danger) 0%,var(--color-danger-dark) 100%);border-bottom:2px solid var(--color-danger-dark);box-shadow:0 4px 20px var(--color-danger-tint-50);color:var(--color-text-light);font-family:var(--font-body, sans-serif);animation:slideDown .3s ease-out}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.critical-error-banner__icon{font-size:1.5rem;flex-shrink:0}.critical-error-banner__content{flex:1;display:flex;flex-direction:column;gap:.25rem}.critical-error-banner__title{font-family:var(--font-heading, serif);font-size:1.1rem;font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.05em}Pte .critical-error-banner__message{font-size:var(--fs-lg)}.critical-error-banner__source{font-size:--fs-small;font-style:italic}.critical-error-banner__refresh-btn{flex-shrink:0;padding:.5rem 1.25rem;background:var(--glass-20);border:1px solid var(--glass-50);border-radius:var(--radius-sm);color:var(--color-text-light);font-family:var(--font-body, sans-serif);font-size:.9rem;font-weight:var(--fw-semibold);cursor:pointer;transition:all .2s ease}.critical-error-banner__refresh-btn:hover{background:var(--glass-30);border-color:var(--glass-60);transform:translateY(-1px)}.critical-error-banner__refresh-btn:active{transform:translateY(0)}.standby-overlay{position:fixed;inset:0;z-index:9998;background:var(--overlay-30);pointer-events:all;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.critical-error-banner{flex-wrap:wrap;padding:.5rem 1rem;gap:.5rem}.critical-error-banner__content{min-width:0;flex-basis:calc(100% - 3rem)}.critical-error-banner__refresh-btn{width:100%;margin-top:.25rem}}.game-view{display:flex;flex-direction:column;width:100vw;height:100vh;overflow:hidden;background-color:var(--color-bg)}.game-view--standby .game-area{pointer-events:none;filter:grayscale(30%) brightness(.8)}.game-area{flex:1;position:relative;overflow:hidden;min-height:0}.map-area{position:absolute;top:0;left:var(--drawer-toggle-size, 28px);right:var(--drawer-toggle-size, 28px);bottom:var(--drawer-toggle-size, 28px);overflow:auto;z-index:1;transition:left var(--drawer-transition, .3s ease-in-out),right var(--drawer-transition, .3s ease-in-out),bottom var(--drawer-transition, .3s ease-in-out)}.map-area--left-open{left:calc(var(--drawer-width, 270px) + var(--drawer-toggle-size, 28px))}.map-area--right-open{right:calc(var(--drawer-width, 270px) + var(--drawer-toggle-size, 28px))}.map-area--bottom-open{bottom:calc(var(--drawer-height-bottom, 200px) + var(--drawer-toggle-size, 28px))}.unit-icon.in-map{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.unit-icon.in-list{position:relative;transform:none;top:auto;left:auto;margin:0 8px 0 0}@media (max-width: 767px){.map-area{left:0;right:0;bottom:0}.map-area--left-open{left:0}.map-area--right-open{right:0}.map-area--bottom-open{bottom:0}}.shop-stat-display{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.35rem .6rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);cursor:pointer;transition:all .2s ease;min-width:60px}.shop-stat-display:hover{transform:translateY(-1px);box-shadow:0 2px 8px var(--overlay-30)}.shop-stat-icon{display:flex;align-items:center;justify-content:center;color:inherit;flex-shrink:0}.shop-stat-icon svg{width:14px;height:14px}.shop-stat-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:inherit;opacity:.9}.shop-stat-value{font-size:var(--fs-md);font-weight:var(--fw-bold);color:inherit}.shop-stat-display.stat-high{border-color:var(--color-rating-high);color:var(--color-rating-high);background:var(--color-rating-high-tint-10)}.shop-stat-display.stat-high:hover{border-color:var(--color-rating-high);background:var(--color-rating-high-tint-20);box-shadow:0 2px 8px var(--color-rating-high-tint-30)}.shop-stat-display.stat-avg{border-color:var(--color-rating-avg);color:var(--color-rating-avg);background:var(--color-rating-avg-tint-10)}.shop-stat-display.stat-avg:hover{border-color:var(--color-rating-avg);background:var(--color-rating-avg-tint-20);box-shadow:0 2px 8px var(--color-rating-avg-tint-30)}.shop-stat-display.stat-low{border-color:var(--color-rating-low);color:var(--color-rating-low);background:var(--color-rating-low-tint-10)}.shop-stat-display.stat-low:hover{border-color:var(--color-rating-low);background:var(--color-rating-low-tint-20);box-shadow:0 2px 8px var(--color-rating-low-tint-30)}.unit-image{display:flex;align-items:center;justify-content:center;border-radius:25%;font-weight:var(--fw-bold);color:#fff;-webkit-user-select:none;user-select:none;border:none;transition:all .2s ease;position:relative;overflow:visible}.unit-image.size-small{width:48px;height:48px;font-size:24px}.unit-image.size-medium{width:60px;height:60px;font-size:30px}.unit-image.size-big{width:70px;height:70px;font-size:35px}.unit-image.size-extrabig{width:100px;height:100px;font-size:50px}.unit-image.size-extrabig-responsive{width:100px;height:100px;font-size:50px;max-width:100%}.unit-image-sprite{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:cover;border-radius:50%;filter:brightness(1.8) contrast(1.1) saturate(1.1)}.unit-image-letter{font-family:var(--font-family, "Arial", sans-serif);font-weight:var(--fw-bold);text-shadow:1px 1px 2px var(--overlay-80)}.xc-action-chip{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:var(--fs-md);font-weight:var(--fw-medium);cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none}.xc-action-chip:hover:not(.xc-action-chip--disabled):not(.xc-action-chip--dropdown-open){background:var(--color-bg);border-color:var(--color-secondary);color:var(--color-text)}.xc-action-chip:focus-visible{outline:2px solid var(--color-secondary);outline-offset:2px}.xc-action-chip.xc-action-chip--active:not(.xc-action-chip--dropdown-open){background:var(--color-secondary-tint-40);border-color:var(--color-secondary);color:var(--color-secondary)}.xc-action-chip.xc-action-chip--active:not(.xc-action-chip--dropdown-open):hover:not(.xc-action-chip--disabled){background:var(--color-bg);color:var(--color-secondary-light)}.xc-action-chip.xc-action-chip--disabled{opacity:.5;cursor:not-allowed}.xc-action-chip__icon{flex-shrink:0}.xc-action-chip__label{display:none}@media (min-width: 600px){.xc-action-chip__label{display:inline}}.xc-action-chip__chevron{flex-shrink:0;transition:transform .2s ease}.xc-action-chip__chevron.xc-action-chip__chevron--open{transform:rotate(180deg)}.xc-action-chip__action{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:1px solid var(--color-secondary);border-radius:var(--radius-xs);color:var(--color-secondary);cursor:pointer;transition:all .2s ease;margin-left:var(--space-xs)}.xc-action-chip__action:hover:not(:disabled){background:var(--color-secondary-tint-40);color:var(--color-text)}.xc-action-chip__action:disabled{opacity:.5;cursor:not-allowed}.xc-action-chip__dropdown{position:absolute;top:100%;left:0;z-index:100;min-width:220px;background:var(--color-bg);border:1px solid var(--color-secondary);border-radius:0 0 var(--space-sm) var(--space-sm);margin-top:-1px;overflow:hidden;box-shadow:0 4px 12px var(--overlay-40)}.xc-action-chip__option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--space-sm) var(--space-md);background:transparent;border:none;border-bottom:1px solid var(--color-border);color:var(--color-text);font-size:var(--fs-md);text-align:left;cursor:pointer;transition:background .15s ease}.xc-action-chip__option:first-child{margin-top:1px}.xc-action-chip__option:last-child{border-bottom:none}.xc-action-chip__option:hover,.xc-action-chip__option--selected,.xc-action-chip__option--selected:hover{background:var(--color-secondary-tint-40)}.xc-action-chip__option-content{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.xc-action-chip__option-label{font-weight:var(--fw-medium);color:var(--color-text)}.xc-action-chip__option-description{font-size:var(--fs-xs);color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.xc-action-chip__option-check{color:var(--color-secondary);font-weight:var(--fw-bold);margin-left:var(--space-sm);flex-shrink:0}.xc-action-chip--dropdown-open{position:relative;z-index:101;background:var(--color-bg);border-color:var(--color-secondary);border-radius:var(--radius-sm) var(--radius-sm) 0 0;border-bottom-color:transparent}@media (max-width: 480px){.xc-action-chip__dropdown{min-width:180px}}.xc-units-preview{width:100%;padding:var(--space-sm);background:transparent;min-height:48px}.xc-units-preview__empty,.xc-units-preview__loading{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);font-size:var(--fs-md);color:var(--color-text);font-style:italic;text-align:center;padding:var(--space-sm) 0}.xc-units-preview__loading{color:var(--color-secondary-light)}.xc-units-preview__list{display:flex;flex-wrap:wrap;gap:var(--space-sm);justify-content:flex-start;align-items:center}.xc-units-preview__unit{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:var(--color-secondary-tint);border:1px solid var(--color-secondary-tint-40);border-radius:var(--radius-xs);flex:1 1 auto;min-width:100px;max-width:150px}.xc-units-preview__unit .unit-image{width:28px;height:28px}.xc-units-preview__count{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--color-text)}.xc-units-preview__name{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--color-text);text-transform:capitalize}.xc-units-preview__remove{display:flex;align-items:center;justify-content:center;width:24px;height:24px;min-width:24px;min-height:24px;padding:0;background:var(--color-danger);border:none;border-radius:var(--radius-xs);color:var(--color-bg);cursor:pointer;transition:all .15s ease;margin-left:var(--space-xs)}.xc-units-preview__remove:hover:not(:disabled){background:var(--color-danger-dark);transform:scale(1.1)}.xc-units-preview__remove:active:not(:disabled){transform:scale(.95)}.xc-units-preview__remove:disabled{opacity:.5;cursor:not-allowed}.xc-units-preview__remove svg{width:14px;height:14px}.modal-content.custom-templates-modal{min-width:400px;max-width:500px}.custom-templates-modal .custom-templates-content{display:flex;flex-direction:column;gap:var(--space-md)}.custom-templates-modal .modal-title-counter{margin-left:var(--space-sm);font-size:var(--fs-md);font-weight:var(--fw-semibold);color:var(--color-secondary);background:var(--color-secondary-tint);padding:var(--space-xxs) var(--space-sm);border-radius:var(--radius-xs);vertical-align:baseline}.custom-templates-modal .custom-templates-list{display:flex;flex-direction:column;gap:var(--space-sm);max-height:300px;overflow-y:auto;padding-right:var(--space-xs)}.custom-templates-modal .custom-templates-list::-webkit-scrollbar{width:8px}.custom-templates-modal .custom-templates-list::-webkit-scrollbar-track{background:var(--color-bg);border-radius:var(--radius-sm)}.custom-templates-modal .custom-templates-list::-webkit-scrollbar-thumb{background:var(--color-secondary-tint-40);border-radius:var(--radius-sm)}.custom-templates-modal .custom-templates-list::-webkit-scrollbar-thumb:hover{background:var(--color-secondary)}.custom-templates-modal .templates-empty{text-align:center;padding:var(--space-lg);color:var(--color-text);font-style:italic}.custom-templates-modal .custom-template-item{display:flex;flex-direction:column;gap:var(--space-xs);padding:var(--space-sm);background:var(--color-secondary-tint);border:1px solid var(--color-border);border-radius:var(--radius-sm);transition:border-color .2s ease}.custom-templates-modal .custom-template-item:hover{border-color:var(--color-secondary-tint-40)}.custom-templates-modal .template-header{display:flex;align-items:center;gap:var(--space-sm);width:100%}.custom-templates-modal .template-name{flex:1;display:flex;align-items:center;gap:var(--space-xs);background:transparent;border:none;padding:var(--space-xs) 0;font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--color-text);text-align:left;cursor:pointer;transition:color .2s ease;min-width:0}.custom-templates-modal .template-name:hover:not(:disabled){color:var(--color-secondary)}.custom-templates-modal .template-name:disabled{cursor:not-allowed;opacity:.6}.custom-templates-modal .template-edit-icon{flex-shrink:0;color:var(--color-text);transition:color .2s ease}.custom-templates-modal .template-name:hover:not(:disabled) .template-edit-icon{color:var(--color-secondary)}.custom-templates-modal .template-name-input{flex:1;background:var(--color-bg);border:1px solid var(--color-secondary);border-radius:var(--radius-xs);padding:var(--space-xs) var(--space-sm);font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--color-text);min-width:0}.custom-templates-modal .template-name-input:focus{outline:none;box-shadow:0 0 5px var(--color-secondary)}.custom-templates-modal .template-units{display:flex}.custom-templates-modal .template-units .units-preview{padding:0;background:transparent}.custom-templates-modal .template-units .units-preview-list{justify-content:flex-start}.custom-templates-modal .template-actions{display:flex;gap:var(--space-xs);flex-shrink:0}.custom-templates-modal .section-title{font-size:var(--fs-md);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text);margin-bottom:var(--space-sm)}.custom-templates-modal .current-roster-section{padding-bottom:var(--space-md);border-bottom:1px solid var(--color-border)}.custom-templates-modal .current-roster-empty{color:var(--color-text);font-style:italic;text-align:center;padding:var(--space-md)}.custom-templates-modal .current-roster-card--saved{border-color:var(--color-success);background:var(--color-success-tint-05)}.custom-templates-modal .template-saved-message{display:flex;align-items:center;gap:var(--space-sm);color:var(--color-success);font-size:var(--fs-lg)}.custom-templates-modal .template-saved-icon{flex-shrink:0}.custom-templates-modal .template-saved-message strong{color:var(--color-text)}.custom-templates-modal .limit-message{color:var(--color-warning);font-size:var(--fs-md);text-align:center;margin-top:var(--space-sm)}.custom-templates-modal .saved-templates-section{display:flex;flex-direction:column}.custom-templates-modal .template-name-wrapper{display:flex;align-items:center;gap:var(--space-xs);flex:1;min-width:0}@media (max-width: 480px){.modal-content.custom-templates-modal{min-width:auto;width:95vw}.custom-templates-modal .template-header{flex-wrap:wrap}.custom-templates-modal .template-name{flex-basis:100%}.custom-templates-modal .template-actions{margin-left:auto;padding-top:var(--space-sm);border-top:1px solid var(--color-border)}}.loadout-selector{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--color-secondary-tint);border:1px solid var(--color-border);border-radius:var(--radius-sm);flex-wrap:wrap}.loadout-selector-label{display:flex;align-items:center;gap:var(--space-sm);flex-shrink:0;width:100%}.loadout-label-title{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--color-text);text-transform:uppercase;letter-spacing:.05em}.loadout-label-name{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--color-secondary)}.loadout-header-row{display:flex;align-items:center;justify-content:space-between;width:100%;padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-sm)}.loadout-header-left,.loadout-header-right{display:flex;align-items:center;gap:var(--space-sm)}.loadout-units-badge{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);color:var(--color-secondary);font-weight:var(--fw-semibold);font-size:var(--fs-md)}.loadout-money{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);color:var(--color-primary-bright);font-weight:var(--fw-semibold);font-size:var(--fs-md)}.loadout-tabs-row{display:flex;align-items:center;justify-content:space-between;width:100%;gap:var(--space-sm)}.loadout-tabs{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xs);width:100%}.loadout-tab-wrapper{position:relative;display:flex;align-items:center;justify-content:center;gap:var(--space-xxs)}.loadout-tab-wrapper .xc-action-chip{flex:1;justify-content:center}.loadout-units-row{display:flex;align-items:center;gap:var(--space-md);width:100%}.loadout-selector .xc-units-preview{flex:1}.loadout-selector .xc-units-preview__list{justify-content:flex-start}.loadout-shop-btn{display:flex;align-items:center;justify-content:center;padding:var(--space-sm);background:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-sm);color:var(--color-bg);cursor:pointer;transition:all .2s ease;flex-shrink:0}.loadout-shop-btn:hover{background:var(--color-primary-light);border-color:var(--color-primary-light)}@media (max-width: 480px){.loadout-selector{flex-direction:column;align-items:stretch}.loadout-tabs{justify-content:center}}.modal-content.bot-config-modal{max-width:620px}.bot-config-modal .bot-config-content{display:flex;flex-direction:column;gap:var(--space-lg)}.bot-config-modal .bot-config-readonly-banner{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--color-border);border:1px solid var(--color-text);border-radius:var(--radius-sm);color:var(--color-text);font-size:var(--fs-md)}.bot-config-modal .bot-config-section{display:flex;flex-direction:column;gap:var(--space-md)}.bot-config-modal .bot-config-section-title{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--color-secondary);margin:0;text-transform:uppercase;letter-spacing:.05em}.bot-config-modal .bot-config-options{display:flex;flex-direction:column;gap:var(--space-sm)}.bot-config-modal .bot-config-options.bot-config-options--grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)}.bot-config-modal .bot-config-option{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--color-secondary-tint);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease;text-align:center;font-family:inherit;color:inherit}.bot-config-modal .bot-config-option:hover{background:var(--color-secondary-tint);border-color:var(--color-secondary-tint-40)}.bot-config-modal .bot-config-option.bot-config-option--selected{background:var(--color-secondary-tint-40);border-color:var(--color-secondary)}.bot-config-modal .bot-config-option-content{display:flex;flex-direction:column;gap:var(--space-xs)}.bot-config-modal .bot-config-option-label{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--color-text)}.bot-config-modal .bot-config-option-description{font-size:var(--fs-sm);color:var(--color-text);line-height:1.4}.bot-config-modal .bot-config-option.bot-config-option--selected .bot-config-option-label{color:var(--color-secondary)}.bot-config-modal .bot-config-option-check{position:absolute;top:var(--space-sm);right:var(--space-sm);display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--color-secondary);border-radius:50%;color:var(--color-bg)}.bot-config-modal .bot-config-option.bot-config-option--disabled{cursor:not-allowed;opacity:.7}.bot-config-modal .bot-config-option.bot-config-option--disabled:hover{background:var(--color-secondary-tint);border-color:var(--color-border)}.bot-config-modal .bot-config-option.bot-config-option--disabled.bot-config-option--selected:hover{background:var(--color-secondary-tint-40);border-color:var(--color-secondary)}.bot-config-modal .bot-config-option.bot-config-option--saving{pointer-events:none;opacity:.7}.bot-config-modal .spawn-preview-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:2px;width:72px;height:72px;padding:4px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-xs)}.bot-config-modal .spawn-preview-cell{background:var(--color-border);border-radius:var(--radius-xs);transition:background-color .2s ease}.bot-config-modal .spawn-preview-cell.spawn-preview-cell--active{background:var(--color-danger)}.bot-config-modal .bot-config-option.bot-config-option--selected .spawn-preview-cell.spawn-preview-cell--active{background:var(--color-secondary)}@media (max-width: 520px){.modal-content.bot-config-modal{max-width:100%}.bot-config-modal .bot-config-options.bot-config-options--grid{grid-template-columns:1fr}}.modal-content.human-config-modal{max-width:620px}.human-config-modal .human-config-content{display:flex;flex-direction:column;gap:var(--space-lg)}.human-config-modal .human-config-description{font-size:var(--fs-md);color:var(--color-text);line-height:1.5;margin:0}.human-config-modal .human-config-current{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--color-secondary-tint);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.human-config-modal .human-config-current .current-label{font-size:var(--fs-md);font-weight:var(--fw-semibold);color:var(--color-text)}.human-config-modal .human-config-current .current-value{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--color-secondary)}.human-config-modal .human-config-actions{display:flex;justify-content:flex-end;gap:var(--space-md);margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--color-border)}.human-config-modal .human-config-actions .button{min-width:100px}@media (max-width: 480px){.modal-content.human-config-modal{max-width:100%}.human-config-modal .human-config-current{flex-direction:column;align-items:flex-start}.human-config-modal .human-config-actions{flex-direction:column}.human-config-modal .human-config-actions .button{width:100%}}.lobby-container{background-color:transparent}.lobby-container.lobby-main{flex:1;padding:2rem}.lobby-header{text-align:center;margin-bottom:2rem}.lobby-title{color:var(--color-secondary);margin-bottom:.5rem}.lobby-header p{color:var(--color-text-light);font-size:var(--fs-xl);font-style:italic}.teams-container{display:flex;justify-content:center;gap:1rem;align-items:stretch}.team-column{flex:1;background:var(--overlay-70);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:1.5rem;border:2px solid var(--color-primary-tint-40);border-radius:var(--radius-lg);min-width:300px;box-shadow:0 8px 32px var(--overlay-40)}.team-column h3{text-align:center;margin-top:0;margin-bottom:1.5rem;color:var(--color-text);border-bottom:1px solid var(--color-border);padding-bottom:1rem}.player-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.player-card{display:flex;flex-direction:column;gap:.5rem;background-color:var(--color-border);padding:.75rem 1rem;border-radius:var(--radius-sm);border-left:4px solid var(--color-text);transition:all .2s ease}.player-card-main{display:flex;align-items:center;gap:1rem;width:100%}.player-card.ready{border-left-color:var(--color-secondary);background-color:var(--color-secondary-tint)}.player-icon{color:var(--color-text);flex-shrink:0}.player-card.ready .player-icon{color:var(--color-secondary)}.player-card.player-card--bot{cursor:pointer}.player-card.player-card--bot:hover{background-color:var(--color-secondary-tint-40);border-left-color:var(--color-primary)}.player-card.player-card--bot:hover .bot-settings-icon{color:var(--color-primary)}.bot-settings-icon,.player-settings-icon{color:var(--color-text);flex-shrink:0;transition:color .2s ease}.player-card.player-card--current{cursor:pointer}.player-card.player-card--current:hover{background-color:var(--color-secondary-tint-40);border-left-color:var(--color-primary)}.player-card.player-card--current:hover .player-settings-icon{color:var(--color-primary)}.player-name{font-weight:var(--fw-medium);flex-grow:1}.you-tag{font-size:.8rem;color:var(--color-grey);font-style:italic;margin-right:.5rem}.player-card-strategy{display:flex;align-items:center;gap:.5rem}.strategy-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-sm);font-size:.7rem;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.5px;background-color:var(--color-secondary-tint-40);border:1px solid var(--color-secondary-tint-40);color:var(--color-secondary)}.strategy-badge.strategy-badge--secondary{background-color:var(--color-bg);border-color:var(--color-grey);color:var(--color-grey)}.player-roster-icons{display:flex;flex-wrap:wrap;gap:.35rem}.roster-unit-icon{position:relative;width:32px;height:32px;border-radius:var(--radius-sm);background-color:var(--color-bg);border:1px solid var(--color-text);display:flex;align-items:center;justify-content:center;overflow:hidden}.roster-unit-icon .unit-image{width:100%;height:100%;min-width:unset;min-height:unset}.roster-unit-icon .unit-image img,.roster-unit-icon .unit-image .unit-image-sprite{width:100%;height:100%;object-fit:cover}.roster-unit-icon .unit-image .unit-image-letter{font-size:1.2rem;line-height:1}.roster-unit-count{position:absolute;bottom:-4px;right:-4px;font-size:.7rem;font-weight:var(--fw-bold);color:var(--color-secondary);padding:1px 4px;border-radius:var(--radius-sm);line-height:1.3;min-width:14px;text-align:center}.vs-separator{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:5rem}.vs-text{font-family:var(--font-heading);font-size:2.5rem;font-weight:var(--fw-extrabold);color:var(--color-text);transform:rotate(-10deg)}.lobby-actions{text-align:center;margin-top:3rem;display:flex;justify-content:center;gap:1rem}.waiting-message{text-align:center;margin-top:1rem;color:var(--color-text)}.starting-countdown{text-align:center;margin-top:4rem}.starting-countdown h1{color:var(--color-secondary)}.countdown-overlay{position:fixed;inset:0;background-color:var(--color-bg-primary)d9;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.countdown-box{text-align:center;color:var(--color-text)}.countdown-icon{color:var(--color-secondary);margin-bottom:1rem;animation:pulse 1.5s infinite}.countdown-box h1{font-family:var(--font-heading);font-size:3rem;color:var(--color-secondary);margin-bottom:.5rem}.countdown-timer{font-family:var(--font-heading);font-size:5rem;font-weight:var(--fw-extrabold);color:var(--color-text-light)}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.lobby-main-container{display:flex;gap:2rem;padding:2rem}.status-badge{display:inline-block;padding:4px 8px;border-radius:var(--radius-sm);font-size:.75rem;font-weight:var(--fw-semibold);text-transform:uppercase}.status-badge.status-ready{background-color:var(--color-secondary-tint-40);border:1px solid var(--color-secondary-tint-40);color:var(--color-secondary)}.status-badge.status-not-ready{background-color:var(--color-danger-tint);border:1px solid var(--color-danger-tint-50);color:var(--color-danger)}.status-badge.status-no-units{background-color:var(--color-danger-tint);border:1px solid var(--color-danger-tint-50);color:var(--color-danger);text-transform:uppercase}.main-container--lobby{max-width:100%;padding:0}.lobby-tab-content{background:var(--overlay-30);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.shop-container{display:flex;gap:2rem;padding:2rem 0}.shop-left-panel{flex:0 0 40%;display:flex;flex-direction:column;gap:.5rem;background:var(--overlay-70);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:2px solid var(--color-primary-tint-40);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:0 8px 32px var(--overlay-40)}.main-container--lobby .shop-items,.main-container--lobby .shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:var(--space-xs);margin-bottom:var(--space-lg)}.main-container--lobby .shop-item{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.4rem;display:flex;flex-direction:column;align-items:center;gap:.25rem;cursor:pointer;transition:all .3s ease;position:relative}.main-container--lobby .shop-item .shop-item-content{display:flex;flex-direction:column;align-items:center;flex-grow:1}.main-container--lobby .shop-item:hover:not(.selected){border-color:var(--color-secondary);background:var(--color-secondary-tint);transform:translateY(-2px);box-shadow:0 4px 12px var(--color-secondary-tint-40)}.main-container--lobby .shop-item.selected{border-color:var(--color-primary);background:var(--color-primary-tint);box-shadow:0 0 20px var(--color-primary-tint-40)}.main-container--lobby .shop-item .unit-image{width:40px;height:40px;border:none;box-shadow:none}.main-container--lobby .shop-item-name{font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--color-text);text-align:center;line-height:1.2}.main-container--lobby .shop-item-price{display:flex;align-items:center;gap:.15rem;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--color-primary)}.main-container--lobby .shop-item-price.shop-item-price--expensive{color:var(--color-danger)}.main-container--lobby .shop-item-buy-button{width:100%;padding:.25rem .5rem;background:var(--color-primary);color:var(--color-text-dark);border:none;border-radius:var(--radius-sm);font-weight:var(--fw-bold);font-size:var(--fs-xs);cursor:pointer;transition:all .2s ease;text-transform:uppercase}.main-container--lobby .shop-item-buy-button:hover{background:var(--color-primary-light);transform:scale(1.05)}.main-container--lobby .shop-item-buy-container{width:100%;display:flex;flex-direction:column;align-items:center;gap:.15rem}.main-container--lobby .purchased-units-section{background:var(--overlay-50);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.5rem}.main-container--lobby .purchased-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;color:var(--color-text)}.main-container--lobby .purchased-header h4{margin:0;font-size:1.1rem}.main-container--lobby .purchased-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 .4rem;background:var(--color-secondary);color:var(--color-text-dark);border-radius:var(--radius-lg);font-size:.75rem;font-weight:var(--fw-bold)}.main-container--lobby .purchased-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:var(--space-sm)}.main-container--lobby .purchased-item{background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-xs);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-xs);transition:all .2s ease;position:relative;min-width:0;overflow:hidden}.main-container--lobby .purchased-item.refunding{opacity:.6;transform:scale(.98)}.main-container--lobby .purchased-item .unit-image{width:clamp(36px,40%,48px);height:auto;aspect-ratio:1;border:none;box-shadow:none;flex-shrink:0}.main-container--lobby .purchased-item-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);text-align:center;color:var(--color-text);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;width:100%;line-height:1.3;max-width:100%}.main-container--lobby .purchased-item-remove-button{width:100%;padding:var(--space-xs) var(--space-sm);background:var(--color-danger-dark);color:var(--color-text-light);border:none;border-radius:var(--radius-sm);font-weight:var(--fw-bold);font-size:var(--fs-sm);cursor:pointer;transition:all .2s ease;text-transform:uppercase;margin-top:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.main-container--lobby .purchased-item-remove-button:hover:not(:disabled){background:var(--color-danger-dark);transform:scale(1.05)}.main-container--lobby .purchased-item-remove-button:disabled{background:var(--color-border);color:var(--color-text);cursor:not-allowed;opacity:.7}.main-container--lobby .purchased-empty{grid-column:1 / -1;text-align:center;padding:2rem;color:var(--color-text);font-style:italic;font-size:.9rem}.main-container--lobby .unit-info-panel{flex:1 1 60%;min-width:0;display:flex;flex-direction:column;gap:var(--space-lg);background:var(--overlay-70);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:2px solid var(--color-primary-tint-40);border-radius:var(--radius-lg);box-shadow:0 8px 32px var(--overlay-40);padding:var(--space-lg);position:relative;container-type:inline-size;container-name:unit-info}.main-container--lobby .unit-info-header{display:flex;flex-direction:row;align-items:flex-start;gap:var(--space-md);padding-bottom:var(--space-md);border-bottom:2px solid var(--color-border);position:relative}.main-container--lobby .unit-info-icon{flex-shrink:0;display:inline-block}.main-container--lobby .unit-info-text{flex:1;display:flex;flex-direction:column;gap:var(--space-xs)}.main-container--lobby .unit-info-text h3{font-size:1.5rem;font-weight:var(--fw-bold);color:var(--color-primary);margin:0;margin-top:1rem;letter-spacing:.5px}.main-container--lobby .unit-info-text p{font-size:.9rem;color:var(--color-text);margin:0;line-height:1.4}.main-container--lobby .unit-costs-badges{position:absolute;top:0;right:2rem;display:flex;gap:var(--space-sm);z-index:10}.main-container--lobby .cost-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .6rem;border-radius:0 0 16px 16px;font-size:.8rem;font-weight:var(--fw-bold);border:2px solid;box-shadow:0 2px 8px var(--overlay-30)}.main-container--lobby .cost-badge-gold,.main-container--lobby .cost-badge-gold[data-affordable=true]{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary) 100%);border-color:var(--color-primary);color:var(--color-bg)}.main-container--lobby .cost-badge-gold[data-affordable=false]{opacity:.6;filter:grayscale(.4);border-width:3px;background:linear-gradient(135deg,var(--color-drawer) 0%,var(--color-drawer-dark) 100%);border-color:var(--color-warning);box-shadow:0 2px 8px var(--color-danger) 66}.main-container--lobby .cost-badge-energy{background:linear-gradient(135deg,var(--color-secondary-tint-40),var(--color-secondary-tint-40));border-color:var(--color-secondary);color:var(--color-secondary)}.main-container--lobby .unit-combat-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:2rem}.main-container--lobby .combat-stat-card{background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:var(--radius-md);padding:1.25rem;display:flex;flex-direction:column;gap:.75rem}.main-container--lobby .combat-stat-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.main-container--lobby .combat-stat-label{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:var(--fw-semibold);color:var(--color-text);text-transform:uppercase;letter-spacing:.5px}.main-container--lobby .combat-stat-value{font-size:1.6rem;font-weight:var(--fw-bold);line-height:1}.main-container--lobby .combat-stat-bar{width:100%;height:6px;background:var(--color-stat-bar-bg);border-radius:var(--radius-sm);overflow:hidden;position:relative}.main-container--lobby .combat-stat-bar-fill{height:100%;background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-primary-light) 100%);border-radius:var(--radius-sm);transition:width .3s ease}.main-container--lobby .stat-high,.main-container--lobby .stat-item-combat.stat-high .stat-icon,.main-container--lobby .stat-item-combat.stat-high .stat-combat-label,.main-container--lobby .stat-item-combat.stat-high .stat-combat-value{color:var(--color-success-light)}.main-container--lobby .core-stat-item.stat-high .core-stat-label,.main-container--lobby .core-stat-item.stat-high .core-stat-label svg,.main-container--lobby .core-stat-item.stat-high .core-stat-value{color:var(--color-success-light)}.main-container--lobby .stat-item-combat.stat-high,.main-container--lobby .core-stat-item.stat-high{border-color:var(--color-success-light)}.main-container--lobby .stat-avg,.main-container--lobby .stat-item-combat.stat-avg .stat-icon,.main-container--lobby .stat-item-combat.stat-avg .stat-combat-label,.main-container--lobby .stat-item-combat.stat-avg .stat-combat-value{color:var(--color-primary-bright)}.main-container--lobby .core-stat-item.stat-avg .core-stat-label,.main-container--lobby .core-stat-item.stat-avg .core-stat-label svg,.main-container--lobby .core-stat-item.stat-avg .core-stat-value{color:var(--color-primary-bright)}.main-container--lobby .stat-item-combat.stat-avg,.main-container--lobby .core-stat-item.stat-avg{border-color:var(--color-primary-bright)}.main-container--lobby .stat-low,.main-container--lobby .stat-item-combat.stat-low .stat-icon,.main-container--lobby .stat-item-combat.stat-low .stat-combat-label,.main-container--lobby .stat-item-combat.stat-low .stat-combat-value{color:var(--color-stat-bar-low)}.main-container--lobby .core-stat-item.stat-low .core-stat-label,.main-container--lobby .core-stat-item.stat-low .core-stat-label svg,.main-container--lobby .core-stat-item.stat-low .core-stat-value{color:var(--color-stat-bar-low)}.main-container--lobby .stat-item-combat.stat-low,.main-container--lobby .core-stat-item.stat-low{border-color:var(--color-stat-bar-low)}.main-container--lobby .combat-stat-card[data-stat=hp] .combat-stat-bar-fill{background:linear-gradient(90deg,var(--color-success-light) 0%,var(--color-success-light) 100%)}.main-container--lobby .combat-stat-card[data-stat=armor] .combat-stat-bar-fill{background:linear-gradient(90deg,var(--color-grey) 0%,var(--color-grey-dark) 100%)}.main-container--lobby .combat-stat-card[data-stat=will] .combat-stat-bar-fill{background:linear-gradient(90deg,var(--color-tertiary) 0%,var(--color-tertiary) 100%)}@media (max-width: 1199px){.main-container--lobby .unit-combat-stats{grid-template-columns:1fr}}.main-container--lobby .combat-stats-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-md)}.main-container--lobby .combat-column{background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--space-sm)}.main-container--lobby .combat-column-header{grid-column:1 / -1}.main-container--lobby .combat-column-header{display:flex;align-items:center;gap:var(--space-xs);font-size:1rem;font-weight:var(--fw-bold);color:var(--color-text);margin:0 0 var(--space-sm) 0;text-transform:uppercase;letter-spacing:.5px;padding-bottom:var(--space-xs);border-bottom:1px solid var(--color-border)}.main-container--lobby .stat-item-combat{background:var(--overlay-40);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-xs)}.main-container--lobby .stat-combat-label{display:flex;align-items:center;gap:var(--space-xs);font-size:.85rem;font-weight:var(--fw-semibold);color:var(--color-text);text-transform:capitalize;margin-bottom:var(--space-xs)}.main-container--lobby .stat-combat-value-row{display:flex;align-items:center;gap:var(--space-sm)}.main-container--lobby .stat-combat-value-row .stat-icon{color:var(--color-text);flex-shrink:0;display:flex;align-items:center;justify-content:center}.main-container--lobby .stat-combat-value-row .stat-combat-value{font-size:1.4rem;font-weight:var(--fw-bold);line-height:1;min-width:30px}.main-container--lobby .stat-combat-value-row .stat-bar{flex:1}.main-container--lobby .unit-core-stats{background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-lg);margin-bottom:var(--space-xl)}.main-container--lobby .unit-info-section h4{margin-bottom:var(--space-md);display:flex;align-items:center;gap:var(--space-sm)}.main-container--lobby .core-stats-title{font-size:1.1rem;font-weight:var(--fw-bold);color:var(--color-primary);margin-bottom:var(--space-md);text-transform:uppercase;letter-spacing:1px}.main-container--lobby .core-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:var(--space-sm)}.main-container--lobby .core-stat-item{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-md);background:var(--overlay-40);border:1px solid var(--color-border);border-radius:var(--radius-sm);transition:all .2s ease}.main-container--lobby .core-stat-item:hover:not(.stat-high):not(.stat-avg):not(.stat-low){border-color:var(--color-primary);background:var(--color-primary-tint)}.main-container--lobby .core-stat-label{display:flex;align-items:center;gap:var(--space-xs);font-size:.85rem;font-weight:var(--fw-semibold);color:var(--color-text);text-transform:uppercase;letter-spacing:.5px}.main-container--lobby .core-stat-label svg{flex-shrink:0;display:flex;align-items:center;justify-content:center;vertical-align:middle}.main-container--lobby .core-stat-value{font-size:1.4rem;font-weight:var(--fw-bold)}.main-container--lobby .core-stat-header{display:flex;align-items:center;gap:var(--space-xs)}.main-container--lobby .unit-actions-section{background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-lg);margin-bottom:var(--space-xl)}.main-container--lobby .actions-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md)}.main-container--lobby .actions-title{font-size:1.1rem;font-weight:var(--fw-bold);color:var(--color-primary);text-transform:uppercase;letter-spacing:1px}.main-container--lobby .action-tabs{display:flex;gap:.5rem;margin-bottom:1rem;border-bottom:2px solid var(--color-border);padding-bottom:.5rem}.main-container--lobby .action-tab{padding:.5rem 1rem;background:transparent;border:none;border-bottom:3px solid transparent;color:var(--color-text);font-size:.9rem;font-weight:var(--fw-semibold);cursor:pointer;transition:all .2s ease;text-transform:capitalize}.main-container--lobby .action-tab:hover{color:var(--color-primary);background:var(--color-primary-tint)}.main-container--lobby .action-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);background:var(--color-primary-tint)}.main-container--lobby .actions-list{display:grid;grid-template-columns:1fr;gap:1rem}.main-container--lobby .action-card{background:linear-gradient(135deg,var(--color-bg) 0%,var(--color-bg) 100%);border:2px solid var(--color-border);display:flex;flex-direction:column;transition:all .2s ease}.main-container--lobby .action-card:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 12px var(--color-primary-tint-40)}.main-container--lobby .action-header{display:flex;align-items:flex-start;gap:var(--space-sm);background:var(--color-secondary-tint);border-left:4px solid var(--color-primary);padding:var(--space-sm)}.main-container--lobby .action-icon{background:var(--color-secondary-tint);color:var(--color-secondary)}.main-container--lobby .action-header-info{flex:1;display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.main-container--lobby .action-name{color:var(--color-primary);font-size:var(--fs-lg);font-weight:var(--fw-bold);flex:1}.main-container--lobby .action-content{padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-md)}.main-container--lobby .action-damage-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .6rem;border-radius:var(--radius-lg);font-size:.85rem;font-weight:var(--fw-bold);border:1.5px solid;background:var(--color-bg);flex-shrink:0}.main-container--lobby .action-damage-tag[data-type=psi]{color:var(--color-damage-psi-text);border-color:var(--color-damage-psi-border);background:var(--color-damage-psi-bg-dark)}.main-container--lobby .action-damage-tag[data-type=strength]{color:var(--color-damage-str-text);border-color:var(--color-damage-str-border);background:var(--color-damage-str-bg-dark)}.main-container--lobby .action-damage-tag[data-type=true]{color:var(--color-damage-true-text);border-color:var(--color-damage-true-border);background:var(--color-damage-true-bg-dark)}.main-container--lobby .action-stats{display:flex;flex-wrap:wrap;gap:.55rem}.main-container--lobby .action-stat{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .55rem;background:var(--color-secondary-tint);border:1px solid var(--color-secondary-tint-40);border-radius:var(--radius-sm);font-size:.85rem;color:var(--color-text);transition:all .2s ease}.main-container--lobby .action-stat:hover{border-color:var(--color-secondary);background:var(--color-secondary-tint);box-shadow:0 0 8px var(--color-secondary-tint-40)}.main-container--lobby .action-stat strong{color:var(--color-text);font-weight:var(--fw-bold)}.main-container--lobby .action-description{font-size:.9rem;color:var(--color-text);line-height:1.5;padding-top:.75rem;border-top:1px solid var(--color-border)}.shop-container .unit-info-panel h4{color:var(--color-text);font-size:var(--fs-lg);font-weight:var(--fw-bold);margin-bottom:var(--space-md);display:flex;align-items:center;gap:var(--space-sm)}.main-container--lobby .effects-section .section-title{font-size:1.3rem;font-weight:var(--fw-bold);color:var(--color-secondary);margin-bottom:var(--space-md);display:flex;align-items:center;gap:var(--space-sm)}.main-container--lobby .effects-grid{display:grid;grid-template-columns:1fr;gap:1rem}.main-container--lobby .effect-card{background:linear-gradient(135deg,var(--color-bg) 0%,var(--color-bg) 100%);border:2px solid var(--color-border);border-radius:var(--radius-md);display:flex;flex-direction:column;transition:all .2s ease}.main-container--lobby .effect-card:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 12px var(--color-primary-tint-40)}.main-container--lobby .effect-header{display:flex;align-items:center;gap:var(--space-sm);background:var(--color-secondary-tint);border-left:4px solid var(--color-primary);padding:var(--space-sm)}.main-container--lobby .effect-icon{background:var(--color-secondary-tint);color:var(--color-secondary)}.main-container--lobby .effect-name{color:var(--color-primary);font-size:var(--fs-lg);font-weight:var(--fw-bold);flex:1}.main-container--lobby .effect-content{padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-md)}.main-container--lobby .effect-badge{padding:.25rem .75rem;background:var(--color-secondary-tint);border:1px solid var(--color-secondary);border-radius:var(--radius-lg);font-size:.75rem;font-weight:var(--fw-bold);color:var(--color-secondary);text-transform:uppercase;letter-spacing:.5px}.main-container--lobby .effect-description{font-size:.9rem;color:var(--color-text);line-height:1.5;margin:0}.main-container--lobby .shop-item.selected{border-color:var(--color-primary);background:var(--color-primary-tint);box-shadow:0 0 20px var(--color-primary-tint-40);transform:scale(1.02)}.main-container--lobby .shop-item.disabled{opacity:.5;cursor:not-allowed;filter:grayscale(.6)}.main-container--lobby .shop-item.disabled:hover{border-color:var(--color-border);background:var(--color-bg-secondary);transform:none}.main-container--lobby .shop-item-buy-button:disabled{background:var(--color-border);color:var(--color-text);cursor:not-allowed;opacity:.5}.main-container--lobby .shop-item-buy-button:disabled:hover{background:var(--color-border);transform:none}.main-container--lobby .stat-bar{width:100%;height:6px;background:var(--color-stat-bar-bg);border-radius:var(--radius-sm);overflow:hidden;margin-top:.5rem}.main-container--lobby .stat-bar-fill{height:100%;border-radius:var(--radius-sm);transition:width .3s ease}.main-container--lobby .stat-high .stat-bar-fill{background:linear-gradient(90deg,var(--color-success-light),var(--color-success))}.main-container--lobby .stat-avg .stat-bar-fill{background:linear-gradient(90deg,var(--color-primary-bright),var(--color-warning))}.main-container--lobby .stat-low .stat-bar-fill{background:linear-gradient(90deg,var(--color-stat-bar-low),var(--color-danger-dark))}.main-container--lobby .stat-bar-horizontal{width:100%;height:4px;background:var(--color-stat-bar-bg);border-radius:var(--radius-sm);overflow:hidden;margin-top:var(--space-sm)}.main-container--lobby .stat-bar-horizontal .stat-bar-fill{height:100%;border-radius:var(--radius-sm);transition:width .3s ease}.main-container--lobby .core-stat-item.stat-high .stat-bar-fill{background:linear-gradient(90deg,var(--color-success-light),var(--color-success))}.main-container--lobby .core-stat-item.stat-avg .stat-bar-fill{background:linear-gradient(90deg,var(--color-primary-bright),var(--color-warning))}.main-container--lobby .core-stat-item.stat-low .stat-bar-fill{background:linear-gradient(90deg,var(--color-stat-bar-low),var(--color-danger-dark))}@media (max-width: 1199px){.main-container--lobby .combat-column{padding:var(--space-sm);gap:var(--space-xs)}}@media (max-width: 767px){.teams-container{flex-direction:column;align-items:center}.team-column{width:100%;max-width:500px}.vs-separator{width:100%;margin:1rem 0}.vs-text{transform:rotate(0);font-size:2rem}.lobby-container.lobby-main{padding:2rem 0}.main-container--lobby .shop-container{flex-direction:column;padding:2rem 0px;gap:1rem}.main-container--lobby .shop-left-panel{flex:none;width:100%;min-width:auto;max-width:100%;gap:2rem}.main-container--lobby .unit-info-panel{flex:none;width:100%}.main-container--lobby .actions-list{max-height:none;overflow-y:visible}.main-container--lobby .unit-costs-badges-corner{position:static;justify-content:center;margin-bottom:1rem}}@media (max-width: 479px){.main-container--lobby .combat-column{grid-template-columns:1fr}.main-container--lobby .action-tabs{flex-wrap:wrap}}.main-container--lobby .shop-stats-grid{display:flex;flex-direction:column;gap:var(--space-sm);margin-bottom:var(--space-md)}.main-container--lobby .shop-stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:var(--space-xs)}.main-container--lobby .shop-stats-row .shop-stat-display{justify-content:center}.main-container--lobby .shop-abilities-section{margin-bottom:var(--space-md)}.main-container--lobby .shop-abilities-header{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--color-text);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-sm)}.main-container--lobby .shop-abilities-list{display:flex;flex-direction:column;gap:var(--space-xs)}.main-container--lobby .shop-ability-item{border:1px solid var(--color-border);border-left:3px solid transparent;border-radius:var(--radius-sm);overflow:hidden;background:var(--color-bg)}.main-container--lobby .shop-ability-item.shop-ability-item--action{border-left-color:var(--color-primary)}.main-container--lobby .shop-ability-item.shop-ability-item--action.expanded{border-color:var(--color-primary)}.main-container--lobby .shop-ability-item.shop-ability-item--effect{border-left-color:var(--color-secondary)}.main-container--lobby .shop-ability-item.shop-ability-item--effect.expanded{border-color:var(--color-secondary)}.main-container--lobby .shop-ability-header{width:100%;display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);background:transparent;border:none;cursor:pointer;transition:background .15s ease,padding .15s ease}.main-container--lobby .shop-ability-header:hover{background:var(--color-secondary-tint)}.main-container--lobby .shop-ability-item.expanded .shop-ability-header{background:var(--color-secondary-tint);padding:var(--space-sm) var(--space-md)}.main-container--lobby .shop-ability-chevron{display:flex;align-items:center;color:var(--color-text);flex-shrink:0}.main-container--lobby .shop-ability-icon{display:flex;align-items:center;color:var(--color-secondary);flex-shrink:0}.main-container--lobby .shop-ability-name{font-size:var(--fs-md);font-weight:var(--fw-semibold);color:var(--color-text);white-space:nowrap;flex-shrink:0}.main-container--lobby .shop-ability-desc{flex:1;font-size:var(--fs-sm);color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;min-width:0}.main-container--lobby .shop-ability-item.expanded .shop-ability-desc{white-space:normal;overflow:visible;text-overflow:unset}.main-container--lobby .shop-ability-damage{display:inline-flex;align-items:center;gap:2px;padding:2px 6px;border-radius:var(--radius-md);font-size:var(--fs-xs);font-weight:var(--fw-bold);flex-shrink:0;margin-left:auto}.main-container--lobby .shop-ability-damage[data-type=strength]{background:var(--color-damage-str-bg-dark);color:var(--color-damage-str-text);border:1px solid var(--color-damage-str-border)}.main-container--lobby .shop-ability-damage[data-type=psi]{background:var(--color-damage-psi-bg-dark);color:var(--color-damage-psi-text);border:1px solid var(--color-damage-psi-border)}.main-container--lobby .shop-ability-damage[data-type=true]{background:var(--color-damage-true-bg-dark);color:var(--color-damage-true-text);border:1px solid var(--color-damage-true-border)}.main-container--lobby .shop-ability-badge{padding:2px 6px;background:var(--color-secondary-tint);border:1px solid var(--color-secondary);border-radius:var(--radius-md);font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--color-secondary);text-transform:uppercase;flex-shrink:0;margin-left:auto}.main-container--lobby .shop-ability-details{padding:var(--space-sm);background:var(--color-bg);border-top:1px solid var(--color-border)}.main-container--lobby .shop-ability-stats{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-bottom:var(--space-sm)}.main-container--lobby .shop-ability-stat{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:var(--color-secondary-tint);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--color-text)}.main-container--lobby .shop-ability-stat.shop-ability-aoe{border-color:var(--color-danger);color:var(--color-danger)}.main-container--lobby .shop-ability-stat.shop-ability-aoe.beneficial{border-color:var(--color-success-light);color:var(--color-success-light)}.main-container--lobby .shop-ability-damage-info{font-size:var(--fs-sm);color:var(--color-text);margin-bottom:var(--space-sm);padding:var(--space-xs) var(--space-sm);background:var(--color-secondary-tint);border-radius:var(--radius-sm)}.main-container--lobby .shop-ability-full-desc{font-size:var(--fs-sm);color:var(--color-text);line-height:1.5;margin:0}@container unit-info (max-width: 450px){.main-container--lobby .unit-info-icon .unit-image.size-extrabig-responsive{width:70px;height:70px;font-size:35px}.main-container--lobby .cost-badge{padding:.2rem .5rem;font-size:.75rem}.main-container--lobby .shop-ability-header{flex-wrap:wrap;row-gap:var(--space-xs)}.main-container--lobby .shop-ability-desc{order:5;flex:0 0 100%;width:100%;padding-left:calc(12px + var(--space-sm) + 14px + var(--space-sm))}.main-container--lobby .shop-ability-damage,.main-container--lobby .shop-ability-badge{margin-left:0}}.main-container--lobby .shop-actions-list{display:flex;flex-direction:column;gap:var(--space-xs)}.main-container--lobby .shop-action-item{border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden;background:var(--color-bg)}.main-container--lobby .shop-action-item.expanded{border-color:var(--color-primary);border-left:3px solid var(--color-primary)}.main-container--lobby .shop-action-header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--space-xs) var(--space-sm);background:var(--color-secondary-tint);border:none;border-left:3px solid var(--color-primary);cursor:pointer;transition:all .15s ease}.main-container--lobby .shop-action-header:hover{background:var(--color-secondary-tint)}.main-container--lobby .shop-action-item.expanded .shop-action-header{background:var(--color-secondary-tint);border-bottom:1px solid var(--color-border);border-left:none}.main-container--lobby .shop-action-main{display:flex;align-items:center;gap:var(--space-sm);flex:1;min-width:0}.main-container--lobby .shop-action-chevron{display:flex;align-items:center;color:var(--color-text);flex-shrink:0}.main-container--lobby .shop-action-icon{display:flex;align-items:center;color:var(--color-secondary);flex-shrink:0}.main-container--lobby .shop-action-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.main-container--lobby .shop-action-damage{display:inline-flex;align-items:center;gap:2px;padding:2px 6px;border-radius:var(--radius-md);font-size:var(--fs-xs);font-weight:var(--fw-bold);flex-shrink:0}.main-container--lobby .shop-action-damage[data-type=strength]{background:var(--color-damage-str-bg-dark);color:var(--color-damage-str-text);border:1px solid var(--color-damage-str-border)}.main-container--lobby .shop-action-damage[data-type=psi]{background:var(--color-damage-psi-bg-dark);color:var(--color-damage-psi-text);border:1px solid var(--color-damage-psi-border)}.main-container--lobby .shop-action-damage[data-type=true]{background:var(--color-damage-true-bg-dark);color:var(--color-damage-true-text);border:1px solid var(--color-damage-true-border)}.main-container--lobby .shop-action-stats{display:flex;align-items:center;gap:var(--space-xs);flex-shrink:0}.main-container--lobby .shop-action-stat{display:inline-flex;align-items:center;gap:2px;padding:2px 6px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--color-text)}.main-container--lobby .shop-action-details{padding:var(--space-sm);background:var(--color-bg)}.main-container--lobby .shop-action-all-stats{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-bottom:var(--space-sm)}.main-container--lobby .shop-action-detail-stat{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:var(--color-secondary-tint);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--color-text)}.main-container--lobby .shop-action-damage-info{font-size:var(--fs-sm);color:var(--color-text);margin-bottom:var(--space-sm);padding:var(--space-xs) var(--space-sm);background:var(--color-secondary-tint);border-radius:var(--radius-sm)}.main-container--lobby .shop-action-description{font-size:var(--fs-sm);color:var(--color-text);line-height:1.5;margin:0}.main-container--lobby .shop-effects-list{display:flex;flex-direction:column;gap:var(--space-xs)}.main-container--lobby .shop-effect-item{border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden;background:var(--color-bg)}.main-container--lobby .shop-effect-item.expanded{border-color:var(--color-secondary);border-left:3px solid var(--color-secondary)}.main-container--lobby .shop-effect-header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--space-xs) var(--space-sm);background:var(--color-secondary-tint);border:none;border-left:3px solid var(--color-secondary);cursor:pointer;transition:all .15s ease}.main-container--lobby .shop-effect-header:hover{background:var(--color-secondary-tint)}.main-container--lobby .shop-effect-item.expanded .shop-effect-header{background:var(--color-secondary-tint);border-bottom:1px solid var(--color-border);border-left:none}.main-container--lobby .shop-effect-main{display:flex;align-items:center;gap:var(--space-sm);flex:1}.main-container--lobby .shop-effect-chevron{display:flex;align-items:center;color:var(--color-text);flex-shrink:0}.main-container--lobby .shop-effect-icon{display:flex;align-items:center;color:var(--color-secondary);flex-shrink:0}.main-container--lobby .shop-effect-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--color-text);flex:1}.main-container--lobby .shop-effect-badge{padding:2px 8px;background:var(--color-secondary-tint);border:1px solid var(--color-secondary);border-radius:var(--radius-md);font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--color-secondary);text-transform:uppercase}.main-container--lobby .shop-effect-details{padding:var(--space-sm);background:var(--color-bg)}.main-container--lobby .shop-effect-description{font-size:var(--fs-sm);color:var(--color-text);line-height:1.5;margin:0}.main-container--betaquest{padding-bottom:var(--space-xl)}.betaquest-container{max-width:800px;margin:0 auto;padding:var(--space-xl) var(--space-lg) var(--space-lg)}.betaquest-header{display:flex;align-items:center;justify-content:center;gap:var(--space-md);margin-bottom:var(--space-xl)}.betaquest-header h1{color:var(--color-primary);margin:0}.version-badge{background:var(--color-secondary-tint-40);color:var(--color-secondary);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--fs-md);font-weight:var(--fw-bold);border:1px solid var(--color-secondary-tint-40)}.betaquest-form{display:flex;flex-direction:column;gap:var(--space-lg)}.panel.betaquest-section{padding:var(--space-xl)}.panel.betaquest-section h3{color:var(--color-primary);margin:0 0 var(--space-xs) 0;font-size:var(--fs-lg)}.section-hint{color:var(--color-grey);font-size:var(--fs-md);margin:0 0 var(--space-md) 0}.unit-ranking-list{display:flex;flex-direction:column;gap:var(--space-sm)}.sortable-unit-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:var(--radius-sm);cursor:grab;transition:all .2s ease;-webkit-user-select:none;user-select:none}.sortable-unit-item:hover{border-color:var(--color-primary);box-shadow:0 0 10px var(--color-primary)}.sortable-unit-item.dragging{cursor:grabbing;border-color:var(--color-secondary);box-shadow:0 0 20px var(--color-secondary)}.unit-rank{min-width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--color-primary);color:var(--color-text-dark);border-radius:50%;font-weight:var(--fw-bold);font-size:var(--fs-md)}.drag-handle{color:var(--color-grey);flex-shrink:0}.betaquest-container .unit-image{width:48px;height:48px;border-radius:var(--radius-sm);object-fit:cover;border:2px solid var(--color-border)}.unit-info{display:flex;flex-direction:column;gap:2px}.unit-name{font-weight:var(--fw-bold);color:var(--color-text-light)}.unit-role{font-size:var(--fs-sm);color:var(--color-grey)}.combo-builder{display:flex;flex-direction:column;gap:var(--space-lg)}.saved-combos h4,.combo-creator h4{color:var(--color-text-light);margin:0 0 var(--space-sm) 0;font-size:var(--fs-lg)}.saved-combo{position:relative;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-md);margin-bottom:var(--space-sm)}.combo-units{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-bottom:var(--space-sm)}.combo-unit-badge{display:flex;align-items:center;gap:var(--space-xs);background:var(--color-secondary-tint-40);border:1px solid var(--color-secondary-tint-40);border-radius:var(--radius-sm);padding:var(--space-xs) var(--space-sm)}.combo-unit-badge img{width:24px;height:24px;border-radius:var(--radius-sm)}.combo-unit-badge span{font-size:var(--fs-sm);color:var(--color-secondary);font-weight:var(--fw-medium)}.combo-reason{color:var(--color-grey);font-size:var(--fs-md);margin:0;font-style:italic}.remove-combo-btn{position:absolute;top:var(--space-sm);right:var(--space-sm);background:var(--color-danger-dark);color:#fff;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:.7;transition:opacity .2s}.remove-combo-btn:hover{opacity:1}.combo-hint{color:var(--color-grey);font-size:var(--fs-sm);margin:0 0 var(--space-md) 0}.unit-selector{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:var(--space-sm)}.unit-select-btn{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);padding:var(--space-sm);background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease}.unit-select-btn img{width:48px;height:48px;border-radius:var(--radius-sm);object-fit:cover}.unit-select-btn span{font-size:var(--fs-sm);color:var(--color-text)}.unit-select-btn:hover{border-color:var(--color-primary)}.unit-select-btn.selected{border-color:var(--color-secondary);background:var(--color-secondary-tint-40);box-shadow:0 0 10px var(--color-secondary)}.unit-select-btn.selected span{color:var(--color-secondary);font-weight:var(--fw-bold)}.selected-preview{background:var(--color-secondary-tint);border:1px solid var(--color-secondary-tint-40);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);color:var(--color-secondary);font-weight:var(--fw-medium)}.reason-input{display:flex;flex-direction:column;gap:var(--space-sm);margin-top:var(--space-md)}.reason-input textarea{min-height:80px;resize:vertical}.add-combo-btn{align-self:flex-start;display:flex;align-items:center;gap:var(--space-sm)}.star-rating{display:flex;gap:var(--space-xs);margin-bottom:var(--space-sm)}.star-btn{background:transparent;border:none;cursor:pointer;padding:var(--space-xs);transition:transform .2s ease;color:var(--color-grey)}.star-btn:hover{transform:scale(1.2)}.star-btn.active{color:var(--color-primary)}.rating-label{color:var(--color-grey);font-size:var(--fs-md);margin:0;min-height:1.5em}.submit-betaquest-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);font-size:var(--fs-lg);margin-top:var(--space-md)}.betaquest-container .betaquest-success{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-xl);gap:var(--space-lg);margin-top:var(--space-xl)}.betaquest-container .betaquest-success svg{color:var(--color-success)}.betaquest-container .betaquest-success h2{color:var(--color-primary);margin:0}.betaquest-container .betaquest-success p{color:var(--color-grey);margin:0}@media (max-width: 767px){.betaquest-container,.panel.betaquest-section{padding:var(--space-md)}.unit-selector{grid-template-columns:repeat(4,1fr)}.unit-select-btn img{width:36px;height:36px}.sortable-unit-item{padding:var(--space-xs) var(--space-sm)}.betaquest-container .unit-image{width:36px;height:36px}.unit-rank{min-width:28px;height:28px;font-size:var(--fs-sm)}}@media (max-width: 479px){.unit-selector{grid-template-columns:repeat(4,1fr);gap:var(--space-xs)}.unit-select-btn{padding:var(--space-xs)}.unit-select-btn img{width:32px;height:32px}.unit-select-btn span{font-size:var(--fs-xs)}}.main-container--credits{padding-top:var(--space-lg);padding-bottom:var(--space-xl)}.credits-container{max-width:800px;margin:0 auto}.credits-header{text-align:center;margin-bottom:var(--space-xl);padding-bottom:var(--space-lg);border-bottom:1px solid var(--color-border)}.credits-logo{display:block;width:120px;height:auto;margin:0 auto var(--space-md) auto;filter:drop-shadow(0 0 20px var(--color-primary));animation:logo-float 3s ease-in-out infinite}@keyframes logo-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.credits-header h1{font-size:var(--fs-3xl);color:var(--color-primary);text-shadow:0 0 20px var(--color-primary);margin:0}.credits-section{margin-bottom:var(--space-xl)}.credits-section-title{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--fs-xl);color:var(--color-secondary);margin-bottom:var(--space-lg);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border)}.credits-section-title svg{color:var(--color-primary)}.credits-cards{display:grid;gap:var(--space-md)}.credits-cards--thanks{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.credit-card{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--overlay-30);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all .3s ease}.credit-card:hover{border-color:var(--color-primary);box-shadow:0 0 20px var(--color-primary),inset 0 0 30px var(--color-primary-tint);transform:translateY(-2px)}.credit-card-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;min-width:56px;background:radial-gradient(circle at 30% 30%,var(--color-primary),var(--color-bg-tertiary));border-radius:50%;color:var(--color-bg);box-shadow:0 0 15px var(--color-primary)}.credit-card--thanks .credit-card-icon{width:48px;height:48px;min-width:48px;background:radial-gradient(circle at 30% 30%,var(--color-secondary),var(--color-bg));box-shadow:0 0 15px var(--color-secondary)}.credit-card-content{flex:1;min-width:0}.credit-card-content h3{font-size:var(--fs-lg);color:var(--color-text-light);margin:0 0 var(--space-xs) 0;font-family:var(--font-heading)}.credit-role,.credit-description,.credit-contribution{font-size:var(--fs-md);color:var(--color-grey);margin:0}.credit-role{color:var(--color-primary)}.credit-contribution{color:var(--color-secondary);font-style:italic}.credit-link{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);background:transparent;border:1px solid var(--color-primary);border-radius:var(--radius-full);color:var(--color-primary);font-size:var(--fs-sm);font-weight:var(--fw-semibold);text-decoration:none;transition:all .2s ease;white-space:nowrap}.credit-link:hover{background:var(--color-primary);color:var(--color-bg);box-shadow:0 0 15px var(--color-primary)}.credit-card--thanks .credit-link{border-color:var(--color-secondary);color:var(--color-secondary)}.credit-card--thanks .credit-link:hover{background:var(--color-secondary);color:var(--color-bg);box-shadow:0 0 15px var(--color-secondary)}.credits-footer{text-align:center;margin-top:var(--space-xl);padding-top:var(--space-xl);border-top:1px solid var(--color-border)}.credits-footer p{display:flex;align-items:center;justify-content:center;gap:var(--space-xs);font-size:var(--fs-md);color:var(--color-grey);margin-bottom:var(--space-lg)}.credits-footer .heart-icon{color:var(--color-danger);animation:heartbeat 1.5s ease-in-out infinite}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.credits-footer .button{min-width:150px}@media (max-width: 767px){.credits-container{padding:var(--space-lg) var(--space-md)}.credit-card{flex-wrap:wrap;padding:var(--space-md)}.credit-card-icon{width:48px;height:48px;min-width:48px}.credit-card-content{flex:1 1 calc(100% - 64px)}.credit-link{width:100%;justify-content:center;margin-top:var(--space-sm)}.credits-cards--thanks{grid-template-columns:1fr}}.metadata-error-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem}.metadata-error-container{background:var(--glass-90);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-xl);padding:3rem 2.5rem;max-width:500px;text-align:center;box-shadow:0 20px 60px var(--overlay-30);animation:slideIn .5s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.metadata-error-container .error-icon{font-size:4rem;margin-bottom:1.5rem;animation:bounce 2s infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.metadata-error-container .error-title{font-size:2rem;font-weight:var(--fw-bold);color:var(--color-bg);margin-bottom:1rem}.metadata-error-container .error-message{font-size:1.1rem;color:var(--color-grey-dark);margin-bottom:2rem;line-height:1.6}.metadata-error-container .relogin-button{background:linear-gradient(135deg,var(--color-tertiary) 0%,var(--color-tertiary) 100%);color:#fff;border:none;padding:1rem 2.5rem;font-size:1.1rem;font-weight:var(--fw-semibold);border-radius:var(--radius-full);cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px var(--color-tertiary)}.metadata-error-container .relogin-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px var(--color-tertiary)}.metadata-error-container .relogin-button:active{transform:translateY(0)}.metadata-error-container .debug-hint{margin-top:2rem;font-size:.85rem;color:var(--color-grey);font-style:italic}@media (max-width: 600px){.metadata-error-container{padding:2rem 1.5rem}.metadata-error-container .error-title{font-size:1.5rem}.metadata-error-container .error-message{font-size:1rem}}.verify-email-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background-size:cover;background-position:center;background-repeat:no-repeat;position:relative;padding:var(--space-lg)}.verify-email-container:before{content:"";position:absolute;inset:0;background:var(--overlay-50);z-index:0}.verify-email-container>*{position:relative;z-index:1}.verify-email-logo{max-width:350px;width:100%;margin-bottom:var(--space-xl)}.verify-email-card{background:var(--color-border);border-radius:var(--radius-lg);padding:var(--space-2xl);max-width:480px;width:100%;text-align:center;border:2px solid var(--color-secondary-tint-40)}.verify-email-card--success{border-color:var(--color-success)}.verify-email-card--error{border-color:var(--color-danger-dark)}.verify-email-card--info{border-color:var(--color-secondary)}.verify-email-card--pending{border-color:var(--color-warning)}.verify-email-icon{margin-bottom:var(--space-lg)}.verify-email-card--success .verify-email-icon{color:var(--color-success)}.verify-email-card--error .verify-email-icon{color:var(--color-danger-dark)}.verify-email-card--info .verify-email-icon{color:var(--color-secondary)}.verify-email-card--pending .verify-email-icon{color:var(--color-warning)}.verify-email-title{font-size:var(--fs-xl);color:var(--color-text);margin:0 0 var(--space-md) 0}.verify-email-message{font-size:var(--fs-md);color:var(--color-grey);margin:0 0 var(--space-lg) 0;line-height:1.5}.verify-email-tips{background:var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);margin-bottom:var(--space-lg);text-align:left}.verify-email-tips p{font-size:var(--fs-sm);color:var(--color-text);margin:0 0 var(--space-sm) 0;font-weight:var(--fw-semibold)}.verify-email-tips ul{margin:0;padding-left:var(--space-lg);font-size:var(--fs-sm);color:var(--color-grey)}.verify-email-tips li{margin-bottom:var(--space-xs)}.verify-email-actions{display:flex;flex-direction:column;gap:var(--space-sm)}.verify-email-actions .button{width:100%;justify-content:center}.toggle{position:relative;width:48px;height:26px;background:var(--color-border);border:none;border-radius:var(--radius-xl);cursor:pointer;transition:background .2s ease;flex-shrink:0;padding:0}.toggle:hover:not(.toggle--disabled){background:var(--color-grey)}.toggle.toggle--active{background:var(--color-secondary)}.toggle.toggle--active:hover:not(.toggle--disabled){background:var(--color-secondary-hover, var(--color-secondary))}.toggle.toggle--disabled{opacity:.5;cursor:not-allowed}.toggle__thumb{position:absolute;top:3px;left:3px;width:20px;height:20px;background:var(--color-text);border-radius:50%;transition:transform .2s ease}.toggle.toggle--active .toggle__thumb{transform:translate(22px);background:var(--color-bg)}.toggle.toggle--small{width:36px;height:20px;border-radius:var(--radius-md)}.toggle.toggle--small .toggle__thumb{top:2px;left:2px;width:16px;height:16px}.toggle.toggle--small.toggle--active .toggle__thumb{transform:translate(16px)}.toggle.toggle--large{width:60px;height:32px;border-radius:var(--radius-xl)}.toggle.toggle--large .toggle__thumb{top:4px;left:4px;width:24px;height:24px}.toggle.toggle--large.toggle--active .toggle__thumb{transform:translate(28px)}.theme-stack-editor{display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-sm);background:var(--color-bg-secondary);border-radius:var(--radius-md);border:1px solid var(--color-border)}.theme-stack-editor .theme-stack-header{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--font-size-sm);font-weight:600;color:var(--color-text);padding-bottom:var(--space-xs);border-bottom:1px solid var(--color-border)}.theme-stack-editor .theme-stack-loading{animation:spin 1s linear infinite;color:var(--color-primary)}.theme-stack-editor .theme-stack-list{display:flex;flex-direction:column;gap:var(--space-xs)}.theme-stack-editor .theme-stack-item{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:grab;transition:all .15s ease}.theme-stack-editor .theme-stack-item:hover{border-color:var(--color-primary-tint-40);background:var(--color-bg-tertiary)}.theme-stack-editor .theme-stack-item.dragging{opacity:.5;border-color:var(--color-primary);background:var(--color-primary-tint)}.theme-stack-editor .theme-stack-grip{color:var(--color-grey);flex-shrink:0}.theme-stack-editor .theme-stack-colors{display:flex;gap:2px}.theme-stack-editor .theme-stack-color{width:12px;height:12px;border-radius:var(--radius-full);border:1px solid var(--glass-20)}.theme-stack-editor .theme-stack-name{flex:1;font-size:var(--font-size-sm);color:var(--color-text)}.theme-stack-editor .theme-stack-priority{font-size:var(--font-size-xs);color:var(--color-primary);font-weight:500}.theme-stack-editor .theme-stack-remove{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;background:transparent;color:var(--color-grey);cursor:pointer;border-radius:var(--radius-sm);transition:all .15s ease}.theme-stack-editor .theme-stack-remove:hover{color:var(--color-danger);background:var(--color-danger-tint)}.theme-stack-editor .theme-stack-divider{display:flex;align-items:center;gap:var(--space-sm);margin:var(--space-xs) 0}.theme-stack-editor .theme-stack-divider:before,.theme-stack-editor .theme-stack-divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.theme-stack-editor .theme-stack-divider span{font-size:var(--font-size-xs);color:var(--color-grey);text-transform:uppercase;letter-spacing:.5px}.theme-stack-editor .theme-stack-available{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.theme-stack-editor .theme-stack-add-btn{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:var(--color-bg-primary);border:1px dashed var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-text);cursor:pointer;transition:all .15s ease}.theme-stack-editor .theme-stack-add-btn:hover{border-color:var(--color-primary);border-style:solid;background:var(--color-primary-tint)}.theme-stack-editor .theme-stack-add-btn:disabled{opacity:.5;cursor:not-allowed}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.modal-content.config-modal{max-width:550px}.config-modal .config-section{display:flex;flex-direction:column;gap:var(--space-md)}.config-modal .config-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border)}.config-modal .config-row:last-child{border-bottom:none}.config-modal .config-label{display:flex;flex-direction:column;gap:var(--space-xs);color:var(--color-text);font-size:var(--fs-md)}.config-modal .config-label svg{display:inline;vertical-align:middle;margin-right:var(--space-xs)}.config-modal .config-sublabel{font-size:var(--fs-sm);color:var(--color-grey);font-weight:var(--fw-regular)}.config-modal .config-slider-group{display:flex;align-items:center;gap:var(--space-sm);min-width:180px}.config-modal .config-value{min-width:45px;text-align:right;color:var(--color-secondary);font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.config-modal .config-select{padding:var(--space-sm) var(--space-md);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:var(--fs-sm);cursor:pointer;min-width:120px}.config-modal .config-select:hover{border-color:var(--color-secondary)}.config-modal .config-select:focus{outline:none;border-color:var(--color-secondary)}.config-modal .config-hint{margin-top:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--color-bg);border-radius:var(--radius-sm);color:var(--color-grey);font-size:var(--fs-sm);font-style:italic}.config-modal .config-footer{display:flex;justify-content:space-between;align-items:center;gap:var(--space-md);margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--color-border)}.config-modal .config-saving{display:flex;align-items:center;gap:var(--space-xs);color:var(--color-grey);font-size:var(--fs-sm)}.config-modal .config-saving-icon{animation:spin 1s linear infinite}.config-modal .config-theme-mode-toggle{display:flex;justify-content:center;padding:0;border-bottom:none;margin-bottom:var(--space-sm)}.config-modal .config-theme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-md)}.config-modal .config-theme-card{display:flex;flex-direction:column;gap:var(--space-xs);padding:var(--space-md);background:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;text-align:left}.config-modal .config-theme-card:hover{border-color:var(--color-secondary);background:var(--color-bg)}.config-modal .config-theme-card.active{border-color:var(--color-primary);background:var(--color-primary-tint)}.config-modal .config-theme-card:disabled{opacity:.6;cursor:wait}.config-modal .config-theme-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm)}.config-modal .config-theme-preview{display:flex;gap:var(--space-xs);margin-bottom:var(--space-xs)}.config-modal .config-theme-color{width:16px;height:16px;border-radius:var(--radius-full);border:1px solid var(--glass-20)}.config-modal .config-theme-name{font-size:var(--fs-md);font-weight:var(--fw-semibold);color:var(--color-text)}.config-modal .config-theme-check{color:var(--color-primary)}.config-modal .config-theme-description{font-size:var(--fs-sm);color:var(--color-grey)}.config-modal .config-theme-loading{animation:spin 1s linear infinite;color:var(--color-secondary);margin-top:var(--space-xs)}@media (max-width: 480px){.modal-content.config-modal{max-width:100%}.config-modal .config-row{flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.config-modal .config-slider-group{width:100%}.config-modal .config-footer{flex-direction:column-reverse;gap:var(--space-sm)}.config-modal .config-footer .button{width:100%}.config-modal .config-theme-grid{grid-template-columns:1fr}}.asset-preload-bar{position:fixed;bottom:0;left:0;right:0;z-index:9999;padding:1rem;background:linear-gradient(to top,var(--color-bg) 0%,var(--overlay-95) 100%);border-top:1px solid var(--color-border)}.asset-preload-bar__content{max-width:600px;margin:0 auto;display:flex;flex-direction:column;gap:.5rem}.asset-preload-bar__label{font-size:.875rem;color:var(--color-text);text-align:center}.asset-preload-bar__track{height:8px;background:var(--color-bg);border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--color-border)}.asset-preload-bar__fill{height:100%;background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-primary-light) 50%,var(--color-primary) 100%);border-radius:var(--radius-sm);transition:width .3s ease-out;box-shadow:0 0 10px var(--color-primary-tint)}.asset-preload-bar__percentage{font-size:.75rem;color:var(--color-grey);text-align:center}*,*:before,*:after{box-sizing:border-box}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd,ul,ol{margin:0}ul,ol{padding:0;list-style:none}img,picture{max-width:100%;display:block}input,button,textarea,select{font:inherit}input,textarea,select{background-color:var(--color-bg-secondary);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);font-family:var(--font-body);font-size:var(--fs-lg);width:100%;box-sizing:border-box}input:hover:not(:focus):not(:disabled),textarea:hover:not(:focus):not(:disabled),select:hover:not(:focus):not(:disabled){border-color:var(--color-primary);box-shadow:0 0 10px 0 var(--color-primary)}input:focus,textarea:focus,select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 5px var(--color-primary)}input::placeholder,textarea::placeholder{color:var(--color-text);opacity:.8}input[type=range]{height:20px;background:transparent;outline:none;cursor:pointer;-webkit-appearance:none;appearance:none;position:relative;padding:0;border:none;width:auto}input[type=range]::-webkit-slider-runnable-track{width:100%;height:4px;background:var(--color-primary-tint);border-radius:var(--radius-xs);margin-top:8px}input[type=range]::-moz-range-track{width:100%;height:4px;background:var(--color-primary-tint);border-radius:var(--radius-xs)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;background:var(--color-bg-tertiary);border:2px solid var(--color-primary);border-radius:50%;cursor:pointer;margin-top:-8px;transition:all .2s;box-shadow:0 0 8px var(--color-primary-tint-40)}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.15);box-shadow:0 0 12px var(--color-primary-tint-50);background:var(--color-primary-tint)}input[type=range]::-moz-range-thumb{width:20px;height:20px;background:var(--color-bg-tertiary);border:2px solid var(--color-secondary);border-radius:50%;cursor:pointer;transition:all .2s;box-shadow:0 0 8px var(--color-primary-tint-40)}input[type=range]::-moz-range-thumb:hover{transform:scale(1.15);box-shadow:0 0 12px var(--color-primary-tint-50);background:var(--color-primary-tint)}input[type=range]:focus{border:none;box-shadow:none}input[type=checkbox]{appearance:none;-webkit-appearance:none;width:28px;height:28px;min-width:28px;border:2px solid var(--color-grey);border-radius:var(--radius-sm);background:var(--overlay-30);cursor:pointer;position:relative;transition:all .2s ease;padding:0}input[type=checkbox]:hover{border-color:var(--color-primary)}input[type=checkbox]:checked{background:var(--color-primary);border-color:var(--color-primary)}input[type=checkbox]:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:20px;font-weight:var(--fw-bold);color:var(--color-bg)}.section{background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-lg)}.section h3{color:var(--color-primary);margin:0 0 var(--space-lg) 0;border-bottom:1px solid var(--color-border);padding-bottom:var(--space-sm)}.section ul{list-style:none;padding:0}.section li{background-color:var(--color-bg-secondary);padding:var(--space-sm);border-radius:var(--radius-sm);margin-bottom:var(--space-xs);transition:background-color .2s ease}.section li a{color:var(--color-text);text-decoration:none;font-weight:var(--fw-medium);width:100%;display:block}.error-message{color:var(--color-danger-dark);font-weight:var(--fw-bold)}.warning-message{color:var(--color-warning);font-style:italic;margin-top:var(--space-xs);display:block}.panel{background:linear-gradient(135deg,var(--color-bg) 0%,var(--color-bg) 50%,var(--color-bg) 100%);border:2px solid var(--color-primary);border-radius:var(--radius-lg);padding:0;box-shadow:0 0 8px var(--color-primary-tint-40),var(--shadow-md)}.panel.panel-padding{padding:var(--space-xl)}.panel.panel-glass{background:var(--panel-bg-glass, var(--color-bg-primary));backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:2px solid var(--color-primary-tint-50);border-radius:var(--radius-lg);box-shadow:0 8px 32px 0 var(--overlay-50),inset 0 2px 8px var(--glass-10),0 0 25px var(--color-primary-tint-40)}.main-container{max-width:1400px;margin:0 auto;width:100%;padding:0 var(--space-xl);min-height:100vh}.energy-bar .stat-bar-fill{background:linear-gradient(to bottom,var(--color-secondary-light) 0%,var(--color-secondary) 50%,var(--color-secondary-dark) 100%);box-shadow:inset 0 1px 1px var(--glass-30)}.energy-bar .stat-bar-text{color:var(--color-text-dark);text-shadow:0 0 3px var(--glass-50)}.team-1{background-color:var(--color-success)}.team-2{background-color:var(--color-info)}.team-3{background-color:var(--color-secondary)}.team-4{background-color:var(--color-tertiary)}.team-5{background-color:var(--color-warning)}.team-6{background-color:var(--color-grey-dark)}.team-7{background-color:var(--color-danger-dark)}.team-8{background-color:var(--color-grey)}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:var(--color-bg);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb{background:var(--color-secondary);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--color-secondary-light)}*{scrollbar-width:auto;scrollbar-color:var(--color-secondary) var(--color-bg)}.u-visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.u-center-abs{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.u-container{width:100%;max-width:1200px;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}.icon-container{display:flex;align-items:center;justify-content:center;flex-shrink:0}.icon-xs{width:var(--icon-size-xs);height:var(--icon-size-xs)}.icon-sm{width:var(--icon-size-sm);height:var(--icon-size-sm)}.icon-md{width:var(--icon-size-md);height:var(--icon-size-md)}.icon-lg{width:var(--icon-size-lg);height:var(--icon-size-lg)}.icon-xl{width:var(--icon-size-xl);height:var(--icon-size-xl)}.icon-fixed{width:var(--icon-size-xs);height:var(--icon-size-xs);display:inline-block}.form-row{display:flex;gap:1.5rem;align-items:flex-end}.form-row .form-group{margin-bottom:0}.form-group{display:flex;gap:.5rem;text-align:left}.form-group label{font-weight:var(--fw-medium);font-size:var(--fs-md);color:var(--color-text-light);padding-left:.25rem}.form-group input:focus-visible,.form-group select:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media (max-width: 768px){.form-group{flex-direction:column}}.btn-spaced{margin-top:var(--space-xs)}.tag-container{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-sm);margin-bottom:var(--space-sm)}.tag{display:inline-block;padding:calc(var(--space-xs) / 2) var(--space-sm);background:var(--color-secondary-tint);border:1px solid var(--color-secondary-tint-40);border-radius:var(--radius-lg);font-size:.75rem;color:var(--color-text);font-weight:var(--fw-medium);text-transform:capitalize;letter-spacing:.3px;white-space:nowrap}.footer-panel-container{display:flex;flex-direction:column;width:100%;height:100%;box-sizing:border-box}.footer-panel-content{padding:var(--space-md) 0 0 var(--space-sm)}.panel-empty-state{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-grey);font-style:italic}.panel-empty-state p{margin:0}.card-track{display:flex;flex-direction:row;gap:var(--space-sm);padding-left:calc(12px + var(--space-md));padding-top:calc(12px + var(--space-sm));padding-right:12px}.style-glass{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:2px solid var(--color-primary-tint-50);box-shadow:0 8px 32px 0 var(--overlay-50),inset 0 2px 8px var(--glass-10),0 0 25px var(--color-primary-tint-40)}.style-primary{background:var(--color-bg-primary);color:var(--color-text-on-primary);padding:var(--space-lg);border-radius:var(--radius-lg)}.style-secondary{background:var(--color-bg-secondary);color:var(--color-text-on-secondary);padding:var(--space-md);border-radius:var(--radius-md)}.style-tertiary{background:var(--color-bg-tertiary);color:var(--color-text-on-tertiary);padding:var(--space-sm);border-radius:var(--radius-sm)}.style-primary input,.style-primary select,.style-primary textarea{background:var(--color-bg-secondary);color:var(--color-text-on-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.style-secondary input,.style-secondary select,.style-secondary textarea{background:var(--color-bg-tertiary);color:var(--color-text-on-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.size-lg{padding:var(--space-lg);border-radius:var(--radius-lg)}.size-md{padding:var(--space-md);border-radius:var(--radius-md)}.size-sm{padding:var(--space-sm);border-radius:var(--radius-sm)}.size-none{padding:0}@media (max-width: 767px){.footer-panel-content{padding:var(--space-md) 0 0 var(--space-xs)}.card-track{gap:var(--space-xs);padding-left:calc(8px + var(--space-sm));padding-top:calc(var(--space-sm));padding-right:8px}}@media (max-width: 479px){.footer-panel-content{padding:var(--space-sm) 0 0 2px}.card-track{gap:4px;padding-left:calc(6px + var(--space-xs));padding-top:calc(6px + var(--space-md));padding-right:6px}}@keyframes spin{to{transform:rotate(360deg)}}.spinner{animation:spin 1s linear infinite}.spinner-circle{display:inline-block;border-radius:50%;border:var(--spinner-border-md) solid var(--color-secondary-tint-40);border-top-color:var(--color-secondary);animation:spin 1s linear infinite}.spinner-circle.spinner-circle--sm{width:var(--spinner-size-sm);height:var(--spinner-size-sm);border-width:var(--spinner-border-sm)}.spinner-circle.spinner-circle--md{width:var(--spinner-size-md);height:var(--spinner-size-md);border-width:var(--spinner-border-md)}.spinner-circle.spinner-circle--lg{width:var(--spinner-size-lg);height:var(--spinner-size-lg);border-width:var(--spinner-border-lg)}.spinner-circle.spinner-circle--xl{width:var(--spinner-size-xl);height:var(--spinner-size-xl);border-width:var(--spinner-border-xl)}.title-badge{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-md);background:linear-gradient(135deg,var(--title-badge-bg-start) 0%,var(--title-badge-bg-end) 100%);border-left:3px solid var(--title-badge-border-left);border-right:3px solid var(--title-badge-border-right);border-radius:var(--radius-sm);font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--title-badge-color);letter-spacing:.5px;box-shadow:0 2px 8px var(--overlay-30);line-height:1.2rem;text-align:center;margin-top:var(--space-xs);margin-bottom:var(--space-xs)}.title-badge-icon{width:24px;height:24px;padding:var(--space-xs);background:var(--title-badge-icon-bg);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--title-badge-icon-color)}
