*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;background:#0a0a12;font-family:Segoe UI,system-ui,sans-serif}#game-container{position:relative;width:100%;height:100%;overflow:hidden}#game-canvas{display:block;width:100%;height:100%;max-width:100vw;image-rendering:pixelated}#ui-layer{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}#ui-layer>*{pointer-events:auto}.hud{position:absolute;top:10px;left:10px;color:#fff;font-size:14px;text-shadow:1px 1px 2px black}.health-bar,.mana-bar,.exp-bar{width:200px;height:20px;background:#0009;border:2px solid;border-radius:4px;margin-bottom:5px;overflow:hidden}.health-bar{border-color:#c41e3a}.mana-bar{border-color:#3498db}.exp-bar{border-color:#f1c40f;height:12px}.bar-fill{height:100%;transition:width .2s ease}.health-bar .bar-fill{background:linear-gradient(180deg,#e74c3c,#c0392b)}.mana-bar .bar-fill{background:linear-gradient(180deg,#3498db,#2980b9)}.exp-bar .bar-fill{background:linear-gradient(180deg,#f1c40f,#d4ac0d)}.bar-text{position:absolute;width:100%;text-align:center;line-height:20px;font-size:12px;font-weight:700}.level-display{margin-bottom:10px;font-size:16px;font-weight:700;color:#f1c40f}.zone-display{position:absolute;top:10px;left:50%;transform:translate(-50%);background:#000000b3;border:2px solid #7bed9f;border-radius:8px;padding:8px 20px;text-align:center;color:#fff;transition:border-color .5s ease}.zone-level{font-size:12px;color:#888;text-transform:uppercase}.zone-name{font-size:16px;font-weight:700;color:#fff;text-shadow:0 0 10px currentColor}.inventory-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#14141ef2;border:2px solid #4a4a5a;border-radius:8px;padding:20px;min-width:min(400px,90vw);max-width:95vw;display:none}.inventory-panel.open{display:block}.inventory-title{color:#f1c40f;font-size:20px;margin-bottom:15px;text-align:center}.inventory-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(45px,50px));gap:5px;overflow-x:auto}.inventory-slot{width:50px;height:50px;background:#00000080;border:2px solid #3a3a4a;border-radius:4px;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative}.inventory-slot:hover{border-color:#6a6a7a}.inventory-slot.selected{border-color:#f1c40f}.item-icon{font-size:28px}.item-count{position:absolute;bottom:2px;right:4px;font-size:10px;color:#fff;text-shadow:1px 1px 1px black}.crafting-panel{position:absolute;top:50%;right:20px;transform:translateY(-50%);background:#14141ef2;border:2px solid #4a4a5a;border-radius:8px;padding:15px;width:250px;display:none}.crafting-panel.open{display:block}.crafting-title{color:#27ae60;font-size:18px;margin-bottom:10px}.recipe-list{max-height:300px;overflow-y:auto}.recipe-item{background:#0000004d;padding:10px;margin-bottom:8px;border-radius:4px;cursor:pointer;border:1px solid transparent}.recipe-item:hover{border-color:#27ae60}.recipe-item.craftable{background:#27ae6033}.recipe-materials{font-size:12px;color:#aaa;display:flex;flex-wrap:wrap;gap:6px}.recipe-mat{padding:2px 6px;border-radius:3px;background:#0000004d}.recipe-mat.have{color:#2ecc71}.recipe-mat.need{color:#e74c3c}.recipe-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.recipe-name{color:#fff;font-weight:700}.recipe-count{color:#7bed9f;font-size:12px}.recipe-empty{color:#666;text-align:center;padding:20px;font-style:italic}.crafting-filters{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.craft-filter-btn{background:#0006;border:1px solid #3a3a4a;border-radius:4px;padding:4px 8px;color:#888;cursor:pointer;font-size:11px;display:flex;flex-direction:column;align-items:center;min-width:50px;transition:all .2s ease}.craft-filter-btn:hover{border-color:#27ae60;color:#ccc}.craft-filter-btn.active{background:#27ae604d;border-color:#27ae60;color:#fff}.filter-icon{font-size:14px;margin-bottom:2px}.filter-name{font-size:10px}.filter-count{font-size:9px;opacity:.7}.crafting-options{margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid #3a3a4a}.craftable-toggle{display:flex;align-items:center;gap:8px;color:#aaa;font-size:12px;cursor:pointer}.craftable-toggle input[type=checkbox]{accent-color:#27ae60;width:14px;height:14px}.craftable-toggle:hover{color:#fff}.message-log{position:absolute;bottom:10px;left:10px;width:400px;max-height:150px;overflow-y:auto;color:#fff;font-size:12px}.message{padding:3px 0;text-shadow:1px 1px 2px black;animation:fadeIn .3s ease}.message.combat{color:#e74c3c}.message.loot{color:#f1c40f}.message.system{color:#3498db}.message.levelup{color:#9b59b6;font-weight:700}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.hotbar{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;gap:5px;max-width:95vw;overflow-x:auto}.hotbar-slot{width:50px;height:50px;background:#000000b3;border:2px solid #4a4a5a;border-radius:4px;display:flex;align-items:center;justify-content:center;position:relative}.hotbar-slot.active{border-color:#f1c40f}.hotbar-key{position:absolute;top:2px;left:4px;font-size:10px;color:#888}.minimap{position:absolute;top:10px;right:10px;width:150px;height:150px;background:#000000b3;border:2px solid #4a4a5a;border-radius:50%;overflow:hidden}.minimap-canvas{width:100%;height:100%}.tooltip{position:fixed;background:#14141ef2;border:1px solid #6a6a7a;border-radius:4px;padding:10px;color:#fff;font-size:12px;max-width:200px;z-index:1000;display:none}.tooltip.visible{display:block}.tooltip-name{font-weight:700;margin-bottom:5px}.tooltip-name.common{color:#fff}.tooltip-name.uncommon{color:#2ecc71}.tooltip-name.rare{color:#3498db}.tooltip-name.epic{color:#9b59b6}.tooltip-name.legendary{color:#f39c12}.tooltip-stats{margin:6px 0;padding:6px 0;border-top:1px solid #4a4a5a;border-bottom:1px solid #4a4a5a}.tooltip-stats:empty{display:none}.stat-line{color:#7bed9f;font-size:11px;margin:2px 0}.tooltip-desc{color:#aaa;font-size:11px;font-style:italic}.tooltip-compare{margin-top:8px;padding-top:8px;border-top:1px dashed #5a5a6a}.tooltip-compare:empty{display:none}.compare-header{color:#888;font-size:10px;margin-bottom:4px}.stat-change{font-size:11px;margin:2px 0}.stat-change.positive{color:#2ecc71}.stat-change.negative{color:#e74c3c}.stats-panel{position:absolute;top:150px;left:10px;background:#14141ecc;border:1px solid #4a4a5a;border-radius:4px;padding:10px;color:#fff;font-size:12px;display:none}.mobile-controls{position:absolute;bottom:0;left:0;right:0;height:200px;display:none;pointer-events:none;z-index:50}.joystick-zone{position:absolute;left:20px;bottom:20px;width:140px;height:140px;background:#ffffff26;border:3px solid rgba(255,255,255,.3);border-radius:50%;pointer-events:auto;touch-action:none}.joystick-zone:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:50px;height:50px;background:#ffffff4d;border-radius:50%}.attack-btn{position:absolute;right:20px;bottom:20px;width:80px;height:80px;background:#e74c3cb3;border:3px solid #e74c3c;border-radius:50%;color:#fff;font-size:16px;font-weight:700;pointer-events:auto;touch-action:none}.attack-btn:active{background:#e74c3ce6;transform:scale(.95)}@media (max-width: 768px){.mobile-controls{display:block}.inventory-panel{min-width:90%}.inventory-grid{grid-template-columns:repeat(5,50px)}}.title-screen{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,#0a0a12,#1a1a2e);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:100;pointer-events:auto}.title-screen.hidden{display:none}.game-title{font-size:48px;color:#f1c40f;text-shadow:0 0 20px rgba(241,196,15,.5);margin-bottom:10px}.game-subtitle{font-size:18px;color:#888;margin-bottom:50px}.start-btn{padding:15px 60px;font-size:20px;background:linear-gradient(180deg,#27ae60,#1e8449);border:none;border-radius:8px;color:#fff;cursor:pointer;transition:transform .2s,box-shadow .2s}.start-btn:hover{transform:scale(1.05);box-shadow:0 0 20px #27ae6080}.controls-hint{margin-top:30px;color:#666;font-size:14px;text-align:center}.death-screen{position:absolute;top:0;left:0;width:100%;height:100%;background:#000c;display:none;flex-direction:column;align-items:center;justify-content:center;z-index:100}.death-screen.visible{display:flex}.death-title{font-size:48px;color:#c0392b;margin-bottom:20px}.respawn-btn{padding:15px 40px;font-size:18px;background:#c0392b;border:none;border-radius:8px;color:#fff;cursor:pointer}.respawn-btn:hover{background:#e74c3c}.ng-plus-btn{padding:15px 40px;font-size:18px;background:linear-gradient(135deg,#9b59b6,#8e44ad);border:2px solid #f1c40f;border-radius:8px;color:#f1c40f;cursor:pointer;margin-top:15px;display:none;text-shadow:0 0 10px rgba(241,196,15,.5);box-shadow:0 0 20px #9b59b680;animation:ngPlusPulse 2s infinite}.ng-plus-btn.visible{display:block}.ng-plus-btn:hover{background:linear-gradient(135deg,#8e44ad,#7d3c98);box-shadow:0 0 30px #f1c40fb3}@keyframes ngPlusPulse{0%,to{box-shadow:0 0 20px #9b59b680}50%{box-shadow:0 0 35px #f1c40fb3}}.ng-plus-badge{display:inline-block;margin-left:10px;padding:2px 8px;background:linear-gradient(135deg,#9b59b6,#8e44ad);border:1px solid #f1c40f;border-radius:4px;color:#f1c40f;font-size:12px;font-weight:700;text-shadow:0 0 5px rgba(241,196,15,.5)}.ng-plus-badge:empty{display:none}.equipment-panel{position:absolute;top:50%;left:20px;transform:translateY(-50%);background:#14141ef2;border:2px solid #4a4a5a;border-radius:8px;padding:15px;width:220px;display:none}.equipment-panel.open{display:block}.equipment-title{color:#9b59b6;font-size:18px;margin-bottom:15px;text-align:center}.equipment-slots{display:flex;flex-direction:column;gap:8px}.equipment-slot{background:#0006;padding:8px 12px;border-radius:4px;border:1px solid #3a3a4a;cursor:pointer}.equipment-slot:hover{border-color:#9b59b6}.slot-label{font-size:11px;color:#888;margin-bottom:4px}.slot-item{font-size:14px;color:#aaa}.slot-item.equipped{color:#2ecc71}.equipment-stats{margin-top:15px;padding-top:10px;border-top:1px solid #3a3a4a}.stat-row{display:flex;justify-content:space-between;font-size:12px;color:#aaa;margin-bottom:4px}.stat-value{color:#2ecc71}.shop-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#14141ef2;border:2px solid #f1c40f;border-radius:8px;padding:20px;min-width:300px;display:none;z-index:50}.shop-panel.open{display:block}.shop-title{color:#f1c40f;font-size:20px;margin-bottom:10px;text-align:center}.shop-gold{color:#f1c40f;font-size:14px;margin-bottom:15px;text-align:center}.shop-items{max-height:300px;overflow-y:auto}.shop-item{display:flex;align-items:center;gap:10px;background:#0000004d;padding:10px;margin-bottom:8px;border-radius:4px;cursor:not-allowed;border:1px solid transparent;opacity:.6}.shop-item.can-afford{cursor:pointer;opacity:1}.shop-item.can-afford:hover{border-color:#f1c40f}.shop-item-icon{font-size:24px}.shop-item-name{flex:1;color:#fff}.shop-item-price{color:#f1c40f;font-size:12px}.shop-close-btn{width:100%;margin-top:15px;padding:10px;background:#ffffff1a;border:1px solid #4a4a5a;border-radius:4px;color:#fff;cursor:pointer}.shop-close-btn:hover{background:#fff3}.boss-health-bar{position:absolute;top:70px;left:50%;transform:translate(-50%);width:400px;max-width:90%;background:#000c;border:2px solid #c0392b;border-radius:8px;padding:10px;display:none}.boss-health-bar.visible{display:block}.boss-name{color:#c0392b;font-size:14px;font-weight:700;text-align:center;margin-bottom:8px;text-transform:uppercase;letter-spacing:2px}.boss-bar{height:24px;background:#00000080;border-radius:4px;overflow:hidden;position:relative}.boss-bar-fill{height:100%;background:linear-gradient(180deg,#e74c3c,#c0392b);transition:width .3s ease}.boss-bar-text{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:700;text-shadow:1px 1px 2px black}.buff-indicators{position:absolute;top:130px;left:10px;display:flex;gap:8px}.buff-indicator{background:#000000b3;border:2px solid #9b59b6;border-radius:6px;padding:6px 10px;display:flex;flex-direction:column;align-items:center;min-width:50px}.buff-icon{font-size:20px}.buff-time{font-size:11px;color:#fff;margin-top:2px}@keyframes screenShake{0%,to{transform:translate(0)}10%{transform:translate(-5px,-5px)}20%{transform:translate(5px,5px)}30%{transform:translate(-5px,5px)}40%{transform:translate(5px,-5px)}50%{transform:translate(-3px,-3px)}60%{transform:translate(3px,3px)}70%{transform:translate(-2px,2px)}80%{transform:translate(2px,-2px)}90%{transform:translate(-1px,1px)}}#game-canvas.shake{animation:screenShake .3s ease-out}.achievement-popup{position:absolute;top:20px;right:20px;background:linear-gradient(135deg,#27ae60f2,#1e8449f2);border:2px solid #2ecc71;border-radius:12px;padding:15px 20px;display:flex;align-items:center;gap:15px;transform:translate(150%);transition:transform .5s ease-out;z-index:200;box-shadow:0 5px 20px #2ecc7166}.achievement-popup.visible{transform:translate(0)}.achievement-popup .achievement-icon{font-size:40px}.achievement-popup .achievement-label{font-size:12px;color:#fffc;text-transform:uppercase;letter-spacing:1px}.achievement-popup .achievement-name{font-size:18px;color:#fff;font-weight:700}.achievements-panel{position:absolute;top:50%;right:20px;transform:translateY(-50%);background:#14141ef2;border:2px solid #2ecc71;border-radius:8px;padding:15px;width:350px;max-height:80vh;display:none;overflow:hidden}.achievements-panel.open{display:block}.achievements-title{color:#2ecc71;font-size:18px;margin-bottom:10px;text-align:center}.achievements-progress{color:#888;font-size:14px;text-align:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #3a3a4a}.achievements-grid{max-height:calc(80vh - 100px);overflow-y:auto;display:flex;flex-direction:column;gap:8px}.achievement-item{display:flex;align-items:center;gap:12px;background:#0006;padding:10px 12px;border-radius:6px;border:1px solid #3a3a4a}.achievement-item.unlocked{border-color:#2ecc71;background:#2ecc711a}.achievement-item.locked{opacity:.6}.achievement-badge{font-size:28px;min-width:40px;text-align:center}.achievement-info{flex:1}.achievement-title{color:#fff;font-size:14px;font-weight:700;margin-bottom:2px}.achievement-desc{color:#888;font-size:12px}.death-stats{background:#00000080;border-radius:8px;padding:20px;margin-bottom:20px;text-align:left}.death-stat{color:#ccc;font-size:16px;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.1)}.death-stat:last-child{border-bottom:none}.set-bonuses-header{color:#9b59b6;font-size:14px;font-weight:700;margin-top:15px;margin-bottom:8px;padding-top:10px;border-top:1px solid #3a3a4a}.set-bonus{color:#2ecc71;font-size:12px;padding:4px 0}.quest-tracker{position:absolute;top:120px;right:10px;background:#14141ed9;border:1px solid #f39c12;border-radius:6px;padding:10px;width:220px;display:none}.quest-tracker.visible{display:block}.quest-tracker-title{color:#f39c12;font-size:12px;font-weight:700;margin-bottom:8px;text-transform:uppercase}.quest-tracker-item{margin-bottom:8px}.quest-tracker-name{color:#fff;font-size:12px;margin-bottom:4px}.quest-tracker-progress{height:8px;background:#00000080;border-radius:4px;overflow:hidden;position:relative}.quest-progress-bar{height:100%;background:linear-gradient(90deg,#f39c12,#e67e22);transition:width .3s ease}.quest-progress-text{position:absolute;top:-1px;right:4px;font-size:8px;color:#fff}.quest-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#14141ef2;border:2px solid #f39c12;border-radius:8px;padding:20px;width:450px;max-height:80vh;display:none;overflow:hidden}.quest-panel.open{display:block}.quest-panel-title{color:#f39c12;font-size:20px;font-weight:700;text-align:center;margin-bottom:15px}.quest-tabs{display:flex;gap:10px;margin-bottom:15px;border-bottom:1px solid #3a3a4a;padding-bottom:10px}.quest-tab{flex:1;padding:8px 12px;background:#0000004d;border:1px solid #3a3a4a;border-radius:4px;color:#888;cursor:pointer;font-size:12px;transition:all .2s}.quest-tab:hover{background:#f39c1233;border-color:#f39c12}.quest-tab.active{background:#f39c124d;border-color:#f39c12;color:#f39c12}.quest-list{max-height:calc(80vh - 150px);overflow-y:auto;display:flex;flex-direction:column;gap:10px}.quest-item{background:#0006;border:1px solid #3a3a4a;border-radius:6px;padding:12px}.quest-item-header{display:flex;justify-content:space-between;margin-bottom:6px}.quest-item-name{color:#f39c12;font-size:14px;font-weight:700}.quest-item-zone{color:#888;font-size:11px}.quest-item-desc{color:#ccc;font-size:12px;margin-bottom:8px}.quest-item-progress{height:12px;background:#00000080;border-radius:4px;overflow:hidden;position:relative}.quest-item-giver,.quest-item-rewards{color:#888;font-size:11px;margin-top:4px}.quest-empty{color:#666;text-align:center;padding:20px}.quest-dialog{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#14141efa;border:2px solid #f39c12;border-radius:10px;padding:25px;width:400px;display:none;z-index:100}.quest-dialog.visible{display:block}.quest-dialog-npc{color:#f39c12;font-size:18px;font-weight:700;text-align:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #3a3a4a}.quest-dialog-text{color:#fff;font-size:14px;line-height:1.6;margin-bottom:15px}.quest-dialog-rewards{background:#0000004d;border-radius:6px;padding:12px;margin-bottom:15px}.quest-rewards-title{color:#f39c12;font-size:12px;font-weight:700;margin-bottom:8px}.quest-dialog-rewards div{color:#2ecc71;font-size:12px;padding:2px 0}.quest-dialog-buttons{display:flex;gap:10px;justify-content:center}.quest-btn{padding:10px 24px;border:none;border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s}.quest-btn.accept,.quest-btn.complete{background:linear-gradient(180deg,#27ae60,#1e8449);color:#fff}.quest-btn.accept:hover,.quest-btn.complete:hover{background:linear-gradient(180deg,#2ecc71,#27ae60)}.quest-btn.decline{background:#ffffff1a;color:#888}.quest-btn.decline:hover{background:#fff3}.tutorial-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0009;z-index:1000;display:none}.tutorial-overlay.visible{display:block}.tutorial-box{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:linear-gradient(135deg,#1a1a2efa,#141423fa);border:2px solid #3498db;border-radius:12px;padding:20px 30px;max-width:450px;min-width:320px;text-align:center;box-shadow:0 10px 40px #3498db4d;animation:tutorialPulse 2s infinite}.tutorial-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.tutorial-close{background:transparent;border:none;color:#666;font-size:20px;cursor:pointer;padding:0 5px;transition:color .2s}.tutorial-close:hover{color:#e74c3c}@keyframes tutorialPulse{0%,to{box-shadow:0 10px 40px #3498db4d}50%{box-shadow:0 10px 50px #3498db80}}.tutorial-title{color:#3498db;font-size:22px;font-weight:700;margin-bottom:15px}.tutorial-message{color:#ddd;font-size:15px;line-height:1.5;margin-bottom:25px}.tutorial-buttons{display:flex;justify-content:center;gap:15px}.tutorial-btn{padding:10px 25px;border:none;border-radius:6px;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s ease}.tutorial-btn.next{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff}.tutorial-btn.next:hover:not(:disabled){background:linear-gradient(135deg,#5dade2,#3498db);transform:scale(1.05)}.tutorial-btn.next:disabled{background:#555;color:#888;cursor:not-allowed}.tutorial-btn.skip{background:transparent;border:1px solid #555;color:#888}.tutorial-btn.skip:hover{border-color:#e74c3c;color:#e74c3c}.tutorial-progress{margin-top:20px;color:#666;font-size:12px}.tutorial-highlight{position:absolute;border:3px solid #3498db;border-radius:8px;box-shadow:0 0 20px #3498db80;animation:highlightPulse 1s infinite;pointer-events:none;display:none}@keyframes highlightPulse{0%,to{box-shadow:0 0 20px #3498db80}50%{box-shadow:0 0 30px #3498dbcc}}.tutorial-action-hint{display:none;background:linear-gradient(135deg,#2ecc7133,#27ae6033);border:2px solid #2ecc71;border-radius:8px;padding:12px 20px;margin:15px 0;font-size:18px;font-weight:700;color:#2ecc71}.tutorial-action-hint.visible{display:block}.tutorial-action-hint.pulse-hint{animation:actionHintPulse 1.5s infinite}.tutorial-action-hint.success{background:linear-gradient(135deg,#2ecc714d,#27ae604d);animation:none}@keyframes actionHintPulse{0%,to{transform:scale(1);box-shadow:0 0 10px #2ecc714d}50%{transform:scale(1.02);box-shadow:0 0 20px #2ecc7199}}.tutorial-btn.waiting{display:flex;align-items:center;justify-content:center;gap:8px}.waiting-spinner{width:14px;height:14px;border:2px solid #666;border-top-color:#fff;border-radius:50%;animation:spinWaiting 1s linear infinite}@keyframes spinWaiting{to{transform:rotate(360deg)}}.tutorial-btn.start-btn{background:linear-gradient(135deg,#2ecc71,#27ae60);font-size:16px;padding:12px 30px}.tutorial-btn.start-btn:hover{background:linear-gradient(135deg,#58d68d,#2ecc71);transform:scale(1.05)}.tutorial-btn.skip-all{background:transparent;border:1px solid #555;color:#888}.tutorial-btn.skip-all:hover{border-color:#e74c3c;color:#e74c3c}.tutorial-btn.pulse{animation:buttonPulse .5s ease}@keyframes buttonPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.progress-bar-container{width:100%;height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden;margin-bottom:8px}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#3498db,#2ecc71);border-radius:3px;transition:width .3s ease}.progress-text{color:#888;font-size:11px}.tutorial-box.position-top{animation:slideInFromTop .3s ease}.tutorial-box.position-center{animation:fadeInCenter .3s ease}@keyframes slideInFromTop{0%{opacity:0;transform:translate(-50%) translateY(-30px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes fadeInCenter{0%{opacity:0;transform:translate(-50%,-50%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.tutorial-overlay.visible{background:#0006}.challenge-ui{position:absolute;top:10px;right:170px;background:linear-gradient(135deg,#9b59b6f2,#8e44adf2);border:2px solid #f1c40f;border-radius:10px;padding:15px 20px;color:#fff;display:none;box-shadow:0 5px 25px #9b59b666;animation:challengePulse 2s infinite}.challenge-ui.visible{display:block}@keyframes challengePulse{0%,to{box-shadow:0 5px 25px #9b59b666}50%{box-shadow:0 5px 35px #9b59b699}}.challenge-header{font-size:14px;font-weight:700;text-align:center;margin-bottom:10px;color:#f1c40f;text-shadow:0 0 10px rgba(241,196,15,.5)}.challenge-wave{font-size:24px;font-weight:700;text-align:center;margin-bottom:10px;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.5)}.challenge-score,.challenge-high,.challenge-kills,.challenge-time{font-size:13px;margin-bottom:5px;display:flex;justify-content:space-between;gap:15px}.challenge-score span,.challenge-high span,.challenge-kills span,.challenge-time span{color:#f1c40f;font-weight:700}.challenge-results{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:linear-gradient(135deg,#141423fa,#0f0f19fa);border:3px solid #9b59b6;border-radius:15px;padding:30px 50px;text-align:center;display:none;z-index:100;box-shadow:0 15px 50px #9b59b666}.challenge-results.visible{display:block;animation:resultsSlideIn .5s ease-out}@keyframes resultsSlideIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.8)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.challenge-results-title{font-size:28px;font-weight:700;color:#9b59b6;margin-bottom:25px;text-shadow:0 0 15px rgba(155,89,182,.5)}.challenge-results-content{color:#ddd;font-size:16px;line-height:2}.challenge-stat{padding:5px 0}.challenge-stat.new-high{font-size:20px;color:#f1c40f;font-weight:700;margin-bottom:15px;animation:newHighPulse .5s ease-out 3}@keyframes newHighPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.challenge-close-btn{margin-top:25px;padding:12px 40px;background:linear-gradient(135deg,#9b59b6,#8e44ad);border:2px solid #f1c40f;border-radius:8px;color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s ease}.challenge-close-btn:hover{background:linear-gradient(135deg,#a569bd,#9b59b6);transform:scale(1.05);box-shadow:0 5px 20px #9b59b680}.lore-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#141423f2;border:2px solid #8b4513;border-radius:10px;padding:20px;width:450px;max-height:70vh;display:none;overflow:hidden;box-shadow:0 10px 40px #8b45134d}.lore-panel.open{display:block}.lore-title{color:#daa520;font-size:22px;font-weight:700;text-align:center;margin-bottom:10px}.lore-progress{color:#888;font-size:13px;text-align:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #3a3a4a}.lore-zones{max-height:calc(70vh - 150px);overflow-y:auto}.lore-empty{color:#888;text-align:center;padding:30px;font-style:italic}.lore-zone{margin-bottom:15px}.lore-zone-header{color:#daa520;font-size:14px;font-weight:700;padding:8px 12px;background:#8b451333;border-radius:6px;margin-bottom:8px}.lore-zone-entries{padding-left:10px}.lore-zone-entry{display:flex;align-items:center;gap:10px;padding:8px 12px;margin-bottom:5px;background:#0000004d;border-radius:4px;cursor:pointer;transition:all .2s ease;border:1px solid transparent}.lore-zone-entry:hover{background:#8b45134d;border-color:#8b4513}.lore-entry-icon{font-size:18px}.lore-entry-name{color:#ddd;font-size:13px}.lore-entry{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:linear-gradient(135deg,#1e1914fa,#140f0afa);border:3px solid #8b4513;border-radius:12px;padding:30px 40px;max-width:500px;display:none;z-index:100;box-shadow:0 15px 50px #8b451366}.lore-entry.visible{display:block;animation:loreSlideIn .4s ease-out}@keyframes loreSlideIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.lore-entry-title{color:#daa520;font-size:20px;font-weight:700;text-align:center;margin-bottom:20px;text-shadow:0 0 10px rgba(218,165,32,.3)}.lore-entry-text{color:#c9b896;font-size:15px;line-height:1.7;text-align:justify;font-style:italic}.lore-close-btn{display:block;margin:25px auto 0;padding:10px 35px;background:linear-gradient(135deg,#8b4513,#654321);border:2px solid #daa520;border-radius:6px;color:#daa520;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s ease}.lore-close-btn:hover{background:linear-gradient(135deg,#9a5423,#765432);transform:scale(1.05)}.stats-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#141423f2;border:2px solid #3498db;border-radius:10px;padding:20px;width:400px;max-height:75vh;display:none;overflow:hidden;box-shadow:0 10px 40px #3498db4d}.stats-panel.open{display:block}.stats-title{color:#3498db;font-size:22px;font-weight:700;text-align:center;margin-bottom:15px}.stats-tabs{display:flex;gap:10px;margin-bottom:15px;border-bottom:1px solid #3a3a4a;padding-bottom:10px}.stats-tab{flex:1;padding:10px 15px;background:#0000004d;border:1px solid #3a3a4a;border-radius:6px;color:#888;cursor:pointer;font-size:13px;font-weight:700;transition:all .2s ease}.stats-tab:hover{background:#3498db33;border-color:#3498db}.stats-tab.active{background:#3498db4d;border-color:#3498db;color:#3498db}.stats-content{max-height:calc(75vh - 130px);overflow-y:auto}.stats-section{margin-bottom:15px;padding:10px;background:#0003;border-radius:6px}.stats-section-title{color:#3498db;font-size:14px;font-weight:700;margin-bottom:10px;padding-bottom:5px;border-bottom:1px solid rgba(52,152,219,.3)}.stats-row{display:flex;justify-content:space-between;padding:5px 0;font-size:13px;color:#bbb}.stats-row span:last-child{color:#fff;font-weight:700}.stats-empty{color:#888;text-align:center;padding:30px;font-style:italic}.leaderboard{display:flex;flex-direction:column;gap:5px}.leaderboard-header{display:grid;grid-template-columns:30px 1fr 1fr 1fr 1.5fr;gap:10px;padding:10px;background:#3498db33;border-radius:6px;font-size:12px;font-weight:700;color:#3498db;text-align:center}.leaderboard-row{display:grid;grid-template-columns:30px 1fr 1fr 1fr 1.5fr;gap:10px;padding:10px;background:#0000004d;border-radius:4px;font-size:13px;color:#ddd;text-align:center;transition:all .2s ease}.leaderboard-row:hover{background:#3498db26}.leaderboard-row.rank-1{background:linear-gradient(135deg,#f1c40f33,#f1c40f1a);border:1px solid #f1c40f}.leaderboard-row.rank-1 .leaderboard-rank{color:#f1c40f}.leaderboard-row.rank-2{background:linear-gradient(135deg,#bdc3c733,#bdc3c71a);border:1px solid #bdc3c7}.leaderboard-row.rank-2 .leaderboard-rank{color:#bdc3c7}.leaderboard-row.rank-3{background:linear-gradient(135deg,#cd7f3233,#cd7f321a);border:1px solid #cd7f32}.leaderboard-row.rank-3 .leaderboard-rank{color:#cd7f32}.leaderboard-rank{font-weight:700;font-size:14px}.leaderboard-score{color:#f1c40f;font-weight:700}.pet-panel{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:280px;max-height:500px;background:#000000e6;border:2px solid #a855f7;border-radius:10px;padding:15px;display:none;overflow-y:auto}.pet-panel.open{display:block}.pet-title{font-size:18px;font-weight:700;color:#a855f7;margin-bottom:10px;border-bottom:1px solid #a855f7;padding-bottom:5px}.pet-active{background:#a855f733;border-radius:8px;padding:10px;margin-bottom:15px}.pet-active-header{color:#888;font-size:12px;margin-bottom:5px}.pet-active-info{display:flex;align-items:center;gap:10px}.pet-active-info .pet-icon{font-size:24px}.pet-active-info .pet-name{flex:1;color:#fff;font-weight:700}.pet-dismiss-btn{padding:4px 8px;background:#ef4444;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:11px}.pet-ability{color:#888;font-size:12px;margin-top:5px}.pet-active-none{color:#666;font-style:italic}.pet-list{display:flex;flex-direction:column;gap:8px}.pet-item{display:flex;align-items:center;gap:10px;padding:8px;background:#28283ccc;border:2px solid;border-radius:8px;cursor:pointer;transition:all .2s}.pet-item.unlocked:hover{background:#3c3c50e6}.pet-item.locked{opacity:.5;cursor:not-allowed}.pet-item.active{background:#a855f74d}.pet-item-icon{font-size:24px}.pet-item-info{flex:1}.pet-item-name{color:#fff;font-weight:700;font-size:13px}.pet-item-rarity{font-size:11px;text-transform:uppercase}.pet-item-ability{color:#888;font-size:11px}.pet-item-unlock{color:#f59e0b;font-size:11px}.skill-tree-panel{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:500px;max-height:600px;background:#000000f2;border:2px solid #f59e0b;border-radius:10px;padding:15px;display:none;overflow-y:auto}.skill-tree-panel.open{display:block}.skill-tree-title{font-size:20px;font-weight:700;color:#f59e0b;margin-bottom:10px;text-align:center}.skill-points{text-align:center;color:#22c55e;font-size:16px;margin-bottom:15px;padding:8px;background:#22c55e33;border-radius:8px}.skill-tree-tabs{display:flex;gap:5px;margin-bottom:15px;flex-wrap:wrap}.skill-tree-tab{flex:1;padding:8px 12px;background:#28283ccc;border:1px solid #444;border-radius:5px;cursor:pointer;font-size:12px;min-width:80px}.skill-tree-tab.active{background:#3c3c50e6;border-color:currentColor}.skill-tree-content{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.skill-node{display:flex;gap:10px;padding:10px;background:#28283ccc;border:2px solid #444;border-radius:8px;cursor:pointer;transition:all .2s;opacity:.5}.skill-node.allocated{opacity:1;border-color:#22c55e;background:#22c55e33}.skill-node.can-allocate{opacity:1;border-color:#f59e0b;animation:pulse 2s infinite}.skill-node.can-allocate:hover{background:#f59e0b4d}@keyframes pulse{0%,to{box-shadow:0 0 5px #f59e0b80}50%{box-shadow:0 0 15px #f59e0bcc}}.skill-icon{font-size:28px;width:40px;text-align:center}.skill-info{flex:1}.skill-name{color:#fff;font-weight:700;font-size:13px}.skill-rank{color:#22c55e;font-size:11px}.skill-desc{color:#888;font-size:11px;margin-top:3px}.bestiary-panel{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:300px;max-height:500px;background:#000000e6;border:2px solid #3b82f6;border-radius:10px;padding:15px;display:none;overflow-y:auto}.bestiary-panel.open{display:block}.bestiary-title{font-size:18px;font-weight:700;color:#3b82f6;margin-bottom:10px;border-bottom:1px solid #3b82f6;padding-bottom:5px}.bestiary-progress{color:#888;font-size:12px;margin-bottom:15px}.bestiary-list{display:flex;flex-direction:column;gap:8px}.bestiary-entry{display:flex;align-items:center;gap:10px;padding:8px;background:#28283ccc;border:1px solid #333;border-radius:8px}.bestiary-entry.undiscovered{opacity:.5}.bestiary-icon{font-size:24px;width:32px;text-align:center}.bestiary-info{flex:1}.bestiary-name{color:#fff;font-weight:700;font-size:13px}.bestiary-category{color:#888;font-size:11px}.bestiary-kills{color:#ef4444;font-size:11px}.bestiary-mastery{font-size:11px;font-weight:700}.bestiary-hint{color:#666;font-size:11px;font-style:italic}.daily-reward-popup{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#000000f2;border:3px solid #f59e0b;border-radius:15px;padding:25px;text-align:center;display:none;z-index:1000;min-width:300px}.daily-reward-popup.visible{display:block;animation:popIn .3s ease-out}@keyframes popIn{0%{transform:translate(-50%,-50%) scale(.8);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.daily-reward-header{font-size:24px;color:#f59e0b;margin-bottom:10px}.daily-streak{color:#22c55e;font-size:18px;margin-bottom:20px}.daily-reward-content{margin-bottom:20px}.daily-reward-item{padding:10px;background:#f59e0b33;border-radius:8px;color:#fff;font-size:16px;margin-bottom:10px}.daily-reward-item.weekly{background:#a855f733;border:1px solid #a855f7}.daily-reward-item.milestone{background:#22c55e33;border:1px solid #22c55e}.daily-claim-btn{padding:12px 30px;font-size:16px;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:700}.daily-claim-btn:hover{background:linear-gradient(135deg,#d97706,#b45309)}.weather-display{position:absolute;top:10px;right:170px;background:#0009;padding:5px 12px;border-radius:15px;display:none;align-items:center;gap:5px;font-size:14px;color:#fff}.weather-display.visible{display:flex}.weather-icon{font-size:18px}.weather-name{font-size:12px;color:#aaa}.world-event-display{position:absolute;top:55px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#9b59b6e6,#8e44ade6);border:2px solid #f1c40f;border-radius:8px;padding:8px 16px;display:none;align-items:center;gap:10px;animation:eventPulse 2s infinite;z-index:50}.world-event-display.visible{display:flex}@keyframes eventPulse{0%,to{box-shadow:0 0 10px #f1c40f4d}50%{box-shadow:0 0 20px #f1c40f99}}.world-event-icon{font-size:24px}.world-event-info{display:flex;flex-direction:column}.world-event-name{color:#fff;font-weight:700;font-size:14px}.world-event-timer{color:#f1c40f;font-size:12px}.fishing-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000b3;display:none;justify-content:center;align-items:center;z-index:200}.fishing-overlay.visible{display:flex}.fishing-box{background:linear-gradient(135deg,#143250f2,#0f2841f2);border:3px solid #3498db;border-radius:15px;padding:30px 40px;text-align:center;min-width:350px;box-shadow:0 10px 40px #3498db66}.fishing-title{color:#3498db;font-size:24px;font-weight:700;margin-bottom:15px}.fishing-status{color:#fff;font-size:20px;margin-bottom:20px;min-height:30px}.fishing-status.bite{color:#e74c3c;font-weight:700;animation:biteFlash .3s infinite}@keyframes biteFlash{0%,to{opacity:1}50%{opacity:.5}}.fishing-status.reeling{color:#2ecc71}.fishing-reel-container{position:relative;width:100%;height:40px;background:#00000080;border-radius:20px;margin-bottom:15px;display:none;overflow:hidden}.fishing-reel-container.visible{display:block}.fishing-reel-zone{position:absolute;top:5px;height:30px;background:#2ecc7180;border:2px solid #2ecc71;border-radius:15px;transition:left .1s ease}.fishing-reel-cursor{position:absolute;top:8px;width:6px;height:24px;background:#e74c3c;border-radius:3px;transition:left .05s linear}.fishing-reel-cursor.in-zone{background:#2ecc71;box-shadow:0 0 10px #2ecc71}.fishing-progress{width:100%;height:20px;background:#00000080;border-radius:10px;margin-bottom:15px;overflow:hidden;display:none}.fishing-progress.visible{display:block}.fishing-progress-fill{height:100%;background:linear-gradient(90deg,#3498db,#2ecc71);border-radius:10px;transition:width .1s ease}.fishing-hint{color:#888;font-size:14px}.fishing-hint.urgent{color:#e74c3c;font-weight:700;animation:urgentPulse .5s infinite}@keyframes urgentPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.map-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000d9;display:none;justify-content:center;align-items:center;z-index:200}.map-overlay.visible{display:flex}.map-box{background:#141423fa;border:3px solid #27ae60;border-radius:15px;padding:25px;text-align:center}.map-title{color:#27ae60;font-size:24px;font-weight:700;margin-bottom:15px}.map-canvas{border:2px solid #333;border-radius:8px;cursor:pointer}.map-legend{display:flex;justify-content:center;gap:20px;margin-top:15px}.map-legend-item{display:flex;align-items:center;gap:6px;color:#888;font-size:12px}.legend-dot{width:12px;height:12px;border-radius:50%}.legend-dot.current{background:#f1c40f;border:2px solid #fff}.legend-dot.unlocked{background:#27ae60;border:2px solid rgba(255,255,255,.5)}.legend-dot.locked{background:#333;border:2px solid #555}.map-info{margin-top:15px;padding:15px;background:#0006;border-radius:8px;min-height:80px}.map-waypoint-name{color:#27ae60;font-size:18px;font-weight:700}.map-waypoint-zone{color:#888;font-size:14px;margin-bottom:10px}.map-waypoint-cost{color:#f1c40f;font-size:14px;margin-bottom:10px}.map-travel-btn{padding:10px 25px;background:linear-gradient(135deg,#27ae60,#1e8449);border:none;border-radius:6px;color:#fff;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s ease}.map-travel-btn:hover{background:linear-gradient(135deg,#2ecc71,#27ae60);transform:scale(1.05)}.map-close-btn{margin-top:15px;padding:10px 30px;background:#ffffff1a;border:1px solid #555;border-radius:6px;color:#888;cursor:pointer;font-size:14px}.map-close-btn:hover{background:#fff3;border-color:#888;color:#fff}.cosmetics-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#141423f2;border:2px solid #a855f7;border-radius:10px;padding:20px;width:400px;max-height:500px;display:none;z-index:100}.cosmetics-panel.open{display:block}.cosmetics-title{color:#a855f7;font-size:22px;font-weight:700;text-align:center;margin-bottom:15px}.cosmetics-tabs{display:flex;gap:10px;margin-bottom:15px}.cosmetics-tab{flex:1;padding:10px;background:#0006;border:1px solid #444;border-radius:6px;color:#888;cursor:pointer;font-size:13px;transition:all .2s ease}.cosmetics-tab:hover{background:#a855f733;border-color:#a855f7}.cosmetics-tab.active{background:#a855f74d;border-color:#a855f7;color:#a855f7}.cosmetics-content{max-height:350px;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.cosmetic-item{padding:12px;background:#0006;border:2px solid;border-radius:8px;cursor:pointer;transition:all .2s ease}.cosmetic-item.unlocked:hover{background:#a855f733}.cosmetic-item.locked{opacity:.5;cursor:not-allowed}.cosmetic-item.active{background:#2ecc7133}.cosmetic-name{font-size:16px;font-weight:700;margin-bottom:4px}.cosmetic-status{font-size:12px;color:#888}.cosmetic-item.active .cosmetic-status{color:#2ecc71}.cosmetic-req{font-size:11px;color:#f59e0b}.enchant-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#141423f2;border:2px solid #f59e0b;border-radius:10px;padding:20px;width:400px;max-height:500px;display:none;z-index:100}.enchant-panel.open{display:block}.enchant-title{color:#f59e0b;font-size:22px;font-weight:700;text-align:center;margin-bottom:15px}.enchant-item{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:15px;padding-bottom:15px;border-bottom:1px solid #444}.enchant-equipped-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#0006;border:1px solid #444;border-radius:6px;cursor:pointer;transition:all .2s ease}.enchant-equipped-item:hover{border-color:#f59e0b;background:#f59e0b33}.enchant-item-icon{font-size:20px}.enchant-item-name{color:#fff;font-size:13px}.enchant-count{background:#f59e0b;color:#000;font-size:11px;padding:2px 6px;border-radius:10px;font-weight:700}.enchant-list{max-height:300px;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.enchant-option{padding:12px;background:#0006;border:1px solid #444;border-radius:8px;cursor:pointer;transition:all .2s ease}.enchant-option.available:hover{border-color:#f59e0b;background:#f59e0b26}.enchant-option.unavailable{opacity:.5;cursor:not-allowed}.enchant-name{color:#f59e0b;font-size:15px;font-weight:700;margin-bottom:4px}.enchant-desc{color:#888;font-size:12px;margin-bottom:8px}.enchant-cost{display:flex;flex-wrap:wrap;gap:8px;font-size:12px}.enchant-cost .have{color:#2ecc71}.enchant-cost .need{color:#e74c3c}.enchant-close-btn{width:100%;margin-top:15px;padding:10px;background:#ffffff1a;border:1px solid #555;border-radius:6px;color:#888;cursor:pointer;font-size:14px}.enchant-close-btn:hover{background:#fff3;border-color:#888;color:#fff}#fishing-overlay.visible{display:flex}#fishing-overlay .fishing-panel{background:#14283cf2;border:3px solid #3498db;border-radius:15px;padding:25px;text-align:center;min-width:350px}#fishing-overlay .fishing-title{color:#3498db;font-size:24px;font-weight:700;margin-bottom:20px}#fishing-overlay .fishing-status{color:#fff;font-size:18px;margin-bottom:20px}#fishing-overlay .fishing-minigame{margin-bottom:20px}#fishing-overlay .reel-bar{position:relative;height:40px;background:#00000080;border-radius:20px;margin-bottom:15px;overflow:hidden}#fishing-overlay .reel-zone{position:absolute;top:5px;height:30px;background:#2ecc7166;border:2px solid #2ecc71;border-radius:15px}#fishing-overlay .reel-cursor{position:absolute;top:10px;width:4px;height:20px;background:#fff;border-radius:2px;transform:translate(-50%)}#fishing-overlay .reel-target{position:absolute;top:5px;width:8px;height:30px;background:#e74c3c;border-radius:4px;transform:translate(-50%);transition:left .1s ease}#fishing-overlay .reel-progress{height:20px;background:#00000080;border-radius:10px;overflow:hidden}#fishing-overlay .reel-progress-fill{height:100%;background:linear-gradient(90deg,#3498db,#2ecc71);border-radius:10px;transition:width .1s ease}#fishing-overlay .fishing-catch{padding:20px;background:#0006;border-radius:10px;margin-bottom:15px}#fishing-overlay .catch-icon{font-size:48px;margin-bottom:10px}#fishing-overlay .catch-name{font-size:24px;font-weight:700;color:#fff;margin-bottom:5px}#fishing-overlay .catch-rarity{font-size:14px;padding:4px 12px;border-radius:12px;display:inline-block;margin-bottom:10px}#fishing-overlay .catch-rarity.common{background:#7f8c8d;color:#fff}#fishing-overlay .catch-rarity.uncommon{background:#27ae60;color:#fff}#fishing-overlay .catch-rarity.rare{background:#3498db;color:#fff}#fishing-overlay .catch-rarity.epic{background:#9b59b6;color:#fff}#fishing-overlay .catch-rarity.legendary{background:#f39c12;color:#fff}#fishing-overlay .catch-rarity.junk{background:#555;color:#888}#fishing-overlay .catch-rarity.treasure{background:#e74c3c;color:#fff}#fishing-overlay .catch-reward{color:#f1c40f;font-size:14px;margin-bottom:10px}#fishing-overlay .catch-continue{color:#888;font-size:12px}#fishing-overlay .fishing-stats{display:flex;justify-content:center;gap:20px;margin-bottom:15px;font-size:12px;color:#888}#fishing-overlay .fishing-stat{padding:5px 10px;background:#0000004d;border-radius:5px}#fishing-overlay .fishing-close-btn{padding:10px 25px;background:#ffffff1a;border:1px solid #555;border-radius:6px;color:#888;cursor:pointer;font-size:14px}#fishing-overlay .fishing-close-btn:hover{background:#fff3;border-color:#888;color:#fff}#map-overlay .map-panel{background:#141423fa;border:3px solid #27ae60;border-radius:15px;padding:20px;max-width:500px}#map-overlay .map-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}#map-overlay .map-title{color:#27ae60;font-size:22px;font-weight:700}#map-overlay .map-close-btn{background:none;border:none;color:#888;font-size:24px;cursor:pointer;transition:color .2s}#map-overlay .map-close-btn:hover{color:#fff}#map-overlay .map-container{position:relative;margin-bottom:15px}#map-overlay #world-map-canvas{border-radius:10px;border:2px solid #333}#map-overlay .map-waypoints{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}#map-overlay .map-waypoint{position:absolute;font-size:20px;transform:translate(-50%,-50%);cursor:pointer;pointer-events:auto;transition:transform .2s,filter .2s;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}#map-overlay .map-waypoint:hover{transform:translate(-50%,-50%) scale(1.3)}#map-overlay .map-waypoint.locked{opacity:.5;filter:grayscale(100%)}#map-overlay .map-info{display:flex;justify-content:space-between;padding:10px;background:#0006;border-radius:8px;margin-bottom:15px;font-size:14px;color:#888}#map-overlay .map-location,#map-overlay .map-zone{display:flex;gap:5px}#map-overlay .map-location span,#map-overlay .map-zone span{color:#27ae60}#map-overlay .waypoint-details{padding:15px;background:#0006;border-radius:8px;margin-bottom:15px;min-height:80px}#map-overlay .waypoint-name{font-size:18px;font-weight:700;color:#27ae60;margin-bottom:5px}#map-overlay .waypoint-zone{font-size:14px;color:#f1c40f;margin-bottom:8px}#map-overlay .waypoint-desc{font-size:13px;color:#888}#map-overlay .waypoint-locked .waypoint-name{color:#888}#map-overlay .travel-cost{text-align:center}#map-overlay .travel-info{display:flex;justify-content:center;align-items:center;gap:15px}#map-overlay .travel-cost-amount{color:#f1c40f;font-size:14px}#map-overlay .travel-cost-amount.cannot-afford{color:#e74c3c}#map-overlay .at-location{color:#27ae60;font-size:14px}#map-overlay .travel-btn{padding:10px 25px;background:linear-gradient(135deg,#27ae60,#1e8449);border:none;border-radius:6px;color:#fff;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s ease}#map-overlay .travel-btn:hover:not(:disabled){background:linear-gradient(135deg,#2ecc71,#27ae60);transform:scale(1.05)}#map-overlay .travel-btn:disabled{background:#444;color:#888;cursor:not-allowed}.guild-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#141423f2;border:2px solid #e67e22;border-radius:10px;padding:20px;width:450px;max-height:550px;display:none;z-index:100}.guild-panel.open{display:block}.guild-title{color:#e67e22;font-size:22px;font-weight:700;text-align:center;margin-bottom:15px}.guild-tabs{display:flex;gap:5px;margin-bottom:15px;flex-wrap:wrap}.guild-tab{flex:1;min-width:80px;padding:8px 5px;background:#0006;border:1px solid #444;border-radius:6px;cursor:pointer;font-size:11px;transition:all .2s ease}.guild-tab:hover{background:#e67e2233;border-color:#e67e22}.guild-tab.active{background:#e67e224d;border-color:#e67e22}.guild-content{max-height:400px;overflow-y:auto}.guild-header{display:flex;align-items:center;gap:10px;padding:10px;background:#0006;border-left:4px solid;border-radius:0 8px 8px 0;margin-bottom:15px}.guild-icon{font-size:32px}.guild-name{font-size:20px;font-weight:700;color:#fff}.guild-description{color:#888;font-size:13px;margin-bottom:15px;line-height:1.5}.guild-rank{display:flex;gap:10px;margin-bottom:10px;font-size:14px}.rank-label{color:#888}.rank-name{color:#f1c40f;font-weight:700}.guild-rep-bar{position:relative;height:20px;background:#00000080;border-radius:10px;margin-bottom:15px;overflow:hidden}.guild-rep-fill{height:100%;border-radius:10px;transition:width .3s ease}.guild-rep-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:12px;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.8)}.guild-bonuses{background:#0000004d;padding:10px;border-radius:8px;margin-bottom:15px}.bonuses-title{color:#27ae60;font-size:14px;font-weight:700;margin-bottom:8px}.bonus-item{color:#2ecc71;font-size:12px;padding:4px 0}.guild-quests{background:#0000004d;padding:10px;border-radius:8px}.quests-title{color:#f1c40f;font-size:14px;font-weight:700;margin-bottom:10px}.guild-quest{padding:10px;background:#0000004d;border:1px solid #444;border-radius:6px;margin-bottom:8px;cursor:pointer;transition:all .2s ease}.guild-quest:hover{border-color:#f1c40f;background:#f1c40f1a}.guild-quest .quest-name{color:#fff;font-size:14px;font-weight:700;margin-bottom:4px}.guild-quest .quest-desc{color:#888;font-size:12px;margin-bottom:4px}.guild-quest .quest-reward{color:#f1c40f;font-size:11px}.no-quests{color:#666;font-size:12px;font-style:italic}.rune-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#141423f2;border:2px solid #8e44ad;border-radius:10px;padding:20px;width:450px;max-height:550px;display:none;z-index:100}.rune-panel.open{display:block}.rune-title{color:#8e44ad;font-size:22px;font-weight:700;text-align:center;margin-bottom:15px}.rune-stats{text-align:center;color:#888;font-size:12px;margin-bottom:15px;padding:8px;background:#0000004d;border-radius:6px}.rune-list{display:flex;flex-direction:column;gap:8px;max-height:150px;overflow-y:auto;margin-bottom:15px}.rune-item{display:flex;align-items:center;gap:10px;padding:10px;background:#0006;border:2px solid;border-radius:8px;cursor:pointer;transition:all .2s ease}.rune-item:hover{background:#8e44ad33}.rune-icon{font-size:24px}.rune-info{flex:1}.rune-name{font-size:14px;font-weight:700}.rune-desc{color:#888;font-size:11px}.rune-tier{color:#666;font-size:10px}.no-runes{color:#666;font-size:12px;font-style:italic;text-align:center;padding:20px}.rune-socketing{border-top:1px solid #444;padding-top:15px}.socketing-title{color:#8e44ad;font-size:14px;font-weight:700;margin-bottom:10px}.socket-item{padding:10px;background:#0000004d;border-radius:8px;margin-bottom:8px}.socket-item-name{color:#fff;font-size:14px;margin-bottom:8px}.socket-slots{display:flex;gap:8px}.socket-slot{width:36px;height:36px;background:#00000080;border:2px solid #444;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer;transition:all .2s ease}.socket-slot.empty{color:#555}.socket-slot.filled{border-color:#8e44ad;background:#8e44ad33}.socket-slot:hover{border-color:#8e44ad;transform:scale(1.1)}.dungeon-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#141423f2;border:2px solid #c0392b;border-radius:10px;padding:20px;width:400px;max-height:500px;display:none;z-index:100}.dungeon-panel.open{display:block}.dungeon-title{color:#c0392b;font-size:22px;font-weight:700;text-align:center;margin-bottom:15px}.dungeon-keys{text-align:center;margin-bottom:15px;padding:10px;background:#0006;border-radius:8px}.keys-remaining{color:#f1c40f;font-size:16px;font-weight:700}.dungeon-stats{color:#888;font-size:12px;margin-top:5px}.dungeon-list{max-height:350px;overflow-y:auto;display:flex;flex-direction:column;gap:10px}.dungeon-item{padding:12px;background:#0006;border:2px solid #444;border-radius:8px;transition:all .2s ease}.dungeon-item.available{border-color:#c0392b}.dungeon-item.available:hover{background:#c0392b33}.dungeon-item.locked{opacity:.5}.dungeon-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.dungeon-icon{font-size:24px}.dungeon-name{color:#fff;font-size:16px;font-weight:700;flex:1}.dungeon-tier{color:#c0392b;font-size:12px;font-weight:700;padding:3px 8px;background:#c0392b33;border-radius:4px}.dungeon-desc{color:#888;font-size:12px;margin-bottom:8px}.dungeon-req{color:#f1c40f;font-size:11px;margin-bottom:5px}.dungeon-best{color:#27ae60;font-size:11px;margin-bottom:8px}.dungeon-enter-btn{width:100%;padding:8px;background:linear-gradient(135deg,#c0392b,#922b21);border:none;border-radius:6px;color:#fff;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s ease}.dungeon-enter-btn:hover{background:linear-gradient(135deg,#e74c3c,#c0392b);transform:scale(1.02)}.dungeon-status{position:absolute;top:100px;left:50%;transform:translate(-50%);background:#141423e6;border:2px solid #c0392b;border-radius:10px;padding:15px 25px;display:none;z-index:50;text-align:center}.dungeon-status.visible{display:block}#dungeon-status-name{color:#c0392b;font-size:18px;font-weight:700;margin-bottom:8px}#dungeon-status-wave{color:#f1c40f;font-size:14px;margin-bottom:4px}#dungeon-status-time{color:#e74c3c;font-size:14px;margin-bottom:4px}#dungeon-status-enemies{color:#888;font-size:12px}.auction-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#141423f2;border:2px solid #f1c40f;border-radius:10px;padding:20px;width:500px;max-height:550px;display:none;z-index:100}.auction-panel.open{display:block}.auction-title{color:#f1c40f;font-size:22px;font-weight:700;text-align:center;margin-bottom:15px}.auction-tabs{display:flex;gap:10px;margin-bottom:15px}.auction-tab{flex:1;padding:10px;background:#0006;border:1px solid #444;border-radius:6px;color:#888;cursor:pointer;font-size:13px;transition:all .2s ease}.auction-tab:hover{background:#f1c40f33;border-color:#f1c40f}.auction-tab.active{background:#f1c40f4d;border-color:#f1c40f;color:#f1c40f}.auction-filters{margin-bottom:15px}.auction-gold{color:#f1c40f;font-size:16px;font-weight:700;margin-bottom:10px}.auction-categories{display:flex;flex-wrap:wrap;gap:5px}.auction-cat-btn{padding:5px 10px;background:#0006;border:1px solid #444;border-radius:4px;color:#888;cursor:pointer;font-size:11px;transition:all .2s ease}.auction-cat-btn:hover{border-color:#f1c40f}.auction-cat-btn.active{background:#f1c40f33;border-color:#f1c40f;color:#f1c40f}.auction-content{max-height:350px;overflow-y:auto}.auction-listing{display:flex;align-items:center;gap:10px;padding:10px;background:#0006;border:1px solid #444;border-radius:6px;margin-bottom:8px;transition:all .2s ease}.auction-listing:hover{border-color:#f1c40f}.listing-item{flex:1;color:#fff;font-size:13px;text-transform:capitalize}.listing-qty{color:#888;font-size:12px}.listing-price{color:#f1c40f;font-weight:700;font-size:13px}.listing-seller{color:#666;font-size:11px;max-width:80px;overflow:hidden;text-overflow:ellipsis}.listing-buy-btn{padding:5px 12px;background:linear-gradient(135deg,#27ae60,#1e8449);border:none;border-radius:4px;color:#fff;font-size:12px;cursor:pointer;transition:all .2s ease}.listing-buy-btn:hover{background:linear-gradient(135deg,#2ecc71,#27ae60)}.no-listings{color:#666;font-size:14px;text-align:center;padding:30px}.sell-instructions{color:#888;font-size:14px;margin-bottom:15px}.sellable-items{display:flex;flex-direction:column;gap:8px}.sellable-item{display:flex;align-items:center;gap:10px;padding:10px;background:#0006;border:1px solid #444;border-radius:6px;cursor:pointer;transition:all .2s ease}.sellable-item:hover{border-color:#f1c40f;background:#f1c40f1a}.sell-icon{font-size:20px}.sell-name{color:#fff;flex:1}.sell-count{color:#888;font-size:12px}.sell-price{color:#f1c40f;font-size:12px}.my-stats{text-align:center;color:#888;font-size:12px;padding:10px;background:#0006;border-radius:6px;margin-bottom:15px}.my-listing{display:flex;align-items:center;gap:10px;padding:10px;background:#0006;border:1px solid #444;border-radius:6px;margin-bottom:8px}.my-listing .listing-item{text-transform:capitalize}.listing-cancel-btn{padding:5px 12px;background:#e74c3c4d;border:1px solid #e74c3c;border-radius:4px;color:#e74c3c;font-size:12px;cursor:pointer;transition:all .2s ease}.listing-cancel-btn:hover{background:#e74c3c80}.battlepass-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#141423f2;border:2px solid #9b59b6;border-radius:10px;padding:20px;width:500px;max-height:600px;display:none;z-index:100}.battlepass-panel.open{display:block}.battlepass-title{color:#9b59b6;font-size:22px;font-weight:700;text-align:center;margin-bottom:15px}.battlepass-season{margin-bottom:15px}.season-header{display:flex;align-items:center;justify-content:center;gap:15px;padding:15px;border-radius:10px;color:#fff;font-size:20px;font-weight:700}.season-icon{font-size:32px}.battlepass-progress{margin-bottom:15px;padding:15px;background:#0006;border-radius:8px}.bp-tier{color:#fff;font-size:16px;font-weight:700;margin-bottom:10px;text-align:center}.bp-xp-bar{position:relative;height:20px;background:#00000080;border-radius:10px;margin-bottom:10px;overflow:hidden}.bp-xp-fill{height:100%;background:linear-gradient(90deg,#9b59b6,#8e44ad);border-radius:10px;transition:width .3s ease}.bp-xp-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:11px;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.8)}.bp-premium{text-align:center;color:#888;font-size:12px}.bp-premium.active{color:#f1c40f;font-weight:700}.battlepass-tiers{margin-bottom:15px}.tiers-scroll{display:flex;gap:8px;overflow-x:auto;padding:10px 0}.bp-tier-item{flex-shrink:0;width:70px;padding:10px 8px;background:#0006;border:2px solid #444;border-radius:8px;text-align:center;font-size:11px}.bp-tier-item.unlocked{border-color:#9b59b6}.bp-tier-item.claimed{border-color:#27ae60;background:#27ae6033}.bp-tier-item.locked{opacity:.5}.tier-num{color:#fff;font-size:14px;font-weight:700;margin-bottom:8px}.tier-free{color:#888;margin-bottom:5px}.tier-premium{color:#f1c40f}.tier-premium.locked{color:#555}.battlepass-challenges{max-height:200px;overflow-y:auto}.challenges-title{color:#9b59b6;font-size:14px;font-weight:700;margin-bottom:10px}.bp-challenge{padding:12px;background:#0006;border:1px solid #444;border-radius:8px;margin-bottom:8px}.bp-challenge.completed{border-color:#27ae60;background:#27ae601a}.challenge-type{color:#9b59b6;font-size:10px;font-weight:700;margin-bottom:4px}.challenge-desc{color:#fff;font-size:13px;margin-bottom:8px}.challenge-progress{position:relative;height:16px;background:#00000080;border-radius:8px;overflow:hidden;margin-bottom:5px}.challenge-bar{height:100%;background:linear-gradient(90deg,#9b59b6,#8e44ad);border-radius:8px;transition:width .3s ease}.challenge-progress span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:10px;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.8)}.challenge-xp{color:#f1c40f;font-size:11px;text-align:right}.transmog-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#141423f2;border:2px solid #e91e63;border-radius:10px;padding:20px;width:500px;max-height:600px;display:none;z-index:100}.transmog-panel.open{display:block}.transmog-title{color:#e91e63;font-size:22px;font-weight:700;text-align:center;margin-bottom:15px}.transmog-slots{display:flex;gap:8px;margin-bottom:15px;flex-wrap:wrap}.transmog-slot-btn{padding:8px 12px;background:#0006;border:2px solid #444;border-radius:8px;color:#888;cursor:pointer;transition:all .2s}.transmog-slot-btn:hover{border-color:#e91e63;color:#fff}.transmog-slot-btn.active{border-color:#e91e63;color:#e91e63;background:#e91e6333}.transmog-appearances{max-height:300px;overflow-y:auto;margin-bottom:15px}.appearances-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.appearance-item{padding:12px;background:#0006;border:2px solid #444;border-radius:8px;text-align:center;cursor:pointer;transition:all .2s;position:relative}.appearance-item:hover{border-color:#e91e63}.appearance-item.locked{opacity:.5;cursor:not-allowed}.appearance-item.equipped{border-color:#27ae60;background:#27ae6033}.appearance-icon{font-size:28px;display:block;margin-bottom:5px}.appearance-name{color:#fff;font-size:11px}.appearance-lock{position:absolute;top:5px;right:5px;font-size:14px}.transmog-presets{border-top:1px solid #444;padding-top:15px}.presets-title{color:#e91e63;font-size:14px;margin-bottom:10px}.presets-list{display:flex;gap:8px;flex-wrap:wrap}.preset-btn,.preset-save-btn{padding:8px 16px;background:#0006;border:1px solid #555;border-radius:6px;color:#ccc;cursor:pointer;transition:all .2s}.preset-btn:hover,.preset-save-btn:hover{border-color:#e91e63;color:#fff}.leaderboard-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#141423f2;border:2px solid #f1c40f;border-radius:10px;padding:20px;width:450px;max-height:600px;display:none;z-index:100}.leaderboard-panel.open{display:block}.leaderboard-title{color:#f1c40f;font-size:22px;font-weight:700;text-align:center;margin-bottom:15px}.leaderboard-tabs{display:flex;gap:8px;margin-bottom:15px;justify-content:center}.leaderboard-tab{width:40px;height:40px;background:#0006;border:2px solid #444;border-radius:8px;font-size:18px;cursor:pointer;transition:all .2s}.leaderboard-tab:hover{border-color:#f1c40f}.leaderboard-tab.active{border-color:#f1c40f;background:#f1c40f33}.leaderboard-season{text-align:center;margin-bottom:15px;padding:10px;background:#0000004d;border-radius:8px}.season-info{display:flex;justify-content:space-between;color:#888;font-size:12px;margin-bottom:5px}.season-rank{font-size:16px;font-weight:700}.leaderboard-entries{max-height:350px;overflow-y:auto}.leaderboard-entry{display:flex;justify-content:space-between;padding:10px 12px;background:#0000004d;border-radius:6px;margin-bottom:5px;color:#ccc}.leaderboard-entry.is-player{background:#f1c40f33;border:1px solid #f1c40f;color:#fff}.entry-rank{color:#888;font-weight:700;width:50px}.entry-name{flex:1}.entry-value{color:#f1c40f;font-weight:700}.leaderboard-player-rank{margin-top:15px;padding:10px;background:#f1c40f1a;border-radius:8px;text-align:center}.player-rank-info{color:#ccc;font-size:14px}.player-rank-info strong{color:#f1c40f}.prestige-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#141423f2;border:2px solid #9b59b6;border-radius:10px;padding:20px;width:500px;max-height:650px;display:none;z-index:100}.prestige-panel.open{display:block}.prestige-title{color:#9b59b6;font-size:22px;font-weight:700;text-align:center;margin-bottom:15px}.prestige-info{text-align:center;margin-bottom:20px;padding:15px;background:#0000004d;border-radius:10px}.prestige-level{font-size:24px;color:#f1c40f;margin-bottom:8px}.prestige-star{font-size:28px}.prestige-points{color:#ccc;font-size:14px;margin-bottom:5px}.points-available{color:#9b59b6;font-size:18px;font-weight:700}.prestige-bonuses{color:#27ae60;font-size:12px}.prestige-talents{margin-bottom:20px}.talent-tier-tabs{display:flex;gap:10px;margin-bottom:15px;justify-content:center}.talent-tier-tab{width:50px;height:50px;background:#0006;border:2px solid #444;border-radius:10px;font-size:24px;cursor:pointer;transition:all .2s}.talent-tier-tab:hover{border-color:#9b59b6}.talent-tier-tab.active{border-color:#9b59b6;background:#9b59b633}.talents-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;max-height:250px;overflow-y:auto}.prestige-actions{text-align:center;border-top:1px solid #444;padding-top:15px}.prestige-btn{padding:12px 30px;background:linear-gradient(135deg,#9b59b6,#8e44ad);border:none;border-radius:8px;color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s}.prestige-btn:hover{transform:scale(1.05);box-shadow:0 0 20px #9b59b680}.prestige-req{color:#888;font-size:14px}.reset-talents-btn{display:block;margin:10px auto 0;padding:8px 20px;background:#e74c3c4d;border:1px solid #e74c3c;border-radius:6px;color:#e74c3c;cursor:pointer;transition:all .2s}.reset-talents-btn:hover{background:#e74c3c80}.mount-display{position:absolute;bottom:80px;left:10px;background:#000000b3;border:2px solid #8B4513;border-radius:8px;padding:8px 15px;display:none;align-items:center;gap:10px;z-index:50}.mount-icon{font-size:24px}.mount-name{color:#fff;font-size:14px;font-weight:700}.housing-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#141423f2;border:2px solid #27ae60;border-radius:10px;padding:20px;width:550px;max-height:650px;display:none;z-index:100}.housing-panel.open{display:block}.housing-title{color:#27ae60;font-size:22px;font-weight:700;text-align:center;margin-bottom:15px}.rooms-tabs{display:flex;gap:8px;margin-bottom:15px;flex-wrap:wrap;justify-content:center}.room-tab{width:45px;height:45px;background:#0006;border:2px solid #444;border-radius:10px;font-size:22px;cursor:pointer;transition:all .2s}.room-tab:hover{border-color:#27ae60}.room-tab.active{border-color:#27ae60;background:#27ae6033}.housing-furniture{margin-bottom:15px}.room-name{color:#27ae60;font-size:18px;font-weight:700;text-align:center;margin-bottom:10px}.furniture-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;max-height:300px;overflow-y:auto}.furniture-item{padding:12px 8px;background:#0006;border:2px solid #444;border-radius:8px;text-align:center;cursor:pointer;transition:all .2s;position:relative}.furniture-item:hover,.furniture-item.owned{border-color:#27ae60}.furniture-item.placed{background:#27ae604d;border-color:#2ecc71}.furniture-icon{font-size:28px;display:block;margin-bottom:5px}.furniture-name{color:#ccc;font-size:10px;display:block}.furniture-cost{color:#f1c40f;font-size:10px;display:block;margin-top:3px}.housing-stats{border-top:1px solid #444;padding-top:15px}.housing-stats-grid{display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.stat-item{color:#888;font-size:13px}.stat-bonus{color:#27ae60;font-size:13px;font-weight:700}
