:root{--side-menu-top-offset: 330px;--side-menu-max-height-offset: 300px;--build-menu-top-offset: 100px;--build-menu-cards-offset: 180px;--editor-palette-width: 220px;--editor-inspector-width: 250px;--editor-toolbar-height: 48px;--editor-statusbar-height: 30px;--editor-available-width: calc(100vw - var(--editor-palette-width) - var(--editor-inspector-width));--editor-available-height: calc(100vh - var(--editor-toolbar-height) - var(--editor-statusbar-height));--editor-canvas-scale: .633;--color-critical: #ff4444;--color-warning: #ffaa00;--color-healthy: #44ff44;--color-neutral: #f0d090;--color-accent: #ffd700;--color-secondary: #90c0f0;--color-border: #8b6914;--color-background: rgba(0, 0, 0, .8);--hud-padding: 10px 20px;--section-gap: 20px;--item-gap: 12px;--button-gap: 8px;--icon-size: 18px;--button-size: 32px;--font-size-primary: 16px;--font-size-secondary: 14px;--transition-speed: .2s;--pulse-duration: 1s}body{margin:0;padding:0;overflow:hidden;background-color:#1a1a1a;font-family:Courier New,monospace}#game-container{position:relative;width:100vw;height:100vh}canvas{display:block;position:absolute;top:0;left:0}#hud{position:absolute;top:10px;left:10px;right:10px;background:var(--color-background);color:var(--color-neutral);padding:var(--hud-padding);border:2px solid var(--color-border);border-radius:5px;font-size:var(--font-size-primary);display:flex;justify-content:space-between;align-items:center;gap:var(--section-gap);z-index:100}#hud>*{pointer-events:none}#hud button{pointer-events:auto}.hud-section{display:flex;align-items:center;gap:var(--item-gap);pointer-events:none}.hud-game-state{flex:1;justify-content:flex-start}.hud-critical-status{flex:0 0 auto;justify-content:center}.hud-resources{flex:0 0 auto;gap:15px}.hud-utility{flex:0 0 auto;gap:var(--button-gap)}.wave-info-group{display:flex;align-items:center;gap:6px;font-size:var(--font-size-primary);font-weight:700}.wave-icon{font-size:var(--icon-size);color:var(--color-accent)}.wave-text{color:var(--color-neutral)}.wave-countdown{font-size:var(--font-size-secondary);color:var(--color-secondary);padding:2px 8px;background:#8b691433;border-radius:3px}.wave-countdown.urgent{color:var(--color-warning);animation:wave-flash .5s infinite}.wave-controls{display:flex;gap:4px}.core-health{display:flex;align-items:center;gap:6px;font-size:var(--font-size-primary);padding:4px 12px;border-radius:4px;transition:all .3s ease;font-weight:600}.core-health .status-icon{font-size:var(--icon-size)}.core-health .status-label{color:var(--color-neutral)}.core-health .status-value{font-family:Courier New,monospace;font-weight:700}.core-health.healthy{color:var(--color-healthy);background:#44ff441a}.core-health.healthy .status-value{color:var(--color-healthy)}.core-health.warning{color:var(--color-warning);background:#ffaa0026}.core-health.warning .status-value{color:var(--color-warning)}.core-health.critical{color:var(--color-critical);background:#f443;animation:critical-pulse var(--pulse-duration) infinite;font-weight:700;font-size:18px}.core-health.critical .status-value{color:var(--color-critical)}.resource-item{display:flex;align-items:center;gap:6px;font-size:var(--font-size-primary);font-weight:600}.resource-icon{font-size:var(--icon-size)}#mana-container .resource-icon{color:var(--color-accent)}#souls-container .resource-icon{color:var(--color-secondary)}.resource-value{color:var(--color-neutral);font-family:Courier New,monospace}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:var(--button-size);height:var(--button-size);padding:0;background:transparent;border:2px solid transparent;border-radius:4px;color:var(--color-neutral);font-size:var(--font-size-primary);cursor:pointer;transition:all var(--transition-speed) ease;font-family:Courier New,monospace}.icon-btn:hover{background:#8b691433;border-color:var(--color-border);transform:translateY(-1px)}.icon-btn:active{transform:translateY(0)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.icon-btn:disabled:hover{transform:none;background:transparent;border-color:transparent}#wave-help-btn{width:24px;height:24px;background:#ffd70033;border:1px solid #ffd700;border-radius:50%;font-size:12px;color:gold}#wave-help-btn:hover{background:#ffd70066;outline:2px solid #ffd700;outline-offset:2px;transform:translateY(-1px)}#start-next-wave-btn{border-color:var(--color-accent);color:var(--color-accent)}#start-next-wave-btn:hover{background:#ffd70033;border-color:var(--color-accent)}@keyframes critical-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.05)}}@keyframes wave-flash{0%,to{background:#8b691433}50%{background:#ffaa004d}}#build-menu{position:absolute;right:10px;top:80px;background:#000c;color:#f0d090;padding:15px;border:2px solid #8b6914;border-radius:5px;font-size:14px;z-index:100;width:30%;max-width:400px;min-width:200px;max-height:calc(100vh - var(--build-menu-top-offset));overflow-y:auto}#build-menu h3{margin:0;color:gold;font-size:16px}#build-menu .menu-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}#build-menu .menu-actions{display:flex;align-items:center;gap:6px}#build-menu .collapse-btn{background:transparent;border:none;color:#f0d090;font-size:14px;cursor:pointer;padding:4px 8px;transition:all .2s;border-radius:3px}#build-menu .collapse-btn:hover{background:#8b69144d;color:gold}#build-menu.collapsed .collapse-btn{transform:rotate(-90deg)}#build-menu.collapsed .cards-container{display:none}#build-menu.collapsed{min-width:auto;width:auto}#build-menu .cards-container{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:10px;max-height:calc(100vh - var(--build-menu-cards-offset));overflow-y:auto;overflow-x:hidden;padding-right:8px;scrollbar-width:thin;scrollbar-color:#8b6914 rgba(139,105,20,.2)}#build-menu .cards-container::-webkit-scrollbar{width:10px}#build-menu .cards-container::-webkit-scrollbar-track{background:#8b691433;border-radius:5px;margin:5px 0}#build-menu .cards-container::-webkit-scrollbar-thumb{background:#8b6914;border-radius:5px;border:2px solid rgba(0,0,0,.8)}#build-menu .cards-container::-webkit-scrollbar-thumb:hover{background:gold}#build-menu .category-header{grid-column:1 / -1;font-size:12px;font-weight:700;color:#f0d090;text-transform:uppercase;letter-spacing:.5px;padding:6px 8px;background:#8b69144d;border-left:3px solid #8b6914;border-radius:3px;margin-top:4px}#build-menu .category-header:first-child{margin-top:0}#build-menu-detail{position:absolute;right:10px;top:var(--side-menu-top-offset);background:#000000d9;color:#f0d090;padding:15px;border:2px solid #8b6914;border-radius:5px;font-size:14px;z-index:95;width:28%;max-width:360px;min-width:220px;max-height:calc(100vh - var(--side-menu-max-height-offset));overflow-y:auto;box-shadow:0 4px 10px #0009}#build-menu-detail .building-header{display:flex;align-items:center;gap:12px;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid #8b6914}#build-menu-detail .building-header .sprite-preview{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#8b691433;border:2px solid #8b6914;border-radius:5px;overflow:hidden;flex-shrink:0;padding:4px;box-sizing:content-box}#build-menu-detail .building-header .sprite-preview canvas{display:block;position:static;top:auto;left:auto;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}#build-menu-detail .building-header-text{flex:1}#build-menu-detail h3{margin:0;color:gold;font-size:16px}#build-menu-detail .build-detail-subtitle{color:#90c0f0;font-size:12px}#build-menu-detail .close-btn{background:#3a2810;color:#f0d090;border:1px solid #8b6914;border-radius:4px;width:28px;height:28px;cursor:pointer}#build-menu-detail .close-btn:hover{background:#4a3820}#build-menu-detail .info-section{margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid #8b6914}#build-menu-detail .info-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}#build-menu-detail .info-row{display:flex;justify-content:space-between;gap:8px;margin:6px 0;font-size:12px}#build-menu-detail .info-label{color:#90c0f0}#build-menu-detail .info-value{color:#f0d090;flex:1;white-space:pre-line;line-height:1.4}#build-menu-detail .info-row .info-value{text-align:right}#build-menu-detail .info-section>.info-value{text-align:left}#build-menu-detail .section-title{color:gold;font-size:13px;margin:8px 0 6px;font-weight:700}#build-menu .game-card{background:#2a1810;border:2px solid #8b6914;border-radius:5px;padding:8px;cursor:pointer;transition:all .2s;position:relative;display:flex;flex-direction:column;align-items:center;min-height:140px}#build-menu .game-card:hover{background:#3a2820;border-color:#a07818;transform:translateY(-2px);box-shadow:0 4px 8px #00000080}#build-menu .game-card.active{background:#4a3830;border-color:gold;box-shadow:0 0 10px #ffd7004d}#build-menu .game-card.disabled{opacity:.6;cursor:not-allowed}#build-menu .game-card.disabled:hover{transform:none;box-shadow:none}#build-menu .game-card.disabled .sprite-preview{position:relative}#build-menu .game-card.disabled .sprite-preview:after{content:"";position:absolute;inset:0;background:#808080b3;mix-blend-mode:saturation;pointer-events:none}#build-menu .sprite-preview{width:64px;height:64px;display:flex;align-items:center;justify-content:center;margin-bottom:8px;position:relative;overflow:hidden}#build-menu .sprite-preview canvas{display:block;position:static;top:auto;left:auto;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}#build-menu .card-name{color:gold;font-size:11px;font-weight:700;margin-bottom:2px;text-align:center;width:100%}#build-menu .card-cost{display:flex;gap:6px;font-size:10px;color:#90c0f0;margin-top:auto}#build-menu .cost-badge{background:#8b69144d;padding:2px 6px;border-radius:3px;border:1px solid #8b6914}#build-menu .card-description{color:#b0a080;font-size:9px;text-align:center;margin-bottom:2px;line-height:1.2}#build-menu .card-stats{color:#90c0f0;font-size:9px;text-align:center;margin-bottom:4px;font-weight:700}#build-menu .card-detail-btn{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:50%;border:1px solid #8b6914;background:#8b691440;color:gold;font-weight:700;cursor:pointer;transition:all .2s;line-height:1;display:inline-flex;align-items:center;justify-content:center;padding:0;z-index:1}#build-menu .card-detail-btn:hover,#build-menu .card-detail-btn:focus-visible{background:#8b691473;box-shadow:0 0 6px #ffd70066}#build-menu::-webkit-scrollbar{width:8px}#build-menu::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}#build-menu::-webkit-scrollbar-thumb{background:#8b6914;border-radius:4px}#build-menu::-webkit-scrollbar-thumb:hover{background:#a07818}.tooltip{position:absolute;background:#000000f2;color:#f0d090;padding:10px 15px;border:2px solid #8b6914;border-radius:5px;font-size:12px;pointer-events:none;z-index:1000;display:none;min-width:200px;max-width:300px}.tooltip.visible{display:block}.tooltip .tooltip-title{color:gold;font-weight:700;margin-bottom:5px}.tooltip .tooltip-cost{color:#90c0f0;margin-bottom:5px}.tooltip .tooltip-desc{color:#f0d090;font-size:11px;line-height:1.4}#selected-building-menu{position:absolute;right:10px;top:var(--side-menu-top-offset);background:#000c;color:#f0d090;padding:15px;border:2px solid #8b6914;border-radius:5px;font-size:14px;z-index:100;width:30%;max-width:400px;min-width:200px;display:none;max-height:calc(100vh - var(--side-menu-max-height-offset));overflow-y:auto}#selected-building-menu .building-header{display:flex;align-items:center;gap:12px;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid #8b6914}#selected-building-menu .building-header .sprite-preview{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#8b691433;border:2px solid #8b6914;border-radius:5px;overflow:hidden;flex-shrink:0;padding:4px;box-sizing:content-box}#selected-building-menu .building-header .sprite-preview canvas{display:block;position:static;top:auto;left:auto;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}#selected-building-menu .building-header-text{flex:1}#selected-building-menu h3{margin:0;color:gold;font-size:16px}#selected-building-menu .info-section{margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid #8b6914}#selected-building-menu .info-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}#selected-building-menu .info-row{display:flex;justify-content:space-between;margin:5px 0;font-size:12px}#selected-building-menu .info-label{color:#90c0f0}#selected-building-menu button{width:100%;margin:5px 0;padding:8px;background:#3a2810;color:#f0d090;border:1px solid #8b6914;border-radius:3px;cursor:pointer;font-family:inherit;font-size:12px}#selected-building-menu button:hover{background:#4a3820}#selected-building-menu button:disabled{opacity:.5;cursor:not-allowed}#selected-building-menu .section-title{color:gold;font-size:13px;margin:10px 0 5px;font-weight:700}#selected-building-menu .cards-container{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:5px}#selected-building-menu .game-card{background:#2a1810;border:2px solid #8b6914;border-radius:5px;padding:6px;cursor:pointer;transition:all .2s;position:relative;display:flex;flex-direction:column;align-items:center;min-height:120px}#selected-building-menu .game-card:hover{background:#3a2820;border-color:#a07818;transform:translateY(-2px);box-shadow:0 4px 8px #00000080}#selected-building-menu .game-card.disabled{opacity:.6;cursor:not-allowed;pointer-events:none}#selected-building-menu .game-card.disabled:hover{transform:none;box-shadow:none}#selected-building-menu .game-card.disabled .sprite-preview{position:relative}#selected-building-menu .game-card.disabled .sprite-preview:after{content:"";position:absolute;inset:0;background:#808080b3;mix-blend-mode:saturation;pointer-events:none}#selected-building-menu .sprite-preview{width:48px;height:48px;display:flex;align-items:center;justify-content:center;margin-bottom:6px;position:relative;overflow:hidden}#selected-building-menu .sprite-preview canvas{display:block;position:static;top:auto;left:auto;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}#selected-building-menu .card-name{color:gold;font-size:10px;font-weight:700;margin-bottom:2px;text-align:center;width:100%}#selected-building-menu .card-cost{display:flex;gap:4px;font-size:9px;color:#90c0f0;margin-top:auto}#selected-building-menu .cost-badge{background:#8b69144d;padding:2px 4px;border-radius:3px;border:1px solid #8b6914}#selected-building-menu .card-description{color:#b0a080;font-size:8px;text-align:center;margin-bottom:2px;line-height:1.2}#selected-building-menu .card-stats{color:#90c0f0;font-size:9px;text-align:center;margin-bottom:3px;font-weight:700}.sell-button-container{display:flex;justify-content:flex-end}#selected-building-menu .sell-button{width:auto;margin:0;background:transparent;color:#f0d090;border:0px solid transparent;border-radius:3px;cursor:pointer;font-family:inherit;font-size:11px;transition:all .2s}#selected-building-menu .sell-button:hover{border-color:#8b6914;background:#8b691433;outline:2px solid #8b6914;outline-offset:2px}#selected-building-menu::-webkit-scrollbar{width:8px}#selected-building-menu::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}#selected-building-menu::-webkit-scrollbar-thumb{background:#8b6914;border-radius:4px}#selected-building-menu::-webkit-scrollbar-thumb:hover{background:#a07818}#selected-unit-menu{position:absolute;right:10px;top:var(--side-menu-top-offset);background:#000c;color:#f0d090;padding:15px;border:2px solid #8b6914;border-radius:5px;font-size:14px;z-index:100;width:30%;max-width:400px;min-width:200px;display:none;max-height:calc(100vh - var(--side-menu-max-height-offset));overflow-y:auto}#selected-unit-menu .unit-header{display:flex;align-items:center;gap:12px;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid #8b6914}#selected-unit-menu .unit-header .sprite-preview{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#8b691433;border:2px solid #8b6914;border-radius:5px;overflow:hidden;flex-shrink:0;padding:4px;box-sizing:content-box}#selected-unit-menu .unit-header .sprite-preview canvas{display:block;position:static;top:auto;left:auto;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}#selected-unit-menu .unit-header-text{flex:1}#selected-unit-menu h3{margin:0;color:gold;font-size:16px}#selected-unit-menu .info-section{margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid #8b6914}#selected-unit-menu .info-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}#selected-unit-menu .info-row{display:flex;justify-content:space-between;margin:5px 0;font-size:12px}#selected-unit-menu .info-label{color:#90c0f0}#selected-unit-menu .section-title{color:gold;font-size:13px;margin:10px 0 5px;font-weight:700}#selected-unit-menu::-webkit-scrollbar{width:8px}#selected-unit-menu::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}#selected-unit-menu::-webkit-scrollbar-thumb{background:#8b6914;border-radius:4px}#selected-unit-menu::-webkit-scrollbar-thumb:hover{background:#a07818}#selected-trap-menu{position:absolute;right:10px;top:var(--side-menu-top-offset);background:#000c;color:#f0d090;padding:15px;border:2px solid #8b6914;border-radius:5px;font-size:14px;z-index:100;width:30%;max-width:400px;min-width:200px;display:none;max-height:calc(100vh - var(--side-menu-max-height-offset));overflow-y:auto}#selected-trap-menu .trap-header{display:flex;align-items:center;gap:12px;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid #8b6914}#selected-trap-menu .trap-header .sprite-preview{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#8b691433;border:2px solid #8b6914;border-radius:5px;overflow:hidden;flex-shrink:0;padding:4px;box-sizing:content-box}#selected-trap-menu .trap-header .sprite-preview canvas{display:block;position:static;top:auto;left:auto;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}#selected-trap-menu .trap-header-text{flex:1}#selected-trap-menu h3{margin:0;color:gold;font-size:16px}#selected-trap-menu .info-section{margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid #8b6914}#selected-trap-menu .info-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}#selected-trap-menu .info-row{display:flex;justify-content:space-between;margin:5px 0;font-size:12px}#selected-trap-menu .info-label{color:#90c0f0}#selected-trap-menu .section-title{color:gold;font-size:13px;margin:10px 0 5px;font-weight:700}#selected-trap-menu::-webkit-scrollbar{width:8px}#selected-trap-menu::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}#selected-trap-menu::-webkit-scrollbar-thumb{background:#8b6914;border-radius:4px}#selected-trap-menu::-webkit-scrollbar-thumb:hover{background:#a07818}#summon-menu,#trap-menu{position:absolute;right:10px;bottom:10px;background:#000c;color:#f0d090;padding:15px;border:2px solid #8b6914;border-radius:5px;font-size:14px;z-index:100;min-width:200px;display:none}#summon-menu h3,#trap-menu h3{margin:0 0 10px;color:gold;font-size:16px}#summon-menu button{width:100%;margin:5px 0;padding:8px;background:#3a2810;color:#f0d090;border:1px solid #8b6914;border-radius:3px;cursor:pointer;font-family:inherit;font-size:12px}#trap-menu button{width:100%;margin:5px 0;padding:8px;background:#3a2810;color:#f0d090;border:1px solid #8b6914;border-radius:3px;cursor:pointer;font-family:inherit;font-size:12px;display:flex;justify-content:space-between;align-items:center}#summon-menu button:hover,#trap-menu button:hover{background:#4a3820}#summon-menu button:disabled{opacity:.5;cursor:not-allowed}#trap-menu button:disabled{opacity:.5;cursor:not-allowed}#trap-menu button.active{background:#5a4830;border-color:gold}#trap-menu .help-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:#ffd70033;border:1px solid #ffd700;border-radius:50%;font-size:12px;color:gold;cursor:help;flex-shrink:0;margin-left:8px;pointer-events:all;user-select:none}#trap-menu .help-icon:hover{background:#ffd70066}#trap-menu .button-text{flex:1;text-align:left;pointer-events:none}#game-message{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#000000e6;color:gold;padding:30px 50px;border:3px solid #8b6914;border-radius:10px;font-size:24px;text-align:center;z-index:200;display:none}#game-message button{margin-top:20px;padding:10px 30px;background:#3a2810;color:#f0d090;border:2px solid #8b6914;border-radius:5px;cursor:pointer;font-family:inherit;font-size:16px}#game-message button:hover{background:#4a3820}#home-screen{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:transparent;z-index:50;pointer-events:none}#home-screen>*{pointer-events:auto}#home-screen .title{font-size:64px;color:gold;margin-bottom:60px;text-shadow:3px 3px 6px rgba(0,0,0,.8),0 0 20px rgba(255,215,0,.5);font-weight:700;letter-spacing:4px;background:#1a1a1ab3;padding:20px 40px;border-radius:10px;border:2px solid rgba(139,105,20,.5)}#home-screen .menu{display:flex;flex-direction:column;gap:20px;min-width:300px;background:#1a1a1acc;padding:30px;border-radius:10px;border:2px solid rgba(139,105,20,.6);box-shadow:0 8px 32px #000000b3}#home-screen button{padding:15px 30px;background:#3a2810;color:#f0d090;border:2px solid #8b6914;border-radius:5px;font-family:Courier New,monospace;font-size:18px;cursor:pointer;transition:all .2s}#home-screen button:hover:not(:disabled){background:#4a3820;border-color:gold;transform:translateY(-2px);box-shadow:0 4px 8px #00000080}#home-screen button:disabled{opacity:.5;cursor:not-allowed}#readme-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;display:none;justify-content:center;align-items:center;z-index:400}#readme-modal .modal-content{background:#1a1a1a;border:3px solid #8b6914;border-radius:10px;padding:30px;max-width:800px;max-height:80vh;overflow-y:auto;color:#f0d090;font-family:Courier New,monospace}#readme-modal h1{color:gold;font-size:28px;margin-top:20px;margin-bottom:10px}#readme-modal h2{color:gold;font-size:22px;margin-top:15px;margin-bottom:8px}#readme-modal h3{color:#f0d090;font-size:18px;margin-top:12px;margin-bottom:6px}#readme-modal code{background:#2a2a2a;padding:2px 6px;border-radius:3px;color:#90c0f0;font-family:Courier New,monospace}#readme-modal pre{background:#2a2a2a;padding:15px;border-radius:5px;overflow-x:auto;border:1px solid #8b6914}#readme-modal pre code{background:none;padding:0}#readme-modal a{color:#90c0f0;text-decoration:none}#readme-modal a:hover{color:gold;text-decoration:underline}#readme-modal .close-btn{float:right;background:#3a2810;color:#f0d090;border:2px solid #8b6914;border-radius:5px;padding:10px 20px;cursor:pointer;font-family:inherit;font-size:14px}#readme-modal .close-btn:hover{background:#4a3820;border-color:gold}#exit-confirm-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;display:none;justify-content:center;align-items:center;z-index:500}#exit-confirm-modal .modal-content{background:#1a1a1a;border:3px solid #8b6914;border-radius:10px;padding:30px;max-width:400px;color:#f0d090;font-family:Courier New,monospace;text-align:center}#exit-confirm-modal h2{color:gold;font-size:24px;margin-top:0;margin-bottom:20px}#exit-confirm-modal p{font-size:16px;margin-bottom:30px;line-height:1.5}#exit-confirm-modal .button-group{display:flex;gap:15px;justify-content:center}#exit-confirm-modal button{padding:12px 24px;background:#3a2810;color:#f0d090;border:2px solid #8b6914;border-radius:5px;cursor:pointer;font-family:Courier New,monospace;font-size:16px;transition:all .2s}#exit-confirm-modal button:hover{background:#4a3820;border-color:gold}#exit-confirm-modal button.cancel-btn{background:#2a4a2a}#exit-confirm-modal button.cancel-btn:hover{background:#3a5a3a}#impressum-footer{position:fixed;bottom:0;left:0;right:0;background:#000000d9;color:#888;padding:8px 15px;font-size:11px;text-align:center;border-top:1px solid #333;z-index:350;pointer-events:none}#impressum-footer a{color:#aaa;text-decoration:none;pointer-events:auto;cursor:pointer}#impressum-footer a:hover{color:#f0d090;text-decoration:underline}#impressum-footer .version-info{color:#666;margin-left:10px}#impressum-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;z-index:10000;justify-content:center;align-items:center}#impressum-modal .modal-content{background:#2a1810;color:#f0d090;padding:30px;border-radius:10px;border:3px solid #8b6914;max-width:600px;max-height:80vh;overflow-y:auto;position:relative;font-family:Courier New,monospace}#impressum-modal h2{color:gold;margin-top:0;margin-bottom:20px;font-size:24px}#impressum-modal h3{color:#f0d090;margin-top:20px;margin-bottom:10px;font-size:18px}#impressum-modal p{line-height:1.6;margin-bottom:15px}#impressum-modal .close-btn{position:absolute;top:10px;right:10px;background:#3a2810;color:#f0d090;border:2px solid #8b6914;border-radius:5px;padding:8px 16px;cursor:pointer;font-family:Courier New,monospace;font-size:14px}#impressum-modal .close-btn:hover{background:#4a3820;border-color:gold}#wave-detail-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;display:none;justify-content:center;align-items:center;z-index:450}#wave-detail-modal .modal-content{background:#1a1a1a;border:3px solid #8b6914;border-radius:10px;padding:30px;max-width:600px;max-height:80vh;overflow-y:auto;color:#f0d090;font-family:Courier New,monospace}#wave-detail-modal h2{color:gold;font-size:24px;margin-top:0;margin-bottom:10px}#wave-detail-modal .modal-description{font-size:14px;color:#90c0f0;margin-bottom:20px;line-height:1.4}#wave-detail-modal .close-btn{float:right;background:#3a2810;color:#f0d090;border:2px solid #8b6914;border-radius:5px;padding:8px 16px;cursor:pointer;font-family:inherit;font-size:14px}#wave-detail-modal .close-btn:hover{background:#4a3820;border-color:gold}#wave-detail-table{width:100%;border-collapse:collapse;margin-bottom:20px}#wave-detail-table th{background:#2a1810;color:gold;padding:10px;text-align:left;border:1px solid #8b6914;font-size:14px}#wave-detail-table td{padding:8px 10px;border:1px solid #8b6914;font-size:13px}#wave-detail-table tbody tr:nth-child(2n){background:#8b69141a}#wave-detail-table tbody tr:hover{background:#8b691433}#wave-detail-table .status-defeated{color:#0f0;font-weight:700}#wave-detail-table .status-active{color:gold;font-weight:700}#wave-detail-table .status-pending{color:#888}.wave-detail-summary{padding:15px;background:#8b691433;border:2px solid #8b6914;border-radius:5px;text-align:center;font-size:16px}.wave-detail-summary strong{color:gold}.wave-detail-summary span{color:#90c0f0;font-size:18px;font-weight:700}@media (hover: none) and (pointer: coarse){button{min-height:44px;min-width:44px;padding:8px 12px}#hud{font-size:14px;padding:8px 12px}#build-menu button,#selected-building-menu button,#selected-unit-menu button,#trap-menu button{min-height:44px;padding:8px}}@media (max-width: 600px){#hud{font-size:12px;padding:6px 10px;flex-wrap:wrap;gap:8px}#hud .resource{gap:12px}#hud .status{flex-basis:100%;justify-content:center}#build-menu,#selected-building-menu,#selected-unit-menu,#trap-menu{max-width:180px}#build-menu button,#selected-building-menu button,#selected-unit-menu button,#trap-menu button{font-size:12px;padding:6px}.modal-content{width:95%;max-width:95%;padding:15px}.modal-content h2{font-size:18px}.modal-content p,.modal-content ul{font-size:12px}#tooltip{font-size:11px;max-width:200px}#game-message-content{font-size:20px;padding:20px}}@media (max-width: 900px) and (min-width: 601px){#hud{font-size:14px}#build-menu,#selected-building-menu,#selected-unit-menu,#trap-menu{max-width:200px}.modal-content{width:90%;max-width:600px}}@media (max-height: 600px) and (orientation: landscape){#hud{padding:4px 8px;font-size:12px}#build-menu,#selected-building-menu,#selected-unit-menu,#trap-menu{top:80px;max-height:calc(100vh - 90px)}.modal-content{max-height:90vh;overflow-y:auto}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){canvas{image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}}#camera-controls-hint{position:absolute;bottom:10px;right:10px;background:#000000b3;color:#f0d090;padding:10px;border:2px solid #8b6914;border-radius:5px;z-index:90;display:none;flex-direction:column;gap:8px;pointer-events:none;opacity:.8;transition:opacity .3s ease}#camera-controls-hint:hover{opacity:1}#zoom-indicator{text-align:center;font-size:16px;font-weight:700;color:gold;padding:4px;background:#8b69144d;border-radius:3px}#camera-help-text{display:flex;flex-direction:column;gap:4px;font-size:11px}.camera-help-item{display:flex;align-items:center;gap:4px;white-space:nowrap}@media (max-width: 600px){#camera-controls-hint{display:none}}@media (max-width: 900px) and (min-width: 601px){#camera-help-text{display:none}#camera-controls-hint{padding:6px 10px}}#game-start-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;display:none;justify-content:center;align-items:center;z-index:450}#game-start-modal .modal-content{background:#1a1a1a;border:3px solid #8b6914;border-radius:10px;padding:30px;max-width:500px;max-height:80vh;overflow-y:auto;color:#f0d090;font-family:Courier New,monospace;text-align:center}#game-start-modal h2{color:gold;font-size:26px;margin-top:0;margin-bottom:20px;text-shadow:2px 2px 4px rgba(0,0,0,.5)}#game-start-modal .game-start-info{text-align:left;margin-bottom:25px}#game-start-modal .info-section{margin-bottom:15px;padding:12px;background:#8b691426;border-radius:5px;border-left:3px solid #8b6914}#game-start-modal .info-section h3{color:gold;font-size:16px;margin:0 0 8px}#game-start-modal .info-section p{font-size:13px;line-height:1.5;margin:0;color:#f0d090}#game-start-modal .info-section strong{color:#90c0f0}#game-start-modal .info-section ul{margin:0;padding-left:20px;font-size:12px;line-height:1.6}#game-start-modal .info-section li{margin-bottom:4px}#game-start-modal .button-group{display:flex;justify-content:center}#game-start-modal button{padding:12px 30px;background:#3a2810;color:#f0d090;border:2px solid #8b6914;border-radius:5px;cursor:pointer;font-family:Courier New,monospace;font-size:16px;transition:all .2s}#game-start-modal button:hover{background:#4a3820;border-color:gold;transform:translateY(-2px);box-shadow:0 4px 8px #00000080}#map-editor-ui{display:none;flex-direction:column;height:100vh;background:#1a1a1a;position:fixed;inset:0;z-index:100}#editor-toolbar{background:#2a2a2a;padding:8px 16px;border-bottom:2px solid #444;display:flex;align-items:center;gap:16px;position:relative;z-index:300;flex-wrap:wrap}.toolbar-section{display:flex;align-items:center;gap:8px}.toolbar-right{margin-left:auto}.toolbar-btn,.tool-btn{background:#3a3a3a;color:#f0d090;border:2px solid #555;border-radius:4px;padding:6px 12px;cursor:pointer;font-family:Courier New,monospace;font-size:14px;display:flex;align-items:center;gap:4px;transition:all .2s}.toolbar-btn:hover,.tool-btn:hover{background:#4a4a4a;border-color:gold;transform:translateY(-1px)}.toolbar-btn:active,.tool-btn:active{transform:translateY(0)}.tool-btn.selected{background:#5a5a2a;border-color:gold;color:gold}.tool-group{display:flex;align-items:center;gap:8px;padding:4px 8px;background:#333;border-radius:4px}.tool-group label{color:#f0d090;font-family:Courier New,monospace;font-size:14px}.status-text{color:#90c0f0;font-family:Courier New,monospace;font-size:14px;padding:0 12px}#editor-workspace{display:flex;flex:1;overflow:hidden}.editor-panel{background:#2a2a2a;overflow-y:auto;border-right:2px solid #444;position:relative;z-index:300}#tile-palette{width:var(--editor-palette-width);padding:16px}#tile-inspector{width:var(--editor-inspector-width);padding:16px;border-right:none;border-left:2px solid #444}#map-canvas-container{flex:1;position:relative;background:#1a1a1a;overflow:hidden;z-index:200}#map-editor-ui[style*="display: flex"]~#game-container canvas,body:has(#map-editor-ui[style*="display: flex"]) canvas{position:fixed!important;left:var(--editor-palette-width)!important;top:var(--editor-toolbar-height)!important;z-index:250!important;pointer-events:auto}.palette-header,.inspector-header{color:gold;font-family:Courier New,monospace;font-size:16px;font-weight:700;margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid #555}.palette-category{margin-bottom:20px}.category-header{color:#f0d090;font-family:Courier New,monospace;font-size:14px;font-weight:700;margin-bottom:8px}.tile-grid{display:grid;grid-template-columns:1fr;gap:4px}.tile-btn{background:#3a3a3a;color:#f0d090;border:2px solid #555;border-radius:4px;padding:8px;cursor:pointer;font-family:Courier New,monospace;font-size:12px;text-align:left;transition:all .2s}.tile-btn:hover{background:#4a4a4a;border-color:#90c0f0}.tile-btn.selected{background:#4a4a2a;border-color:gold;color:gold;font-weight:700}.special-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.special-btn{background:#3a3a3a;color:#f0d090;border:2px solid #555;border-radius:4px;padding:12px 8px;cursor:pointer;font-family:Courier New,monospace;font-size:12px;text-align:center;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:4px}.special-btn:hover{background:#4a4a4a;border-color:#90c0f0}.special-btn.selected{background:#4a4a2a;border-color:gold;color:gold;font-weight:700}.special-btn .icon{font-size:20px}.special-btn .label{font-size:11px}.inspector-empty{color:#888;font-family:Courier New,monospace;font-size:14px;text-align:center;padding:20px}.inspector-content{display:flex;flex-direction:column;gap:12px}.property{display:flex;justify-content:space-between;align-items:center;padding:8px;background:#333;border-radius:4px}.property .label{color:#90c0f0;font-family:Courier New,monospace;font-size:13px;font-weight:700}.property .value{color:#f0d090;font-family:Courier New,monospace;font-size:13px}.property .value.walkable{color:#4f4}.property .value.blocked{color:#f44}.special-marker{padding:10px;border-radius:4px;font-family:Courier New,monospace;font-size:13px;font-weight:700;text-align:center}.core-marker{background:#f443;border:2px solid #ff4444;color:#f44}.entrance-marker{background:#4f43;border:2px solid #44ff44;color:#4f4}#editor-status-bar{background:#2a2a2a;padding:6px 16px;border-top:2px solid #444;font-size:12px;color:#90c0f0;font-family:Courier New,monospace;display:flex;gap:16px;align-items:center;position:relative;z-index:300}.status-help{color:#888;font-size:11px;font-style:italic}#unsaved-indicator{color:#fa0;font-weight:700;margin-left:auto}} .modal{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:2000}.modal-content{background:#2a2a2a;border:2px solid #ffd700;border-radius:8px;padding:24px;max-width:500px;width:90%;max-height:80vh;overflow-y:auto}.modal-content h2{color:gold;font-family:Courier New,monospace;font-size:20px;margin:0 0 20px;text-align:center}.form-group{margin-bottom:16px}.form-group label{display:block;color:#f0d090;font-family:Courier New,monospace;font-size:14px;margin-bottom:6px}.form-group input,.form-group select{width:100%;background:#3a3a3a;color:#f0d090;border:2px solid #555;border-radius:4px;padding:8px;font-family:Courier New,monospace;font-size:14px}.form-group input:focus,.form-group select:focus{outline:none;border-color:gold}.modal-actions{display:flex;gap:12px;justify-content:center;margin-top:24px}.btn-primary,.btn-secondary{padding:10px 24px;font-family:Courier New,monospace;font-size:14px;border-radius:4px;cursor:pointer;transition:all .2s;border:2px solid}.btn-primary{background:#5a5a2a;color:gold;border-color:gold}.btn-primary:hover{background:#6a6a3a;transform:translateY(-2px)}.btn-secondary{background:#3a3a3a;color:#f0d090;border-color:#555}.btn-secondary:hover{background:#4a4a4a;border-color:#90c0f0;transform:translateY(-2px)}#validation-results{background:#333;border-radius:4px;padding:16px;font-family:Courier New,monospace;font-size:13px;max-height:400px;overflow-y:auto}.validation-success{color:#4f4;font-weight:700;margin-bottom:12px}.validation-error{color:#f44;margin-bottom:8px}.validation-warning{color:#fa0;margin-bottom:8px}.editor-panel::-webkit-scrollbar,#validation-results::-webkit-scrollbar{width:8px}.editor-panel::-webkit-scrollbar-track,#validation-results::-webkit-scrollbar-track{background:#1a1a1a}.editor-panel::-webkit-scrollbar-thumb,#validation-results::-webkit-scrollbar-thumb{background:#555;border-radius:4px}.editor-panel::-webkit-scrollbar-thumb:hover,#validation-results::-webkit-scrollbar-thumb:hover{background:#666}
