.feedback-wrapper{position:fixed;bottom:1rem;right:1rem;z-index:1000;min-width:300px;padding:1rem;background:#000000b3;border-radius:8px}.feedback-toast{background:var(--color-bg-toast, #333);color:var(--color-text-feedback, #ffffff);padding:.75rem 1rem;border-radius:8px;box-shadow:0 2px 8px #0000004d;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:6px;display:flex;justify-content:space-between;align-items:center}.timestamp{font-size:.75rem;color:var(--color-text-meta, #ccc);margin-left:auto}.feedback-text{color:var(--color-text-light)}.feedback-success .timestamp,.feedback-log .timestamp,.feedback-warning .timestamp{color:var(--color-text-dark, #000000)}.feedback-success{color:var(--color-text-light, #ffffff)}.feedback-warning{color:var(--color-warning, #ff9800)}.feedback-error{color:var(--color-error-bg)}.feedback-info{color:var(--color-info-bg)}.feedback-log{color:var(--color-log, #c1c5c9)}.feedback-history .feedback-success{background-color:var(--color-success-bg);color:var(--color-text-light, #ffffff)}.feedback-history .feedback-warning{background-color:var(--color-warning, #ff9800);color:var(--color-text-dark, #000000)}.feedback-history .feedback-error{background-color:var(--color-error-bg);color:var(--color-text-light, #ffffff)}.feedback-history .feedback-info{background-color:var(--color-info-bg);color:var(--color-text-light, #ffffff)}.feedback-history .feedback-log{background-color:var(--color-log, #c1c5c9);color:var(--color-text-dark, #000000)}.feedback-{background-color:var( --color-bg, #000000);color:var(--color-text-dark, #000000)}.feedback-latest{outline:2px solid var(--color-accent, #ffc107);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}.login-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh}.login-logo{max-width:550px;margin-bottom:2rem;width:100%}.login-form{display:flex;flex-direction:column;gap:1.5rem;width:100%;max-width:400px}.debug-panel{display:flex;align-items:center;gap:8px;padding:4px 8px;background:#ff98001a;border:1px solid rgba(255,152,0,.3);border-radius:4px;margin-left:12px}.debug-indicator{display:flex;align-items:center;gap:4px;color:#ff9800;font-size:11px;font-weight:700;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:3px;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:#ffa726;background:#ffa72633}.reset-button:hover{background:#ffa7264d;border-color:#ffb74d}.randomize-button{border-color:#66bb6a;background:#66bb6a33}.randomize-button:hover{background:#66bb6a4d;border-color:#81c784}.kill-button{border-color:#ef5350;background:#ef535033}.kill-button:hover{background:#ef53504d;border-color:#ff6659}.kill-button.active{background:#ef535080;border-color:#ff1744;animation:pulse-red 1.5s infinite}@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:red!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)}}.main-menu{display:flex;align-items:center;padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-md);background-color:#0a192f80;border-bottom:1px solid var(--color-slate-dark)}.menu-logo-container{display:flex;align-items:center;gap:var(--space-md);margin-right:var(--space-md)}.menu-logo{height:40px;width:auto;display:block}.feedback-display{flex-grow:1;text-align:center;font-weight:500;font-family:var(--font-body)}.feedback-text{display:inline-block;padding:var(--space-sm) var(--space-md);border-radius:4px}.menu-actions{display:flex;align-items:center;gap:var(--space-sm)}.menu-actions button{display:flex;align-items:center;justify-content:center;width:auto;padding:10px;min-width:44px;min-height:44px}.loader-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;padding:2rem;min-height:150px}.loader-spinner{width:50px;height:50px;border-radius:50%;margin:0rem auto 1rem;border:5px solid rgba(100,255,218,.2);border-top-color:var(--color-accent-cyan);animation:spin 1s linear infinite}.loader-message{color:var(--color-slate-light);font-weight:500;font-size:1.1rem}.loader-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center}.loader-overlay .loader-content{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:2rem;background:#14141ee6;border-radius:12px;box-shadow:0 0 40px #64ffda4d}.custom-number-input{display:flex;align-items:center}.custom-number-input input[type=number]::-webkit-inner-spin-button,.custom-number-input input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.custom-number-input input[type=number]{-moz-appearance:textfield;text-align:center;border-radius:0;flex-grow:1}.number-control-button{padding:13px;min-width:45px;font-size:1.5rem;line-height:1}.number-control-button:first-child{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.number-control-button:last-child{border-top-left-radius:0;border-bottom-left-radius:0;border-left:none}@media (max-width: 768px){.form-row{flex-direction:column;gap:1rem;align-items:stretch}.form-row .form-group{margin-bottom:1rem}}.status-tag{padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:700;text-transform:capitalize;color:#0a192f;transition:transform .2s ease;white-space:nowrap}a:hover .status-tag,button:hover .status-tag{transform:scale(1.05)}.status-tag.status-lobby{background-color:#549bff;color:#fff}.status-tag.status-deploy{background-color:#ffc107}.status-tag.status-plan{background-color:#28a745;color:#fff}.status-tag.status-resolve{background-color:#64ffda}.status-tag.status-finish{background-color:var(--color-slate-light)}.status-tag.status-error{background-color:var(--color-error-bg);color:#fff}.status-tag.tag-active{background-color:#4caf50;color:#fff}.status-tag.tag-inactive{color:#fff}.status-tag.status-resolved{background:transparent;border:2px solid var(--color-accent-cyan);color:var(--color-accent-cyan);box-shadow:0 0 10px #64ffda33}.dashboard-container{padding:0;margin:0 auto;text-align:center;max-width:1100px}.game-list-header{display:flex;align-items:center;gap:var(--space-md);background-color:var(--color-darker-bg);padding:var(--space-md);border-radius:var(--space-sm);margin-bottom:var(--space-md)}.section h3{font-size:1.5rem}.section .game-list-header h3{margin:0;border-bottom:none}.create-player-form{display:flex;gap:var(--space-md)}.create-player-form input{flex-grow:1}.form-submit-button.cta{margin-top:var(--space-lg)}.create-game-form{margin-top:var(--space-lg);margin-bottom:var(--space-lg)}.section .game-list-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.section .game-list-item a{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) var(--space-lg);background-color:var(--color-slate-dark);border:1px solid var(--color-slate-dark);border-radius:var(--space-sm);margin-bottom:var(--space-sm);text-decoration:none;color:var(--color-text);transition:background-color .2s,border-color .2s;font-size:var(--fs-h4);font-weight:500}.game-list-item a:hover{background-color:var(--color-slate-light);border-color:var(--color-accent-cyan)}.game-list-item .game-name{font-size:var(--fs-h4);font-weight:500}.game-filters{margin:var(--space-lg) 0;display:flex;gap:var(--space-md);justify-content:center;align-items:center}.game-filters button{padding:var(--space-sm) var(--space-lg);font-size:var(--fs-h5);font-weight:600;letter-spacing:.5px;background:var(--color-slate-dark);color:var(--color-text-light);cursor:pointer;border-radius:var(--space-sm);transition:all .2s ease;box-shadow:0 3px 6px #00000059;text-shadow:0 1px 1px rgba(0,0,0,.5)}.game-filters button:hover{background:var(--color-slate-light);transform:translateY(-2px);box-shadow:0 6px 12px #00000073}.game-filters button:active{transform:scale(.96);border:2px solid var(--color-text-light)}.game-filters button.active{background:var(--color-darker-bg);color:var(--color-text-light);border:2px solid var(--color-accent-cyan);box-shadow:0 0 12px var(--color-accent-cyan)}.switch{position:relative;display:inline-block;width:180px;height:43px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background-color:var(--color-slate-dark);border-radius:50px;font-weight:700;text-transform:uppercase;overflow:hidden;border:2px solid var(--color-accent-cyan);box-shadow:0 0 14px var(--color-accent-cyan);transition:all .3s ease;display:flex;align-items:center;justify-content:space-between;padding:0 14px;color:#ffffff59}.slider:before,.slider:after{position:relative;z-index:1;font-size:.8rem;color:#f0f8ff}.slider:before{content:"Privada"}.slider:after{content:"Pública"}.slider span{position:absolute;height:38px;width:90px;left:2px;bottom:2px;background-color:var(--color-accent-cyan);border-radius:50px;transition:all .3s ease;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;color:#000;z-index:2;transform:translate(1px)}.switch input:checked+.slider span{transform:translate(83px)}.private-code-section{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem;border-radius:1rem;background:linear-gradient(to bottom right,var(--color-bg),var(--color-darker-bg));border:1px solid var(--color-accent-cyan);box-shadow:0 6px 16px #00000073;text-align:center;width:100%;max-width:auto;margin:2rem auto}.private-code-section h3{font-size:1.2rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--color-accent-cyan)}.input-container{display:flex;width:100%}.private-code-input{flex-grow:1;padding:1rem;border-radius:.5rem 0 0 .5rem;font-size:1.1rem;font-family:monospace;background:var(--color-darker-bg);color:var(--color-text);border:1px solid var(--color-slate-dark);border-right:none;outline:none}.private-code-input:focus{border-color:var(--color-accent-cyan);box-shadow:0 0 8px var(--color-accent-cyan)}.private-code-btn{padding:1rem 1.5rem;border-radius:0 .5rem .5rem 0;background:var(--color-accent-cyan);color:var(--color-bg);font-weight:700;cursor:pointer;transition:transform .2s,box-shadow .2s;border:1px solid var(--color-accent-cyan);border-left:none}.private-code-btn:hover{transform:scale(1.05);box-shadow:0 4px 12px var(--color-accent-cyan)}.btn-delete-game{display:flex;width:auto;height:auto;align-items:center;justify-content:center;padding:calc(var(--space-sm) + 13px) var(--space-md);background-color:var(--color-slate-dark);color:#fff;border:1px solid var(--color-slate-dark);border-radius:var(--space-sm);box-shadow:none!important;transition:background-color .2s;line-height:1}.btn-delete-game:hover{background-color:var(--color-slate-light)}.btn-delete-game:active{background-color:var(--color-darker-bg)}.btn-delete-game svg{color:#fff!important;width:1em;height:1em}@media (max-width: 768px){.dashboard-container{padding:0 var(--space-md)}.switch{width:150px}.slider span{width:75px}.switch input:checked+.slider span{transform:translate(68px)}}@media (max-width: 480px){.dashboard-container{max-width:100%;padding:0 var(--space-md)}.form-row{flex-direction:column;gap:var(--space-md)}.game-filters{flex-wrap:wrap;gap:var(--space-sm)}.game-filters button{padding:var(--space-sm) var(--space-md);font-size:var(--fs-small)}.switch{width:120px;height:36px}.slider{padding:0 10px;font-size:.7rem}.slider span{width:60px;height:32px;font-size:.7rem}.switch input:checked+.slider span{transform:translate(53px)}.game-list-header{flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.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}}#player-status-dashboard{color:#fff;overflow:visible;z-index:1000}.game-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.game-status-header{display:flex;align-items:center;gap:10px;margin-bottom:var(--space-md)}.turn-indicator{margin-left:auto}.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:700;color:#fff;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.player-id-hidden{margin-left:6px;color:#888;font-size:10px}.status-circle{width:20px;height:20px;border-radius:50%;text-align:center;line-height:20px;font-weight:700;font-size:12px;border:1px solid #555;cursor:help}.status-deploying,.status-planning{background-color:#ffc107;color:#000}.status-deployed,.status-resolving{background-color:#4caf50;color:#fff}.status-unknown{background-color:#607d8b;color:#fff}.status-finished{background-color:var(--color-info);color:#000}.energy-bar-container{position:relative;height:1.5rem;background:#27272a;border-radius:6px;overflow:hidden}.energy-bar-fill{height:100%;transition:width .3s;background:#3e74df;box-shadow:inset 0 1px 1px #fff3}.energy-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:4px;font-size:1rem;font-weight:600;color:#f1f5f9;pointer-events:none;text-shadow:0 0 2px #000}.energy-icon{color:#000;stroke-width:1}.your-turn-indicator{margin-top:10px;color:#00e676;font-weight:700;text-align:center}.unit-icon{display:flex;align-items:center;justify-content:center;border-radius:25%;font-weight:700;color:#fff;-webkit-user-select:none;user-select:none;border:3px solid rgba(255,255,255,.9);transition:all .2s ease;position:relative;z-index:2;overflow:visible}.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 #22c55eb3,0 0 24px #22c55e66,0 2px 4px #00000080;border-color:#86eface6}.unit-icon.team-ally{box-shadow:0 0 12px #3b82f6b3,0 0 24px #3b82f666,0 2px 4px #00000080;border-color:#93c5fde6}.unit-icon.team-enemy{box-shadow:0 0 12px #ef4444b3,0 0 24px #ef444466,0 2px 4px #00000080;border-color:#fca5a5e6}.unit-icon.team-self{background-color:var(--color-green-dark);box-shadow:0 0 12px #22c55eb3,0 0 24px #22c55e66,0 2px 4px #00000080;border-color:#86eface6}.unit-icon.size-small{width:36px;height:36px;font-size:18px}.unit-icon.size-map{width:var(--unit-tile-size);height:var(--unit-tile-size);font-size:calc(var(--unit-tile-size) * .5)}.unit-icon.size-big{width:50px;height:50px;font-size:24px;border-width:3px}.map-container .unit-icon.selected{border:3px solid #ffd700;box-shadow:0 0 0 2px #ffd7004d,0 0 12px #ffd70099,0 1px 3px #00000080;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 #ffd7004d,0 0 12px #ffd70099,0 1px 3px #00000080}50%{box-shadow:0 0 0 4px #ffd70080,0 0 20px #ffd700cc,0 1px 3px #00000080}}.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:cover;border-radius:50%}.unit-icon-letter{font-family:var(--font-family, "Arial", sans-serif);font-weight:700;text-shadow:1px 1px 2px rgba(0,0,0,.8)}.unit-icon:hover:not(.selected){transform:scale(1.05);border-color:#ffffffe6}.unit-icon.selected:hover{transform:scale(1.15);box-shadow:0 0 0 3px #ffd70066,0 0 16px #ffd700cc,0 2px 8px #000000b3}.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 #0000004d;pointer-events:none}.initiative-badge.team-own{background-color:var(--color-green-dark);border-color:#86eface6}.initiative-badge.team-ally{background-color:var(--color-green-light);border-color:#93c5fde6}.initiative-badge.team-enemy{background-color:var(--color-red);border-color:#fca5a5e6}.initiative-badge.team-unknown{background-color:#888;border-color:#ffffffb3}.initiative-number{color:#fff;font-size:11px;font-weight:700;font-family:var(--font-heading, "Exo 2", sans-serif);line-height:1}@media (max-width: 768px){.unit-icon.size-small{width:28px;height:28px;font-size:16px}.unit-icon.unit-container .state-indicator{bottom:-1px}.initiative-badge{width:18px;height:18px;top:-8px;left:-8px}.initiative-number{font-size:10px}}.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:#888!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:#ccc!important}}.spawn-beacon-icon{display:flex;align-items:center;justify-content:center;border-radius:50%;box-sizing:border-box;border:2px solid rgba(255,255,255,.6);box-shadow:0 1px 3px #00000080}.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 #ccc;display:flex;align-items:center;justify-content:center;font-size:10px;color:#aaa;background-size:cover;background-position:center;filter:brightness(.15) contrast(1);opacity:.9}.terrain-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.terrain-grass{background:url(/assets/terrain/grass.png)}.terrain-sand{background:url(/assets/terrain/sand.png)}.terrain-dirt{background-image:url(/assets/terrain/dirt.png)}.terrain-rock{background-image:url(/assets/terrain/rock.png)}.terrain-sea{background-image:url(/assets/terrain/sea.png)}.terrain-snow{background-image:url(/assets/terrain/snow.png)}.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:#fff;font-weight:700;background:#0009;padding:1px 2px;border-radius:2px}.highlight-layer{pointer-events:none}.highlight-tile{position:absolute;transition:background-color .2s ease-in-out,opacity .2s ease-in-out;opacity:.5;background-color:var(--color-highlight, var( --color-green-light));pointer-events:auto}.highlight-tile:hover{background-color:var(--color-blue);cursor:pointer}.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 #ffff64e6;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:#12e05b;color:#000;border-radius:50%;border:2px solid black;font-weight:700;font-size:.9rem;display:flex;align-items:center;justify-content:center;box-shadow:0 0 2px #0006}.object-layer.unit{width:32px;height:32px;background:#12e05b;color:#000;border-radius:50%;border:2px solid black;font-weight:700;font-size:.9rem;display:flex;align-items:center;justify-content:center;box-shadow:0 0 2px #0006;transition:background-color .2s ease,border-color .2s ease}.object-layer.unit:hover{background-color:#3b82f6}.object-layer.unit.selected{border:3px solid #ffff00;box-shadow:0 0 10px 3px #ffff00b3}.object-layer.unit.selected:hover{background-color:#12e05b}.object-layer.spawn_beacon{width:42px;height:42px;border-radius:6px;border:2px solid rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;box-shadow:0 1px 3px #00000080}.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:#3b82f6;box-shadow:0 0 8px #ffffffb3}.object-layer.spawn_beacon.selected{box-shadow:0 0 10px 3px #ffff00b3;border-color:#ff0}.planned-action-line{overflow:visible;pointer-events:none;z-index:1}.planned-action-line.completed{opacity:.4}.planned-action-line.completed .order-number-group{opacity:.6}.action-line-path{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));transition:stroke-width .2s ease,opacity .2s ease;pointer-events:none}.action-line-path:hover{stroke-width:10;opacity:.9}.order-number-group{filter:drop-shadow(0 2px 4px rgba(0,0,0,.5));pointer-events:none}.order-background{transition:r .2s ease,stroke-width .2s ease;pointer-events:none}.planned-action-line:hover .order-background{r:14;stroke-width:3}.order-text{font-family:var(--font-family, "Arial", sans-serif);-webkit-user-select:none;user-select:none;transition:font-size .2s ease;pointer-events:none}.planned-action-line:hover .order-text{font-size:16px}.planned-action-line.highlighted{z-index:3}.planned-action-line.highlighted .action-line-path{stroke-width:12;filter:drop-shadow(0 0 8px currentColor)}.planned-action-line.highlighted .order-background{r:16;stroke-width:4;fill:#ffd700e6}.planned-action-line.highlighted .order-text{font-size:18px;fill:#000}@keyframes pulse-line{0%,to{opacity:1}50%{opacity:.7}}.planned-action-line.pulsing .action-line-path{animation:pulse-line 1.5s ease-in-out infinite}@media (max-width: 768px){.order-background{r:10}.order-text{font-size:12px}.action-line-path{stroke-width:6}}.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:700;font-family:var(--font-family, monospace);color:currentColor}.action-icon-move,.action-icon-light-move,.action-icon-heavy-move{color:#4a9eff}.action-icon-melee,.action-icon-light-attack,.action-icon-heavy-attack{color:#ff4545}.action-icon-range,.action-icon-ranged,.action-icon-bow,.action-icon-crossbow{color:#ff8c00}.action-icon-defend,.action-icon-block,.action-icon-parry{color:#4aff63}.action-icon-spell,.action-icon-magic{color:#b65cff}.action-icon-heal{color:#ff69b4}.action-icon-observe,.action-icon-scout{color:gold}.action-icon-default{color:#888}.action-icon.selected{color:gold;filter:drop-shadow(0 0 4px currentColor)}.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:#f59e0be6;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 #f59e0b66}.planned-action-delete:active{transform:scale(.95)}.planned-action-delete:disabled{opacity:.6;cursor:not-allowed;transform:none}.planned-action-delete.loading{background:#9ca3afe6;border-color:#9ca3af;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:#f59e0bcc;border-width:1px}.planned-action-delete.in-tooltip:hover{background:#f59e0b;border-color:#d97706}@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}}.hover-click-popup{background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);border:1px solid rgba(13,148,136,.4);border-radius:var(--space-sm);box-shadow:0 4px 12px #00000080;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:var(--space-md);max-width:280px;animation:popupFadeIn .2s ease-out;position:relative}.hover-click-popup.pinned{border-color:#0d948899;box-shadow:0 6px 20px #000000b3}.hover-click-popup-close{position:absolute;top:var(--space-xs);right:var(--space-xs);width:20px;height:20px;background:var(--color-info);border:1px solid rgba(255,255,255,.2);border-radius:50%;color:var(--color-text-light);font-size:24px;font-weight:lighter;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;line-height:0;transition:all .2s;z-index:1;font-family:var(--font-body)}.hover-click-popup-close:hover{background:#ef444433;border-color:#ef444466;color:#ef4444;transform:scale(1.1)}.hover-click-popup-content{position:relative}.popup-trigger-active{filter:brightness(1.2)}@keyframes popupFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.hover-click-popup{max-width:240px;padding:var(--space-sm)}}@media (max-width: 480px){.hover-click-popup{max-width:200px;padding:calc(var(--space-sm) * .8)}.hover-click-popup-close{font-size:var(--fs-small)}}.planned-action-icon{position:absolute;min-width:24px;height:24px;background-color:#fff;border-radius:12px;border:2px solid #555;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 #0003,0 0 8px var(--team-glow, transparent);padding:0 4px;--team-glow: #888888}.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 #0003,0 0 6px #0000001a}.sequence-display .sequence-number{color:#fff;font-size:11px;font-weight:700;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:10px;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:#888}.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 #0000004d}.planned-action-icon[data-interaction-mode=targeting]:hover,.planned-action-icon.targeting-mode:hover{transform:none;background:#00000080}.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:#f59e0bf2;border:1px solid #f59e0b;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:#000000d9;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:#000000d9;border-color:var(--color-accent-cyan);box-shadow:0 0 10px 0 var(--color-accent-cyan)}.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 #0000004d,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-base);font-weight:600;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:#ffffff0d;border-radius:var(--space-xs);transition:background .15s ease}.multiple-actions-tooltip .action-row:hover{background:#ffffff1a}.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:#ccc;font-weight:500}.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-small);color:gold;font-weight:600}.multiple-actions-tooltip .action-sequence{display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-small);color:var(--color-primary);background:#0d948826;padding:2px 6px;border-radius:10px;font-weight:600;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:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:4px;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:#ef444440;border-color:#ef444480;transform:scale(1.1)}.multiple-actions-tooltip .action-delete .planned-action-delete svg{stroke:var(--color-red);width:16px;height:16px}.action-count-text{color:#333;font-size:12px;font-weight:700;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:700;color:#333;text-align:center;line-height:1}.mixed-action-indicator.mixed-teams{color:#333}.planned-action-delete.in-tooltip{background:#f59e0be6;border:1px solid #f59e0b;border-radius:4px;padding:4px;transition:all .2s ease;pointer-events:auto}.planned-action-delete.in-tooltip:hover{background:#f59e0b;transform:scale(1.1);box-shadow:0 2px 8px #f59e0b66}.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:#888;--team-glow: #888888}.planned-action-icon.team-mixed{--team-glow: var(--color-slate-dark)}.planned-action-icon.targeting-mode{animation:none}@media (max-width: 768px){.planned-action-icon{min-width:28px;height:28px}.planned-action-icon.targeting-mode{opacity:.4}.planned-action-icon.select-mode{width:32px;height:32px}.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 #ffd700;outline-offset:2px}.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 #555;width:24px;height:24px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #0000001a}.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:#0009;color:#fff;font-size:10px;padding:1px 3px;border-radius:3px;pointer-events:none}.map-manager-wrapper{position:relative;width:100%;height:100%;overflow:visible}.map-container{position:relative;display:block;background-color:#f0f0f0;max-width:calc(100vw - 638px);max-height:calc((100vw - 638px)*.6);overflow: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:#ffe600cc;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-accent, #ffc107);font-family:var(--font-heading, "Segoe UI", sans-serif);font-weight:700;letter-spacing:2px;font-size:5rem;text-shadow:-2px -2px 0 #000,2px -2px 0 #000,-2px 2px 0 #000,2px 2px 0 #000,0 0 15px var(--color-accent, #ffc107);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}}.effect-icon{display:inline-flex;align-items:center;justify-content:center;width:calc(var(--space-md) * 1.5);height:calc(var(--space-md) * 1.5);font-size:var(--fs-body);cursor:pointer}.effect-icon .unicode-icon{font-size:inherit;line-height:1}.effect-icon img{width:100%;height:100%;object-fit:contain}.effect-icon .fallback-icon{font-weight:700;color:var(--color-slate-light)}.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-slate-dark);transition:background-color .2s}.effect-icon-with-name:hover{background:var(--color-slate-light);color:var(--color-bg)}.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-small);flex-shrink:0}.effect-icon-with-name .effect-icon-display .unicode-icon{font-size:inherit;line-height:1}.effect-icon-with-name .effect-icon-display img{width:100%;height:100%;object-fit:contain}.effect-icon-with-name .effect-name{font-size:var(--fs-small2);color:var(--color-text);white-space:nowrap}.effect-icon-with-name:hover .effect-name{color:var(--color-bg)}.effect-icon-with-name .effect-icon-display .fallback-icon{font-weight:700;color:var(--color-slate-light)}.effect-popup{min-width:200px}.effect-popup-header{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm)}.effect-popup-icon{display:inline-flex;align-items:center;justify-content:center;width:calc(var(--space-md) * 1.5);height:calc(var(--space-md) * 1.5);font-size:var(--fs-body)}.effect-popup-title{font-size:var(--fs-h5);font-weight:600;color:var(--color-accent-cyan)}.effect-popup-description{font-size:var(--fs-small2);color:var(--color-text);line-height:1.4;margin-bottom:var(--space-sm)}.effect-popup-separator{height:1px;background:#ffffff1a;margin:var(--space-sm) 0}.effect-popup-details{display:flex;flex-direction:column;gap:calc(var(--space-xs) * .75)}.effect-detail-row{display:flex;justify-content:space-between;align-items:center;font-size:var(--fs-small2)}.effect-detail-label{color:var(--color-slate-light);font-weight:500}.effect-detail-value{color:var(--color-text);text-align:right}.effect-detail-value.source{display:flex;align-items:center;gap:calc(var(--space-xs) * .5)}.counter-ready{color:var(--color-green-light, #12e05b);font-weight:500}.counter-partial{color:var(--color-yellow, #facc15);font-weight:500}.counter-depleted{color:var(--color-red, #ef4444);font-weight:500}@media (max-width: 768px){.effect-popup{min-width:180px}.effect-popup-title{font-size:var(--fs-body)}.effect-popup-description,.effect-detail-row{font-size:var(--fs-small2)}}.stat-display{display:flex;align-items:center;gap:.5rem;padding:3px 6px;border:1px solid rgba(148,163,184,.2);border-radius:4px;transition:all .2s ease;cursor:pointer}.stat-display:hover{transform:translateY(-1px);border-color:#94a3b866}.stat-value{font-weight:500;display:inline-flex;align-items:baseline;gap:2px}.stat-value .base-value{font-weight:500;color:#e2e8f0}.stat-value .modifier-indicator{font-size:.85em;font-weight:700;padding:0 2px}.stat-value.modified{font-weight:700}.stat-value.positive{color:var(--color-green-light);text-shadow:0 0 4px rgba(18,224,91,.3)}.stat-value.negative{color:var(--color-red);text-shadow:0 0 4px rgba(239,68,68,.3)}.stat-value.neutral{color:var(--color-text);font-weight:700}.stat-display.positive{border-color:var(--color-green-light);background:#12e05b0d}.stat-display.positive:hover{border-color:var(--color-green-light);background:#12e05b1a;box-shadow:0 0 4px #12e05b4d}.stat-display.negative{border-color:var(--color-red);background:#ef44440d}.stat-display.negative:hover{border-color:var(--color-red);background:#ef44441a;box-shadow:0 0 4px #ef44444d}.stat-display.neutral{border-color:#94a3b84d}.stat-popup{background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);border:1px solid rgba(8,145,178,.4);border-radius:8px;padding:0;min-width:250px;max-width:320px;box-shadow:0 4px 12px #00000080;overflow:hidden}.stat-popup-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#0891b21a;border-bottom:1px solid rgba(8,145,178,.2)}.stat-popup-title-group{display:flex;align-items:center;gap:8px}.stat-popup-icon{display:flex;align-items:center;font-size:18px}.stat-popup-title{color:#f1f5f9;font-weight:600;font-size:14px;text-transform:capitalize}.stat-popup-close{background:none;border:none;color:#ef4444;cursor:pointer;font-size:18px;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;line-height:1}.stat-popup-close:hover{color:#f87171}.stat-popup-description{padding:8px 12px;color:#94a3b8;font-size:var(--fs-small2);line-height:1.4}.stat-popup-separator{height:1px;background:#94a3b833;margin:0}.stat-popup-modifiers{padding:8px 0}.stat-base-row{display:flex;justify-content:space-between;align-items:center;padding:6px 12px;color:#cbd5e1;font-size:var(--fs-small2)}.stat-base-row .stat-value{font-weight:500;color:#f1f5f9}.stat-modifier-separator{height:1px;background:#94a3b826;margin:4px 12px}.stat-modifiers-section{padding:4px 0}.stat-modifier-row{display:flex;align-items:center;padding:6px 12px;font-size:var(--fs-small2);transition:background-color .15s ease}.stat-modifier-row:hover{background:#ffffff08}.stat-modifier-row.positive{color:var(--color-green-light)}.stat-modifier-row.negative{color:var(--color-red)}.stat-modifier-row .modifier-icon{font-size:14px;margin-right:6px;width:20px;display:inline-flex;align-items:center;justify-content:center}.stat-modifier-row .modifier-name{flex:1;font-weight:500}.stat-modifier-row .modifier-value{font-weight:600;margin-right:6px;min-width:28px;text-align:right}.stat-modifier-row .modifier-duration{font-size:var(--fs-small2);opacity:.8;white-space:nowrap}.stat-modifier-row .modifier-duration.unlimited{color:#fbbf24}.stat-total-row{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;margin-top:4px;border-top:1px solid rgba(148,163,184,.2);color:#cbd5e1;font-size:var(--fs-small2);font-weight:600;background:#0891b20d}.stat-total-row .stat-value-final{color:#f1f5f9;font-size:14px}.stat-tooltip-container{min-width:250px;max-width:300px;padding:0;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);border:1px solid rgba(8,145,178,.4);border-radius:8px;overflow:hidden;box-shadow:0 4px 12px #00000080}.stat-tooltip-header .stat-name{font-weight:600;font-size:14px;color:#f1f5f9;text-transform:capitalize}.stat-tooltip-header .stat-change{font-size:var(--fs-small2);color:#94a3b8;margin:0 8px}.stat-tooltip-header .stat-total-change{font-weight:600;font-size:14px;padding:2px 6px;border-radius:4px}.stat-tooltip-header .stat-total-change.positive{color:var(--color-green-light);background:#12e05b26}.stat-tooltip-header .stat-total-change.negative{color:var(--color-red);background:#ef444426}.stat-tooltip-header .stat-total-change.neutral{color:#94a3b8}.stat-tooltip-breakdown{padding:8px 0}.stat-tooltip-separator{height:1px;background:#94a3b833;margin:4px 12px}.stat-no-modifiers{padding:8px 12px;text-align:center;color:#64748b;font-size:var(--fs-small2);font-style:italic}@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:600;animation:stat-pulse 2s ease-in-out infinite}.stat-value.positive{color:var(--color-green-light);animation:stat-glow 2s ease-in-out infinite}.stat-value.negative{color:var(--color-red);animation:stat-glow 2s ease-in-out infinite}.stat-value .base-value{font-weight:500}.stat-value .modifier-indicator{font-weight:700;font-size:.9em}.stat-value .modifier-indicator.positive{color:var(--color-green-light)}.stat-value .modifier-indicator.negative{color:var(--color-red)}.effect-bar{display:flex;justify-content:center;align-items:center;gap:calc(var(--space-xs) * .5);min-height:calc(var(--space-md) * 1.2);padding:0}.effect-bar.empty{visibility:hidden}.effect-bar-icon{display:inline-flex;align-items:center;justify-content:center;width:calc(var(--space-md) * 1.2);height:calc(var(--space-md) * 1.2);border-radius:50%;background:#00000080;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:all .2s ease;font-size:calc(var(--fs-small) * .9)}.effect-bar-icon:hover{transform:scale(1.15);background:#000000b3;border-color:#fff6;box-shadow:0 2px 8px #0006}@media (max-width: 768px){.effect-bar{gap:calc(var(--space-xs) * .4)}.effect-bar-icon{width:var(--space-md);height:var(--space-md)}}@media (max-width: 480px){.effect-bar{gap:calc(var(--space-xs) * .3)}.effect-bar-icon{width:calc(var(--space-md) * .8);height:calc(var(--space-md) * .8);font-size:calc(var(--fs-xs) * 1.2)}}.unit-info-card{width:100%;display:flex;flex-direction:column;gap:12px;max-height:35vh}.unit-info-header{display:flex;flex-direction:column;align-items:center;gap:8px}.unit-title{font-size:1.1rem;font-weight:600;margin:0;color:#f1f5f9;text-align:center}.hp-bar{position:relative;height:2rem;min-height:2rem;background:#262626;border-radius:6px;overflow:hidden;border:1px solid #444}.hp-fill{height:100%;transition:width .3s ease,background-color .3s ease}.hp-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.875rem;color:var(--color-text-dark);font-weight:600}.hp-text-healthy{color:#000}.hp-text-warning,.hp-text-critical{color:#fff}.ap-display{display:flex;align-items:center;gap:8px;padding:8px;background:#ffffff0d;border-radius:6px;color:#fbbf24;font-size:.875rem}.ap-display svg{flex-shrink:0}.stats-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:8px;padding:8px 0}@media (min-width: 400px){.stats-grid{grid-template-columns:1fr 1fr 1fr 1fr}}.unit-effects{padding:8px;background:#ffffff0d;border-radius:6px}.unit-effects h4{margin:0 0 8px;font-size:.875rem;color:#e2e8f0;font-weight:600}.effects-list{display:flex;flex-direction:column;gap:4px}.effect-item{display:flex;justify-content:space-between;align-items:center;padding:4px 8px;background:#ffffff0d;border-radius:4px;font-size:.75rem}.effect-name{color:#cbd5e1}.effect-duration{color:#94a3b8;font-weight:600}.unit-position{text-align:center;font-size:.7rem;color:#64748b;margin-top:-4px;font-weight:500;opacity:.8}.hp-bar{cursor:pointer}.hp-popup{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px;min-width:200px;box-shadow:0 4px 12px #00000080}.hp-popup-header{display:flex;align-items:center;gap:8px;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1);color:#f1f5f9;font-weight:600;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:#e0e0e0}.hp-stat-row.damage{color:#f87171}.hp-value{font-weight:600;font-family:monospace}.hp-separator{height:1px;background:#ffffff1a;margin:4px 0}.structure-info-card{background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460) padding-box,radial-gradient(circle at 10% 10%,#0891b2,#0d9488) 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 #0000008c}.structure-header{display:flex;flex-direction:column;align-items:center;gap:8px}.structure-title{font-size:1.1rem;font-weight:600;margin:0;color:#f1f5f9;text-align:center}.structure-control{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;background:#ffffff0d;border-radius:6px;font-size:.875rem;font-weight:600}.structure-control.team-own{color:var(--team-color-own, #4ade80)}.structure-control.team-ally{color:var(--team-color-ally, #60a5fa)}.structure-control.team-enemy{color:var(--team-color-enemy, #f87171)}.structure-capture{display:flex;flex-direction:column;gap:8px;padding:8px;background:#ffffff0d;border-radius:6px}.capturing-team{display:flex;align-items:center;gap:8px;font-size:.875rem;font-weight:600}.capturing-team.team-own{color:var(--team-color-own, #4ade80)}.capturing-team.team-ally{color:var(--team-color-ally, #60a5fa)}.capturing-team.team-enemy{color:var(--team-color-enemy, #f87171)}.capture-progress{position:relative}.progress-bar{height:1.5rem;background:#262626;border-radius:4px;overflow:hidden;border:1px solid #444}.progress-fill{height:100%;transition:width .3s ease}.progress-fill.team-own{background:var(--team-color-own, #4ade80)}.progress-fill.team-ally{background:var(--team-color-ally, #60a5fa)}.progress-fill.team-enemy{background:var(--team-color-enemy, #f87171)}.progress-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.75rem;color:#f8fafc;text-shadow:0 0 2px #000;font-weight:600}.structure-position,.structure-stats{text-align:center;font-size:.75rem;color:#94a3b8}.structure-position{padding-top:4px;border-top:1px solid rgba(255,255,255,.1)}.structure-stats{padding:4px;background:#ffffff0d;border-radius:4px}.ap-display{display:flex;gap:6px;align-items:center;justify-content:center}.ap-display-small{gap:3px;justify-content:end}.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%,#a5b4fc,#6366f1);border:1px solid #a5b4fc;box-shadow:0 0 6px 1px #6366f1b3}.ap-sphere.hollow{background:radial-gradient(circle at 30% 30%,#666,#aaa);outline:1px solid #a5b4fc}.ap-cost-mini-sphere{width:14px;height:14px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#a5b4fc,#6366f1);border:1px solid #a5b4fc;box-shadow:0 0 5px 1px #6366f199}.ap-cost-mini-sphere.hollow{background:radial-gradient(circle at 30% 30%,#666,#aaa);outline:1px solid #a5b4fc}.ap-cost-numeric{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background-color:#8b5cf6;border:1px solid #c4b5fd;border-radius:50%;font-size:var(--fs-body);font-weight:700;color:#fff}.ap-sphere.buffed,.ap-cost-mini-sphere.buffed{border:2px solid #10b981!important;box-shadow:0 0 6px 1px #10b981b3}.ap-sphere.debuffed,.ap-cost-mini-sphere.debuffed{border:2px solid #ef4444!important;outline:none;box-shadow:0 0 6px 1px #ef4444b3}.ap-sphere.disabled,.ap-cost-mini-sphere.disabled{background:radial-gradient(circle at 30% 30%,#dc2626,#991b1b)!important;border:2px solid #ef4444!important;box-shadow:0 0 6px 1px #ef4444e6}.ap-sphere.hollow.disabled,.ap-cost-mini-sphere.hollow.disabled{background:transparent!important;border:2px solid #ef4444!important;box-shadow:0 0 6px 1px #ef444480}.ap-sphere.hollow.buffed,.ap-cost-mini-sphere.hollow.buffed{background:radial-gradient(circle at 30% 30%,#666,#aaa);border:2px solid #10b981!important;outline:none}.energy-display{display:flex;align-items:center;gap:4px;font-size:var(--fs-body);font-weight:700;color:var(--color-accent)}.energy-display.hollow{color:#aaa}.energy-icon{fill:var(--color-accent);stroke:var(--color-accent);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:8px;padding:1rem 0;color:#e0e0e0;display:flex;flex-direction:column;gap:.75rem;width:100%}.actions-panel-placeholder p{text-align:center;font-weight:700}.actions-panel-placeholder span{font-size:.85rem;color:#888;text-align:center}.actions-panel h4{margin:0;font-size:.95rem;font-weight:600;color:var(--color-accent);text-align:center;padding-bottom:.5rem}.unit-ap-display{display:flex;flex-direction:column;gap:.5rem;align-items:center}.ap-breakdown{display:flex;flex-direction:column;gap:.25rem;align-items:center}.planned-ap-info{font-size:.8rem;color:orange;text-align:center}.planned-ap-text{font-weight:500}.no-actions-msg{text-align:center;color:#888;font-style:italic}.actions-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem;max-height:280px;overflow-y:auto;overflow-x:hidden}.action-button{width:100%;display:flex;align-items:center;gap:.5rem;padding:.35rem .5rem;font-size:.9rem;border-radius:6px;border:1px solid #555;background-color:#333;color:#fff;cursor:pointer;transition:all .2s ease;position:relative}.action-button:not(:disabled):hover{background-color:#444;border-color:var(--color-accent, #ffc107);transform:translateY(-1px);box-shadow:0 2px 8px #0000004d}.action-button.selected{background-color:#4a4a00;border-color:gold;box-shadow:0 0 12px #ffd7004d;transform:translateY(-1px)}.action-button.selected:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(45deg,gold,#ffed4e,gold);border-radius:8px;z-index:-1;opacity:.7}.action-button.selected:hover{background-color:#5a5a00;transform:translateY(-2px);box-shadow:0 4px 16px #ffd70066}.action-button.insufficient-ap{background-color:#4a2a2a;border-color:#ff6b6b;opacity:.7}.action-button.insufficient-ap:hover{background-color:#5a3a3a;border-color:#ff8e8e}.action-button:disabled{background-color:#2a2a2a;color:#666;cursor:not-allowed;opacity:.5}.action-icon{display:flex;align-items:center;color:#ddd;width:16px;transition:all .2s ease}.action-button:not(:disabled) .action-icon{color:var(--color-accent)}.action-button.selected .action-icon{color:gold;filter:drop-shadow(0 0 4px currentColor)}.action-icon.selected{color:gold!important;filter:drop-shadow(0 0 4px currentColor)}.action-icon.disabled{opacity:.5;filter:grayscale(1)}.action-name{flex-grow:1;font-weight:500;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:gold;font-weight:600}@keyframes pulse-selected{0%,to{box-shadow:0 0 12px #ffd7004d}50%{box-shadow:0 0 20px #ffd70080}}.action-button.selected{animation:pulse-selected 2s ease-in-out infinite}@media (max-width: 768px){.actions-panel{padding:.75rem}.actions-list{max-height:240px}.action-button{padding:.4rem .6rem;font-size:.9rem}.action-icon{width:18px}}.planned-actions-panel{border-radius:8px;padding:1rem 0;color:#e0e0e0;display:flex;flex-direction:column;gap:.75rem;width:100%}.planned-actions-title{margin:0;font-size:1.1rem;font-weight:600;color:var(--color-accent);text-align:center;padding-bottom:.5rem}.planned-actions-list{display:flex;flex-direction:column;gap:.5rem;max-height:240px;overflow-y:auto;overflow-x:hidden;padding:0 .5rem}.planned-action-item{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:.5rem;transition:all .2s ease}.planned-action-item:hover{background:#ffffff14;border-color:var(--color-accent);transform:translateY(-1px);box-shadow:0 2px 8px #0003}.planned-action-header{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.planned-action-info{display:flex;align-items:center;gap:.5rem;flex:1}.planned-action-name{font-weight:500;font-size:.9rem;color:#fff;flex:1}.planned-action-order{display:flex;align-items:center;gap:2px;padding:.125rem .25rem;background:#ffd70026;border:1px solid rgba(255,215,0,.3);border-radius:4px;color:gold;font-size:.75rem;font-weight:600;font-family:monospace}.planned-action-order svg{color:gold;opacity:.8}.planned-action-details{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-top:.25rem;padding-top:.25rem;border-top:1px solid rgba(255,255,255,.05)}.planned-action-unit{display:flex;align-items:center;gap:.25rem;color:#cbd5e1;font-size:.85rem}.planned-action-unit .unit-name{color:#94a3b8;font-weight:500}.planned-action-target{display:flex;align-items:center;gap:.25rem;color:#94a3b8;font-size:.85rem}.planned-action-target svg{color:#64748b}.planned-action-costs{display:flex;align-items:center;gap:.5rem}.planned-action-item .planned-action-delete{opacity:.7;transition:opacity .2s ease}.planned-action-item:hover .planned-action-delete{opacity:1}.planned-actions-list::-webkit-scrollbar{width:6px}.planned-actions-list::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.planned-actions-list::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.planned-actions-list::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.planned-actions-empty{text-align:center;color:#888;font-style:italic;padding:1rem}@media (max-width: 768px){.planned-actions-panel{padding:.75rem}.planned-actions-list{max-height:180px}.planned-action-item{padding:.4rem}.planned-action-name{font-size:.85rem}}.info-panel{display:flex;flex-direction:column;gap:1rem;width:100%;height:100%;overflow-y:auto}.info-panel-empty{display:flex;align-items:center;justify-content:center;height:100%;padding:2rem;color:#888;font-size:.9rem;text-align:center}.info-panel-empty p{margin:0;font-style:italic}.deployable-units{padding:var(--space-md) 0rem 0rem;display:flex;flex-direction:column;gap:.5rem;color:#fff;font-family:Roboto,sans-serif}.deployable-units h4{margin:0 0 .25rem;font-size:1rem;letter-spacing:.05em;text-transform:uppercase}.deployable-units ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:row;gap:.5rem;flex-wrap:wrap}.unit-card{display:flex;align-items:center;gap:.4rem;padding:.4rem;width:calc(50% - .25rem);justify-content:center}.unit-initial{width:32px;height:32px;min-width:32px;border-radius:50%;background:var(--team-friendly);color:#000;font-weight:700;display:flex;align-items:center;justify-content:center;text-transform:capitalize}.unit-name{flex:1;font-size:1.2rem;font-weight:500;display:none}.finalize-button{margin:var(--space-sm) 0rem 0rem}.warning-popup{position:fixed;top:20px;right:20px;background:#001a33;color:#00eaff;border:2px solid #00eaff;border-radius:12px;padding:1rem 1.5rem;box-shadow:0 0 12px #00eaffcc,0 0 24px #00eaff66;display:flex;align-items:center;gap:1rem;z-index:9999}.warning-text{font-size:.95rem;font-weight:600;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:#00eaff;cursor:pointer;transition:color .2s ease,transform .2s ease}.close-warning:hover{color:#00f7ff;transform:scale(1.2)}.overlay-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;z-index:9998}.game-status-button-panel .helper-text{font-size:.875rem;color:var(--text-muted);margin:0;padding:.5rem;background:#ffffff0d;border-radius:4px;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 rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.game-status-button-panel{padding:.75rem;margin-top:.75rem}.game-status-button-panel .helper-text{font-size:.75rem;padding:.375rem}}.xhelos-tooltip{padding:8px;border-radius:6px;font-size:14px;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%;text-align:center}.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[data-open]{opacity:1;transform:scale(1);pointer-events:auto}.xhelos-tooltip.theme-dark{background-color:#333;color:#fff}.xhelos-tooltip.theme-light{background-color:#f0f0f0;color:#333;border:1px solid #ccc}.tooltip-arrow{position:absolute;width:8px;height:8px;background:inherit;transform:rotate(45deg)}.theme-light .tooltip-arrow{border-color:#ccc;border-style:solid;border-width:0 1px 1px 0}.timeline-event-card{display:flex;flex-direction:column;align-items:center;min-width:80px;max-width:80px;min-height:100%;background:#16213e;border:1px solid var(--color-slate-dark);border-radius:8px;padding:.5rem;transition:all .3s ease;cursor:pointer;position:relative;flex-shrink:0;justify-content:space-between}.timeline-event-card.effect-event{border-style:dashed}.timeline-event-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000004d}.timeline-event-card.team-own{border-color:#388e3c80;border-bottom:4px solid #388e3c}.timeline-event-card.team-own:hover{box-shadow:0 0 8px #388e3c66}.timeline-event-card.team-ally{border-color:#1976d280;border-bottom:4px solid #1976d2}.timeline-event-card.team-ally:hover{box-shadow:0 0 8px #1976d266}.timeline-event-card.team-enemy{border-color:#ef444480;border-bottom:4px solid #ef4444}.timeline-event-card.team-enemy:hover{box-shadow:0 0 8px #ef444466}.timeline-event-card.active{background:#00eaff26;border-width:2px;box-shadow:0 0 12px #00eaff99,0 0 20px #00eaff4d}.timeline-event-card.active.team-own{border-color:#388e3c;border-bottom-color:#388e3c}.timeline-event-card.active.team-ally{border-color:#1976d2;border-bottom-color:#1976d2}.timeline-event-card.active.team-enemy{border-color:#ef4444;border-bottom-color:#ef4444}.timeline-event-card.completed{background:#0f1419;opacity:.6}.timeline-event-card.completed.team-own{border-color:#388e3c4d;border-bottom-color:#388e3c99}.timeline-event-card.completed.team-ally{border-color:#1976d24d;border-bottom-color:#1976d299}.timeline-event-card.completed.team-enemy{border-color:#ef44444d;border-bottom-color:#ef444499}.timeline-event-card.artificial{background:#16213e;border:1px solid var(--color-slate-dark);border-bottom:1px solid var(--color-slate-dark)}.effect-icon{font-size:1.5rem;margin-bottom:.2rem}.unknown-icon{font-size:1.2rem;opacity:.7}.tooltip-info{color:var(--warning-color, #f39c12);font-style:italic;font-size:.9em}.card-step-indicator{background:var(--primary-color);color:#fff;font-size:.7rem;font-weight:700;padding:.1rem .4rem;border-radius:12px;min-width:20px;text-align:center;line-height:1.2}.timeline-event-card.active .card-step-indicator{background:#00eaff;color:#0a192f;font-weight:700}.card-unit-section{display:flex;align-items:center;justify-content:center;margin-bottom:.5rem;height:32px;width:32px}.artificial-icon{font-size:1.5rem;display:flex;align-items:center;justify-content:center}.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-slate-dark);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:500;line-height:1;max-width:100%;word-break:break-word}.active .action-name-small{color:var(--color-text-light);font-weight:600}.artificial-label{font-size:.8rem;color:var(--warning-color);font-weight:700;text-align:center}.play-button-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:#0009;border-radius:6px;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:#fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.timeline-event-card.animating{pointer-events:none}.card-tooltip-content{font-size:12px;line-height:1.3;padding:6px 8px;min-width:120px}.card-tooltip-content-name{font-weight:700;font-size:13px;margin-bottom:4px;color:var(--primary-color);border-bottom:1px solid rgba(84,155,255,.3);padding-bottom:2px}.card-tooltip-content-row{margin-top:3px;color:#e0e0e0}.card-tooltip-content-row.missed{color:#ff6b6b;margin-left:4px;font-style:italic}.card-tooltip-content-row.killed{color:#f44;font-weight:700}.cinematic-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:flex-end;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.cinematic-modal-container{width:100%;max-width:1400px;max-height:50vh;display:flex;flex-direction:column;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.cinematic-panel{background:#1a1a2e;border:1px solid var(--border-color);border-radius:8px 8px 0 0;padding:calc(var(--space-lg) + var(--space-sm)) var(--space-md) var(--space-md) var(--space-md);height:100%;display:flex;flex-direction:column;position:relative;margin-top:var(--space-md)}.cinematic-close-btn{position:absolute;top:1rem;right:1rem;background:transparent;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s;z-index:10}.cinematic-close-btn:hover{background:var(--border-color);color:var(--text-color)}.cinematic-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-md)}.cinematic-header h3{margin:0;color:var(--text-color);font-size:1.1rem}.step-indicator{font-size:.9rem;color:var(--text-secondary);background:var(--background-color);padding:var(--space-xs) var(--space-sm);border-radius:4px}.cinematic-controls{position:absolute;top:0;left:50%;transform:translate(-50%,-50%);z-index:10}.controls-container{display:flex;gap:var(--space-md);align-items:center;padding:var(--space-sm)!important;min-width:280px}.speed-text{font-size:.9rem;color:#00eaff;font-weight:600;min-width:35px;text-align:right}.speed-slider{width:140px}.play-btn{width:64px;height:32px;border-radius:6px;padding:0}.play-btn svg{width:14px;height:14px;margin-left:1px}.resolution-info{font-size:.9rem;color:var(--text-secondary);margin:0}.resolution-info p{margin:0}.action-timeline-container h4{margin:0 0 1rem;color:var(--text-color);font-size:1rem;border-bottom:1px solid var(--border-color);padding-bottom:.5rem}.action-timeline-row{display:flex;gap:calc(var(--space-sm) + var(--space-xs));padding:var(--space-md) 2rem;overflow-x:auto;overflow-y:visible;align-items:stretch;justify-content:flex-start}.game-view{display:flex;flex-direction:column;width:100%;overflow-x:auto;min-width:1300px}.game-view-layout{display:flex;flex-direction:row;flex:1;padding:0;gap:20px;box-sizing:border-box;margin:0 auto;min-width:1268px;overflow-x:auto}.left-column{width:270px;flex-shrink:0;padding:20px 10px;overflow:visible}.main-column{display:flex;justify-content:center;align-items:flex-start;padding:20px 0}.right-column{width:270px;flex-shrink:0;padding:20px 10px;overflow:visible}.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}.turn-info{margin-bottom:10px;padding:10px;border-radius:4px;color:#000}.turn-info-active{border:2px solid green;background-color:#e8f5e9}.turn-info-inactive{border:1px solid #eee;background-color:#f9f9f9}.available-unit{display:flex;align-items:center;padding:5px;margin-bottom:5px;border-radius:4px;cursor:pointer;background-color:#fff;color:#000;border:1px solid #ccc}.available-unit.selected{background-color:#e3f2fd;border:2px solid blue}.grid-row{display:flex}.unit-label{margin-left:10px}.column h4{font-size:1.5rem;color:var(--color-accent);text-align:center;text-transform:uppercase;font-weight:700}.cinematic-panel-placeholder{position:fixed;bottom:20px;left:50%;transform:translate(-50%);width:calc(100vw - 40px);max-width:1200px;height:180px;background-color:#0a141ee6;color:#fff;border:2px solid #3a7f9d;border-radius:8px;box-shadow:0 0 15px #3a7f9d80;display:flex;align-items:center;justify-content:center;z-index:1000;pointer-events:none}.lobby-container{max-width:900px;margin:2rem auto;padding:2rem;background-color:var(--color-bg)}.lobby-header{text-align:center;margin-bottom:2rem}.lobby-title{color:var(--color-accent-cyan);margin-bottom:.5rem}.lobby-header p{color:var(--color-slate-light);font-style:italic}.teams-container{display:flex;justify-content:center;gap:1rem;align-items:stretch}.team-column{flex:1;background-color:#0a192fb3;padding:1.5rem;border:1px solid var(--color-slate-dark);border-radius:8px;min-width:300px}.team-column h3{text-align:center;margin-top:0;margin-bottom:1.5rem;color:var(--color-text);border-bottom:1px solid var(--color-slate-dark);padding-bottom:1rem}.player-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.player-card{display:flex;align-items:center;gap:1rem;background-color:var(--color-slate-dark);padding:.75rem 1rem;border-radius:6px;border-left:4px solid var(--color-slate-light);transition:all .2s ease}.player-card.ready{border-left-color:var(--color-accent-cyan);background-color:#64ffda1a}.player-icon{color:var(--color-slate-light);flex-shrink:0}.player-card.ready .player-icon{color:var(--color-accent-cyan)}.player-name{font-weight:500;flex-grow:1}.you-tag{font-size:.8rem;color:#8892b0;font-style:italic}.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:800;color:var(--color-slate-light);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-slate-light)}.starting-countdown{text-align:center;margin-top:4rem}.starting-countdown h1{color:var(--color-accent-cyan)}.countdown-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0a192fd9;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-accent-cyan);margin-bottom:1rem;animation:pulse 1.5s infinite}.countdown-box h1{font-family:var(--font-heading);font-size:3rem;color:var(--color-accent-cyan);margin-bottom:.5rem}.countdown-timer{font-family:var(--font-heading);font-size:5rem;font-weight:800;color:#fff}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}*,*: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}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/InterVariable-H_M6nIbt.ttf) format("truetype")}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/InterVariable-Italic-CyhIcdxp.ttf) format("truetype")}@font-face{font-family:"Exo 2";font-style:normal;font-weight:700;font-display:swap;src:url(/assets/Exo2-Bold-DcvDsk83.woff2) format("woff2")}@font-face{font-family:"Exo 2";font-style:normal;font-weight:800;font-display:swap;src:url(/assets/Exo2-ExtraBold-DiK7HVEl.woff2) format("woff2")}:root{--color-bg: #0A192F;--color-text: #CCD6F6;--color-accent-cyan:#64FFDA;--color-darker-bg: #020c1b;--color-slate-light:#8892B0;--color-slate-dark: #3A506B;--color-primary: #549BFF;--color-secondary: #388e3c;--color-accent: #ffc107;--color-warning: #ff9800;--color-error: #d32f2f;--color-info: #1976d2;--color-log: #c1c5c9;--color-meta: #ffee58;--color-text-light: #ffffff;--color-text-dark: #000000;--color-green-dark: #388e3c;--color-green-light: #12e05b;--color-red: #ef4444;--color-blue: #1976d2;--color-highlight: #12e05b;--team-color-own: var(--color-green-dark);--team-color-ally: var(--color-blue);--team-color-enemy: var(--color-red);--color-success-bg: #28a745;--color-error-bg: #dc3545;--color-warning-bg: #ffc107;--color-info-bg: #17a2b8;--font-heading: "Exo 2","Segoe UI", sans-serif;--font-body: "Inter",Verdana, Geneva, sans-serif;--fs-h1: 2.5rem;--fs-h2: 2rem;--fs-h3: 1.75rem;--fs-h4: 1.2rem;--fs-h5: 1rem;--fs-body: 1.2rem;--fs-small: 1rem;--fs-small2: .8rem;--fs-xs: .6rem;--fs-input: 1.2rem;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem}@media (max-width: 768px){:root{--space-xs: .18rem;--space-sm: .375rem;--space-md: .75rem;--space-lg: 1.125rem;--fs-h1: 1.8rem;--fs-h2: 1.5rem;--fs-h3: 1.3rem;--fs-h4: 1.2rem;--fs-h5: .9rem;--fs-body: 1.1rem}}@media (max-width: 480px){:root{--space-xs: .125rem;--space-sm: .25rem;--space-md: .5rem;--space-lg: .75rem;--fs-h1: 1.6rem;--fs-h2: 1.3rem;--fs-h3: 1.15rem;--fs-h4: 1rem;--fs-h5: .85rem;--fs-body: 1rem}}html{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--fs-body);line-height:1.5;-webkit-font-smoothing:antialiased}body{margin:0px var(--space-lg)}a{color:var(--color-primary);font-weight:500;text-decoration:none;transition:color .2s ease}a:hover{color:var(--color-accent-cyan)}h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5{margin:0;font-family:var(--font-heading);font-weight:800;line-height:1.2;color:var(--color-text)}h1,.h1{font-size:var(--fs-h1)}h2,.h2{font-size:var(--fs-h2)}h3,.h3{font-size:var(--fs-h3)}h4,.h4{font-size:var(--fs-h4)}h5,.h5{font-size:var(--fs-h5)}button{background-color:transparent;border:1px solid var(--color-slate-dark);border-radius:6px;padding:10px 20px;color:var(--color-text, #CCD6F6);font-weight:700;font-family:var(--font-heading, "Exo 2", sans-serif);cursor:pointer;transition:all .2s ease-in-out;font-size:var(--fs-input);width:100%}button:hover:not(:disabled){border-color:var(--color-accent-cyan);color:var(--color-accent-cyan);box-shadow:0 0 10px 0 var(--color-accent-cyan)}button:active:not(:disabled){background-color:#64ffda1a;box-shadow:0 0 15px 2px var(--color-accent-cyan)}button:disabled{border-color:#2a3b4d;color:#4a5a70;cursor:not-allowed;opacity:.5}button.cta{background-color:var(--color-accent-cyan);border-color:var(--color-accent-cyan);color:var(--color-bg);box-shadow:0 0 8px #64ffda80;font-size:var(--fs-h4);width:100%}button.cta:hover:not(:disabled){background-color:#a3fff4;border-color:#a3fff4;box-shadow:0 0 15px 2px var(--color-accent-cyan);color:var(--color-bg)}button.cta:disabled{background-color:var(--color-slate-dark);border-color:var(--color-slate-dark);color:#6d84a3;opacity:.6;box-shadow:none}.btn-enhanced{background:#001a33;color:#00eaff;border:2px solid #00eaff;font-weight:700;cursor:pointer;box-shadow:0 0 6px #00eaff99,0 0 12px #00eaff4d;transition:transform .2s ease,color .2s ease,background .3s ease;display:flex;align-items:center;justify-content:center}.game-panel{background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460) padding-box,radial-gradient(circle at 10% 10%,#0891b2,#0d9488) border-box;border:2px solid transparent;border-radius:8px;box-shadow:0 2px 10px #00000080;color:#fff;padding:var(--space-md)}input,textarea,select{background-color:#2a3b4d80;color:var(--color-text);border:1px solid var(--color-slate-dark);border-radius:6px;padding:var(--space-sm) var(--space-md);font-family:var(--font-body);font-size:var(--fs-input);width:100%;box-sizing:border-box}input[type=range]{height:20px;background:transparent;outline:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;padding:0;border:none;width:auto}input[type=range]::-webkit-slider-runnable-track{width:100%;height:4px;background:#00eaff26;border-radius:2px;margin-top:8px}input[type=range]::-moz-range-track{width:100%;height:4px;background:#00eaff26;border-radius:2px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;background:#1a1a2e;border:2px solid #00eaff;border-radius:50%;cursor:pointer;margin-top:-8px;transition:all .2s;box-shadow:0 0 8px #00eaff66}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.15);box-shadow:0 0 12px #00eaff99;background:#00eaff1a}input[type=range]::-moz-range-thumb{width:20px;height:20px;background:#1a1a2e;border:2px solid #00eaff;border-radius:50%;cursor:pointer;transition:all .2s;box-shadow:0 0 8px #00eaff66}input[type=range]:focus{border:none;box-shadow:none}input[type=range]::-moz-range-thumb:hover{transform:scale(1.15);box-shadow:0 0 12px #00eaff99;background:#00eaff1a}input:focus,textarea:focus,select:focus{border-color:var(--color-accent-cyan);outline:none;box-shadow:0 0 5px var(--color-accent-cyan)}input::placeholder,textarea::placeholder{color:var(--color-slate-light);opacity:.8}.section{background-color:#0a192f80;border:1px solid var(--color-slate-dark);border-radius:8px;padding:1rem;margin-top:2rem}.section h3{color:var(--color-accent-cyan);margin:0 0 1.5rem;border-bottom:1px solid var(--color-slate-dark);padding-bottom:.75rem}.section ul{list-style:none;padding:0}.section li{background-color:#2a3b4d80;padding:.75rem;border-radius:4px;margin-bottom:.5rem;transition:background-color .2s ease}.section li:hover{background-color:var(--color-slate-dark)}.section li a{color:var(--color-text);text-decoration:none;font-weight:500;width:100%;display:block}.error-message{color:var(--color-error, red);font-weight:700}.warning-message{color:var(--color-warning, orange);font-style:italic;margin-top:.5rem;display:block}.team-1{background-color:#4caf50}.team-2{background-color:#2196f3}.team-3{background-color:#00bcd4}.team-4{background-color:#9c27b0}.team-5{background-color:#ff9800}.team-6{background-color:#795548}.team-7{background-color:#f44336}.team-8{background-color:#607d8b}.btn-selectable{border:2px solid #00b4ff;border-radius:12px;background:radial-gradient(circle at 30% 30%,#00b4ff26,#001e3c66);cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.btn-selectable:hover:not(.selected){border-color:var(--color-accent-cyan);box-shadow:0 0 8px #64ffda80}.btn-selectable.selected{border-color:var(--color-accent-cyan);background:radial-gradient(circle at 30% 30%,#000,#001e3c66);box-shadow:0 0 15px 3px #64ffdae6,inset 0 0 20px #64ffda33;animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{box-shadow:0 0 15px 3px #64ffdae6,inset 0 0 20px #64ffda33}50%{box-shadow:0 0 25px 5px #64ffda,inset 0 0 30px #64ffda4d}}.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-fixed{width:16px;height:16px;display:inline-block}.form-row{display:flex;gap:1.5rem;align-items:flex-end}.form-row .form-group{margin-bottom:0}.form-row .form-group-large{flex-grow:1}.form-group{display:flex;flex-direction:column;gap:.5rem;text-align:left}.form-group label{font-weight:500;font-size:var(--fs-small);color:var(--color-slate-light);padding-left:.25rem}.btn-spaced{margin-top:var(--space-md)}.panel-card{background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460) padding-box,radial-gradient(circle at 10% 10%,#0891b2,#0d9488) border-box;border:2px solid transparent;border-radius:1rem;padding:16px;box-shadow:0 0 6px #0000008c;max-height:75vh}
