@import"https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700&family=JetBrains+Mono:wght@400;500;600&family=Quicksand:wght@400;500;600;700&display=swap";:root{--cave-dark: #0d0d12;--cave-deeper: #080810;--rock-gray: #1a1a24;--rock-light: #2a2a3a;--rock-surface: #3a3a4a;--gem-gold: #ffd700;--gem-gold-glow: rgba(255, 215, 0, .4);--gem-emerald: #50fa7b;--gem-emerald-glow: rgba(80, 250, 123, .4);--gem-ruby: #ff5555;--gem-ruby-glow: rgba(255, 85, 85, .4);--gem-sapphire: #6272a4;--gem-sapphire-glow: rgba(98, 114, 164, .4);--gem-amethyst: #bd93f9;--gem-amethyst-glow: rgba(189, 147, 249, .4);--gem-diamond: #8be9fd;--gem-diamond-glow: rgba(139, 233, 253, .4);--torch-orange: #ffb86c;--torch-glow: rgba(255, 184, 108, .3);--text-primary: #f8f8f2;--text-secondary: #a0a0b0;--text-dim: #6272a4;--font-display: "Cinzel", serif;--font-body: "Quicksand", sans-serif;--font-mono: "JetBrains Mono", monospace;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--radius-xl: 24px;--shadow-glow: 0 0 20px var(--gem-gold-glow);--shadow-deep: 0 10px 40px rgba(0, 0, 0, .5);--shadow-inset: inset 0 2px 10px rgba(0, 0, 0, .5)}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-body);font-weight:500;background:var(--cave-deeper);color:var(--text-primary);line-height:1.6;min-height:100vh;overflow-x:hidden;background-image:radial-gradient(ellipse at 20% 20%,rgba(189,147,249,.03) 0%,transparent 50%),radial-gradient(ellipse at 80% 80%,rgba(139,233,253,.03) 0%,transparent 50%),url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");background-blend-mode:overlay}#root{min-height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--rock-gray)}::-webkit-scrollbar-thumb{background:var(--rock-surface);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--gem-amethyst)}::selection{background:var(--gem-amethyst);color:var(--cave-dark)}a{color:var(--gem-diamond);text-decoration:none;transition:color .3s ease}a:hover{color:var(--gem-amethyst)}button{font-family:var(--font-body);cursor:pointer;border:none;outline:none;background:transparent}input,textarea,select{font-family:var(--font-body);outline:none;border:none}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600;letter-spacing:.02em}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px var(--gem-gold-glow);filter:brightness(1)}50%{box-shadow:0 0 40px var(--gem-gold-glow);filter:brightness(1.1)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes sparkle{0%,to{opacity:.3;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}@keyframes rock-shake{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(-2px) rotate(-1deg)}75%{transform:translate(2px) rotate(1deg)}}@keyframes fall-in{0%{opacity:0;transform:translateY(-30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auth-page{min-height:100vh;display:flex;justify-content:center;align-items:center;padding:var(--space-lg);position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 0%,rgba(189,147,249,.08) 0%,transparent 50%),radial-gradient(ellipse at 80% 100%,rgba(255,215,0,.05) 0%,transparent 40%),radial-gradient(ellipse at 20% 100%,rgba(139,233,253,.05) 0%,transparent 40%),linear-gradient(180deg,var(--cave-deeper) 0%,var(--cave-dark) 50%,var(--rock-gray) 100%)}.auth-page:before{content:"";position:absolute;inset:0;background-image:radial-gradient(2px 2px at 10% 20%,var(--gem-gold) 50%,transparent 50%),radial-gradient(2px 2px at 90% 30%,var(--gem-emerald) 50%,transparent 50%),radial-gradient(3px 3px at 30% 80%,var(--gem-ruby) 50%,transparent 50%),radial-gradient(2px 2px at 70% 70%,var(--gem-diamond) 50%,transparent 50%),radial-gradient(2px 2px at 50% 50%,var(--gem-amethyst) 50%,transparent 50%),radial-gradient(3px 3px at 85% 85%,var(--gem-gold) 50%,transparent 50%),radial-gradient(2px 2px at 15% 60%,var(--gem-sapphire) 50%,transparent 50%);animation:sparkle 4s ease-in-out infinite;pointer-events:none;opacity:.6}.auth-page:after{content:"";position:absolute;bottom:0;left:0;right:0;height:150px;background:linear-gradient(135deg,transparent 33.33%,var(--rock-gray) 33.33%,var(--rock-gray) 66.66%,transparent 66.66%),linear-gradient(225deg,transparent 33.33%,var(--rock-light) 33.33%,var(--rock-light) 66.66%,transparent 66.66%);background-size:60px 100%;opacity:.3;pointer-events:none}.auth-container{background:linear-gradient(145deg,var(--rock-gray) 0%,var(--cave-dark) 100%);border-radius:var(--radius-xl);box-shadow:var(--shadow-deep),inset 0 1px #ffffff0d,0 0 60px #bd93f91a;width:100%;max-width:420px;overflow:hidden;position:relative;border:1px solid rgba(255,255,255,.05);animation:fall-in .6s ease-out}.auth-container:before{content:"💎";position:absolute;top:-10px;right:-10px;font-size:2rem;opacity:.3;animation:float 3s ease-in-out infinite;filter:drop-shadow(0 0 10px var(--gem-diamond-glow))}.auth-header{text-align:center;padding:var(--space-2xl) var(--space-lg) var(--space-xl);position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 120%,var(--torch-glow) 0%,transparent 60%),linear-gradient(180deg,var(--rock-light) 0%,var(--rock-gray) 100%)}.auth-header:before{content:"⛏️";position:absolute;top:15px;left:50%;transform:translate(-50%);font-size:3.5rem;animation:rock-shake .5s ease-in-out infinite;filter:drop-shadow(0 4px 8px rgba(0,0,0,.4))}.auth-header h1{font-family:var(--font-display);font-size:2rem;font-weight:700;margin:50px 0 var(--space-sm) 0;background:linear-gradient(135deg,var(--gem-gold) 0%,var(--torch-orange) 50%,var(--gem-gold) 100%);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 3s linear infinite;text-shadow:0 0 30px var(--gem-gold-glow);letter-spacing:.05em}.auth-header p{font-size:.95rem;color:var(--text-secondary);margin:0;font-weight:500}.auth-tabs{display:flex;background:var(--cave-deeper);border-bottom:2px solid var(--rock-surface)}.tab{flex:1;padding:var(--space-md);font-family:var(--font-display);font-size:.95rem;font-weight:600;color:var(--text-dim);background:transparent;border:none;cursor:pointer;transition:all .3s ease;position:relative;letter-spacing:.05em}.tab:after{content:"";position:absolute;bottom:-2px;left:50%;width:0;height:3px;background:linear-gradient(90deg,var(--gem-amethyst),var(--gem-diamond));transform:translate(-50%);transition:width .3s ease;border-radius:3px 3px 0 0}.tab:hover{color:var(--text-secondary);background:#ffffff05}.tab.active{color:var(--gem-amethyst);background:#bd93f90d}.tab.active:after{width:60%}.auth-content{padding:var(--space-xl);animation:slide-up .4s ease-out .2s both}.login-form h2,.register-form h2{font-family:var(--font-display);font-size:1.3rem;margin:0 0 var(--space-lg) 0;color:var(--text-primary);display:flex;align-items:center;gap:var(--space-sm)}.login-form h2:before{content:"🗝️";font-size:1.2rem}.register-form h2:before{content:"✨";font-size:1.2rem}.form-group{margin-bottom:var(--space-lg);position:relative}.form-group label{display:block;margin-bottom:var(--space-sm);font-weight:600;color:var(--text-secondary);font-size:.9rem;text-transform:uppercase;letter-spacing:.08em}.form-group input{width:100%;padding:var(--space-md);background:var(--cave-deeper);border:2px solid var(--rock-surface);border-radius:var(--radius-md);font-size:1rem;color:var(--text-primary);transition:all .3s ease;box-shadow:var(--shadow-inset)}.form-group input::placeholder{color:var(--text-dim)}.form-group input:hover{border-color:var(--rock-light)}.form-group input:focus{border-color:var(--gem-amethyst);box-shadow:var(--shadow-inset),0 0 0 3px #bd93f933}.form-group.username:before{content:"👤"}.form-group.email:before{content:"📧"}.form-group.password:before{content:"🔒"}.submit-btn{width:100%;padding:var(--space-md) var(--space-lg);background:linear-gradient(135deg,var(--gem-amethyst) 0%,var(--gem-sapphire) 100%);color:#fff;border:none;border-radius:var(--radius-md);font-family:var(--font-display);font-size:1rem;font-weight:600;letter-spacing:.08em;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;box-shadow:0 4px 15px #bd93f94d,inset 0 1px #fff3}.submit-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 25px #bd93f966,inset 0 1px #fff3}.submit-btn:hover:not(:disabled):before{left:100%}.submit-btn:active:not(:disabled){transform:translateY(0)}.submit-btn:disabled{opacity:.5;cursor:not-allowed;filter:grayscale(30%)}.error-message{background:linear-gradient(135deg,#ff555526,#ff55550d);color:var(--gem-ruby);padding:var(--space-md);border-radius:var(--radius-md);margin-bottom:var(--space-lg);border-left:4px solid var(--gem-ruby);font-size:.9rem;display:flex;align-items:center;gap:var(--space-sm);animation:rock-shake .4s ease-in-out}.error-message:before{content:"⚠️";font-size:1.1rem}.submit-btn.loading{pointer-events:none}.submit-btn.loading:after{content:"";position:absolute;width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-slow .8s linear infinite}@media(max-width:480px){.auth-page{padding:var(--space-md);align-items:flex-start;padding-top:var(--space-2xl)}.auth-container{border-radius:var(--radius-lg)}.auth-header{padding:var(--space-xl) var(--space-md) var(--space-lg)}.auth-header h1{font-size:1.6rem;margin-top:40px}.auth-header:before{font-size:2.5rem}.auth-content{padding:var(--space-lg)}}.mining-error,.miners-error{background:#ff55551a;border:1px solid var(--gem-ruby);color:var(--gem-ruby);padding:var(--space-md);border-radius:var(--radius-md);margin-bottom:var(--space-lg)}.mining-success,.miners-success{background:#50fa7b1a;border:1px solid var(--gem-emerald);color:var(--gem-emerald);padding:var(--space-md);border-radius:var(--radius-md);margin-bottom:var(--space-lg)}.loot-popup{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:linear-gradient(145deg,var(--rock-gray) 0%,var(--cave-dark) 100%);border:2px solid var(--gem-gold);border-radius:var(--radius-lg);padding:var(--space-xl);min-width:300px;z-index:1000;box-shadow:0 0 50px #ffd7004d;animation:popup-appear .3s ease-out}@keyframes popup-appear{0%{opacity:0;transform:translate(-50%,-50%) scale(.8)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.loot-popup h4{text-align:center;font-family:var(--font-display);color:var(--gem-gold);margin:0 0 var(--space-lg) 0}.loot-items{display:flex;flex-direction:column;gap:var(--space-sm)}.loot-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--cave-deeper);border-radius:var(--radius-sm)}.loot-item .loot-icon{font-size:1.5rem}.loot-item .loot-name{flex:1}.loot-item .loot-amount{font-family:var(--font-mono);color:var(--gem-emerald);font-weight:600}.no-loot{text-align:center;color:var(--text-dim)}.active-missions{margin-bottom:var(--space-xl)}.missions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-md)}.missions-header h4{margin:0;font-family:var(--font-display)}.btn-collect-all{padding:var(--space-sm) var(--space-md);background:linear-gradient(135deg,var(--gem-emerald) 0%,var(--gem-diamond) 100%);color:var(--cave-dark);border:none;border-radius:var(--radius-sm);font-weight:600;cursor:pointer}.missions-list{display:flex;flex-direction:column;gap:var(--space-sm)}.mission-card{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md);background:var(--cave-deeper);border:1px solid var(--rock-surface);border-radius:var(--radius-md)}.mission-card.complete{border-color:var(--gem-gold);background:#ffd7000d}.mission-miner{display:flex;align-items:center;gap:var(--space-sm)}.mission-miner .miner-icon{font-size:1.5rem}.mission-miner .miner-name{font-weight:600}.mission-timer{display:flex;align-items:center;gap:var(--space-xs);font-family:var(--font-mono)}.btn-collect{padding:var(--space-sm) var(--space-md);background:linear-gradient(135deg,var(--gem-gold) 0%,var(--torch-orange) 100%);color:var(--cave-dark);border:none;border-radius:var(--radius-sm);font-weight:600;cursor:pointer}.start-mission-section{margin-bottom:var(--space-xl);padding:var(--space-lg);background:var(--cave-deeper);border-radius:var(--radius-md);border:1px solid var(--rock-surface)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-md)}.section-header h4{margin:0;font-family:var(--font-display)}.btn-select-all{padding:var(--space-xs) var(--space-md);background:transparent;border:1px solid var(--gem-amethyst);color:var(--gem-amethyst);border-radius:var(--radius-sm);font-size:.85rem;cursor:pointer}.no-miners-message{color:var(--text-dim);text-align:center;padding:var(--space-lg)}.miners-selection{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:var(--space-sm);margin-bottom:var(--space-lg)}.miner-select-btn{display:flex;flex-direction:column;align-items:center;padding:var(--space-sm);background:var(--rock-gray);border:2px solid var(--rock-surface);border-radius:var(--radius-md);cursor:pointer;color:var(--text-primary);transition:all .2s}.miner-select-btn:hover{border-color:var(--gem-amethyst)}.miner-select-btn.selected{border-color:var(--gem-gold);background:#ffd7001a;box-shadow:0 0 10px var(--gem-gold-glow)}.miner-select-btn .miner-icon{font-size:1.5rem}.miner-select-btn .miner-name{font-size:.8rem;font-weight:600}.btn-start-mission{width:100%;padding:var(--space-md);background:linear-gradient(135deg,var(--gem-emerald) 0%,var(--gem-diamond) 100%);color:var(--cave-dark);border:none;border-radius:var(--radius-md);font-family:var(--font-display);font-size:1rem;font-weight:600;cursor:pointer}.btn-start-mission:disabled{opacity:.5;cursor:not-allowed}.zone-loot-table{margin-top:var(--space-lg)}.zone-loot-table h4{margin:0 0 var(--space-md) 0;font-family:var(--font-display)}.loot-table-list{display:flex;flex-direction:column;gap:var(--space-xs)}.loot-table-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--cave-deeper);border-radius:var(--radius-sm)}.loot-table-item .loot-icon{font-size:1.3rem;width:30px;text-align:center}.loot-table-item .loot-name{flex:1}.loot-table-item .loot-chance-bar{width:80px;height:6px;background:var(--rock-surface);border-radius:3px;overflow:hidden}.loot-table-item .chance-fill{height:100%;background:linear-gradient(90deg,var(--gem-emerald),var(--gem-diamond))}.loot-table-item .loot-chance{font-family:var(--font-mono);font-size:.8rem;color:var(--text-dim);width:40px;text-align:right}.miners-list-content{animation:slide-up .3s ease-out}.miners-loading{display:flex;flex-direction:column;align-items:center;padding:var(--space-2xl);gap:var(--space-md)}.miners-header{display:flex;align-items:center;gap:var(--space-lg);margin-bottom:var(--space-xl);padding-bottom:var(--space-lg);border-bottom:2px solid var(--rock-surface)}.miners-header-icon{font-size:3rem}.miners-header-info h3{font-family:var(--font-display);font-size:1.4rem;color:var(--gem-gold);margin:0}.miners-header-info p{color:var(--text-secondary);margin:0;font-size:.9rem}.miners-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--space-md);margin-bottom:var(--space-xl)}.miner-stat-card{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--cave-deeper);border:1px solid var(--rock-surface);border-radius:var(--radius-md)}.miner-stat-card .stat-icon{font-size:1.5rem}.miner-stat-card .stat-label{display:block;font-size:.7rem;color:var(--text-dim);text-transform:uppercase}.miner-stat-card .stat-value{display:block;font-family:var(--font-mono);font-size:1.2rem;font-weight:600}.buy-miner-section{margin-bottom:var(--space-xl);padding:var(--space-lg);background:#ffd7000d;border:1px solid var(--gem-gold);border-radius:var(--radius-md)}.buy-miner-section h4{margin:0 0 var(--space-md) 0;font-family:var(--font-display);color:var(--gem-gold)}.buy-miner-card{display:flex;justify-content:space-between;align-items:center;gap:var(--space-md)}.buy-miner-info{display:flex;align-items:center;gap:var(--space-md)}.new-miner-icon{font-size:2rem}.new-miner-label{display:block;font-weight:600}.new-miner-cost{display:block;font-size:.9rem;color:var(--gem-gold)}.btn-buy-miner{padding:var(--space-sm) var(--space-lg);background:linear-gradient(135deg,var(--gem-gold) 0%,var(--torch-orange) 100%);color:var(--cave-dark);border:none;border-radius:var(--radius-sm);font-weight:600;cursor:pointer}.btn-buy-miner:disabled{opacity:.5;cursor:not-allowed}.miners-section{margin-bottom:var(--space-xl)}.miners-section h4{margin:0 0 var(--space-md) 0;font-family:var(--font-display)}.no-miners{color:var(--text-dim);text-align:center;padding:var(--space-lg)}.miners-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--space-md)}.miner-card{background:var(--cave-deeper);border:2px solid var(--rock-surface);border-radius:var(--radius-md);padding:var(--space-md)}.miner-card.available{border-color:var(--gem-emerald)}.miner-card.in-mission{border-color:var(--gem-amethyst)}.miner-card-header{display:flex;align-items:center;gap:var(--space-sm)}.miner-card-header .miner-icon{font-size:1.8rem}.miner-card-header .miner-info{flex:1}.miner-card-header .miner-name{display:block;font-weight:600}.miner-card-header .miner-status{display:block;font-size:.8rem}.status-available{color:var(--gem-emerald)}.status-mining{color:var(--gem-amethyst)}.status-complete{color:var(--gem-gold)}.miner-mission-info{margin-top:var(--space-sm);padding:var(--space-xs) var(--space-sm);background:var(--rock-gray);border-radius:var(--radius-sm);font-size:.8rem;color:var(--text-secondary)}@media(max-width:600px){.miners-grid{grid-template-columns:repeat(2,1fr)}.miners-selection{grid-template-columns:repeat(4,1fr)}}.zone-selector-container{padding:20px;background:var(--cave-deeper, #1a1a2e);border-radius:12px}.zone-selector-container h3{color:#fff;margin-bottom:20px;border-bottom:2px solid rgba(255,255,255,.1);padding-bottom:10px}.zone-error-msg{background:#f553;color:#f55;padding:10px;border-radius:8px;margin-bottom:15px;text-align:center}.zones-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.zone-card{background:#ffffff0d;border:2px solid transparent;border-radius:12px;padding:15px;position:relative;transition:all .2s;overflow:hidden}.zone-card.unlocked{border-color:var(--gem-emerald, #2ecc71);cursor:pointer;background:linear-gradient(145deg,rgba(46,204,113,.1),transparent)}.zone-card.unlocked:hover{transform:translateY(-3px);box-shadow:0 5px 15px #2ecc7133}.status-badge{background:var(--gem-emerald, #2ecc71);color:#000;font-size:.7rem;padding:2px 6px;border-radius:4px;font-weight:700}.zone-card.buyable{border-color:var(--gem-gold, #f1c40f);background:linear-gradient(145deg,rgba(241,196,15,.05),transparent)}.zone-card.locked:not(.buyable){opacity:.6;border-color:#444}.zone-card-header{display:flex;align-items:center;gap:15px;margin-bottom:10px}.zone-icon{font-size:2rem}.zone-info h4{margin:0;color:#fff;font-size:1.1rem}.zone-difficulty{font-size:.8rem;color:#aaa}.zone-desc{font-size:.9rem;color:#ccc;margin-bottom:15px;font-style:italic}.zone-unlock-section{background:#0000004d;padding:10px;border-radius:8px;display:flex;flex-direction:column;gap:10px}.unlock-costs{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.cost-tag{display:flex;align-items:center;gap:5px;background:#ffffff1a;padding:4px 8px;border-radius:15px;font-size:.9rem;color:#fff;border:1px solid rgba(255,255,255,.2)}.btn-unlock-zone{width:100%;padding:8px;background:var(--gem-gold, #f1c40f);color:#000;border:none;border-radius:6px;font-weight:700;cursor:pointer;transition:filter .2s}.btn-unlock-zone:hover{filter:brightness(1.1)}.btn-unlock-zone:disabled{opacity:.7;cursor:not-allowed}.zone-locked-overlay{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#777;font-size:.9rem;margin-top:10px;border-top:1px dashed #444;padding-top:10px}.lock-icon{font-size:1.5rem}.bank-container{background:linear-gradient(180deg,#1e293b,#0f172a);border:2px solid #334155;border-radius:16px;padding:0;color:#e2e8f0;max-width:700px;margin:20px auto;box-shadow:0 20px 50px #00000080;overflow:hidden;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.bank-header{background:#0000004d;padding:20px;border-bottom:1px solid #334155;display:flex;justify-content:space-between;align-items:center}.bank-title h2{margin:0;font-size:1.4rem;color:#fbbf24;text-transform:uppercase;letter-spacing:1px;display:flex;align-items:center;gap:10px}.interest-badge{background:#10b98126;color:#34d399;border:1px solid rgba(16,185,129,.3);padding:5px 12px;border-radius:6px;font-size:.9rem;font-weight:700;display:inline-block;letter-spacing:.5px}.next-payout{font-size:.8rem;color:#64748b}.bank-dashboard{display:flex;gap:20px;padding:25px;flex-wrap:wrap}.vault-panel{flex:1;background:#0f172a99;border:1px solid #334155;border-radius:12px;padding:20px;text-align:center;display:flex;flex-direction:column;justify-content:center;min-width:200px;box-shadow:inset 0 0 20px #00000080}.balance-label{color:#94a3b8;font-size:.9rem;text-transform:uppercase;letter-spacing:1px;margin-bottom:5px}.balance-amount{font-size:2.8rem;font-weight:800;color:#fff;text-shadow:0 0 15px rgba(251,191,36,.3);margin:10px 0}.capacity-wrapper{margin-top:15px}.capacity-bar-bg{height:12px;background:#1e293b;border-radius:6px;overflow:hidden;position:relative;border:1px solid #334155}.capacity-bar-fill{height:100%;background:linear-gradient(90deg,#f59e0b,#fbbf24);box-shadow:0 0 10px #f59e0b;transition:width .5s cubic-bezier(.4,0,.2,1)}.capacity-info{display:flex;justify-content:space-between;font-size:.75rem;color:#64748b;margin-top:5px}.actions-panel{flex:1.2;display:flex;flex-direction:column;gap:15px;justify-content:center}.input-wrapper{position:relative;display:flex;align-items:center}.currency-symbol{position:absolute;left:15px;color:#94a3b8;font-size:1.1rem}.bank-input{width:100%;padding:15px 15px 15px 35px;background:#0f172a;border:1px solid #334155;border-radius:8px;color:#fff;font-size:1.2rem;font-weight:700;outline:none;transition:border-color .2s}.bank-input:focus{border-color:#3b82f6}.quick-actions{display:flex;gap:10px}.btn-quick{flex:1;background:#334155;border:none;padding:8px;border-radius:6px;color:#cbd5e1;font-size:.8rem;cursor:pointer;transition:background .2s}.btn-quick:hover{background:#475569;color:#fff}.main-actions{display:flex;gap:15px}.btn-action{flex:1;padding:15px;border:none;border-radius:8px;font-weight:700;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:transform .1s,filter .2s;box-shadow:0 4px 6px #0000004d}.btn-action:hover{filter:brightness(1.1);transform:translateY(-2px)}.btn-action:active{transform:translateY(0)}.deposit{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border-bottom:3px solid #14532d}.withdraw{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border-bottom:3px solid #1e3a8a}.bank-footer{background:#0f172acc;padding:20px 25px;border-top:1px solid #334155;display:flex;justify-content:space-between;align-items:center}.upgrade-text h4{margin:0;color:#cbd5e1;font-size:1rem}.upgrade-text span{font-size:.85rem;color:#64748b}.btn-upgrade{background:#475569;color:#e2e8f0;border:1px solid #64748b;padding:10px 20px;border-radius:8px;font-weight:700;cursor:pointer;transition:all .2s}.btn-upgrade:hover:not(:disabled){background:#f59e0b;color:#0f172a;border-color:#f59e0b}.btn-upgrade:disabled{opacity:.5;cursor:not-allowed}.message-banner{margin:15px 25px 0;padding:10px;border-radius:6px;text-align:center;font-size:.9rem}.msg-error{background:#ef444433;color:#fca5a5;border:1px solid #ef4444}.msg-success{background:#22c55e33;color:#86efac;border:1px solid #22c55e}.construction-site{text-align:center;padding:40px}.cost-display{display:flex;align-items:center;justify-content:center;gap:15px;margin:30px 0;background:#0003;padding:15px;border-radius:50px;display:inline-flex}.market-container{background:#0f172a;border-radius:12px;max-width:900px;margin:20px auto;overflow:hidden;box-shadow:0 10px 30px #00000080;color:#e2e8f0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.market-header{background:linear-gradient(180deg,#1e293b,#0f172a);padding:20px;border-bottom:1px solid #334155;text-align:center}.market-header h2{margin:0 0 20px;color:#fbbf24;text-transform:uppercase;letter-spacing:2px;font-size:1.5rem}.market-tabs{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.market-tabs button{background:#ffffff0d;border:1px solid #334155;color:#94a3b8;padding:10px 20px;border-radius:8px;cursor:pointer;font-weight:700;transition:all .2s}.market-tabs button:hover{background:#ffffff1a;color:#fff}.market-tabs button.active{background:#fbbf24;color:#0f172a;border-color:#fbbf24;box-shadow:0 0 15px #fbbf244d}.market-content{padding:25px;min-height:400px;background:#020617}.market-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}.market-card{background:#1e293b;border:1px solid #334155;border-radius:10px;padding:15px;display:flex;flex-direction:column;align-items:center;transition:transform .2s,border-color .2s;position:relative}.market-card:hover{transform:translateY(-5px);border-color:#475569}.sell-card{border-color:#334155;background:#1e293b99}.stock-badge{position:absolute;top:10px;left:10px;background:#334155;color:#fff;padding:2px 8px;border-radius:4px;font-size:.8rem;font-weight:700;border:1px solid #475569}.card-header{text-align:center;margin-bottom:10px}.card-header h4{margin:10px 0 0;color:#e2e8f0;font-size:1.1rem}.card-price{font-size:1.1rem;font-weight:700;margin-bottom:15px}.red-price{color:#f87171}.green-price{color:#4ade80}.card-actions{display:flex;gap:10px;width:100%}.card-actions button{flex:1;padding:10px;border:none;border-radius:6px;cursor:pointer;font-weight:700;font-size:.85rem;transition:opacity .2s}.card-actions button:hover{opacity:.9}.card-actions button:disabled{opacity:.5;cursor:not-allowed}.btn-buy{background:#3b82f6;color:#fff}.btn-buy-max{background:#1d4ed8;color:#fff}.btn-sell{background:#22c55e;color:#064e3b}.btn-sell-all{background:#15803d;color:#fff}.market-list{display:flex;flex-direction:column;gap:10px}.p2p-row{background:#1e293b;border:1px solid #334155;padding:15px;border-radius:8px;display:flex;justify-content:space-between;align-items:center;transition:background .2s}.p2p-row:hover{background:#2a3855}.p2p-item{display:flex;align-items:center;gap:15px;color:#e2e8f0}.p2p-item strong{display:block;font-size:1.1rem}.seller-name{font-size:.8rem;color:#94a3b8}.p2p-price{font-size:1.2rem;font-weight:700;color:#fbbf24;margin:0 20px;min-width:80px;text-align:right}.my-sales-container{display:flex;gap:20px;flex-wrap:wrap}.sales-form-panel,.active-sales-panel{flex:1;background:#1e293b;padding:20px;border-radius:10px;border:1px solid #334155;min-width:300px}.sales-form-panel h3,.active-sales-panel h3{margin-top:0;color:#fbbf24;border-bottom:1px solid #334155;padding-bottom:15px;margin-bottom:20px;font-size:1.1rem}.create-listing-form{display:flex;flex-direction:column;gap:15px}.form-group{display:flex;flex-direction:column;gap:8px;text-align:left}.form-group label{font-size:.9rem;color:#cbd5e1;font-weight:700}.form-group select,.form-group input{padding:12px;background:#0f172a;border:1px solid #475569;border-radius:6px;color:#fff;font-size:1rem;outline:none}.form-group select:focus,.form-group input:focus{border-color:#3b82f6}.form-row{display:flex;gap:15px}.form-row .form-group{flex:1}.btn-submit-sale{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;padding:12px;border:none;border-radius:6px;font-weight:700;cursor:pointer;margin-top:15px;font-size:1rem;transition:filter .2s}.btn-submit-sale:hover{filter:brightness(1.1)}.btn-submit-sale:disabled{background:#475569;cursor:not-allowed;filter:none}.my-listings-list{display:flex;flex-direction:column;gap:8px}.listing-price{color:#4ade80;font-weight:700;font-family:monospace;font-size:1.1rem}.market-message{margin:0 25px 20px;padding:15px;border-radius:8px;text-align:center;font-weight:700}.market-message.success{background:#22c55e33;color:#4ade80;border:1px solid #22c55e}.market-message.error{background:#ef444433;color:#fca5a5;border:1px solid #ef4444}.empty-state{text-align:center;padding:50px;color:#64748b;font-style:italic;font-size:1.1rem}.empty-mini{text-align:center;color:#64748b;font-style:italic;padding:20px;background:#0003;border-radius:6px}.quantity-selector{display:flex;gap:5px;margin-bottom:10px;width:100%}.qty-input{flex:1;background:#0f172a;border:1px solid #334155;color:#fff;padding:8px;border-radius:6px;font-weight:700;text-align:center;outline:none}.qty-input:focus{border-color:#3b82f6}.btn-qty-max{background:#334155;color:#94a3b8;border:none;border-radius:6px;padding:0 10px;cursor:pointer;font-size:.8rem;font-weight:700;transition:all .2s}.btn-qty-max:hover{background:#475569;color:#fff}.my-listing-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#0f172a;border-radius:6px;border:1px solid #334155;color:#cbd5e1}.listing-info{display:flex;flex-direction:column}.listing-price{color:#fbbf24;font-weight:700;font-size:.9rem}.btn-cancel-sale{background:#ef44441a;border:1px solid #ef4444;color:#fca5a5;padding:5px 10px;border-radius:4px;cursor:pointer;font-size:.8rem;transition:all .2s}.btn-cancel-sale:hover{background:#ef4444;color:#fff}.btn-cancel-sale:disabled{opacity:.5;cursor:not-allowed}.home-page{min-height:100vh;display:flex;flex-direction:column;background:var(--cave-deeper)}.game-header{background:radial-gradient(ellipse at 30% 50%,var(--torch-glow) 0%,transparent 40%),radial-gradient(ellipse at 70% 50%,var(--torch-glow) 0%,transparent 40%),linear-gradient(180deg,var(--rock-light) 0%,var(--rock-gray) 50%,var(--cave-dark) 100%);padding:var(--space-md) var(--space-xl);display:flex;justify-content:space-between;align-items:center;border-bottom:3px solid var(--rock-surface);box-shadow:0 4px 30px #00000080;position:relative;z-index:100}.game-header h1{font-family:var(--font-display);font-size:1.6rem;margin:0;background:linear-gradient(135deg,var(--gem-gold) 0%,var(--torch-orange) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:.05em}.user-info{display:flex;align-items:center;gap:var(--space-lg)}.username{color:var(--text-secondary);font-weight:600}.logout-btn{padding:var(--space-sm) var(--space-md);background:#ff55551a;color:var(--gem-ruby);border:2px solid var(--gem-ruby);border-radius:var(--radius-md);font-weight:600;font-size:.85rem;cursor:pointer;transition:all .3s ease}.logout-btn:hover{background:var(--gem-ruby);color:#fff;box-shadow:0 0 20px var(--gem-ruby-glow)}.game-layout{flex:1;display:flex;overflow:hidden}.sidebar{width:280px;background:linear-gradient(180deg,var(--rock-gray) 0%,var(--cave-dark) 100%);border-right:2px solid var(--rock-surface);display:flex;flex-direction:column;overflow-y:auto}.player-stats-mini{padding:var(--space-lg);background:var(--cave-deeper);border-bottom:2px solid var(--rock-surface)}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) 0}.stat-row .stat-label{color:var(--text-secondary);font-size:.9rem}.stat-row .stat-value{font-family:var(--font-mono);font-weight:600;color:var(--text-primary);font-size:1.1rem}.stat-row .stat-value.gold{color:var(--gem-gold)}.xp-bar-container{margin-top:var(--space-sm)}.xp-bar{height:8px;background:var(--rock-surface);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--space-xs)}.xp-fill{height:100%;background:linear-gradient(90deg,var(--gem-amethyst),var(--gem-diamond));border-radius:var(--radius-sm);transition:width .5s ease}.xp-text{font-size:.75rem;color:var(--text-dim);display:block;text-align:right}.nav-menu{flex:1;padding:var(--space-md)}.menu-section{margin-bottom:var(--space-sm)}.menu-section.active-section>.menu-header{background:#bd93f91a;border-color:var(--gem-amethyst)}.menu-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:var(--space-md);background:var(--cave-deeper);border:2px solid var(--rock-surface);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-display);font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease;letter-spacing:.03em}.menu-header:hover{background:var(--rock-gray);border-color:var(--gem-amethyst)}.menu-header.expanded{border-radius:var(--radius-md) var(--radius-md) 0 0;border-bottom-color:transparent}.menu-arrow{font-size:.7rem;color:var(--text-dim);transition:transform .3s ease}.menu-header.expanded .menu-arrow{color:var(--gem-amethyst)}.submenu-list{max-height:0;overflow:hidden;background:var(--cave-deeper);border:2px solid var(--rock-surface);border-top:none;border-radius:0 0 var(--radius-md) var(--radius-md);transition:max-height .3s ease}.submenu-list.expanded{max-height:300px}.submenu-item{width:100%;display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md);background:transparent;color:var(--text-secondary);font-size:.9rem;text-align:left;cursor:pointer;transition:all .2s ease;border-bottom:1px solid var(--rock-surface)}.submenu-item:last-child{border-bottom:none}.submenu-item:hover{background:#ffffff08;color:var(--text-primary);padding-left:var(--space-lg)}.submenu-item.active{background:linear-gradient(90deg,rgba(189,147,249,.2) 0%,transparent 100%);color:var(--gem-amethyst);border-left:3px solid var(--gem-amethyst)}.submenu-icon{font-size:1.1rem}.main-content{flex:1;padding:var(--space-lg);overflow-y:auto;background:radial-gradient(ellipse at 50% 0%,rgba(189,147,249,.03) 0%,transparent 50%),var(--cave-deeper)}.content-window{background:linear-gradient(145deg,var(--rock-gray) 0%,var(--cave-dark) 100%);border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.05);box-shadow:var(--shadow-deep);min-height:100%;display:flex;flex-direction:column;overflow:hidden}.window-header{padding:var(--space-md) var(--space-lg);background:var(--cave-deeper);border-bottom:2px solid var(--rock-surface)}.window-header h2{font-family:var(--font-display);font-size:1.2rem;margin:0;color:var(--text-primary);letter-spacing:.05em}.window-body{flex:1;padding:var(--space-lg);overflow-y:auto}.mining-zone-content{animation:slide-up .3s ease-out}.zone-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-md);flex-wrap:wrap;gap:var(--space-sm)}.zone-header h3{font-family:var(--font-display);font-size:1.4rem;color:var(--gem-gold);margin:0}.zone-level{padding:var(--space-xs) var(--space-md);background:var(--cave-deeper);border-radius:var(--radius-sm);font-size:.85rem;color:var(--text-secondary);border:1px solid var(--rock-surface)}.zone-level.unlocked{color:var(--gem-emerald);border-color:var(--gem-emerald)}.zone-level.locked{color:var(--gem-ruby);border-color:var(--gem-ruby)}.zone-description{color:var(--text-secondary);font-size:.95rem;line-height:1.6;margin-bottom:var(--space-xl);padding:var(--space-md);background:var(--cave-deeper);border-radius:var(--radius-md);border-left:3px solid var(--gem-amethyst)}.zone-resources h4{font-family:var(--font-display);font-size:1rem;color:var(--text-primary);margin:0 0 var(--space-md) 0}.resources-list{display:flex;flex-direction:column;gap:var(--space-sm);margin-bottom:var(--space-xl)}.resource-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--cave-deeper);border-radius:var(--radius-md);border:1px solid var(--rock-surface);transition:all .2s ease}.resource-item:hover{border-color:var(--gem-amethyst);transform:translate(5px)}.resource-icon{font-size:1.5rem;width:40px;text-align:center}.resource-name{flex:1;font-weight:500;color:var(--text-primary)}.resource-chance-bar{width:80px;height:6px;background:var(--rock-surface);border-radius:var(--radius-sm);overflow:hidden}.chance-fill{height:100%;background:linear-gradient(90deg,var(--gem-emerald),var(--gem-diamond));border-radius:var(--radius-sm)}.resource-chance{font-family:var(--font-mono);font-size:.85rem;color:var(--text-dim);width:45px;text-align:right}.mine-btn{display:block;width:100%;max-width:300px;margin:0 auto;padding:var(--space-lg) var(--space-xl);background:linear-gradient(135deg,var(--gem-gold) 0%,var(--torch-orange) 100%);color:var(--cave-dark);border:none;border-radius:var(--radius-lg);font-family:var(--font-display);font-size:1.2rem;font-weight:700;letter-spacing:.08em;cursor:pointer;transition:all .3s ease;box-shadow:0 6px 30px var(--gem-gold-glow)}.mine-btn:hover:not(.disabled){transform:translateY(-3px);box-shadow:0 10px 40px var(--gem-gold-glow)}.mine-btn.mining{animation:rock-shake .3s ease-in-out}.mine-btn.disabled{background:var(--rock-surface);color:var(--text-dim);cursor:not-allowed;box-shadow:none}.inventory-content{animation:slide-up .3s ease-out}.inventory-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-sm)}.inventory-header h3{font-family:var(--font-display);font-size:1.3rem;color:var(--gem-amethyst);margin:0}.inventory-slots{font-family:var(--font-mono);font-size:.9rem;color:var(--text-dim);padding:var(--space-xs) var(--space-md);background:var(--cave-deeper);border-radius:var(--radius-sm)}.inventory-description{color:var(--text-secondary);font-size:.9rem;margin-bottom:var(--space-lg)}.inventory-grid.backpack-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-sm);width:100%}.inventory-slot{aspect-ratio:1;background:var(--cave-deeper);border:2px solid var(--rock-surface);border-radius:var(--radius-md);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;cursor:pointer;transition:all .2s ease}.inventory-slot.filled:hover{border-color:var(--gem-amethyst);transform:scale(1.05);z-index:10}.inventory-slot.empty{opacity:.4;cursor:default}.inventory-slot.empty:after{content:"";width:30%;height:30%;border:2px dashed var(--rock-surface);border-radius:50%}.item-icon{font-size:1.8rem}.item-count{position:absolute;bottom:4px;right:6px;font-family:var(--font-mono);font-size:.7rem;font-weight:700;color:var(--text-primary);background:var(--rock-gray);padding:2px 5px;border-radius:var(--radius-sm)}.item-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);padding:var(--space-xs) var(--space-sm);background:var(--rock-light);color:var(--text-primary);font-size:.75rem;white-space:nowrap;border-radius:var(--radius-sm);opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:100}.inventory-slot:hover .item-tooltip{opacity:1}.treasure-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--space-md)}.treasure-slot{background:var(--cave-deeper);border:2px solid var(--rock-surface);border-radius:var(--radius-md);padding:var(--space-md);display:flex;align-items:center;gap:var(--space-md);cursor:pointer;transition:all .2s ease}.treasure-slot.filled:hover{transform:translateY(-3px)}.treasure-slot.empty{justify-content:center;opacity:.4;cursor:default}.empty-icon{font-size:1.5rem;color:var(--text-dim)}.gem-icon{font-size:2rem}.gem-info{flex:1}.gem-name{display:block;font-weight:600;color:var(--text-primary);font-size:.9rem;margin-bottom:2px}.gem-rarity{display:inline-block;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;padding:2px 6px;border-radius:var(--radius-sm)}.treasure-slot.rarity-common{border-color:var(--text-dim)}.treasure-slot.rarity-common .gem-rarity{background:var(--text-dim);color:var(--cave-dark)}.treasure-slot.rarity-rare{border-color:var(--gem-sapphire);box-shadow:0 0 15px #6272a433}.treasure-slot.rarity-rare .gem-rarity{background:var(--gem-sapphire);color:#fff}.treasure-slot.rarity-epic{border-color:var(--gem-amethyst);box-shadow:0 0 15px #bd93f94d}.treasure-slot.rarity-epic .gem-rarity{background:var(--gem-amethyst);color:var(--cave-dark)}.treasure-slot.rarity-legendary{border-color:var(--gem-gold);box-shadow:0 0 20px var(--gem-gold-glow);animation:pulse-glow 3s ease-in-out infinite}.treasure-slot.rarity-legendary .gem-rarity{background:linear-gradient(135deg,var(--gem-gold),var(--torch-orange));color:var(--cave-dark)}.loading-screen{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;background:var(--cave-deeper);color:var(--text-primary);gap:var(--space-lg)}.spinner{width:60px;height:60px;border:4px solid var(--rock-surface);border-top-color:var(--gem-amethyst);border-radius:50%;animation:spin-slow 1s linear infinite;box-shadow:0 0 20px var(--gem-amethyst-glow)}.menu-header.active-direct{background:linear-gradient(90deg,#bd93f933,#bd93f90d);border-color:var(--gem-amethyst);color:var(--gem-amethyst)}.bank-content{animation:slide-up .3s ease-out}.bank-header{display:flex;align-items:center;gap:var(--space-lg);margin-bottom:var(--space-xl);padding-bottom:var(--space-lg);border-bottom:2px solid var(--rock-surface)}.bank-icon{font-size:3rem}.bank-info h3{font-family:var(--font-display);font-size:1.4rem;color:var(--gem-gold);margin:0 0 var(--space-xs) 0}.bank-info p{color:var(--text-secondary);margin:0;font-size:.9rem}.bank-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-md);margin-bottom:var(--space-xl)}.bank-stat-card{background:var(--cave-deeper);border:1px solid var(--rock-surface);border-radius:var(--radius-md);padding:var(--space-md);display:flex;align-items:center;gap:var(--space-md)}.bank-stat-icon{font-size:2rem}.bank-stat-label{display:block;font-size:.75rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em}.bank-stat-value{display:block;font-family:var(--font-mono);font-size:1.3rem;font-weight:600;color:var(--text-primary)}.bank-stat-value.gold{color:var(--gem-gold)}.bank-stat-value.green{color:var(--gem-emerald)}.bank-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-lg);margin-bottom:var(--space-xl)}.bank-action-card{background:var(--cave-deeper);border:1px solid var(--rock-surface);border-radius:var(--radius-md);padding:var(--space-lg)}.bank-action-card h4{font-family:var(--font-display);margin:0 0 var(--space-md) 0;color:var(--text-primary)}.bank-input-group{display:flex;gap:var(--space-sm);margin-bottom:var(--space-sm)}.bank-input-group input{flex:1;padding:var(--space-sm) var(--space-md);background:var(--rock-gray);border:2px solid var(--rock-surface);border-radius:var(--radius-sm);color:var(--text-primary);font-size:1rem}.bank-input-group input:focus{border-color:var(--gem-amethyst)}.btn-deposit,.btn-withdraw{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font-weight:600;cursor:pointer;transition:all .2s}.btn-deposit{background:var(--gem-emerald);color:var(--cave-dark)}.btn-withdraw{background:var(--torch-orange);color:var(--cave-dark)}.btn-max{width:100%;padding:var(--space-sm);background:transparent;border:1px solid var(--rock-surface);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all .2s}.btn-max:hover{border-color:var(--gem-amethyst);color:var(--gem-amethyst)}.bank-history h4{font-family:var(--font-display);margin:0 0 var(--space-md) 0}.history-list{display:flex;flex-direction:column;gap:var(--space-sm)}.history-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--cave-deeper);border-radius:var(--radius-sm);font-size:.9rem}.history-icon{font-size:1.2rem}.history-desc{flex:1;color:var(--text-secondary)}.history-amount{font-family:var(--font-mono);font-weight:600}.history-item.deposit .history-amount{color:var(--gem-emerald)}.history-item.withdraw .history-amount{color:var(--gem-ruby)}.history-item.interest .history-amount{color:var(--gem-gold)}.history-date{color:var(--text-dim);font-size:.8rem}.museum-content{animation:slide-up .3s ease-out}.museum-header{display:flex;align-items:center;gap:var(--space-lg);margin-bottom:var(--space-xl);padding-bottom:var(--space-lg);border-bottom:2px solid var(--rock-surface)}.museum-icon{font-size:3rem}.museum-info h3{font-family:var(--font-display);font-size:1.4rem;color:var(--gem-amethyst);margin:0 0 var(--space-xs) 0}.museum-info p{color:var(--text-secondary);margin:0;font-size:.9rem}.museum-progress{background:var(--cave-deeper);border:1px solid var(--rock-surface);border-radius:var(--radius-md);padding:var(--space-lg);margin-bottom:var(--space-xl)}.museum-progress .progress-header{display:flex;justify-content:space-between;margin-bottom:var(--space-sm);font-weight:600}.museum-progress .progress-bar{height:12px;background:var(--rock-surface);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--space-sm)}.museum-progress .progress-fill{height:100%;background:linear-gradient(90deg,var(--gem-amethyst),var(--gem-diamond),var(--gem-gold));border-radius:var(--radius-sm);transition:width .5s ease}.museum-progress .progress-reward{color:var(--text-secondary);font-size:.85rem;margin:0}.museum-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--space-md);margin-bottom:var(--space-xl)}.museum-gem{background:var(--cave-deeper);border:2px solid var(--rock-surface);border-radius:var(--radius-md);padding:var(--space-md);text-align:center;transition:all .2s}.museum-gem.collected{cursor:pointer}.museum-gem.collected:hover{transform:translateY(-3px)}.museum-gem.locked{opacity:.5}.museum-gem .gem-display{font-size:2.5rem;display:block;margin-bottom:var(--space-sm)}.museum-gem .gem-name{display:block;font-size:.85rem;font-weight:600;margin-bottom:var(--space-xs);color:var(--text-primary)}.gem-rarity-badge{display:inline-block;font-size:.65rem;text-transform:uppercase;padding:2px 6px;border-radius:var(--radius-sm)}.gem-rarity-badge.rarity-common{background:var(--text-dim);color:var(--cave-dark)}.gem-rarity-badge.rarity-uncommon{background:var(--gem-emerald);color:var(--cave-dark)}.gem-rarity-badge.rarity-rare{background:var(--gem-sapphire);color:#fff}.gem-rarity-badge.rarity-epic{background:var(--gem-amethyst);color:var(--cave-dark)}.gem-rarity-badge.rarity-legendary{background:var(--gem-gold);color:var(--cave-dark)}.museum-gem.rarity-legendary{border-color:var(--gem-gold);box-shadow:0 0 15px var(--gem-gold-glow)}.museum-gem.rarity-epic{border-color:var(--gem-amethyst)}.museum-gem.rarity-rare{border-color:var(--gem-sapphire)}.museum-rewards h4{font-family:var(--font-display);margin:0 0 var(--space-md) 0}.rewards-list{display:flex;flex-direction:column;gap:var(--space-sm)}.reward-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--cave-deeper);border:1px solid var(--rock-surface);border-radius:var(--radius-sm)}.reward-item.completed{border-color:var(--gem-emerald);background:#50fa7b0d}.reward-item.active{border-color:var(--gem-gold);background:#ffd7000d}.reward-item.locked{opacity:.6}.reward-percent{font-family:var(--font-mono);font-weight:700;font-size:1.1rem;width:50px}.reward-desc{flex:1;color:var(--text-secondary)}.reward-status{font-size:1.2rem}.lottery-content{animation:slide-up .3s ease-out}.lottery-header{display:flex;align-items:center;gap:var(--space-lg);margin-bottom:var(--space-xl);padding-bottom:var(--space-lg);border-bottom:2px solid var(--rock-surface)}.lottery-icon{font-size:3rem}.lottery-info h3{font-family:var(--font-display);font-size:1.4rem;color:var(--gem-ruby);margin:0 0 var(--space-xs) 0}.lottery-info p{color:var(--text-secondary);margin:0;font-size:.9rem}.lottery-jackpot{background:linear-gradient(135deg,#ffd7001a,#ffb86c0d);border:2px solid var(--gem-gold);border-radius:var(--radius-lg);padding:var(--space-xl);text-align:center;margin-bottom:var(--space-xl)}.jackpot-label{display:block;font-size:.9rem;color:var(--gem-gold);margin-bottom:var(--space-sm);letter-spacing:.1em}.jackpot-amount{display:block;font-family:var(--font-display);font-size:2.5rem;font-weight:700;color:var(--gem-gold);text-shadow:0 0 20px var(--gem-gold-glow);margin-bottom:var(--space-sm)}.jackpot-timer{display:block;color:var(--text-secondary);font-size:.9rem}.lottery-game{background:var(--cave-deeper);border:1px solid var(--rock-surface);border-radius:var(--radius-md);padding:var(--space-lg);margin-bottom:var(--space-xl)}.lottery-game h4{font-family:var(--font-display);margin:0 0 var(--space-md) 0;text-align:center}.numbers-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:var(--space-xs);margin-bottom:var(--space-lg)}.number-btn{aspect-ratio:1;background:var(--rock-gray);border:2px solid var(--rock-surface);border-radius:var(--radius-sm);color:var(--text-primary);font-weight:600;cursor:pointer;transition:all .2s}.number-btn:hover{border-color:var(--gem-amethyst);background:var(--rock-light)}.number-btn.selected{background:var(--gem-gold);border-color:var(--gem-gold);color:var(--cave-dark);box-shadow:0 0 10px var(--gem-gold-glow)}.selected-numbers{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);margin-bottom:var(--space-lg);flex-wrap:wrap}.selected-num{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--gem-gold);color:var(--cave-dark);border-radius:50%;font-weight:700}.no-selection{color:var(--text-dim);font-style:italic}.buy-ticket-btn{display:block;width:100%;max-width:300px;margin:0 auto;padding:var(--space-md) var(--space-xl);background:linear-gradient(135deg,var(--gem-ruby) 0%,var(--gem-amethyst) 100%);color:#fff;border:none;border-radius:var(--radius-md);font-family:var(--font-display);font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s}.buy-ticket-btn:disabled{opacity:.5;cursor:not-allowed}.buy-ticket-btn:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 5px 20px #f556}.lottery-history h4{font-family:var(--font-display);margin:0 0 var(--space-md) 0}.winners-list{display:flex;flex-direction:column;gap:var(--space-sm)}.winner-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--cave-deeper);border:1px solid var(--rock-surface);border-radius:var(--radius-sm)}.winner-item.jackpot-winner{border-color:var(--gem-gold);background:#ffd7000d}.winner-rank{font-size:1.5rem}.winner-name{flex:1;font-weight:600}.winner-prize{font-family:var(--font-mono);font-weight:600;color:var(--gem-gold)}.winner-date{color:var(--text-dim);font-size:.85rem}.market-content{animation:slide-up .3s ease-out}.market-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-lg);flex-wrap:wrap;gap:var(--space-md)}.market-header h3{font-family:var(--font-display);font-size:1.3rem;margin:0}.btn-create-auction,.btn-create-listing{padding:var(--space-sm) var(--space-md);background:var(--gem-amethyst);color:var(--cave-dark);border:none;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;transition:all .2s}.btn-create-auction:hover,.btn-create-listing:hover{transform:translateY(-2px);box-shadow:0 4px 15px var(--gem-amethyst-glow)}.auctions-filters{display:flex;gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap}.search-input{flex:1;min-width:200px;padding:var(--space-sm) var(--space-md);background:var(--cave-deeper);border:2px solid var(--rock-surface);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.9rem}.search-input:focus{border-color:var(--gem-amethyst)}.filter-select{padding:var(--space-sm) var(--space-md);background:var(--cave-deeper);border:2px solid var(--rock-surface);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.9rem;cursor:pointer}.auctions-list{display:flex;flex-direction:column;gap:var(--space-md)}.auction-card{display:flex;align-items:center;gap:var(--space-lg);padding:var(--space-lg);background:var(--cave-deeper);border:1px solid var(--rock-surface);border-radius:var(--radius-md);transition:all .2s}.auction-card:hover{border-color:var(--gem-amethyst)}.auction-item-display{width:60px;height:60px;background:var(--rock-gray);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center}.auction-icon{font-size:2rem}.auction-details{flex:1}.auction-details h4{margin:0 0 var(--space-xs) 0;font-size:1.1rem}.auction-seller{color:var(--text-dim);font-size:.85rem;margin:0 0 var(--space-sm) 0}.auction-stats{display:flex;gap:var(--space-md);font-size:.85rem}.auction-bids{color:var(--gem-ruby)}.auction-time{color:var(--text-secondary)}.auction-bid-section{text-align:right}.current-bid-label{display:block;font-size:.75rem;color:var(--text-dim);text-transform:uppercase}.current-bid-value{display:block;font-family:var(--font-mono);font-size:1.3rem;font-weight:700;color:var(--gem-gold);margin-bottom:var(--space-sm)}.btn-bid,.btn-buy-now{padding:var(--space-sm) var(--space-md);background:var(--gem-emerald);color:var(--cave-dark);border:none;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;transition:all .2s}.btn-bid:hover,.btn-buy-now:hover{transform:translateY(-2px);box-shadow:0 4px 15px var(--gem-emerald-glow)}.listings-table{background:var(--cave-deeper);border:1px solid var(--rock-surface);border-radius:var(--radius-md);overflow:hidden}.table-header,.table-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:var(--space-md);padding:var(--space-md);align-items:center}.table-header{background:var(--rock-gray);font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}.table-row{border-top:1px solid var(--rock-surface)}.table-row:hover{background:#ffffff05}.item-cell{display:flex;align-items:center;gap:var(--space-sm)}.item-cell .item-icon{font-size:1.3rem}.price-cell{font-family:var(--font-mono);color:var(--gem-gold)}.seller-cell{color:var(--text-secondary)}.sales-stats{display:flex;gap:var(--space-lg)}.sales-stats .stat{font-size:.9rem;color:var(--text-secondary)}.my-listings{display:flex;flex-direction:column;gap:var(--space-md)}.my-listing-card{display:grid;grid-template-columns:auto 1fr auto auto;gap:var(--space-lg);align-items:center;padding:var(--space-lg);background:var(--cave-deeper);border:1px solid var(--rock-surface);border-radius:var(--radius-md)}.my-listing-card.sold{opacity:.7}.listing-item-info{display:flex;align-items:center;gap:var(--space-md)}.listing-icon{font-size:2rem}.listing-details h4{margin:0;font-size:1.1rem}.listing-details p{margin:var(--space-xs) 0 0;color:var(--text-secondary);font-size:.85rem}.listing-price .price-label{display:block;font-size:.7rem;color:var(--text-dim);text-transform:uppercase}.listing-price .price-value{font-family:var(--font-mono);font-size:1.2rem;font-weight:600;color:var(--gem-gold)}.listing-stats{display:flex;flex-direction:column;gap:var(--space-xs);font-size:.85rem}.listing-stats .views{color:var(--text-secondary)}.status-badge{padding:2px 8px;border-radius:var(--radius-sm);font-size:.75rem}.status-badge.active{background:#50fa7b33;color:var(--gem-emerald)}.status-badge.sold{background:#8be9fd33;color:var(--gem-diamond)}.listing-actions{display:flex;flex-direction:column;gap:var(--space-xs)}.btn-edit,.btn-cancel,.btn-relist{padding:var(--space-xs) var(--space-sm);border:1px solid var(--rock-surface);border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);font-size:.8rem;cursor:pointer;transition:all .2s}.btn-edit:hover{border-color:var(--gem-amethyst);color:var(--gem-amethyst)}.btn-cancel:hover{border-color:var(--gem-ruby);color:var(--gem-ruby)}.btn-relist:hover{border-color:var(--gem-emerald);color:var(--gem-emerald)}@media(max-width:900px){.game-layout{flex-direction:column}.sidebar{width:100%;border-right:none;border-bottom:2px solid var(--rock-surface)}.nav-menu{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.menu-section{flex:1;min-width:200px;margin-bottom:0}.submenu-list.expanded{max-height:200px}}@media(max-width:600px){.game-header{flex-direction:column;gap:var(--space-md);padding:var(--space-md)}.game-header h1{font-size:1.3rem}.user-info{width:100%;justify-content:space-between}.sidebar{padding:var(--space-sm)}.player-stats-mini{padding:var(--space-md)}.nav-menu{padding:var(--space-sm)}.menu-section{min-width:100%}.main-content,.window-body{padding:var(--space-md)}.inventory-grid.backpack-grid{grid-template-columns:repeat(5,1fr)}.treasure-grid{grid-template-columns:1fr}}.inventory-slot{position:relative!important}.item-quantity-badge{position:absolute;bottom:28px;right:5px;background-color:#141414f2;color:var(--gem-gold, #ffcc00);border:1px solid var(--gem-gold, #b38f00);padding:1px 6px;border-radius:4px;font-size:.75rem;font-weight:700;z-index:10;box-shadow:0 2px 4px #0009;pointer-events:none}.item-name{margin-top:5px;position:relative;z-index:5}.item-count{display:none}.sell-buttons-container{position:absolute;bottom:0;left:0;width:100%;display:flex;flex-direction:column;background:#000c;border-radius:0 0 8px 8px;overflow:hidden;z-index:20}.btn-sell-action{border:none;font-family:var(--font-mono, monospace);font-size:.7rem;font-weight:700;cursor:pointer;transition:background .2s;color:#fff;text-align:left;padding:4px 4px 4px 8px}.btn-sell-action:hover{filter:brightness(1.2)}.sell-all{background:#27ae60;border-bottom:1px solid rgba(0,0,0,.2)}.market-content .inventory-slot{min-height:160px}.inventory-grid.market-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--space-md)}.market-content .inventory-slot{aspect-ratio:auto!important;min-height:150px;padding-bottom:60px!important}.sell-buttons-container{position:absolute;bottom:0;left:0;width:100%;display:flex;flex-direction:column;z-index:20}.btn-sell-action{width:100%;border:none;padding:6px 4px;font-family:monospace;font-size:.75rem;font-weight:700;cursor:pointer;color:#fff;text-align:center;border-top:1px solid rgba(0,0,0,.1)}.sell-all{background:#27ae60}.sell-all:hover{background:#2ecc71}.sell-one{background:#e67e22}.sell-one:hover{background:#d35400}.miner-upgrade-section{margin-top:15px;padding-top:15px;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:10px}.upgrade-cost{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.cost-item{display:flex;align-items:center;gap:6px;background-color:#0006;border:1px solid rgba(255,255,255,.1);padding:4px 10px;border-radius:20px;font-size:.85rem;color:#ccc;font-family:monospace;transition:all .2s}.cost-item:hover{border-color:var(--gem-amethyst, #9b59b6);background-color:#9b59b61a;transform:translateY(-1px)}.btn-upgrade-miner{width:100%;padding:10px;border:none;border-radius:8px;background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;font-family:var(--font-display, sans-serif);font-weight:700;font-size:.95rem;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;position:relative;overflow:hidden;transition:all .3s cubic-bezier(.25,.8,.25,1);box-shadow:0 4px 10px #2980b94d}.btn-upgrade-miner:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.btn-upgrade-miner:hover:not(:disabled){transform:translateY(-2px) scale(1.02);box-shadow:0 6px 15px #2980b980}.btn-upgrade-miner:hover:not(:disabled):after{left:100%}.btn-upgrade-miner:active:not(:disabled){transform:translateY(1px)}.btn-upgrade-miner:disabled{background:#34495e;color:#7f8c8d;cursor:not-allowed;box-shadow:none;transform:none}.gem-slot{background:linear-gradient(145deg,#2a2a35,#1a1a25);border:1px solid rgba(255,255,255,.15);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:15px;min-height:180px;text-align:center;position:relative;transition:all .3s cubic-bezier(.25,.8,.25,1);box-shadow:inset 0 0 20px #00000080}.gem-slot:hover{transform:translateY(-7px) scale(1.02);border-color:#fff6;box-shadow:0 10px 20px #00000080,0 0 15px #ffffff1a}.gem-slot .item-name{font-family:Cinzel,serif;font-weight:700;font-size:.95rem;line-height:1.3;margin-top:15px;margin-bottom:auto;text-transform:capitalize;text-shadow:0 2px 3px rgba(0,0,0,.7)}.gem-rarity-badge{font-size:.7rem;letter-spacing:1px;background:linear-gradient(90deg,#000000b3,#323232b3);padding:4px 10px;border-radius:20px;border:1px solid rgba(255,255,255,.1);margin-top:10px;color:#ccc;box-shadow:0 2px 5px #0000004d}.treasure-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:15px}#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}
