/* Games, economy, quests and social profile experience layer. */
.game-overlay{position:fixed;z-index:120;inset:0;display:grid;place-items:center;padding:22px;background:#02040bbb;backdrop-filter:blur(12px)}
.game-overlay.minimized{inset:auto 22px 22px auto;padding:0;background:transparent;backdrop-filter:none}.game-overlay.minimized .game-window{width:310px!important;height:auto!important;min-width:0;min-height:0;resize:none}.game-overlay.minimized .game-window-body{display:none}
.game-window{width:min(880px,95vw);height:min(820px,90vh);min-width:430px;min-height:420px;resize:both;overflow:hidden;display:flex;flex-direction:column;border:1px solid #4b4165;border-radius:22px;background:linear-gradient(155deg,#171d2a,#0b0e15);box-shadow:0 35px 120px #000c,0 0 0 1px #ffffff08}
.game-window:fullscreen{width:100vw!important;height:100vh!important;min-width:0;min-height:0;resize:none;border:0;border-radius:0}
body:has(.game-overlay:not(.hidden):not(.minimized)) .friends-dock,body:has(.game-overlay:not(.hidden):not(.minimized)) .dm-dock{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
.game-window.maximized{width:calc(100vw - 34px)!important;height:calc(100vh - 34px)!important;resize:none}.game-window-bar{height:58px;flex:none;display:flex;align-items:center;justify-content:space-between;padding:0 14px 0 20px;border-bottom:1px solid #303748;background:#111620}.game-window-bar>div span,.game-window-bar>div b{display:block}.game-window-bar>div span{font-size:8px;letter-spacing:2px;color:#8269d7}.game-window-bar>div b{margin-top:2px;font:600 15px "Space Grotesk"}.game-window-bar nav{display:flex;gap:5px}.game-window-bar button{width:31px;height:31px;border:0;border-radius:9px;background:#202736;color:#aeb6c8;cursor:pointer}.game-window-bar button:hover{background:#342852;color:#fff}.game-window-body{flex:1;min-height:0;overflow:auto;padding:18px}.game-arena-popup{min-height:100%;display:flex;flex-direction:column}
.game-player-strip{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:10px 13px;border:1px solid #30384a;border-radius:15px;background:#111721}.game-player-strip>div{display:flex;align-items:center;gap:9px}.game-player-strip .opponent{justify-content:flex-end;text-align:right}.game-player-strip .avatar{width:38px;height:38px;border-radius:11px}.game-player-strip p,.game-player-strip b,.game-player-strip small{display:block;margin:0}.game-player-strip small{margin-top:3px;color:#707b90;font-size:8px}.bot-avatar{background:linear-gradient(135deg,#8259ef,#3c286f)!important}.game-arena-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:15px}.game-arena-actions>span{color:#d7c6ff;font-weight:800}.game-arena-actions>div{display:flex;gap:8px}.game-arena-actions button{border:1px solid #374055;border-radius:10px;background:#181f2c;color:#d8dce5;padding:9px 13px;cursor:pointer}.game-arena-actions .danger-btn{color:#ff8793;border-color:#673843;background:#2b181e}
.chess-stage{width:min(660px,calc(100% - 20px));margin:18px auto;perspective:1000px;padding:13px 13px 20px;border-radius:18px;background:linear-gradient(145deg,#44334f,#1c1622);box-shadow:0 25px 50px #0009,inset 0 1px #ffffff19}.chess-stage .chess-board{width:100%;border:0;border-radius:8px;transform:rotateX(3deg);transform-origin:bottom;box-shadow:0 14px 18px #0007}.chess-stage .chess-board button{overflow:visible;background:linear-gradient(145deg,#d8c9b6,#b9a58d);box-shadow:inset 0 1px #fff5}.chess-stage .chess-board button:nth-child(16n+1),.chess-stage .chess-board button:nth-child(16n+3),.chess-stage .chess-board button:nth-child(16n+5),.chess-stage .chess-board button:nth-child(16n+7),.chess-stage .chess-board button:nth-child(16n+10),.chess-stage .chess-board button:nth-child(16n+12),.chess-stage .chess-board button:nth-child(16n+14),.chess-stage .chess-board button:nth-child(16n+16){background:linear-gradient(145deg,#755c82,#4d3b59)}.chess-piece{display:block;position:relative;z-index:2;line-height:1;transform:translateY(-2px) scale(1.08);transition:.16s;filter:drop-shadow(0 8px 3px #0006)}.white-piece{color:#fff7df;text-shadow:0 1px #fff,0 3px #8d7c68,0 5px 2px #241d18}.black-piece{color:#25202a;text-shadow:0 1px #5c5262,0 3px #09070b,0 5px 2px #000}.chess-board button:not(:disabled):hover .chess-piece{transform:translateY(-7px) scale(1.14)}.chess-board button.last-move{box-shadow:inset 0 0 0 4px #d7ff5d88}.chess-board button.selected{box-shadow:inset 0 0 0 5px #c9ff67;background:#8e6ee2!important}
.tic-stage{width:min(520px,90%);margin:25px auto;padding:18px;border-radius:25px;background:linear-gradient(145deg,#241c39,#101620);box-shadow:0 25px 60px #0009,inset 0 1px #ffffff13}.tic-stage .tic-board{width:100%;gap:11px}.tic-stage .tic-board button{border:0;border-radius:20px;background:linear-gradient(145deg,#252f44,#111722);box-shadow:8px 8px 17px #070a0f,-3px -3px 10px #30394c55}.tic-board button span{display:block;text-shadow:0 7px 10px #0008}.tic-board .mark-X{color:#b692ff}.tic-board .mark-O{color:#55e4c0}.tic-board button:not(:disabled):hover{transform:translateY(-3px)}
.arcade-hero,.quest-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px;padding:25px;border:1px solid #392f57;border-radius:22px;background:radial-gradient(circle at 85% 0,#7c53e94a,transparent 35%),linear-gradient(135deg,#20182f,#121924)}.arcade-hero small,.quest-summary>div>small{color:#9a7ff0;letter-spacing:2px}.arcade-hero h2,.quest-summary h2{margin:5px 0;font:600 28px "Space Grotesk"}.arcade-hero p,.quest-summary p{margin:0;color:#929bad}.arcade-hero>span,.quest-summary>div:last-child{padding:14px 18px;border:1px solid #7960c8;border-radius:16px;background:#261d3d;color:#e2d5ff;font-size:20px;font-weight:800}.game-catalog-card{grid-template-rows:auto 1fr auto auto}.game-catalog-card>div>small{color:#7e6aaa;font-size:8px;letter-spacing:1.4px}.game-catalog-card footer{grid-column:1/-1;display:flex;gap:13px;padding-top:14px;border-top:1px solid #30384a;color:#8e97aa;font-size:9px}.game-lobby.active-games{border-color:#675096;background:#1c1728}
.quest-summary>div:last-child{display:grid;grid-template-columns:auto auto;align-items:center;gap:2px 10px;text-align:right}.quest-summary>div:last-child>span{grid-row:1/3;font-size:29px}.quest-summary>div:last-child>b{font-size:24px}.quest-summary>div:last-child>small{color:#9a8abf}.quest-grid .quest-card{display:flex;flex-direction:column;min-height:270px;padding:21px}.quest-card header,.quest-card footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.quest-card header>span{padding:5px 8px;border-radius:20px;background:#252c3b;color:#9fa8ba;font-size:9px}.quest-card.done header>span{background:#244c3d;color:#7ee2b8}.quest-card>div:nth-child(2){flex:1}.quest-card>div:nth-child(2)>small{display:block;margin-top:16px;color:#8269dd;text-transform:uppercase;letter-spacing:1.5px}.quest-card footer strong{font-size:12px}.quest-rewards{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.quest-rewards span{padding:5px 7px;border:1px solid #3b4356;border-radius:8px;background:#111722;color:#c5bddc;font-size:8px}.badge-loadout{border-radius:22px;background:linear-gradient(145deg,#161d29,#10141c)}.badge-loadout>header{display:flex;justify-content:space-between;align-items:center}.badge-loadout>header small,.badge-loadout>header h2{display:block;margin:2px}.badge-loadout>header>span{color:#807396;font-size:9px}
.wallet-balance{padding:12px 18px;border:1px solid #6d55b6;border-radius:15px;background:#241b38;color:#e2d4ff;font-size:18px;font-weight:800}.shop-root{padding:0 30px 45px}.shop-tabs{display:flex;gap:6px;margin-bottom:18px;padding:5px;border:1px solid #2f3748;border-radius:14px;background:#111620}.shop-tabs button{border:0;border-radius:10px;background:transparent;color:#8c96a9;padding:10px 16px;cursor:pointer}.shop-tabs button.active{background:#6f4bdd;color:#fff;box-shadow:0 7px 20px #6f4bdd55}.shop-tabs i{margin-left:5px;font-style:normal;opacity:.7}.point-store{margin-bottom:18px;border:1px solid #44375f;border-radius:20px;background:radial-gradient(circle at 90% 0,#8c5cff3d,transparent 45%),#151a26;overflow:hidden}.point-store>header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px}.point-store h2,.point-store p{margin:4px 0}.point-store p{color:#8d96a9}.point-packages{display:flex;gap:8px}.point-package{min-width:95px;padding:12px;border:1px solid #58467c;border-radius:13px;background:#211a31;color:#fff;cursor:pointer}.point-package span,.point-package b,.point-package small{display:block}.point-package span{color:#c9adff;font-size:18px}.point-package small{color:#998bb0}.point-package:disabled{opacity:.45}.payment-disabled{margin:0!important;padding:10px 22px;border-top:1px solid #392f4d;color:#bd9c83!important;font-size:9px}
.shop-grid,.inventory-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:13px}.shop-item,.inventory-item{position:relative;overflow:hidden;padding:14px;border:1px solid #30394a;border-radius:18px;background:linear-gradient(145deg,#181f2b,#10141d)}.shop-item:before,.inventory-item:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:#6c7485}.rarity-rare:before{background:#43a9ee}.rarity-epic:before{background:#9b61f5}.rarity-legendary:before{background:linear-gradient(90deg,#ffb52e,#ff5a7d)}.shop-item-preview,.inventory-preview{height:120px;display:grid;place-items:center;border-radius:14px;background:radial-gradient(circle,#4b376c,#171c27 65%);font-size:51px;box-shadow:inset 0 0 35px #0005}.shop-item>small,.inventory-item>div>small{display:block;margin-top:12px;color:#7f8aa0;font-size:8px;text-transform:uppercase}.shop-item h3,.shop-item p,.inventory-item h3,.inventory-item p{margin:5px 0}.shop-item p,.inventory-item p{min-height:33px;color:#8993a7;font-size:10px}.shop-item footer,.inventory-item footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px}.shop-item footer strong{color:#dac9ff}.shop-item footer button,.inventory-item footer button,.inventory-toolbar button{border:0;border-radius:9px;background:#6e4bdb;color:#fff;padding:8px 11px;cursor:pointer}.shop-item footer button:disabled{background:#283040;color:#778195}
.inventory-toolbar,.trade-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px;padding:5px}.inventory-toolbar h2,.inventory-toolbar p,.trade-toolbar h2,.trade-toolbar p{margin:3px}.inventory-toolbar p,.trade-toolbar p{color:#8993a7}.inventory-item{display:grid;grid-template-columns:90px 1fr;gap:13px}.inventory-preview{height:90px;font-size:35px}.inventory-item footer{grid-column:1/-1}.inventory-item.equipped{border-color:#8e6ff0;box-shadow:0 0 0 1px #8e6ff055,0 16px 40px #0005}.empty-vault{grid-column:1/-1;padding:60px;border:1px dashed #394255;border-radius:17px;color:#818b9e;text-align:center}.trade-list{display:grid;gap:9px}.trade-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:15px;padding:15px;border:1px solid #31394a;border-radius:15px;background:#141a24}.trade-row small{color:#8d96aa}.trade-row p{display:flex;align-items:center;gap:10px;margin:7px 0 0}.trade-row p span{padding:6px 8px;border-radius:8px;background:#222a39}.trade-row>b{color:#9a88bf;font-size:9px;text-transform:uppercase}.trade-row footer{display:flex;gap:6px}.trade-row footer button{border:1px solid #454e62;border-radius:8px;background:#202736;color:#fff;padding:7px 9px;cursor:pointer}.member-color-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.modal:has(.social-profile-card){width:min(720px,96vw)}.social-profile-cover{height:210px}.social-profile-main{display:grid;grid-template-columns:1fr 1fr;column-gap:12px;padding-top:66px;background:radial-gradient(circle at 100% 0,color-mix(in srgb,var(--profile-accent) 18%,transparent),transparent 37%)}.social-profile-identity{grid-column:1/-1;padding-left:125px;min-height:62px}.social-profile-ranks,.achievement-badges,.social-profile-bio,.social-profile-stats,.profile-activity,.profile-last-active{grid-column:1/-1}.profile-favorite-room,.profile-pinned-song{width:auto}.social-profile-stats span{background:linear-gradient(145deg,#151c28,#0f131b)}
@media(max-width:700px){.game-overlay{padding:7px}.game-window{width:100%;height:100%;min-width:0;min-height:0;resize:none;border-radius:16px}.game-window.maximized{width:100%!important;height:100%!important}.game-window-body{padding:10px}.game-player-strip{grid-template-columns:1fr}.game-player-strip>.game-status{grid-row:1;justify-self:center}.game-player-strip .opponent{justify-content:flex-start;text-align:left}.chess-stage{width:100%;margin:10px auto;padding:7px 7px 12px}.chess-stage .chess-board button{font-size:clamp(22px,10vw,40px)}.game-arena-actions{align-items:flex-start;flex-direction:column}.arcade-hero,.quest-summary,.point-store>header{align-items:flex-start;flex-direction:column}.games-root,.quests-root,.shop-root{padding:0 13px 28px}.point-packages{width:100%;overflow:auto}.point-package{flex:0 0 95px}.shop-grid,.inventory-grid{grid-template-columns:1fr}.trade-row{grid-template-columns:1fr}.member-color-grid{grid-template-columns:1fr}.social-profile-main{grid-template-columns:1fr}.social-profile-identity{padding-left:95px}.profile-favorite-room,.profile-pinned-song{grid-column:1/-1}}

.shop-category-tabs{display:flex;gap:8px;overflow:auto;margin:0 0 16px;padding:4px}.shop-category-tabs button{flex:0 0 auto;padding:9px 14px;border:1px solid #30384a;border-radius:999px;background:#111722;color:#9ca6ba;cursor:pointer}.shop-category-tabs button.active{border-color:#8065e8;background:linear-gradient(135deg,#4a3483,#282047);color:#fff;box-shadow:0 8px 22px #5d43c044}.shop-item{transition:transform .18s,border-color .18s,box-shadow .18s}.shop-item:hover{transform:translateY(-4px);border-color:#7159c9;box-shadow:0 20px 45px #0007}.provider-choice{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.provider-choice button{padding:8px 12px;border:1px solid #343c50;border-radius:9px;background:#121824;color:#aeb7ca}.provider-choice button.active{border-color:#8065e8;color:#fff;background:#332653}.admin-grid-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:18px;border:1px solid var(--line);border-radius:15px;background:#10151e}.admin-grid-form h3,.admin-grid-form p,.admin-grid-form .form-error,.admin-grid-form .admin-form-actions{grid-column:1/-1}.admin-ledger{display:grid;gap:8px;margin-top:18px}.admin-ledger-row{display:grid;grid-template-columns:1.1fr .65fr .8fr 1.4fr auto;gap:10px;align-items:center;padding:11px;border:1px solid var(--line);border-radius:11px;background:#10151e;font-size:11px}.admin-ledger-row .positive{color:#55e69c}.admin-ledger-row .negative{color:#ff7f91}.admin-catalog{display:grid;gap:10px;margin-top:16px}.admin-catalog article{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#10151e}.admin-catalog article>div{flex:1}.opponent-social{display:flex;gap:6px;align-items:center}.opponent-social button{padding:6px 9px;border:1px solid #3d4660;border-radius:8px;background:#181f2c;color:#dce2ee;cursor:pointer}@media(max-width:700px){.admin-grid-form{grid-template-columns:1fr}.admin-ledger-row{grid-template-columns:1fr 1fr}.admin-ledger-row span:last-child{grid-column:1/-1}}
