:root{--panel:rgba(26,33,29,.55);--line:rgba(203,227,200,.14);--muted:#a7b2a2;--bg:#090e0c}
.role-tip{padding:12px;border-radius:10px;border:1px solid #d7f96e25;background:#d7f96e08;font-size:11px!important;white-space:pre-line}
nav{padding-left:4px;padding-right:4px}nav button{min-width:0;flex:1;font-size:9px}
.loot-stats{display:grid;gap:10px;grid-template-columns:1fr 1fr}.loot-stats article{border:1px solid rgba(222,243,215,.16);border-radius:16px;padding:16px;background:linear-gradient(130deg,rgba(198,232,134,.1),rgba(20,30,24,.4));backdrop-filter:blur(18px)}.loot-stats article:last-child{grid-column:1/-1;display:grid;grid-template-columns:64px 1fr;gap:0 10px;align-items:center}.loot-stats article:last-child .loot-icon{grid-row:1/4}.loot-stats small{display:block;font-size:8px;letter-spacing:.5px}.loot-stats strong{display:block;font-size:26px;letter-spacing:-1px;color:#d7f96e;margin-top:8px}.loot-stats p{font-size:9px;margin:5px 0}.loot-icon .real-icon{width:56px;height:56px}
.real-icon{display:inline-block;width:64px;height:64px;flex-shrink:0;background-image:url('/static/images/icons.png');background-size:400% 400%;background-repeat:no-repeat;filter:drop-shadow(0 5px 6px #0006)}.product-icon .real-icon{width:72px;height:72px}.product{grid-template-columns:78px 1fr}.product-icon{min-height:82px}.nav-icon{width:30px;height:30px}.avatar .real-icon{width:40px;height:40px}.achievement .real-icon{width:44px;height:44px;margin-bottom:8px}.hero h1{font-size:clamp(30px,9vw,48px);letter-spacing:-1.4px}.city{height:110px}.notice{font-size:10px;padding:9px}
body{background:#090e0c;isolation:isolate}
body:before{content:'';position:fixed;inset:0;z-index:-2;background:linear-gradient(180deg,rgba(5,11,9,.55),rgba(5,11,9,.82) 54%,rgba(5,11,9,.97)),url('/static/images/city.jpg') center/cover no-repeat;opacity:1}
body:after{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(125deg,transparent 10%,rgba(225,250,232,.045) 10.4%,transparent 24%),radial-gradient(ellipse at 100% 12%,rgba(190,229,121,.11),transparent 50%),radial-gradient(ellipse at 0% 80%,rgba(89,150,141,.09),transparent 40%)}
header{border-bottom:1px solid rgba(220,237,218,.08);margin-bottom:20px}
.hero{background:linear-gradient(115deg,rgba(12,22,17,.75),rgba(32,48,30,.35));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(214,238,184,.22);box-shadow:inset 0 1px 0 rgba(242,255,219,.11),0 20px 60px rgba(0,0,0,.25)}
.hero:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(125deg,rgba(231,255,208,.07),transparent 40%,rgba(231,255,208,.025));border-radius:inherit}
.hero h1{text-shadow:0 2px 30px #0008;position:relative;z-index:1}.city{opacity:.28}.primary{background:linear-gradient(120deg,#dcfa8c,#bedf65);box-shadow:0 0 30px rgba(207,247,116,.12),inset 0 1px 0 #ffffff80;transition:box-shadow .2s,transform .2s}.primary:hover{box-shadow:0 0 40px rgba(207,247,116,.2)}.primary:active{transform:scale(.98)}
.stats article,.product,.game-card,.ranking,.setting,.achievement,.level-card,.empty{background:linear-gradient(125deg,rgba(230,245,224,.065),rgba(20,30,24,.46));backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(222,243,215,.14);box-shadow:inset 0 1px 0 rgba(242,255,235,.06),0 10px 30px #0002}
.level-card{background:linear-gradient(110deg,rgba(175,219,105,.11),rgba(29,47,30,.34));border-color:rgba(192,226,147,.24)}
.stats strong{font-weight:700}.identity{padding:16px;background:rgba(209,236,202,.04);border:1px solid rgba(222,243,215,.08);border-radius:16px;backdrop-filter:blur(12px)}.avatar{background:linear-gradient(140deg,rgba(202,239,151,.16),rgba(73,101,62,.14));border-color:rgba(202,239,151,.28);box-shadow:inset 0 1px 0 #ffffff15}.badge,.season{background:rgba(216,244,195,.045);border-color:rgba(205,231,189,.18)}
.product-icon{background:linear-gradient(130deg,rgba(202,234,159,.12),rgba(202,234,159,.025));border:1px solid rgba(202,234,159,.12)}.buy{background:rgba(193,225,122,.085);border-color:rgba(193,225,122,.27);backdrop-filter:blur(8px)}.buy:hover:not(:disabled){background:rgba(193,225,122,.17)}.achievement.unlocked{border-color:rgba(206,243,132,.35);background:linear-gradient(125deg,rgba(189,225,114,.09),rgba(20,30,24,.4))}.achievement.locked{background:rgba(17,26,22,.35)}
.filters button{background:rgba(209,232,192,.04);border-color:rgba(205,231,189,.16)}.filters button.active{background:rgba(211,244,138,.17);color:#e0ffa0;border-color:rgba(211,244,138,.42)}
nav{background:rgba(10,20,15,.75);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);box-shadow:0 -15px 50px #0003;border-top:1px solid rgba(222,243,215,.16)}nav .selected span{text-shadow:0 0 20px #d7f96e66}.notice{background:rgba(46,43,21,.58);backdrop-filter:blur(16px);border-color:rgba(229,210,130,.22)}
.tip{border-color:rgba(224,240,218,.12)}.screen.active{animation:show .25s ease}.page-head h1{letter-spacing:-2.5px}footer{color:#89997b}
@media(prefers-reduced-transparency:reduce){.hero,.stats article,.product,.game-card,.ranking,.setting,.achievement,.level-card{background:#17221a}nav{background:#101b14}}
@media(prefers-reduced-motion:reduce){.screen.active{animation:none}.primary{transition:none}}

.web-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.action-button{overflow:hidden;padding:0;border:1px solid #d7f96e44;border-radius:16px;background:#101815aa;color:#f4f5ed;cursor:pointer}.action-button img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.action-button b{display:block;padding:14px}.action-button.chosen{border:2px solid #d7f96e;box-shadow:0 0 20px #d7f96e30}.action-button:disabled{opacity:.6}

body.training main,body.training nav{display:none}#tutorial-panel{max-width:620px;margin:24px auto;padding:28px;border-radius:26px;background:#101815de;border:1px solid #d7f96e55;box-shadow:0 16px 90px #0009;color:#f4f5ed}#tutorial-panel[hidden]{display:none}#tutorial-panel h1{font-size:30px}.training-team{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.training-team span{padding:8px;background:#ffffff10;border-radius:12px}.training-tip{font-size:18px;line-height:1.6}.training-arrow{color:#d7f96e;text-align:center;margin:20px;font-weight:bold;animation:training-point 1s ease-in-out infinite}.training-target{width:100%;box-shadow:0 0 24px #d7f96e44}.training-note{font-size:13px;opacity:.65;line-height:1.5}@keyframes training-point{50%{transform:translateY(8px)}}@media(prefers-reduced-motion:reduce){.training-arrow{animation:none}}

.team-hero{padding:30px 22px;border-radius:24px;border:1px solid #d7f96e55;background:linear-gradient(0deg,#070d0cef,#11181520),url('/animations/lobby.gif') center/cover;min-height:330px;display:flex;flex-direction:column;justify-content:flex-end}.team-hero h1{text-shadow:0 3px 24px #000}.team-card{margin:16px 0;padding:22px;border-radius:22px;border:1px solid #ffffff20;background:linear-gradient(130deg,#ffffff12,#13211c99);backdrop-filter:blur(20px);box-shadow:0 12px 30px #0004}.team-card h2{font-size:22px}.team-card input{width:100%;padding:14px;margin:10px 0;border:1px solid #d7f96e44;border-radius:12px;background:#080e0ccc;color:#fff;font:inherit}.team-form{display:grid;gap:10px}.team-members{display:flex;flex-wrap:wrap;gap:8px}.team-members span{padding:10px;border-radius:12px;background:#ffffff10;font-size:12px}.team-button{margin:6px;padding:12px;border-radius:12px;background:#d7f96e16;color:#d7f96e;border:1px solid #d7f96e55;cursor:pointer}.team-button:disabled{opacity:.45}.team-list-item,.team-request,.battle-score{padding:14px 0;border-bottom:1px solid #ffffff15;display:flex;flex-wrap:wrap;gap:12px;align-items:center}.team-list-item span{margin-left:auto;color:#d7f96e}.battle-card{border-color:#d7f96e55}.battle-score{justify-content:space-between}.team-note{font-size:11px}.team-card .web-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.team-card .action-button{font-size:11px;padding-bottom:12px}.team-card .action-button img{margin-bottom:10px}nav button{font-size:8px}

.game-chat{margin:18px 0;padding:18px;border:1px solid #d7f96e55;border-radius:20px;background:#07110bb0}.chat-messages{max-height:260px;overflow:auto}.chat-message{padding:10px;border-radius:12px;background:#ffffff0b;margin:8px 0}.chat-message b{color:#d7f96e;font-size:12px}.chat-message p{color:#eff0e7;white-space:pre-wrap;overflow-wrap:anywhere}.chat-form{display:flex;gap:8px;margin:12px 0}.chat-form input{min-width:0;flex:1;padding:12px;border:1px solid #ffffff30;border-radius:12px;background:#0006;color:white}.game-chat .primary{width:100%}

.group-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;border-radius:16px;border:1px solid #ffffff22;background:#ffffff09;margin:10px 0}.group-row b{font-size:14px;overflow-wrap:anywhere}.group-row span{font-size:12px;color:#d7f96e;white-space:nowrap}.training-groups{margin-top:26px}

.profile-record{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}.profile-record article{padding:18px 10px;background:#ffffff0b;border:1px solid #ffffff22;border-radius:18px;text-align:center}.profile-record strong{display:block;font-size:30px;color:#d7f96e;margin-top:8px}#profile-avatar{width:76px;height:76px;flex-shrink:0;border-radius:50%;overflow:hidden;border:2px solid #d7f96e77;display:grid;place-items:center}#profile-avatar img{width:100%;height:100%;object-fit:cover}#profile-avatar .real-icon{width:100%;height:100%;border-radius:50%}.profile-achievements{margin:22px 0;padding:18px;border:1px solid #d7f96e44;border-radius:20px;background:#ffffff09}.profile-achievements summary{cursor:pointer;font-weight:800}.profile-achievements summary span{float:right;color:#d7f96e}#profile-inventory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.inventory-item{display:flex;gap:12px;align-items:center;padding:14px;background:#ffffff0b;border:1px solid #ffffff20;border-radius:16px;font-size:12px}.inventory-item .real-icon{width:48px;height:48px;flex-shrink:0}

.market-switch{display:flex;gap:5px;padding:6px;margin:20px 0;background:#ffffff0a;border:1px solid #ffffff24;border-radius:20px;backdrop-filter:blur(20px)}.market-switch button{flex:1;padding:16px;border:0;border-radius:15px;background:transparent;color:#bbb;font-weight:800;cursor:pointer}.market-switch button.selected{background:linear-gradient(140deg,#d7f96e,#92bb3b);color:#142009;box-shadow:0 4px 24px #d7f96e33}.market-panel[hidden]{display:none}.story-current{padding:22px;margin:20px 0;border:1px solid #d7f96e55;border-radius:24px;background:#142019aa;backdrop-filter:blur(20px)}.story-dialogue p{padding:14px;border-left:3px solid #d7f96e;background:#ffffff08;border-radius:12px}.story-role{color:#d7f96e;font-weight:800}.story-current .primary{width:100%}.mission-card{margin:10px 0;border:1px solid #ffffff20;border-radius:18px;overflow:hidden;background:#ffffff08}.mission-card summary{list-style:none;display:flex;align-items:center;gap:12px;padding:10px;cursor:pointer}.mission-card summary img{width:56px;height:56px;object-fit:cover;border-radius:12px}.mission-card summary strong{color:#d7f96e;font-size:20px}.mission-card summary b{flex:1;font-size:12px}.mission-card summary span{font-size:10px}.mission-card.locked{opacity:.65}.mission-card.done{border-color:#d7f96e66}.mission-card p{padding:0 16px}.mission-live{display:inline-block;padding:8px 10px;color:#9fa99b;background:#ffffff0b;border-radius:12px;font-size:11px;margin:8px 0}.mission-live.populated{color:#d7f96e;border:1px solid #d7f96e77;box-shadow:0 0 18px #d7f96e22}.mission-reward{padding:14px;margin:10px;background:linear-gradient(120deg,#e5b84822,#d7f96e11);color:#ffdb77;border:1px solid #e5b84866;border-radius:14px;font-size:12px}.mission-list{padding-bottom:20px}

.player-presence{display:flex;gap:22px;align-items:center;padding:12px 16px;margin:14px 0;border:1px solid #ffffff14;border-radius:16px;background:#ffffff04;color:#aab2a1;font-size:12px}.player-presence span{display:flex;gap:6px;align-items:center}.player-presence b{color:#eef4e6;font-size:15px}.player-presence i{width:6px;height:6px;border-radius:50%;background:#b5e343;box-shadow:0 0 9px #b5e34366}

/* Compact play surface: keep discussion and votes in view. */
.game-card,.story-current,.battle-card{padding:18px!important;border-radius:18px!important}
.game-card h3,.story-current h2{font-size:20px;line-height:1.3;margin:8px 0}
.game-card p,.story-current p{font-size:13px;line-height:1.5;margin:8px 0}
.web-actions,.team-card .web-actions{gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}
.action-button{padding:4px 8px;min-height:54px;border-radius:12px;text-align:left;background:#ffffff06}
.action-button img{display:none}.action-button b{padding:10px 6px;font-size:13px;line-height:1.4}.action-button p{padding:0 6px 6px;font-size:11px}
.action-button.chosen{border:1px solid #d7f96e;box-shadow:inset 0 0 0 1px #d7f96e22;background:#d7f96e12}
.game-chat{padding:14px;margin:12px 0;border-radius:14px;border-color:#ffffff20}.game-chat h3{font-size:16px}.chat-messages{max-height:220px}.chat-message{padding:8px 10px}.chat-message p{margin:4px 0}.response-tally{padding:12px;border-radius:12px;background:#ffffff05;font-size:13px}.response-tally p{font-size:11px;color:#aeb7a5}
.story-current>.phase-animation,.game-card>.phase-animation{display:none}.mission-card summary img{display:none}.team-hero{min-height:0;background:linear-gradient(130deg,#ffffff08,#11181570);padding:22px}.team-hero h1{font-size:28px}.team-hero p{font-size:13px}.role-tip{padding:10px 12px!important;font-size:12px!important;border-radius:12px}

#rating-players[hidden],#rating-teams[hidden]{display:none!important}

.daily-case{padding:22px;border:1px solid #ffffff20;background:linear-gradient(135deg,#ffffff09,#0d181477);border-radius:20px;display:flex;flex-direction:column;gap:12px}.daily-case .case-icon{width:80px;height:80px;align-self:center}.daily-case h2{font-size:22px;margin:0}.daily-case p{font-size:13px;margin:0}.daily-case small,.case-odds{color:#d7f96e;font-size:11px}.case-result{padding:14px;border:1px solid #d7f96e33;border-radius:14px;background:#d7f96e08}.case-result p{margin-top:8px}.case-prizes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.case-prize{display:flex;flex-direction:column;gap:6px;padding:12px;border-radius:12px;border:1px solid #ffffff15;background:#ffffff04}.case-prize .real-icon{width:40px;height:40px}.case-prize b{font-size:12px}.case-prize small{font-size:10px;color:#aab49e}

.case-reel{position:relative;overflow:hidden;width:100%;height:146px;background:#070d0ba6;border:1px solid #ffffff20;border-radius:14px}.case-track{display:flex;gap:10px;width:max-content;padding-top:18px;will-change:transform}.case-tile{box-sizing:border-box;flex:0 0 110px;width:110px;height:110px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:8px;border:1px solid #ffffff1a;border-radius:12px;background:#17211e}.case-tile .real-icon{width:46px;height:46px}.case-tile b{font-size:10px;text-align:center;line-height:1.3}.case-pointer{position:absolute;left:50%;top:0;bottom:0;width:2px;background:#d7f96e;box-shadow:0 0 14px #d7f96e88;transform:translateX(-1px);pointer-events:none}.case-pointer:before{content:'';position:absolute;top:0;left:-6px;border-left:7px solid transparent;border-right:7px solid transparent;border-top:9px solid #d7f96e}.case-tile.winner{border-color:#d7f96e;box-shadow:inset 0 0 20px #d7f96e20}.case-reveal{color:#d7f96e;font-weight:700;text-align:center}

.case-prize-details{margin-top:16px;border:1px solid #ffffff18;border-radius:16px;background:#ffffff04;padding:14px}.case-prize-details summary{cursor:pointer;font-size:14px;font-weight:600;color:#eaf2e3;padding:4px}.case-prize-details[open] summary{margin-bottom:14px}.case-prize-details summary::marker{color:#d7f96e}

.ranking-title{font-size:10px;color:#d7f96e;white-space:nowrap}.ranking{flex-wrap:wrap}

.item-wear{color:#d7f96e!important;font-size:11px!important}.inventory-item{flex-wrap:wrap}.inventory-item .item-wear{width:100%;padding-left:46px}

.game-rules{padding:16px;margin-bottom:18px;border:1px solid #ffffff20;border-radius:16px;background:#ffffff05}.game-rules summary{cursor:pointer;font-size:14px;color:#d7f96e}.game-rules #game-rules{white-space:pre-wrap;font-size:13px;line-height:1.65;margin-top:14px}
