:root{--font-serif:"DM Serif Display", Georgia, serif;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--bg-cream:#faf7ed;--bg-card:#fffffff0;--text-dark:#2c3327;--text-muted:#677263;--color-orange:#f70;--color-orange-hover:#e66600;--color-green:#7ca352;--color-red:#e63946;--color-blue:#0077b6;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--shadow-card:0 10px 30px #00000014, 0 1px 3px #0000000d;--shadow-btn:0 4px 12px #0000001f}*{box-sizing:border-box;-webkit-user-select:none;user-select:none;margin:0;padding:0}html,body{width:100%;height:100%;font-family:var(--font-sans);color:var(--text-dark);background-color:#bfe0f7;overflow:hidden}#game-canvas{z-index:1;width:100%;height:100%;position:absolute;top:0;left:0}#ui-overlay{z-index:10;pointer-events:none;flex-direction:column;justify-content:space-between;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.ui-interactive{pointer-events:auto}.top-header{justify-content:space-between;align-items:center;gap:16px;padding:18px 24px;display:flex}.logo-group{background:var(--bg-card);border-radius:var(--radius-md);box-shadow:var(--shadow-card);border:1px solid #0000000f;align-items:baseline;gap:8px;padding:8px 18px;display:flex}.logo-title{font-family:var(--font-serif);letter-spacing:2px;color:#1a2215;font-size:1.8rem}.logo-badge{text-transform:uppercase;color:#b26a00;letter-spacing:.5px;background:#ffecb3;border-radius:6px;padding:3px 8px;font-size:.75rem;font-weight:700}.sky-tracker{background:var(--bg-card);border-radius:var(--radius-md);box-shadow:var(--shadow-card);border:1px solid #0000000f;align-items:center;gap:10px;padding:8px 18px;display:flex}.tracker-icon{font-size:1.5rem;animation:2s ease-in-out infinite birdHover}@keyframes birdHover{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-3px)rotate(4deg)}}.tracker-text{flex-direction:column;display:flex}.tracker-label{color:var(--text-muted);letter-spacing:.5px;font-size:.65rem;font-weight:700}.tracker-val{color:var(--text-dark);font-size:.85rem;font-weight:700}.scoreboard{background:var(--bg-card);border-radius:var(--radius-md);box-shadow:var(--shadow-card);border:1px solid #0000000f;gap:12px;padding:6px 12px;display:flex}.score-card{flex-direction:column;align-items:center;padding:4px 12px;display:flex}.score-label{color:var(--text-muted);letter-spacing:.5px;font-size:.65rem;font-weight:700}.score-number{font-family:var(--font-serif);color:var(--color-orange);font-size:1.4rem;font-weight:700}.header-actions{align-items:center;gap:10px;display:flex}.aim-toggle-btn{background:var(--bg-card);color:#1b7a27;font-family:var(--font-sans);border-radius:var(--radius-md);cursor:pointer;box-shadow:var(--shadow-card);white-space:nowrap;border:2px solid #28cd41;padding:8px 14px;font-size:.85rem;font-weight:700;transition:all .2s}.aim-toggle-btn.active{color:#fff;background:#28cd41;box-shadow:0 4px 14px #28cd4166}.aim-toggle-btn:hover{transform:scale(1.05)}.icon-btn{background:var(--bg-card);cursor:pointer;width:44px;height:44px;box-shadow:var(--shadow-card);border:1px solid #00000014;border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;transition:transform .15s,background-color .15s;display:flex}.icon-btn:hover{background-color:#fff;transform:scale(1.08)}.icon-btn:active{transform:scale(.95)}.faltality-banner{border-radius:var(--radius-lg);text-align:center;pointer-events:none;z-index:100;background:radial-gradient(circle,#fff7ea 0%,#ffe2b3 100%);border:4px solid #f70;padding:30px 60px;animation:.5s cubic-bezier(.175,.885,.32,1.275) faltalityPop;position:absolute;top:25%;left:50%;transform:translate(-50%,-50%)scale(1);box-shadow:0 20px 50px #ff770059,0 8px 16px #00000026}.faltality-banner.hidden{display:none}.faltality-title{font-family:var(--font-serif);color:#e63946;letter-spacing:6px;text-shadow:3px 3px gold,6px 6px #0000001a;font-size:3.8rem;font-weight:900;line-height:1.1;transform:rotate(-2deg)}.faltality-subtitle{color:#4a5d3f;margin-top:8px;font-size:1.3rem;font-weight:700}.faltality-points{color:#fff;background:#f70;border-radius:20px;margin-top:10px;padding:6px 18px;font-size:1.2rem;font-weight:800;display:inline-block;box-shadow:0 4px 10px #f706}@keyframes faltalityPop{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)rotate(-10deg)}70%{opacity:1;transform:translate(-50%,-50%)scale(1.1)rotate(2deg)}to{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(-2deg)}}.fold-tower{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:var(--radius-lg);width:220px;box-shadow:var(--shadow-card);z-index:15;border:1.5px solid #00000014;flex-direction:column;gap:12px;padding:16px 14px;transition:transform .2s,box-shadow .2s;display:flex;position:absolute;top:96px;left:24px}.fold-tower:hover{transform:translateY(-2px);box-shadow:0 16px 36px #0000001f}.tower-header{text-align:center;border-bottom:1px solid #00000012;flex-direction:column;align-items:center;padding-bottom:10px;display:flex}.tower-tag{letter-spacing:1px;color:var(--text-muted);text-transform:uppercase;font-size:.62rem;font-weight:800}.tower-num-group{justify-content:center;align-items:baseline;gap:4px;margin:2px 0;display:flex}.tower-huge-number{font-family:var(--font-serif);color:var(--color-orange);text-shadow:1px 2px #00000014;font-size:3.2rem;font-weight:900;line-height:1;transition:transform .2s}.tower-huge-number.pulse{color:#e63946;transform:scale(1.25)}.tower-unit{color:var(--text-dark);font-size:.8rem;font-weight:700}.tower-sub-stats{gap:6px;margin-top:4px;display:flex}.tower-pill{color:#3f6828;background:#f1f4ee;border-radius:6px;padding:2px 8px;font-size:.68rem;font-weight:700}.tower-tiers{flex-direction:column;gap:5px;display:flex}.tower-tier{opacity:.45;background:#fbfbf9;border:1px solid #0000000a;border-radius:8px;align-items:center;gap:8px;padding:6px 10px;transition:all .25s;display:flex}.tower-tier .tier-icon{font-size:1.15rem}.tower-tier .tier-info{flex-direction:column;display:flex}.tower-tier .tier-name{color:#2c3327;font-size:.76rem;font-weight:800}.tower-tier .tier-desc{color:var(--text-muted);font-size:.62rem}.tower-tier.active{opacity:1;transform:scale(1.03);box-shadow:0 4px 12px #00000014}#tier-sheet.active{background:#fff;border-color:#ccd5c5}#tier-pigeon.active{background:#edf6ec;border-color:#81c784}#tier-crane.active{background:#f1f8e9;border-color:#aed581}#tier-crater.active{background:#fff3e0;border-color:#ffb74d;animation:2s infinite glowPulse}#tier-limit.active{background:#fbe9e7;border-color:#ff8a65;animation:1.5s infinite glowPulse}#tier-airliner.active{background:#e3f2fd;border-color:#64b5f6;animation:1.2s infinite glowPulse}#tier-singularity.active{color:#fff;background:#263238;border-color:#00d2d3;animation:.8s infinite glowPulse}#tier-singularity.active .tier-name,#tier-singularity.active .tier-desc{color:#00e5ff}@keyframes glowPulse{0%,to{box-shadow:0 0 6px #f703}50%{box-shadow:0 0 14px #ff77008c}}.bottom-dashboard{justify-content:space-between;align-items:flex-end;gap:24px;padding:20px 24px;display:flex}.stats-panel{background:var(--bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-lg);width:480px;max-width:100%;box-shadow:var(--shadow-card);border:1px solid #00000014;padding:18px 24px}.stats-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.stats-title-group{flex-direction:column;gap:4px;display:flex}.stats-tag{color:var(--text-muted);letter-spacing:1px;align-items:center;gap:8px;font-size:.7rem;font-weight:700;display:flex}.mode-badge{color:#2e7d32;text-transform:uppercase;background:#e8f5e9;border-radius:4px;padding:2px 8px;font-size:.65rem}.mode-badge.aiming{color:#e65100;background:#fff3e0}.fold-name{font-family:var(--font-serif);color:var(--text-dark);font-size:1.5rem}.thickness-badge{border-radius:var(--radius-md);text-align:right;background:#f0f7ea;border:1px solid #cce5b8;padding:6px 14px}.thickness-number{font-family:var(--font-serif);color:#3f6828;font-size:1.5rem;font-weight:700}.thickness-unit{color:#557e3c;text-transform:uppercase;font-size:.65rem;font-weight:700;display:block}.progress-bar-container{background:#e5e8e2;border-radius:6px;width:100%;height:12px;margin-bottom:14px;position:relative;overflow:visible}.progress-bar-fill{background:linear-gradient(90deg,#7ca352 0%,#f70 70%,#e63946 100%);border-radius:6px;height:100%;transition:width .3s cubic-bezier(.25,1,.5,1)}.limit-marker{color:#c94432;white-space:nowrap;font-size:.65rem;font-weight:700;position:absolute;top:-20px;transform:translate(-50%)}.stats-details{grid-template-columns:1fr 1fr;gap:8px 16px;margin-bottom:12px;display:grid}.detail-item{align-items:baseline;gap:6px;font-size:.85rem;display:flex}.comparison-item{border-left:3px solid var(--color-orange);background:#fdfaf2;border-radius:8px;grid-column:span 2;padding:6px 10px}.detail-label{color:var(--text-muted);font-weight:600}.detail-val{color:var(--text-dark);font-weight:700}.escalation-card{border-radius:var(--radius-md);background:linear-gradient(135deg,#f3f9f1 0%,#fff8eb 100%);border:1.5px solid #d4e8cb;flex-direction:column;gap:4px;margin-top:10px;padding:10px 14px;transition:all .25s;display:flex;box-shadow:inset 0 1px 3px #00000008}.escalation-card.crater-stage{background:linear-gradient(135deg,#fff3e0 0%,#ffebee 100%);border-color:#ffb74d}.escalation-card.plane-stage{background:linear-gradient(135deg,#e3f2fd 0%,#ede7f6 100%);border-color:#64b5f6}.escalation-card.singularity-stage{color:#fff;background:linear-gradient(135deg,#263238 0%,#37474f 100%);border-color:#00d2d3}.escalation-badge{align-items:center;gap:6px;display:flex}.escalation-icon{font-size:1.1rem}.escalation-status{letter-spacing:.8px;color:#43662b;text-transform:uppercase;font-size:.65rem;font-weight:800}.escalation-card.crater-stage .escalation-status{color:#e65100}.escalation-card.plane-stage .escalation-status{color:#1565c0}.escalation-card.singularity-stage .escalation-status{color:#00d2d3}.escalation-content{color:#2c3e50;font-size:.82rem;line-height:1.35}.escalation-card.singularity-stage .escalation-content{color:#eceff1}.escalation-now strong{color:#1b5e20}.escalation-card.crater-stage .escalation-now strong{color:#d84315}.escalation-card.plane-stage .escalation-now strong{color:#0d47a1}.escalation-card.singularity-stage .escalation-now strong{color:#26c6da}.escalation-next{color:#616161;margin-top:3px;font-size:.74rem}.escalation-card.singularity-stage .escalation-next{color:#b0bec5}.actions-panel{flex-direction:column;align-items:flex-end;gap:16px;display:flex}.slider-controls{background:var(--bg-card);border-radius:var(--radius-md);box-shadow:var(--shadow-card);border:1px solid #0000000f;gap:16px;padding:10px 18px;transition:opacity .3s;display:flex}.slider-controls.hidden{display:none}.slider-group{flex-direction:column;gap:4px;display:flex}.slider-group label{color:var(--text-muted);font-size:.75rem;font-weight:700}.slider-group input[type=range]{width:130px;accent-color:var(--color-orange);cursor:pointer}.button-group{gap:12px;display:flex}.btn{font-family:var(--font-sans);border-radius:var(--radius-md);cursor:pointer;box-shadow:var(--shadow-btn);border:none;align-items:center;gap:12px;padding:12px 24px;transition:transform .15s,background-color .15s,box-shadow .15s;display:flex}.btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #00000026}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-icon{font-size:1.6rem}.btn-text{text-align:left;flex-direction:column;display:flex}.btn-main-text{letter-spacing:.5px;font-size:1.1rem;font-weight:800}.btn-sub-text{opacity:.85;font-size:.7rem}.btn-fold{color:#1a2215;background:#fff;border:2px solid #e0dbcb}.btn-fold:hover{background:#faf7ed;border-color:#d1c8b3}.btn-launch{background:var(--color-orange);color:#fff}.btn-launch:hover{background:var(--color-orange-hover)}.btn-launch.aiming-mode{background:#e63946}.btn-launch.aiming-mode:hover{background:#c92a37}.btn-secondary{background:var(--bg-card);color:var(--text-muted);padding:14px 18px;font-size:.9rem;font-weight:600}.modal-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:200;background:#00000073;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.modal-backdrop.hidden{display:none}.modal-card{border-radius:var(--radius-lg);background:#fff;width:540px;max-width:92%;padding:28px;animation:.3s ease-out modalIn;box-shadow:0 25px 50px #00000040}.keymap-card{width:580px}@keyframes modalIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.modal-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-header h2{font-family:var(--font-serif);color:var(--text-dark);font-size:1.6rem}.modal-content{color:#4a5445;font-size:.95rem;line-height:1.6}.keymap-grid{flex-direction:column;gap:10px;margin-top:10px;display:flex}.keymap-row{background:#fbf9f4;border-left:3px solid #7ca352;border-radius:8px;align-items:center;gap:16px;padding:8px 12px;display:flex}.keymap-row .keys{gap:6px;min-width:110px;display:flex}kbd{font-family:var(--font-sans);color:#333;white-space:nowrap;background-color:#f7f7f7;border:1px solid #ccc;border-bottom:2px solid #aaa;border-radius:5px;padding:4px 8px;font-size:.85rem;font-weight:800;display:inline-block;box-shadow:0 1px 2px #0000001a}.keymap-row .desc{color:#333;font-size:.88rem}.modal-footer{justify-content:flex-end;margin-top:20px;display:flex}.btn-primary{background:var(--color-green);color:#fff;font-weight:700}.btn-primary:hover{background:#6c9145}@media (width<=1050px){.fold-tower{display:none}}@media (width<=900px){.sky-tracker{display:none}.bottom-dashboard{flex-direction:column-reverse;align-items:stretch;gap:12px;padding:12px}.stats-panel{width:100%}.actions-panel{align-items:stretch}.button-group{justify-content:space-between}.btn{flex:1;padding:12px}.top-header{padding:12px}.logo-title{font-size:1.4rem}.faltality-title{font-size:2.5rem}}.loot-subtext{color:#d35400;background:#ffd70040;border:1px solid #ffd70080;border-radius:12px;margin-top:6px;padding:4px 12px;font-size:1.05rem;font-weight:800;display:inline-block}.loot-shower-container{pointer-events:none;z-index:95;position:fixed;inset:0;overflow:hidden}.apple-loot-item{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:var(--font-sans);color:#1d1d1f;will-change:transform;background:#fffffff2;border:1.5px solid #0000001f;border-radius:24px;align-items:center;gap:8px;padding:8px 16px;font-size:1.15rem;font-weight:800;animation:linear forwards lootRainFall;display:flex;position:absolute;top:-80px;box-shadow:0 8px 24px #0000002e}.apple-loot-item .loot-icon{font-size:1.6rem}.apple-loot-item .loot-price{color:#27ae60;font-size:.95rem}@keyframes lootRainFall{0%{opacity:0;transform:translateY(0)rotate(0)scale(.7)}15%{opacity:1;transform:translateY(12vh)rotate(8deg)scale(1.05)}85%{opacity:1;transform:translateY(85vh)rotate(-12deg)scale(1)}to{opacity:0;transform:translateY(105vh)rotate(15deg)scale(.9)}}
