:root{--sky-blue: #4FC3F7;--sky-dark: #0288D1;--cloud-white: #F5F5F5;--grass-green: #4CAF50;--wood-brown: #8D6E63;--gold: #FFD54F;--stone-grey: #78909C;--ui-bg: rgba(15, 25, 45, .85);--ui-border: rgba(100, 180, 255, .3);--ui-glow: rgba(100, 180, 255, .15);--ui-text: #E8F0FF;--ui-accent: #4FC3F7;--ui-success: #66BB6A;--ui-warning: #FFA726;--font: "Outfit", sans-serif;--radius: 12px;--radius-lg: 16px}html{font-size:16px}html.ui-scale-small{font-size:14px}html.ui-scale-medium{font-size:16px}html.ui-scale-large{font-size:18px}*{margin:0;padding:0;box-sizing:border-box}body{overflow:hidden;background:#0a0e1a;font-family:var(--font);color:var(--ui-text);user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:none;overscroll-behavior:none}#game-canvas{display:block;width:100vw;height:100vh;position:fixed;top:0;left:0;touch-action:none}@media(max-width:900px)and (pointer:coarse){.minimap{width:110px!important;height:110px!important;top:70px!important;right:12px!important}.world-nav-buttons{top:195px!important;right:12px!important;gap:6px!important}.world-nav-btn{width:56px!important;padding:6px 4px!important;font-size:11px!important}.resource-panel{gap:8px!important}.resource-count{font-size:14px!important}.controls-hint,.hud-bottom-right{display:none!important}}.hidden{display:none!important}#loading-screen{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#1a237e,#4fc3f7,#b3e5fc);overflow:hidden}.loading-content{text-align:center;z-index:10;animation:fadeInUp 1s ease-out}.loading-title{font-size:4rem;font-weight:800;letter-spacing:.15em;color:#fff;text-shadow:0 4px 20px rgba(0,0,0,.3),0 0 60px rgba(79,195,247,.5);margin-bottom:.25em}.loading-subtitle{font-size:1.2rem;font-weight:400;color:#fffc;letter-spacing:.3em;text-transform:uppercase;margin-bottom:2em}.loading-bar-container{width:320px;height:8px;background:#ffffff26;border-radius:4px;margin:0 auto 1em;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.loading-bar{width:0%;height:100%;background:linear-gradient(90deg,#4fc3f7,#81d4fa,#4fc3f7);background-size:200% 100%;border-radius:4px;transition:width .3s ease;animation:shimmer 2s infinite linear}.loading-text{font-size:.9rem;color:#fff9}.loading-clouds{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.cloud{position:absolute;background:#ffffff26;border-radius:50%;filter:blur(40px)}.cloud-1{width:400px;height:120px;bottom:20%;left:-5%;animation:cloudDrift 25s infinite linear}.cloud-2{width:300px;height:80px;bottom:35%;left:30%;animation:cloudDrift 35s infinite linear 5s}.cloud-3{width:500px;height:100px;bottom:15%;right:-10%;animation:cloudDrift 30s infinite linear reverse}#hud{position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:100}#hud>*{pointer-events:auto}.hud-top{position:absolute;top:20px;left:50%;transform:translate(-50%)}.island-name{background:var(--ui-bg);border:1px solid var(--ui-border);border-radius:var(--radius);padding:8px 24px;font-size:1.1rem;font-weight:600;letter-spacing:.05em;white-space:nowrap;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 20px #0000004d;text-align:center;transition:opacity .5s ease}.hud-top-right{position:absolute;top:20px;right:20px}.resource-panel{display:flex;gap:8px;background:#0a1020b3;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);padding:6px 12px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 4px 24px #0000004d,inset 0 1px 1px #ffffff0d;align-items:center}.resource-item{display:flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);font-size:.82rem;font-weight:700;color:#fffffff2}.resource-icon{font-size:1rem}.resource-count{font-weight:700;font-variant-numeric:tabular-nums;min-width:20px;text-align:left}.hud-bottom{position:absolute;bottom:110px;left:50%;transform:translate(-50%)}.interaction-prompt{background:var(--ui-bg);border:1px solid var(--ui-border);border-radius:var(--radius);padding:10px 20px;display:flex;align-items:center;gap:10px;font-size:1rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:promptPulse 2s infinite ease-in-out}.interaction-prompt.is-travel{position:fixed;bottom:150px;left:20px;transform:none!important;animation:none;z-index:999}.prompt-key{background:var(--ui-accent);color:#0a0e1a;font-weight:700;padding:3px 10px;border-radius:6px;font-size:.85rem}.hud-bottom-right{position:absolute;bottom:140px;right:20px}.controls-hint{display:flex;gap:12px;background:var(--ui-bg);border:1px solid var(--ui-border);border-radius:var(--radius);padding:8px 16px;font-size:.75rem;color:#ffffff80;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.minimap{position:absolute;top:80px;right:20px;width:150px;height:150px;aspect-ratio:1 / 1;background:var(--ui-bg);border:1px solid var(--ui-border);border-radius:12px;padding:6px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 20px #0000004d}#minimap-canvas{border-radius:8px;width:100%;height:100%;aspect-ratio:1 / 1;display:block}.world-nav-buttons{position:absolute;top:240px;right:20px;display:flex;flex-direction:column;gap:8px;z-index:50}.world-nav-btn{width:70px;padding:8px 6px;background:var(--ui-bg);border:1px solid var(--ui-border);border-radius:var(--radius);color:var(--text);font-family:Outfit,sans-serif;font-size:12px;font-weight:700;letter-spacing:.5px;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 14px #0000004d;transition:all .2s ease}.world-nav-btn:hover{background:var(--accent);color:#fff;transform:translateY(-1px);box-shadow:0 6px 18px #0006}.world-nav-btn:active{transform:translateY(0)}.foreign-island-banner{position:absolute;top:70px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:10px 22px;background:#140f08d1;border:1px solid rgba(255,185,40,.55);border-radius:50px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 4px 20px #ffa0002e,0 2px 8px #0006;color:#ffc14a;font-family:Outfit,sans-serif;font-size:13px;font-weight:600;letter-spacing:.3px;z-index:60;pointer-events:none;animation:banner-slide-in .35s cubic-bezier(.22,1,.36,1) both}.foreign-island-banner.hidden{display:none}.foreign-island-icon{font-size:15px;line-height:1}.foreign-island-text{white-space:nowrap}@keyframes banner-slide-in{0%{opacity:0;transform:translate(-50%) translateY(-12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes home-highlight-pulse{0%{opacity:.9;transform:scale(1)}50%{opacity:.4;transform:scale(1.08)}to{opacity:0;transform:scale(1.16)}}.world-map-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;pointer-events:none}.world-map-hint{position:absolute;bottom:24px;left:50%;transform:translate(-50%);background:#0f162ad1;color:#e0e0e0;padding:10px 22px;border-radius:20px;font-family:Outfit,sans-serif;font-size:13px;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 18px #0006;border:1px solid rgba(255,255,255,.08);pointer-events:none;letter-spacing:.3px}.wm-back-btn{position:absolute;top:max(16px,env(safe-area-inset-top));left:max(16px,env(safe-area-inset-left));background:#0f172abf;color:#e0e0e0;border:1px solid rgba(96,165,250,.3);padding:10px 18px;border-radius:10px;font-family:Outfit,sans-serif;font-size:14px;font-weight:600;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 3px 12px #0006;cursor:pointer;pointer-events:auto;transition:transform .1s ease,background .2s ease;z-index:91}.wm-back-btn:active{transform:scale(.95);background:#1e293bd9}.world-map-travel-panel{position:absolute;bottom:80px;left:50%;transform:translate(-50%);background:#0f162aeb;border:1px solid var(--ui-border);border-radius:14px;padding:16px 22px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 8px 30px #00000080;pointer-events:auto;display:flex;flex-direction:column;gap:12px;min-width:260px;animation:fadeInUp .25s ease-out}.wm-panel-row{display:flex;flex-direction:column;gap:2px;text-align:center}.wm-island-name{font-family:Outfit,sans-serif;font-size:20px;font-weight:800;color:#fff}.wm-island-type{font-family:Outfit,sans-serif;font-size:12px;font-weight:600;color:gold;letter-spacing:.5px;text-transform:uppercase}.wm-travel-btn{width:100%;padding:10px;font-size:14px;font-weight:700}.wm-travel-btn:disabled{opacity:.5;cursor:not-allowed}.modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#0508148c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fadeIn .25s ease-out}.modal-content{position:relative;background:linear-gradient(135deg,#0c1224eb,#060a18f5);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);padding:24px;box-shadow:0 16px 48px #00000080,inset 0 1px 1px #ffffff0d;max-width:90vw;max-height:85vh;overflow-y:auto;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.modal-title{font-size:1.5rem;font-weight:700;margin-bottom:1.5em;text-align:center;color:var(--ui-accent)}.modal-close{position:absolute;top:12px;right:16px;background:none;border:none;color:#ffffff80;font-size:1.3rem;cursor:pointer;padding:4px 8px;border-radius:6px;transition:all .2s}.modal-close:hover{color:#fff;background:#ffffff1a}.island-selector-content{width:700px}.island-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.island-card{background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:var(--radius);padding:12px 16px;cursor:pointer;transition:all .2s ease;display:flex;gap:12px;align-items:center}.island-card:hover{background:#4fc3f714;border-color:#4fc3f766;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.island-card.current{border-color:#66bb6a66;background:#66bb6a0f}.island-card-icon{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.island-card-info h3{font-size:.95rem;font-weight:600;margin-bottom:2px}.island-card-info p{font-size:.75rem;color:#ffffff80}.storage-content{width:750px}.storage-layout{display:flex;gap:20px;align-items:flex-start;justify-content:center}.storage-section{flex:1;max-width:250px}.storage-section h3{font-size:1rem;font-weight:600;margin-bottom:12px;text-align:center;color:var(--ui-accent)}.inventory-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.inventory-slot{aspect-ratio:1;background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:1.5rem;cursor:pointer;transition:all .15s ease;position:relative;padding:8px}.inventory-slot:hover{background:#4fc3f714;border-color:#4fc3f766}.inventory-slot.selected{background:#4fc3f726;border-color:#4fc3f799;box-shadow:0 0 10px #4fc3f733}.inventory-slot .slot-icon{font-size:1.8rem;margin-bottom:4px}.inventory-slot .slot-count{font-size:.75rem;font-weight:700;color:var(--ui-accent)}.storage-buttons{display:flex;flex-direction:column;gap:8px;padding-top:60px;min-width:160px}.storage-buttons .btn{min-width:140px}.transfer-amount-container{display:flex;align-items:center;gap:8px;padding:8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;margin-bottom:4px}.transfer-amount-container label{font-size:.85rem;color:#ffffffb3;white-space:nowrap}.transfer-amount-input{flex:1;background:#0000004d;border:1px solid rgba(255,255,255,.2);border-radius:4px;color:var(--ui-text);padding:4px 8px;font-size:.9rem;font-family:var(--font);width:60px;text-align:center}.transfer-amount-input:focus{outline:none;border-color:var(--ui-accent);box-shadow:0 0 8px #4fc3f74d}.transfer-all-buttons{display:flex;flex-direction:column;gap:6px;margin-top:8px}.transfer-all-buttons .btn{font-size:.8rem;padding:8px 12px;min-width:140px}.storage-buttons .btn:disabled{opacity:.4;cursor:not-allowed;transform:none!important}.storage-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.storage-slot{aspect-ratio:1;background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:1.5rem;cursor:pointer;transition:all .15s ease;position:relative}.storage-slot:hover{background:#4fc3f714;border-color:#4fc3f766}.storage-slot.selected{background:#4fc3f726;border-color:#4fc3f799;box-shadow:0 0 10px #4fc3f733}.storage-slot .slot-icon{font-size:1.8rem;margin-bottom:4px}.storage-slot .slot-count{font-size:.75rem;font-weight:700;color:var(--ui-accent);position:absolute;bottom:4px;right:6px}.expansion-content{width:400px;text-align:center}.expansion-info{margin-bottom:1.5em;padding:16px;background:#ffffff08;border-radius:var(--radius);border:1px solid rgba(255,255,255,.08)}.expansion-actions{display:flex;gap:12px;justify-content:center}.btn{padding:10px 24px;border:none;border-radius:8px;font-family:var(--font);font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s}.btn-primary{background:linear-gradient(135deg,var(--ui-accent),#0288D1);color:#fff;box-shadow:0 4px 15px #4fc3f74d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #4fc3f766}.btn-secondary{background:#ffffff1a;color:var(--ui-text);border:1px solid rgba(255,255,255,.15)}.btn-secondary:hover{background:#ffffff26}#travel-overlay{position:fixed;bottom:140px;left:50%;transform:translate(-50%);z-index:10005;pointer-events:none}.travel-text{background:var(--ui-bg);border:1px solid var(--ui-border);border-radius:var(--radius);padding:12px 28px;font-size:1.1rem;font-weight:600;display:flex;align-items:center;gap:10px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:travelPulse 1.5s infinite ease-in-out}.travel-icon{font-size:1.5rem;animation:horseGallop .6s infinite}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes cloudDrift{0%{transform:translate(-120%)}to{transform:translate(120vw)}}@keyframes promptPulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes travelPulse{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}@keyframes horseGallop{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.modal-content::-webkit-scrollbar{width:6px}.modal-content::-webkit-scrollbar-track{background:transparent}.modal-content::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.debug-panel{position:fixed;top:20px;left:20px;background:#0a0f1ed9;border:1px solid rgba(100,180,255,.25);border-radius:8px;padding:12px 18px;font-family:Courier New,Courier,monospace;font-size:.75rem;color:#4fc3f7;z-index:500;pointer-events:none;line-height:1.4;box-shadow:0 4px 20px #0006;min-width:220px}.debug-panel div{display:flex;justify-content:space-between;margin-bottom:2px}.debug-panel span{color:#fff;font-weight:700;margin-left:10px}#expansion-panel{position:fixed;top:auto;left:50%;bottom:24px;right:auto;transform:translate(-50%);width:auto;height:auto;background:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;z-index:1000;pointer-events:none;display:flex;align-items:flex-end;justify-content:center;animation:fadeInUp .3s cubic-bezier(.2,.8,.2,1)}#expansion-panel .modal-content{pointer-events:auto;max-width:90vw;width:auto;min-width:min(540px,94vw);padding:10px 14px;background:linear-gradient(135deg,#0c1224e0,#070a18f0)!important;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08)!important;border-radius:var(--radius-lg);box-shadow:0 16px 40px #0009,inset 0 1px 1px #ffffff0f!important;margin:0;display:flex;flex-direction:column;gap:8px;overflow:visible}.land-dev-tabs{display:flex;gap:6px;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:6px;margin-bottom:6px;overflow-x:auto;justify-content:center;width:100%}.tab-btn{background:#ffffff08;border:1px solid rgba(100,180,255,.15);color:#e8f0ffb3;padding:4px 10px;font-family:var(--font);font-weight:600;font-size:.75rem;border-radius:5px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.tab-btn:hover{background:#4fc3f726;color:#fff;border-color:var(--ui-accent)}.tab-btn.active{background:linear-gradient(135deg,var(--ui-accent),#0288D1);color:#0a0e1a;font-weight:700;border-color:var(--ui-accent);box-shadow:0 0 15px #4fc3f740}.land-dev-panes{min-height:auto;max-height:none;overflow:visible;padding:0;width:100%}.tab-pane{display:none!important}.tab-pane.active{display:flex!important;flex-direction:row;gap:8px;overflow-x:auto;padding:4px 2px;max-width:100%;scrollbar-width:thin}.tab-pane.active::-webkit-scrollbar{height:3px}.tab-pane.active::-webkit-scrollbar-track{background:transparent}.tab-pane.active::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:1.5px}.land-dev-card{width:72px;height:72px;flex-shrink:0;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;cursor:pointer;transition:all .2s cubic-bezier(.25,.8,.25,1);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.land-dev-card .card-icon{font-size:1.4rem;width:32px;height:32px;background:none;border:none;display:flex;align-items:center;justify-content:center;margin-bottom:2px}.land-dev-card .card-title{font-size:.6rem;font-weight:600;color:#fffc;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;margin:0}.land-dev-card.locked{opacity:.4;filter:grayscale(1);cursor:not-allowed;background:#00000059;border-color:#ffffff0a}.card-lock-badge{position:absolute;top:2px;left:2px;font-size:.55rem;font-weight:700;background:#ef535026;border:1px solid rgba(239,83,80,.3);color:#ef5350;padding:1px 3px;border-radius:3px;pointer-events:none}.land-dev-card.available{opacity:1}.land-dev-card.available:hover{background:#4fc3f714;border-color:#4fc3f780;transform:translateY(-2px);box-shadow:0 4px 10px #4fc3f726}.land-dev-card.selected{border-color:gold!important;box-shadow:0 0 10px #ffd70040!important;background:#ffd7000a!important}.card-built-badge{position:absolute;top:2px;left:2px;font-size:.55rem;font-weight:700;background:#66bb6a26;border:1px solid rgba(102,187,106,.3);color:#81c784;padding:1px 3px;border-radius:3px;pointer-events:none}.card-resources-corner{position:absolute;top:2px;right:2px;display:flex;flex-direction:column;align-items:flex-end;gap:1px;pointer-events:none}.card-resource-mini{font-size:.55rem;font-weight:700;background:#00000073;padding:1px 3px;border-radius:3px;line-height:1;display:flex;align-items:center;gap:1px}.card-resource-mini.sufficient{color:#81c784}.card-resource-mini.insufficient{color:#e57373}.builder-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:8px;border-top:1px solid rgba(255,255,255,.08);margin-top:2px;width:100%;animation:fadeInUp .2s ease-out}.footer-details{display:flex;flex-direction:column;flex-grow:1;max-width:260px}.footer-name{font-size:.8rem;font-weight:700;color:#fff}.footer-desc{font-size:.65rem;color:#ffffffa6;line-height:1.3;margin-top:1px}.footer-costs{display:flex;gap:4px;align-items:center}.footer-costs .cost-badge{font-size:.65rem;padding:2px 5px}.footer-build-btn{padding:6px 14px;font-size:.75rem;border-radius:5px;font-weight:700}.preview-hud-header{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid rgba(255,255,255,.06);padding-bottom:4px;width:100%}.preview-hud-title-row{display:flex;justify-content:space-between;align-items:center;flex-grow:1}.preview-hud-coords{font-size:.7rem;font-weight:600;color:#ffffff73;background:#0003;padding:1px 6px;border-radius:3px;font-family:monospace;margin-right:auto;margin-left:10px}#preview-hud-name{font-weight:700;color:#fff;text-transform:uppercase;font-size:.8rem;letter-spacing:.05em}.preview-hud-status{font-size:.7rem;font-weight:800;padding:2px 6px;border-radius:4px;text-transform:uppercase}.preview-hud-status.valid{background:#66bb6a26;color:#81c784;border:1px solid rgba(102,187,106,.3)}.preview-hud-status.invalid{background:#ef535026;color:#ff8a80;border:1px solid rgba(239,83,80,.3)}.preview-hud-costs{display:flex;gap:6px;justify-content:center;margin:2px 0}.preview-hud-costs .cost-badge{font-size:.7rem;padding:2px 6px}.preview-hud-controls{display:flex;justify-content:center;gap:8px;font-size:.65rem;color:#ffffff80;border-top:1px solid rgba(255,255,255,.06);padding-top:4px}#progression-bar{position:fixed;bottom:8px;left:50%;transform:translate(-50%);width:auto;max-width:92vw;height:56px;background:linear-gradient(180deg,#161c30f0,#0c1020f7);border:1.5px solid rgba(79,195,247,.25);border-top:1.5px solid rgba(140,210,255,.35);border-radius:28px;box-shadow:0 4px 20px #0000008c,0 1px #ffffff0f inset,0 -1px #0000004d inset;display:flex;align-items:center;justify-content:center;z-index:9999;overflow:visible;padding:0 6px;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transition:opacity .3s ease,transform .3s ease}#progression-bar::-webkit-scrollbar{display:none}#buildings-container{display:flex;gap:2px;align-items:center;justify-content:center;height:100%;padding:0 2px}.building-card{width:58px;min-width:58px;height:48px;flex-shrink:0;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:3px 2px 2px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0px;position:relative;cursor:pointer;transition:all .18s cubic-bezier(.25,.8,.25,1);user-select:none;-webkit-user-select:none}.building-card.available:hover{background:#4fc3f714;border-color:#4fc3f74d;transform:translateY(-3px) scale(1.06);box-shadow:0 6px 16px #4fc3f726}.building-card.locked{opacity:.32;filter:grayscale(100%) brightness(.6);cursor:not-allowed;background:#00000026;border-color:transparent}.building-card.built{border-color:#4caf5066;background:#4caf5014}.building-card.affordable{border-color:#ffd70073;background:#ffd7000f;animation:coc-pulse 2.5s infinite ease-in-out}.building-card.selected{border-color:#4fc3f7b3!important;background:#4fc3f71f!important;box-shadow:0 0 10px #4fc3f740!important;transform:translateY(-3px) scale(1.06)}@keyframes coc-pulse{0%,to{box-shadow:0 0 #ffd70000}50%{box-shadow:0 0 8px #ffd70033}}.building-card .building-card-img{width:28px;height:28px;object-fit:contain;pointer-events:none;flex-shrink:0;image-rendering:auto;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.building-card .building-title{font-size:.45rem;font-weight:700;color:#dce6fad9;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;line-height:1.1;letter-spacing:.01em;margin:0;padding:0}.building-card .card-count-badge{position:absolute;top:1px;right:1px;font-size:.42rem;font-weight:800;background:#000000a6;border:1px solid rgba(255,255,255,.12);color:#fffc;padding:0 2px;border-radius:3px;pointer-events:none;line-height:1.2;letter-spacing:-.01em}.building-card .card-count-badge.completed{background:#4caf504d;border-color:#4caf5080;color:#a5d6a7}.building-card .card-lock-badge{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.7rem;pointer-events:none;line-height:1;opacity:.6}.building-card .card-built-badge{position:absolute;top:1px;right:1px;font-size:.5rem;font-weight:900;background:#4caf5059;border:1px solid rgba(76,175,80,.5);color:#a5d6a7;padding:0 2px;border-radius:3px;pointer-events:none;line-height:1.2}#progression-req-panel{position:fixed;bottom:72px;left:50%;transform:translate(-50%) translateY(6px);width:auto;min-width:200px;max-width:320px;background:linear-gradient(180deg,#12182af7,#0a0e1cfa);border:1.5px solid rgba(79,195,247,.35);border-radius:12px;box-shadow:0 8px 28px #0000008c,0 1px #ffffff0d inset;padding:8px 12px;z-index:9998;display:flex;flex-direction:column;gap:6px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transition:opacity .2s cubic-bezier(.2,.8,.2,1),transform .2s cubic-bezier(.2,.8,.2,1);opacity:0;pointer-events:none}#progression-req-panel:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:10px;height:10px;background:#0a0e1cfa;border-right:1.5px solid rgba(79,195,247,.35);border-bottom:1.5px solid rgba(79,195,247,.35);transform:translate(-50%) rotate(45deg)}#progression-req-panel.visible{opacity:1;transform:translate(-50%) translateY(0);pointer-events:auto}.req-panel-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.06);padding-bottom:4px}.req-panel-title{font-size:.72rem;font-weight:700;color:#e8f0ff;letter-spacing:.02em}.req-panel-close{background:transparent;border:none;color:#ffffff59;font-size:.75rem;cursor:pointer;line-height:1;padding:2px;border-radius:4px;transition:all .15s}.req-panel-close:hover{color:#fff;background:#ffffff14}.req-panel-body{display:flex;align-items:center;justify-content:space-between;gap:10px}.req-panel-costs{display:flex;gap:4px;align-items:center;flex-wrap:wrap}.req-panel-cost-item{font-size:.6rem;font-weight:700;background:#00000059;padding:2px 5px;border-radius:4px;display:flex;align-items:center;gap:3px;border:1px solid transparent}.req-panel-cost-item.sufficient{color:#a5d6a7;border-color:#4caf5026}.req-panel-cost-item.insufficient{color:#ef9a9a;border-color:#f4433626}.req-panel-build-btn{background:linear-gradient(180deg,#ffd54f,#f9a825);color:#1a1200;border:none;padding:4px 12px;font-family:var(--font);font-size:.62rem;font-weight:800;border-radius:6px;cursor:pointer;transition:all .18s ease;box-shadow:0 2px 6px #f9a82540;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;flex-shrink:0}.req-panel-build-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #f9a82559;background:linear-gradient(180deg,#ffe082,#ffb300)}.req-panel-build-btn:disabled{background:#ffffff0f;color:#ffffff40;cursor:not-allowed;box-shadow:none}.preview-hud-controls span{display:flex;align-items:center;gap:2px}.hud-top-left{position:absolute;top:20px;left:20px;pointer-events:auto}.hud-btn{background:#0a1020b3;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);color:var(--ui-text);width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 20px #0000004d;transition:all .2s cubic-bezier(.25,.8,.25,1)}.hud-btn:hover{background:#4fc3f726;border-color:var(--ui-accent);color:#fff;transform:scale(1.05)}.hud-resource-icon{width:20px;height:20px;object-fit:contain;pointer-events:none}.settings-content{max-width:400px;width:90%;background:linear-gradient(135deg,#0e1426f5,#080c1cfa);border:2px solid rgba(79,195,247,.4);border-radius:16px;padding:20px;box-shadow:0 10px 40px #000c,inset 0 1px 1px #ffffff1a}.settings-tabs{display:flex;gap:8px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:8px;margin-bottom:16px}.settings-tab-btn{flex:1;background:#ffffff08;border:1px solid rgba(100,180,255,.15);color:#e8f0ffb3;padding:6px 12px;font-family:var(--font);font-weight:600;font-size:.8rem;border-radius:6px;cursor:pointer;transition:all .2s ease;text-align:center}.settings-tab-btn:hover{background:#4fc3f726;color:#fff;border-color:var(--ui-accent)}.settings-tab-btn.active{background:linear-gradient(135deg,var(--ui-accent),#0288D1);color:#0a0e1a;font-weight:700;border-color:var(--ui-accent);box-shadow:0 0 15px #4fc3f740}.settings-tab-panes{margin-bottom:16px}.settings-tab-pane{display:none;flex-direction:column;gap:12px}.settings-tab-pane.active{display:flex}.settings-option{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:#e8f0ff}.settings-option label{font-weight:600}.settings-option input[type=range]{width:140px;accent-color:var(--ui-accent);cursor:pointer}.settings-option select{background:#00000080;border:1px solid rgba(255,255,255,.15);border-radius:6px;color:#fff;padding:4px 8px;font-family:var(--font);font-size:.8rem;outline:none;cursor:pointer}.switch{position:relative;display:inline-block;width:38px;height:20px}.switch input{opacity:0;width:0;height:0}.slider-toggle{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ffffff1a;transition:.2s;border-radius:20px;border:1px solid rgba(255,255,255,.15)}.slider-toggle:before{position:absolute;content:"";height:14px;width:14px;left:2px;bottom:2px;background-color:#fff;transition:.2s;border-radius:50%}input:checked+.slider-toggle{background-color:var(--ui-accent);border-color:var(--ui-accent);box-shadow:0 0 8px #4fc3f766}input:checked+.slider-toggle:before{transform:translate(18px)}.settings-actions{display:flex;gap:10px;margin-top:20px}.settings-actions .btn{flex:1;font-size:.8rem;padding:8px 12px;font-weight:700}.build-preview-hud{position:fixed;bottom:84px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#0e1426f2,#080c1cfa);border:2px solid rgba(79,195,247,.45);border-radius:14px;padding:10px 16px;display:flex;flex-direction:column;gap:8px;color:#e8f0ff;font-family:var(--font);z-index:10000;box-shadow:0 8px 32px #000000b3;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);min-width:280px;animation:fadeInUp .2s ease-out;pointer-events:auto!important}.build-preview-hud .preview-hud-header{display:flex;align-items:center;gap:10px;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:6px}.build-preview-hud .preview-hud-icon-img{width:32px;height:32px;object-fit:contain;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:6px}.build-preview-hud .preview-hud-meta{display:flex;flex-direction:column;flex:1}.build-preview-hud #preview-hud-name{font-weight:700;color:#fff;font-size:.78rem;letter-spacing:.03em}.build-preview-hud .preview-hud-status{font-size:.58rem;font-weight:800;text-transform:uppercase;margin-top:1px;display:inline-block}.build-preview-hud .preview-hud-status.valid{color:#81c784;background:transparent;border:none;padding:0}.build-preview-hud .preview-hud-status.invalid{color:#ff8a80;background:transparent;border:none;padding:0}.build-preview-hud .preview-hud-costs{display:flex;gap:4px;justify-content:flex-start;margin:2px 0}.build-preview-hud .preview-hud-costs .cost-badge{font-size:.65rem;padding:2px 5px;border-radius:4px;background:#0006;display:inline-flex;align-items:center;gap:2px}.build-preview-hud .preview-hud-costs .cost-badge.sufficient{color:#81c784}.build-preview-hud .preview-hud-costs .cost-badge.insufficient{color:#ff8a80}.build-preview-hud .preview-hud-actions{display:flex;gap:6px;margin-top:4px}.build-preview-hud .preview-hud-btn{flex:1;padding:6px 8px;font-family:var(--font);font-size:.7rem;font-weight:700;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease;text-transform:uppercase}.build-preview-hud .preview-hud-btn.rotate{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.15)}.build-preview-hud .preview-hud-btn.rotate:hover{background:#fff3}.build-preview-hud .preview-hud-btn.cancel{background:#ef535026;color:#ff8a80;border:1px solid rgba(239,83,80,.3)}.build-preview-hud .preview-hud-btn.cancel:hover{background:#ef535040}.build-preview-hud .preview-hud-btn.place{background:linear-gradient(135deg,#81c784,#4caf50);color:#0d200d}.build-preview-hud .preview-hud-btn.place:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 3px 8px #4caf504d}.build-preview-hud .preview-hud-btn.place:disabled{background:#ffffff0d;color:#ffffff40;cursor:not-allowed;border:1px solid rgba(255,255,255,.05)}.building-card-img{width:28px;height:28px;object-fit:contain;pointer-events:none;flex-shrink:0;image-rendering:auto;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.land-dev-card-img{width:24px;height:24px;object-fit:contain;pointer-events:none;margin-bottom:2px}.card-resources-corner .card-resource-mini img,.req-panel-cost-item img,.preview-hud-costs .cost-badge img{width:10px;height:10px;object-fit:contain;pointer-events:none;vertical-align:middle}.preview-hud-controls .hud-key{background:#ffffff14;color:#fff;padding:1px 4px;border-radius:3px;font-weight:700}.foreign-storage-layout{display:flex;flex-direction:column;align-items:center;gap:20px;padding:10px}.storage-notice-text{font-size:.95rem;color:#ffd54f;background:#ffd54f12;border:1px solid rgba(255,213,79,.2);border-radius:8px;padding:12px 16px;margin:0;text-align:center;max-width:500px}.foreign-storage-actions{display:flex;gap:15px;justify-content:center;width:100%;margin-top:10px}.foreign-storage-actions .btn{min-width:140px;padding:10px 24px}.home-screen-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:900;background:radial-gradient(circle at center,#0a142600 25%,#060c1866 65%,#020408eb);transition:opacity 1s ease,transform 1s ease;pointer-events:auto}.home-screen-overlay.fade-out{opacity:0;transform:scale(1.05);pointer-events:none}.home-screen-content{background:none!important;border:none!important;box-shadow:none!important;padding:0!important;margin:0!important;max-width:none!important;width:100%!important;height:100%!important;position:relative;border-radius:0!important}.home-branding{position:absolute;left:50%;top:15%;transform:translate(-50%,-50%);text-align:center;z-index:10;pointer-events:none;width:100%}.home-logo-container{animation:logoIntro 1.5s cubic-bezier(.16,1,.3,1) forwards;opacity:0}.home-logo-emblem{font-size:2.2rem;color:gold;text-shadow:0 0 12px rgba(255,215,0,.8);margin-bottom:6px;display:inline-block;animation:emblemSpin 10s infinite linear}.logo-divider{display:flex;align-items:center;justify-content:center;gap:12px;margin:8px 0}.divider-line{width:80px;height:1px;background:linear-gradient(to right,#00e5ff00,#00e5ffb3,#00e5ff00)}.divider-diamond{color:#00e5ff;font-size:.8rem;text-shadow:0 0 8px rgba(0,229,255,.8)}.home-title{font-family:Cinzel Decorative,Cinzel,serif;font-size:5rem;font-weight:900;text-transform:uppercase;letter-spacing:6px;background:linear-gradient(to bottom,#fff,#b2ebf2 40%,#00e5ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 4px rgba(0,0,0,.9)) drop-shadow(0 0 20px rgba(0,229,255,.6));margin:0;padding:0;line-height:1;transform:perspective(600px) rotateX(8deg);animation:logoGlowPulse 4s infinite ease-in-out}.home-subtitle{font-family:Cinzel,serif;font-size:.95rem;font-weight:700;letter-spacing:.5em;text-transform:uppercase;color:#b2ebf2;text-shadow:0 0 10px rgba(0,229,255,.7);margin-top:8px;opacity:.85}.home-menu-buttons{position:absolute;bottom:8%;left:50%;transform:translate(-50%);display:flex;align-items:center;justify-content:center;gap:24px;z-index:10;width:auto;padding:12px 32px;background:#0a0f1e99;border:1px solid rgba(255,255,255,.08);border-radius:20px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 20px 40px #00000080,inset 0 1px 1px #ffffff1a}.home-btn{font-family:Outfit,sans-serif;font-weight:700;text-transform:uppercase;cursor:pointer;border:none;outline:none;border-radius:12px;box-sizing:border-box;transition:all .28s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;color:#fff;transform:translateY(20px);opacity:0;animation:buttonReveal .6s cubic-bezier(.16,1,.3,1) forwards}.btn-sequential:nth-child(1){animation-delay:.6s}.btn-sequential:nth-child(2){animation-delay:.75s}.btn-sequential:nth-child(3){animation-delay:.9s}.btn-sequential:nth-child(4){animation-delay:1.05s}.btn-play{font-size:1.5rem;padding:12px 36px;min-width:180px;height:54px;background:linear-gradient(135deg,#00e5ff,#0050d1);border:2px solid #b2ebf2;box-shadow:0 8px 24px #0050d180,0 0 15px #00e5ff66,inset 0 2px 2px #fff6;animation:btnPulse 2s infinite ease-in-out,buttonReveal .6s cubic-bezier(.16,1,.3,1) forwards;animation-delay:0s,.6s}.btn-play:hover{transform:scale(1.06) translateY(-2px);background:linear-gradient(135deg,#00f0ff,#0060e6);box-shadow:0 12px 32px #0050d1b3,0 0 25px #00f0ffcc,inset 0 2px 2px #ffffff80}.btn-play:active{transform:scale(.96) translateY(1px);box-shadow:0 4px 12px #0050d166,inset 0 2px 2px #00000080}.btn-settings,.btn-howto{font-size:1.05rem;padding:10px 24px;height:46px;min-width:135px;background:#ffffff0d;border:1px solid rgba(255,255,255,.15);color:#ffffffd9;box-shadow:0 4px 12px #00000026;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.btn-settings:hover,.btn-howto:hover{transform:scale(1.04) translateY(-2px);color:#fff;background:#ffffff1f;border-color:#00e5ff99;box-shadow:0 6px 16px #00e5ff33,inset 0 1px 1px #fff3}.btn-settings:active,.btn-howto:active{transform:scale(.96) translateY(1px);box-shadow:0 2px 4px #0000004d,inset 0 2px 2px #0000004d}.btn-exit{font-size:.95rem;padding:10px 20px;height:46px;min-width:100px;background:#ef53501f;border:1px solid rgba(239,83,80,.25);color:#ef5350d9;box-shadow:0 4px 12px #00000026;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.btn-exit:hover{transform:scale(1.04) translateY(-2px);color:#fff;background:#ef535040;border-color:#ef535099;box-shadow:0 6px 16px #ef53504d,inset 0 1px 1px #fff3}.btn-exit:active{transform:scale(.96) translateY(1px)}#settings-modal,#credits-modal{z-index:1000!important}.credits-content{width:420px;max-width:95%;color:#fff}.credits-body{display:flex;flex-direction:column;gap:16px;text-align:center}.credits-body h3{font-family:Cinzel,serif;font-size:1.6rem;font-weight:700;margin:0 0 4px;color:#b3e5fc;text-shadow:0 0 10px rgba(0,229,255,.4)}.credits-version{font-size:.85rem;color:#ffffff80;margin:0 0 12px}.credits-section{border-top:1px solid rgba(255,255,255,.08);padding-top:12px}.credits-section h4{font-size:.95rem;font-weight:700;text-transform:uppercase;color:#4dd0e1;margin:0 0 6px}.credits-section p{font-size:.9rem;color:#fffc;margin:2px 0}@keyframes logoIntro{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes logoGlowPulse{0%{filter:drop-shadow(0 2px 4px rgba(0,0,0,.8)) drop-shadow(0 0 15px rgba(0,229,255,.5))}50%{filter:drop-shadow(0 2px 4px rgba(0,0,0,.8)) drop-shadow(0 0 25px rgba(0,229,255,.8))}to{filter:drop-shadow(0 2px 4px rgba(0,0,0,.8)) drop-shadow(0 0 15px rgba(0,229,255,.5))}}@keyframes buttonReveal{0%{opacity:0;transform:translateY(20px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes btnPulse{0%{box-shadow:0 10px 20px #0066eb66,0 0 15px #00d2ff99,inset 0 4px 4px #ffffff80}50%{box-shadow:0 10px 25px #0066eb80,0 0 25px #00d2ffe6,inset 0 4px 4px #ffffff80}to{box-shadow:0 10px 20px #0066eb66,0 0 15px #00d2ff99,inset 0 4px 4px #ffffff80}}@keyframes emblemSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:768px){.home-branding{left:50%!important;top:15%!important;transform:translate(-50%)!important;text-align:center!important;width:90%}.home-title{font-size:3rem!important}.home-menu-buttons{bottom:5%!important;flex-direction:column!important;gap:10px!important}.home-btn{width:220px!important;height:44px!important;font-size:1rem!important;padding:8px 16px!important}.btn-play{font-size:1.3rem!important;height:52px!important;min-width:220px!important}}.goodbye-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000;z-index:2000;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity 1.5s ease}.goodbye-overlay.active{opacity:1;pointer-events:auto}.goodbye-text{font-size:2rem;font-weight:800;letter-spacing:.2em;color:#ffffffe6;text-transform:uppercase}#loading-screen.gameplay-transition{background:radial-gradient(circle at center,#0a0f1eb3,#05080fe6);transition:opacity .8s ease}#loading-screen.gameplay-transition.fade-out{opacity:0;pointer-events:none}@keyframes homePanelIntro{0%{opacity:0;transform:translateY(30px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes buttonReveal{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes textGlowPulse{0%,to{text-shadow:0 4px 20px rgba(0,0,0,.5),0 0 30px rgba(79,195,247,.3)}50%{text-shadow:0 4px 20px rgba(0,0,0,.6),0 0 50px rgba(79,195,247,.5),0 0 80px rgba(79,195,247,.2)}}body{padding-bottom:env(safe-area-inset-bottom,0px)}#hud{padding-top:env(safe-area-inset-top,0px);padding-right:env(safe-area-inset-right,0px);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px)}#progression-bar{bottom:max(8px,calc(8px + env(safe-area-inset-bottom,0px)))}#expansion-panel{bottom:max(24px,calc(24px + env(safe-area-inset-bottom,0px)))}.build-preview-hud{bottom:max(84px,calc(84px + env(safe-area-inset-bottom,0px)))}#travel-overlay{bottom:max(140px,calc(140px + env(safe-area-inset-bottom,0px)))}@media(max-width:767px){.hud-top{top:max(12px,calc(12px + env(safe-area-inset-top,0px)))}.island-name{font-size:.85rem;padding:6px 16px;letter-spacing:.03em}.hud-top-right{top:max(10px,calc(10px + env(safe-area-inset-top,0px)));right:max(10px,calc(10px + env(safe-area-inset-right,0px)));gap:6px}.resource-panel{gap:8px;padding:5px 10px}.resource-item{gap:3px;font-size:.78rem}.hud-resource-icon{width:18px!important;height:18px!important}.resource-count{font-size:.78rem}#settings-btn{width:40px;height:40px;min-width:40px;padding:0;display:flex;align-items:center;justify-content:center}.minimap{display:none}@media(min-width:480px){.minimap{display:block;top:max(68px,calc(68px + env(safe-area-inset-top,0px)));right:max(10px,calc(10px + env(safe-area-inset-right,0px)));width:90px;height:90px}.world-nav-buttons{top:max(168px,calc(168px + env(safe-area-inset-top,0px)));right:max(10px,calc(10px + env(safe-area-inset-right,0px)))}}.world-nav-buttons{top:max(68px,calc(68px + env(safe-area-inset-top,0px)));right:max(10px,calc(10px + env(safe-area-inset-right,0px)));gap:5px}.world-nav-btn{width:50px;padding:6px 4px;font-size:10px}.controls-hint,.hud-bottom-right{display:none!important}.hud-bottom{bottom:max(180px,calc(180px + env(safe-area-inset-bottom,0px)))}.interaction-prompt{font-size:.85rem;padding:8px 16px;gap:8px}.world-map-hint{display:none!important}#progression-bar{height:62px;border-radius:24px;padding:0 4px;max-width:96vw}.building-card{width:56px;min-width:56px;height:52px}.building-card .building-card-img{width:26px;height:26px}.building-card .building-title{font-size:.42rem}#expansion-panel{bottom:max(72px,calc(72px + env(safe-area-inset-bottom,0px)));left:0;right:0;width:100%;transform:none}#expansion-panel .modal-content{min-width:unset;width:100%;max-width:100%;border-radius:16px 16px 0 0;padding:10px}.land-dev-card{width:66px;height:66px}.land-dev-card .card-icon{font-size:1.2rem}.build-preview-hud{bottom:max(170px,calc(170px + env(safe-area-inset-bottom,0px)));min-width:min(280px,92vw);max-width:92vw}.build-preview-hud .preview-hud-actions{gap:8px}.build-preview-hud .preview-hud-btn{padding:10px 6px;font-size:.7rem;min-height:40px}.modal-content{max-width:96vw;max-height:80vh;padding:18px 16px;border-radius:16px}.modal-title{font-size:1.2rem;margin-bottom:1em}.modal-close{top:10px;right:12px;font-size:1.5rem;padding:6px 10px}.island-selector-content{width:auto}.island-grid{grid-template-columns:1fr}.storage-content{width:auto}.storage-grid{grid-template-columns:repeat(3,1fr)}.storage-layout{flex-direction:column}.settings-content{width:auto;max-width:96vw}input[type=range]{width:100%}.settings-option{flex-direction:column;align-items:flex-start;gap:6px}.settings-actions{flex-direction:column}.world-map-hint{bottom:max(16px,calc(16px + env(safe-area-inset-bottom,0px)));font-size:11px;padding:8px 14px;max-width:90vw;text-align:center}.foreign-island-banner{top:max(55px,calc(55px + env(safe-area-inset-top,0px)));font-size:11px;padding:8px 16px}.debug-panel{display:none}}@media(min-width:768px)and (max-width:1199px){.hud-top{top:max(14px,calc(14px + env(safe-area-inset-top,0px)))}.island-name{font-size:.95rem;padding:7px 20px}.hud-top-right{top:max(14px,calc(14px + env(safe-area-inset-top,0px)));right:max(14px,calc(14px + env(safe-area-inset-right,0px)))}.resource-panel{gap:10px;padding:5px 12px}.resource-item{font-size:.8rem}#settings-btn{width:38px;height:38px;min-width:38px;padding:0;display:flex;align-items:center;justify-content:center}.minimap{top:max(72px,calc(72px + env(safe-area-inset-top,0px)));right:max(14px,calc(14px + env(safe-area-inset-right,0px)));width:120px;height:120px}.world-nav-buttons{top:max(202px,calc(202px + env(safe-area-inset-top,0px)));right:max(14px,calc(14px + env(safe-area-inset-right,0px)))}.controls-hint,.hud-bottom-right{display:none!important}.hud-bottom{bottom:max(150px,calc(150px + env(safe-area-inset-bottom,0px)))}#progression-bar{height:60px;max-width:88vw}.building-card{width:60px;min-width:60px;height:50px}.building-card .building-card-img{width:28px;height:28px}#expansion-panel{bottom:max(70px,calc(70px + env(safe-area-inset-bottom,0px)))}#expansion-panel .modal-content{min-width:min(540px,86vw)}.build-preview-hud{bottom:max(140px,calc(140px + env(safe-area-inset-bottom,0px)))}.build-preview-hud .preview-hud-btn{padding:9px 8px;min-height:38px}.modal-content{max-width:86vw;max-height:82vh}.island-selector-content,.storage-content{width:min(700px,86vw)}.world-map-hint{bottom:max(20px,calc(20px + env(safe-area-inset-bottom,0px)));font-size:12px}.foreign-island-banner{top:max(60px,calc(60px + env(safe-area-inset-top,0px)))}}@media(min-width:1200px)and (max-width:1599px){.minimap{top:80px;right:20px;width:150px;height:150px}.world-nav-buttons{top:240px;right:20px}.hud-bottom{bottom:110px}.hud-bottom-right{bottom:140px;right:20px}#progression-bar{height:56px;max-width:92vw}.building-card{width:58px;min-width:58px;height:48px}}@media(min-width:1600px)and (max-width:2559px){.island-name{font-size:1.15rem;padding:9px 28px}.resource-panel{gap:16px;padding:7px 18px}.resource-item{font-size:.88rem}.minimap{top:80px;right:24px;width:180px;height:180px}.world-nav-buttons{top:270px;right:24px}.world-nav-btn{width:76px;padding:9px 6px;font-size:12px}#progression-bar{height:62px;max-width:88vw}.building-card{width:64px;min-width:64px;height:54px}.building-card .building-card-img{width:32px;height:32px}.building-card .building-title{font-size:.48rem}#expansion-panel .modal-content{min-width:580px}.land-dev-card{width:80px;height:80px}.island-selector-content{width:780px}.storage-content{width:820px}.controls-hint{display:flex}.hud-bottom-right{display:block}}@media(min-width:2560px){#hud{max-width:2560px;margin:0 auto}.island-name{font-size:1.25rem;padding:10px 32px}.resource-panel{gap:20px;padding:8px 22px}.resource-item{font-size:.95rem}.hud-resource-icon{width:26px!important;height:26px!important}.minimap{top:90px;right:28px;width:200px;height:200px}.world-nav-buttons{top:300px;right:28px}.world-nav-btn{width:84px;padding:10px 6px;font-size:13px}#progression-bar{height:66px;max-width:1400px;border-radius:33px}.building-card{width:70px;min-width:70px;height:58px}.building-card .building-card-img{width:34px;height:34px}.building-card .building-title{font-size:.5rem}#buildings-container{gap:4px}#expansion-panel{width:auto;max-width:1200px}#expansion-panel .modal-content{min-width:640px}.land-dev-card{width:88px;height:88px}.build-preview-hud{min-width:320px}.modal-content{max-width:900px}.island-selector-content{width:860px}.storage-content{width:900px}.world-map-hint{font-size:14px;padding:12px 28px}.controls-hint{display:flex;font-size:.82rem;gap:16px}}#mobile-controls{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;pointer-events:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:none}.mc-joystick{opacity:.75;transition:opacity .2s ease,border-color .2s ease}.mc-joystick:active{opacity:1}.mc-knob{will-change:transform}.mc-btn:active{transform:scale(.88)!important;opacity:1!important}.mc-btn.disabled{pointer-events:none!important;opacity:.4!important}@media(max-width:900px)and (orientation:landscape){#mc-joystick{bottom:max(20px,calc(20px + env(safe-area-inset-bottom,0px)))!important;left:max(16px,calc(16px + env(safe-area-inset-left,0px)))!important}.hud-bottom{bottom:max(100px,calc(100px + env(safe-area-inset-bottom,0px)))!important}#progression-bar{height:50px;bottom:max(4px,calc(4px + env(safe-area-inset-bottom,0px)))}.building-card{width:48px;min-width:48px;height:42px}}.damage-flash-vignette{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:99999;box-shadow:inset 0 0 50px #f009;animation:damage-flash-anim .25s cubic-bezier(.1,.8,.1,1) forwards}@keyframes damage-flash-anim{0%{opacity:1}to{opacity:0}}.player-world-health-bar{position:fixed;pointer-events:none;z-index:100;width:54px;text-align:center;font-family:Outfit,sans-serif;color:#fff;-webkit-user-select:none;user-select:none;transform-origin:center bottom;will-change:left,top,transform,opacity;transition:opacity .2s ease-out}.world-hp-head{display:flex;align-items:center;justify-content:center;gap:2px;margin-bottom:1px;line-height:1}.world-hp-name{display:inline-block;max-width:60px;font-size:.52rem;font-weight:600;letter-spacing:0em;text-shadow:0 1px 0 rgba(0,0,0,.85);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.world-hp-local .world-hp-head{display:none!important}.world-hp-level{flex:0 0 auto;font-size:.44rem;font-weight:700;line-height:1;padding:1px 3px;border-radius:3px;color:#fff;background:#0000008c}.world-hp-track{position:relative;width:100%;height:5px;background:#1a1a1a;border:1px solid rgba(0,0,0,.9);border-radius:3px;overflow:hidden}.world-hp-trail{position:absolute;top:0;left:0;height:100%;width:100%;background:#c62828;border-radius:2px}.world-hp-fill{position:absolute;top:0;left:0;height:100%;width:100%;background:#3ecf4b;border-radius:2px;transition:width .12s ease-out}.world-hp-text{display:none;font-size:.48rem;font-weight:700;margin-top:1px;opacity:.8}.combat-hud-local-health{position:fixed;z-index:490;width:220px;background:linear-gradient(135deg,#0e1426e6,#080c1cf2);border:1.5px solid rgba(255,23,68,.35);border-radius:12px;padding:10px;box-shadow:0 6px 20px #00000080;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-family:Outfit,sans-serif;color:#fff;pointer-events:auto;transition:transform .2s ease,opacity .2s ease;bottom:20px;left:20px}.hud-hp-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}.hud-player-name{font-size:.78rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.hud-hp-val{font-size:.75rem;font-weight:800}.hud-hp-track{position:relative;width:100%;height:12px;background:#00000073;border-radius:6px;overflow:hidden;border:1px solid rgba(255,255,255,.05)}.hud-hp-fill{height:100%;background:linear-gradient(90deg,#ff1744,#ff5252);border-radius:6px;transition:width .25s cubic-bezier(.1,.8,.1,1)}.hud-hp-regen-preview{position:absolute;top:0;height:100%;background:#ff52524d;border-radius:6px;display:none}.hud-heart-stacks{display:flex;gap:4px;margin-top:6px;min-height:16px}.heart-stack-icon{font-size:.85rem;animation:heart-beat 1.5s infinite ease-in-out}@keyframes heart-beat{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}body[data-layout=mobile] .combat-hud-local-health,body[data-layout=tablet] .combat-hud-local-health{bottom:auto;left:20px;top:68px;width:180px;padding:8px;border-color:#ff174440}body[data-layout=mobile] .hud-player-name,body[data-layout=tablet] .hud-player-name,body[data-layout=mobile] .hud-hp-val,body[data-layout=tablet] .hud-hp-val{font-size:.68rem}.combat-action-strip{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:490;display:flex;gap:8px;background:#0a0e1ca6;border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:6px;box-shadow:0 8px 32px #00000080;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-family:Outfit,sans-serif;pointer-events:auto;transition:transform .2s ease,opacity .2s ease}.combat-action-slot{position:relative;width:58px;height:48px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:all .18s cubic-bezier(.25,.8,.25,1);user-select:none;-webkit-user-select:none}.combat-action-slot:hover{background:#ff174414;border-color:#ff174466;transform:translateY(-3px) scale(1.05);box-shadow:0 4px 12px #ff174426}.combat-action-slot:active{transform:scale(.95)}.keybind-hint{position:absolute;top:2px;left:3px;font-size:.42rem;font-weight:800;background:#00000080;border:1px solid rgba(255,255,255,.1);color:#fffc;padding:0 3px;border-radius:3px;line-height:1.2}.action-icon{font-size:1rem;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}.action-name{font-size:.45rem;font-weight:700;color:#dce6fad9;text-transform:uppercase;margin-top:1px}.combat-action-slot.on-cooldown{pointer-events:none;cursor:not-allowed}.cooldown-overlay{position:absolute;bottom:0;left:0;right:0;background:#0000008c;height:0%;transition:height .1s linear;border-radius:0 0 8px 8px}.cooldown-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:800;color:#ff5252;text-shadow:0 1px 3px rgba(0,0,0,.9)}.combat-action-slot.active-block{background:#ffc10726!important;border-color:#ffc107b3!important;box-shadow:0 0 10px #ffc10740!important}body[data-layout=ultrawide] .combat-action-strip{bottom:max(24px,env(safe-area-inset-bottom))}.combat-action-strip.hidden-tier{display:none!important}.combat-death-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100000;background:radial-gradient(circle,#280000d9,#0f0000fa);display:flex;align-items:center;justify-content:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:fade-in-overlay .5s ease-out forwards}@keyframes fade-in-overlay{0%{opacity:0}to{opacity:1}}.death-message{text-align:center;font-family:Cinzel,serif}.death-title{font-size:3.5rem;font-weight:900;color:#ff1744;letter-spacing:.12em;text-shadow:0 0 25px rgba(255,23,68,.6);animation:title-pulse 2s infinite ease-in-out}@keyframes title-pulse{0%,to{transform:scale(1);opacity:.9}50%{transform:scale(1.05);opacity:1}}.death-subtitle{font-family:Outfit,sans-serif;font-size:1.1rem;color:#ffffffb3;margin-top:10px;letter-spacing:.05em}.respawn-btn{margin-top:24px;background:linear-gradient(180deg,#ff1744,#b2002d);border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#fff;font-family:Outfit,sans-serif;font-size:.85rem;font-weight:700;padding:10px 22px;cursor:pointer;box-shadow:0 4px 15px #ff17444d;transition:all .2s ease}.respawn-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff174480;background:linear-gradient(180deg,#ff335c,#d8003a)}.combat-heart-banner{position:fixed;top:20px;left:50%;transform:translate(-50%) translateY(-100px);z-index:10000;display:flex;align-items:center;gap:10px;background:linear-gradient(135deg,#e91e63,#ad1457);border:1.5px solid rgba(255,255,255,.2);border-radius:20px;padding:10px 24px;box-shadow:0 8px 30px #e91e6359;color:#fff;font-family:Outfit,sans-serif;font-weight:700;font-size:.9rem;pointer-events:none;transition:transform .4s cubic-bezier(.18,.89,.32,1.28)}.combat-heart-banner.slide-in{transform:translate(-50%) translateY(0)}.heart-banner-icon{font-size:1.2rem;animation:heart-beat 1s infinite ease-in-out}.build-mode-active .combat-hud-local-health,.build-mode-active .combat-action-strip{opacity:.15;pointer-events:none}.player-profile-panel{position:fixed;top:16px;left:16px;z-index:60;width:248px;max-width:46vw;padding:14px 16px;background:var(--ui-bg, rgba(18, 22, 32, .72));border:1px solid var(--ui-border, rgba(255, 255, 255, .12));border-radius:var(--radius, 12px);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 6px 24px #00000059;font-family:Outfit,sans-serif;color:#e8edf5;pointer-events:auto;-webkit-user-select:none;user-select:none}.player-profile-panel .ppp-header{display:flex;flex-direction:column;gap:2px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1)}.player-profile-panel .ppp-name{font-size:1.08rem;font-weight:800;color:#ffd86b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-profile-panel .ppp-wallet{font-size:.7rem;color:#9fb0c3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-profile-panel .ppp-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.86rem;line-height:1.7}.player-profile-panel .ppp-label{color:#93a3b8;font-weight:500}.player-profile-panel .ppp-value{color:#fff;font-weight:700;font-variant-numeric:tabular-nums}.player-profile-panel .ppp-xp{margin:5px 0 8px}.player-profile-panel .ppp-xp-track{height:6px;border-radius:4px;overflow:hidden;background:#00000080;border:1px solid rgba(255,255,255,.1)}.player-profile-panel .ppp-xp-fill{height:100%;background:linear-gradient(90deg,#3aa0ff,#7ad0ff);border-radius:4px;transition:width .3s ease}.player-profile-panel .ppp-xp-next{display:block;margin-top:3px;font-size:.62rem;color:#8aa0b8;text-align:right}.player-profile-panel .ppp-resources{display:grid;grid-template-columns:1fr 1fr;gap:2px 12px;margin:8px 0;padding:8px 0;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}.player-profile-panel .ppp-res{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.74rem}.player-profile-panel .ppp-placeholders{margin-top:6px;opacity:.6}.player-profile-panel .ppp-placeholder .ppp-value{font-weight:500;font-style:italic;color:#8593a6}.player-profile-panel .ppp-resources{display:none}.world-hp-local{width:54px}.world-hp-local .world-hp-track{height:5px;border-radius:3px}.world-hp-local .world-hp-fill{background:linear-gradient(90deg,#36d33f,#74ff7d)}.player-profile-panel .ppp-resources{display:none!important}.player-profile-panel{min-width:236px;padding:14px 16px}.player-profile-panel .ppp-name{font-size:1.06rem}.player-profile-panel .ppp-wallet{font-size:.74rem}.player-profile-panel .ppp-row{font-size:.86rem;line-height:1.7}.player-profile-panel .ppp-label{font-size:.84rem}.player-profile-panel .ppp-value{font-size:.9rem}.player-profile-panel .ppp-xp-track{height:8px}.minimap{height:auto;aspect-ratio:1 / 1;max-width:168px;box-sizing:border-box}#minimap-canvas{display:block;width:100%;height:100%}.resource-panel{gap:6px;padding:0;background:transparent;border:none;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}.resource-item{gap:7px;padding:4px 12px;background:#ffffff12;border:1px solid rgba(255,255,255,.1);font-size:.9rem}.hud-resource-icon{width:22px;height:22px;object-fit:contain}.resource-count{min-width:16px;text-align:left}.player-world-health-bar.world-hp-local{width:54px}.world-hp-local .world-hp-track{height:5px}#settings-btn{position:fixed!important;top:16px!important;right:16px!important;left:auto!important;width:44px!important;height:44px!important;display:flex!important;align-items:center;justify-content:center;z-index:120!important;pointer-events:auto!important;opacity:1!important;visibility:visible!important}#help-btn{position:fixed!important;top:16px!important;right:66px!important;left:auto!important;width:44px!important;height:44px!important;display:flex!important;align-items:center;justify-content:center;font-size:20px;font-weight:700;line-height:1;z-index:120!important;pointer-events:auto!important;opacity:1!important;visibility:visible!important}#player-profile-panel.player-profile-panel{position:fixed!important;top:16px!important;left:16px!important;right:auto!important;bottom:auto!important}#minimap.minimap{position:fixed!important;top:108px!important;right:20px!important;left:auto!important;bottom:auto!important}
