*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:radial-gradient(circle at top,#263622,#0d120e 55%);color:#eee;min-height:100vh}a{color:#ffb14a}button,input,select{font:inherit}button{background:#b85a16;color:white;border:1px solid #e18a38;border-radius:8px;padding:10px 14px;cursor:pointer}button:hover{filter:brightness(1.15)}input,select{background:#171d19;color:#fff;border:1px solid #48554b;border-radius:8px;padding:11px}.auth{display:grid;place-items:center}.auth-card{width:min(420px,92vw);background:#141b16ee;padding:32px;border:1px solid #405143;border-radius:18px;display:grid;gap:14px;box-shadow:0 25px 80px #000}.auth-card h1{margin:0;color:#f09a3e}.error{background:#6b1f1f;padding:10px;border-radius:8px}header{display:flex;justify-content:space-between;gap:20px;padding:16px 24px;background:#0b0f0cdd;border-bottom:1px solid #364138;position:sticky;top:0;z-index:5}header span,.muted,small{color:#a9b2aa}nav{display:flex;gap:8px;padding:12px 24px;background:#151b17;overflow:auto}main{padding:22px;max-width:1450px;margin:auto}.tab{display:none}.tab.active{display:block}.grid.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{background:#151b17e8;border:1px solid #344137;border-radius:15px;padding:18px;box-shadow:0 12px 40px #0005}.player{display:flex;justify-content:space-between;align-items:center;padding:10px;border-bottom:1px solid #2e3830}.player span{display:grid}.chat{height:390px;overflow:auto;background:#0c100d;border:1px solid #303b33;border-radius:10px;padding:10px}.chat p{margin:5px 0}.inline{display:flex;gap:8px;margin-top:10px}.inline input{flex:1}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;margin-top:16px}.card{background:linear-gradient(#262d28,#141816);border:4px solid #8b5a2b;border-radius:14px;padding:10px;min-height:275px;box-shadow:0 8px 24px #0008}.card .art{height:105px;display:grid;place-items:center;font-size:60px;background:radial-gradient(circle,#405247,#171c18);border-radius:8px}.card h3{font-size:16px;margin:10px 0 4px}.card p{font-size:12px;line-height:1.4}.stats{display:flex;justify-content:space-between;margin-top:12px;font-weight:bold}.rarity-zilver{border-color:#bbc3ca}.rarity-goud{border-color:#e7b438}.rarity-legendary{border-color:#f0c340;box-shadow:0 0 24px #f0b40066}.shop{text-align:center}.pack{max-width:340px;margin:auto;display:grid;gap:12px}.pack-art{font-size:100px;padding:30px;background:linear-gradient(135deg,#472209,#d1741e);border-radius:18px}.form-grid{display:grid;gap:12px}.battle{position:fixed;inset:0;background:#000d;z-index:20;display:grid;place-items:center;padding:20px}.battle.hidden{display:none}.battle-box{width:min(900px,96vw);background:#151b17;border:1px solid #65725f;border-radius:18px;padding:22px;position:relative}.close{position:absolute;right:12px;top:12px}.arena{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;text-align:center;background:linear-gradient(#4e2f1e,#2a180f);padding:30px;border-radius:16px}.versus{font-size:28px;font-weight:bold}.hp{height:18px;background:#451818;border-radius:10px;overflow:hidden}.hp i{display:block;height:100%;background:#41a74b;width:100%}.battle-log{height:170px;overflow:auto;background:#0c100d;margin:14px 0;padding:10px;border-radius:10px}.chat.mini{height:120px;margin-top:14px}@media(max-width:800px){.grid.two{grid-template-columns:1fr}header{font-size:13px}.cards{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}
.game-body:before{content:"";position:fixed;inset:0;z-index:-2;background:linear-gradient(#07100bd9,#07100bf2),radial-gradient(circle at 50% 10%,#5d2d6755,transparent 35%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='500'%3E%3Cpath d='M0 420 Q100 250 210 405 T420 390 T650 420 T900 350 V500 H0Z' fill='%23030604'/%3E%3Cpath d='M40 430 L80 150 L120 430 M190 430 L230 100 L270 430 M690 430 L735 110 L780 430 M820 430 L860 180 L900 430' stroke='%23080d09' stroke-width='35'/%3E%3C/svg%3E") center bottom/cover fixed}.brand b{letter-spacing:2px;color:#f5b24e}.hero-panel{background:radial-gradient(circle at 70% 20%,#6d356b66,transparent 42%),linear-gradient(135deg,#171e19,#0b100c);min-height:330px;display:flex;flex-direction:column;justify-content:center}.hero-creatures{display:flex;justify-content:space-around;font-size:58px;filter:drop-shadow(0 0 18px #b55cff)}.card .art{height:142px;overflow:hidden}.card .art img{width:100%;height:100%;object-fit:cover;display:block}.card .lore{opacity:.72;font-style:italic}.global-chat-dock{position:fixed;right:18px;bottom:18px;width:min(380px,calc(100vw - 36px));z-index:15;background:#101712f5;border:1px solid #536356;border-radius:15px;box-shadow:0 18px 60px #000;overflow:hidden}.global-chat-dock .chat-toggle{width:100%;border-radius:0;text-align:left}.global-chat-dock #globalChatPanel{padding:10px}.global-chat-dock .chat{height:260px}.global-chat-dock.collapsed #globalChatPanel{display:none}.arena-dashboard{background:linear-gradient(#121914e8,#080d09ef)}.arena-head{display:flex;justify-content:space-between;gap:20px;align-items:start}.arena-stats{display:grid;grid-template-columns:auto auto;gap:4px 10px;text-align:right;background:#0b100d;padding:12px 16px;border-radius:12px}.arena-stats b{font-size:24px;color:#f4b14d}.stadium-map{position:relative;display:grid;grid-template-columns:1fr 1.1fr 1fr;grid-template-rows:auto auto auto;gap:14px;min-height:650px;padding:35px;margin-top:18px;background:radial-gradient(elvipse at center,#704927 0 20%,#2f4c27 21% 36%,#171c18 37% 100%);border:8px solid #52412f;border-radius:35px;box-shadow:inset 0 0 70px #000}.arena-section{background:linear-gradient(#303a32,#151b17);border:2px solid #68736a;border-radius:12px;padding:14px;text-align:center;z-index:2}.arena-section h3{margin:5px}.section-icon{font-size:42px}.section-left_stand{grid-column:1;grid-row:2}.section-left_corner{grid-column:1;grid-row:1}.section-north_stand{grid-column:2;grid-row:1}.section-right_corner{grid-column:3;grid-row:1}.section-right_stand{grid-column:3;grid-row:2}.section-vip_tower{grid-column:2;grid-row:3}.battle-field{grid-column:2;grid-row:2;display:grid;place-items:center;align-content:center;border:3px solid #c7a568;border-radius:45%;background:repeating-linear-gradient(90deg,#385d31 0 28px,#31542c 28px 56px);text-shadow:0 2px 4px #000}.battle-field span{font-size:55px}.battle-field b{font-size:20px}.income-box{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:18px;padding:18px;background:#0c110e;border-radius:14px}@media(max-width:800px){.stadium-map{grid-template-columns:1fr;grid-template-rows:auto;padding:16px}.arena-section,.battle-field{grid-column:1!important;grid-row:auto!important}.battle-field{min-height:180px}.arena-head,.income-box{flex-direction:column}.global-chat-dock{right:8px;bottom:8px;width:calc(100vw - 16px)}}
.auth{position:relative;overflow:hidden;background:radial-gradient(circle at 50% 25%,#52345e 0,#16231a 35%,#050806 78%)}.auth:before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 700'%3E%3Ccircle cx='860' cy='150' r='95' fill='%23dfd9cb' opacity='.62'/%3E%3Ccircle cx='895' cy='125' r='95' fill='%23101b14'/%3E%3Cpath d='M0 590 Q120 360 220 560 Q320 260 430 565 Q550 320 650 570 Q790 260 910 570 Q1040 330 1200 560 V700 H0Z' fill='%23030604'/%3E%3Cpath d='M80 610 L135 240 L190 610 M270 610 L330 180 L390 610 M930 610 L990 210 L1050 610' stroke='%23070b08' stroke-width='42'/%3E%3Cpath d='M470 550 Q600 380 730 550 L700 610 H500Z' fill='%23120818' stroke='%23643773' stroke-width='5'/%3E%3C/svg%3E") center/cover;opacity:.95}.auth:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 20%,#9656c322 50%,transparent 70%);animation:haunt 8s ease-in-out infinite}.auth-card{position:relative;z-index:2;backdrop-filter:blur(12px);background:linear-gradient(145deg,#101713ed,#17101ced);border:1px solid #745980;box-shadow:0 25px 100px #000,0 0 45px #7b3fc633}.auth-card h1{text-shadow:0 0 18px #bf7aff}.auth-card:before{content:"☾";font-size:64px;text-align:center;color:#d7c1e3;text-shadow:0 0 25px #a05bca}@keyframes haunt{50%{transform:translateX(35px);opacity:.45}}

.success{background:#174f2a;border:1px solid #3b9b58;padding:10px;border-radius:8px}.forgot-link{font-weight:bold;color:#d8a8ff}.auth-card small{line-height:1.45}
/* Stadium v4 */
.stadium-real{position:relative;display:grid;grid-template-columns:190px minmax(320px,1fr) 190px;grid-template-rows:150px minmax(310px,1fr) 150px;gap:12px;min-height:760px;margin-top:20px;padding:18px;background:radial-gradient(elvipse at center,#355d30 0 35%,#171b18 36% 100%);border:8px solid #4f4034;border-radius:36px;box-shadow:inset 0 0 75px #000,0 20px 60px #0008}.real-stand{position:relative;background:linear-gradient(180deg,#3a332e,#171816);border:3px solid #6d6258;border-radius:13px;overflow:hidden;display:grid;grid-template-columns:1fr;box-shadow:inset 0 -20px 35px #0008,0 8px 18px #0007}.stand-visual{min-height:66px;padding:8px;display:flex;gap:4px;align-items:end;justify-content:center;background:linear-gradient(#161b18,#24251f)}.stand-visual i{width:15%;height:28%;background:repeating-linear-gradient(90deg,#85451f 0 5px,#d58b38 5px 9px);border-top:3px solid #e5b26d;transform:skewX(-8deg);box-shadow:0 -7px 0 #5a341d,0 -14px 0 #7e4a27}.level-3 .stand-visual i,.level-4 .stand-visual i{height:45%;background:repeating-linear-gradient(90deg,#67452c 0 6px,#b98b58 6px 11px)}.level-5 .stand-visual i,.level-6 .stand-visual i{height:60%;background:repeating-linear-gradient(90deg,#656565 0 6px,#aaa 6px 11px)}.level-7 .stand-visual i,.level-8 .stand-visual i{height:76%;background:repeating-linear-gradient(90deg,#444d58 0 6px,#9aa9b7 6px 11px)}.level-9 .stand-visual i,.level-10 .stand-visual i{height:92%;background:repeating-linear-gradient(90deg,#6f4e08 0 6px,#f0c45e 6px 11px);box-shadow:0 -7px 0 #a96c0a,0 -14px 0 #e5b63c,0 0 18px #ffcf4d}.level-0 .stand-visual{opacity:.25;filter:grayscale(1)}.stand-info{padding:10px;text-align:center}.stand-info h3{margin:0 0 4px}.stand-type{display:block;color:#f0b85f;font-size:13px}.stand-info p{margin:6px 0}.condition{height:8px;background:#5a1d1d;border-radius:20px;overflow:hidden}.condition span{display:block;height:100%;background:linear-gradient(90deg,#cf5e42,#d2b740,#65ad59)}.stand-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:8px}.stand-actions button{padding:7px 9px;font-size:12px}.stand-actions .repair{background:#365f73;border-color:#6ea0b7}.stand-north_west{grid-column:1;grid-row:1}.stand-north_stand{grid-column:2;grid-row:1}.stand-north_east{grid-column:3;grid-row:1}.stand-west_stand{grid-column:1;grid-row:2}.stand-east_stand{grid-column:3;grid-row:2}.stand-south_west{grid-column:1;grid-row:3}.stand-south_stand{grid-column:2;grid-row:3}.stand-south_east{grid-column:3;grid-row:3}.stand-west_stand .stand-visual,.stand-east_stand .stand-visual{min-height:150px}.battle-field-real{grid-column:2;grid-row:2;position:relative;display:grid;place-items:center;align-content:center;overflow:hidden;border:4px solid #e6d2a0;border-radius:18px;background:repeating-linear-gradient(90deg,#315a2d 0 35px,#2b5228 35px 70px);box-shadow:inset 0 0 35px #0008;text-align:center;text-shadow:0 2px 5px #000}.battle-field-real .field-lines{position:absolute;inset:8%;border:3px solid #ffffff99}.battle-field-real .field-lines:before{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:3px solid #ffffff99}.battle-field-real .field-lines:after{content:"";position:absolute;left:50%;top:50%;width:90px;height:90px;border:3px solid #ffffff99;border-radius:50%;transform:translate(-50%,-50%)}.battle-field-real span{font-size:58px;z-index:1}.battle-field-real b,.battle-field-real small{z-index:1}.arena-help{margin-top:16px;padding:15px;background:#0b100d;border-radius:12px}.fixture-list{display:grid;gap:10px;margin:14px 0}.fixture{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:14px;background:#0c120e;border:1px solid #35433a;border-radius:12px}.fixture h3{margin:4px 0}.fixture h3 span{color:#f2a84c;margin:0 8px}.fixture p{margin:3px 0;color:#aeb7af}.league-live-box{max-width:980px}.scoreboard{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center;text-align:center;background:#090d0a;padding:16px;border-radius:14px}.scoreboard>div{display:flex;align-items:center;justify-content:center;gap:18px}.scoreboard strong{font-size:48px;color:#f1b050}.scoreboard span{display:grid}.scoreboard em{font-size:25px;font-style:normal}.live-arena{margin:14px 0;background:#1a211b;border:5px solid #514537;border-radius:20px;overflow:hidden}.crowd{height:58px;background:repeating-linear-gradient(90deg,#733 0 7px,#c78b3c 7px 13px,#234f69 13px 20px,#45304f 20px 27px);filter:brightness(.75);box-shadow:inset 0 0 20px #000}.live-field{height:250px;position:relative;background:repeating-linear-gradient(90deg,#34602f 0 45px,#2e572b 45px 90px);border-top:3px solid #ddd;border-bottom:3px solid #ddd}.live-field:before{content:"";position:absolute;inset:12px;border:3px solid #ffffffaa}.live-field .midline{position:absolute;left:50%;top:12px;bottom:12px;border-left:3px solid #ffffffaa}.live-field .circle{position:absolute;left:50%;top:50%;width:90px;height:90px;border:3px solid #ffffffaa;border-radius:50%;transform:translate(-50%,-50%)}.card-fighter{position:absolute;font-size:50px;filter:drop-shadow(0 8px 5px #000);animation:fightmove 3s ease-in-out infinite alternate}.fighter-home{left:22%;top:42%}.fighter-away{right:22%;top:30%;animation-delay:.7s}@keyframes fightmove{from{transform:translate(-25px,-10px) rotate(-4deg)}to{transform:translate(35px,18px) rotate(5deg)}}.league-reward{padding:12px;background:#2d2414;border:1px solid #a67d32;border-radius:10px}.arena-stats{grid-template-columns:auto auto}
@media(max-width:1000px){.stadium-real{grid-template-columns:1fr 1fr;grid-template-rows:auto}.real-stand,.battle-field-real{grid-column:auto!important;grid-row:auto!important}.battle-field-real{min-height:260px;grid-column:1/3!important}.fixture{align-items:flex-start;flex-direction:column}}
@media(max-width:650px){.stadium-real{grid-template-columns:1fr;padding:10px}.real-stand,.battle-field-real{grid-column:1!important}.scoreboard strong{font-size:34px}.scoreboard{gap:5px}.scoreboard>div{gap:8px}.live-field{height:190px}}

/* v5 supernatural login */
.auth-title{position:absolute;top:5vh;left:50%;transform:translateX(-50%);z-index:3;text-align:center;display:grid;gap:7px;text-shadow:0 4px 22px #000}.auth-title b{font-size:clamp(30px,5vw,68px);letter-spacing:6px;color:#f2bd67}.auth-title span{color:#d7ccd8}.auth-creatures{position:absolute;inset:0;z-index:1;pointer-events:none}.auth-creatures>div{position:absolute;display:grid;text-align:center;font-size:clamp(80px,12vw,180px);filter:drop-shadow(0 18px 20px #000) drop-shadow(0 0 30px #7d3cff66)}.auth-creatures span{font-size:12px;letter-spacing:3px;color:#d7c9dc}.login-dragon{left:4vw;top:20%;transform:rotate(-8deg)}.login-vampire{right:8vw;top:25%;transform:rotate(5deg)}.login-wolf{left:10vw;bottom:5%;transform:rotate(4deg)}.auth-card{margin-top:12vh}.auth-card:before{content:"⚔"}.auth:before{filter:brightness(.72)}
.stadium-real{background:radial-gradient(elvipse at center,#c79a5d 0 35%,#57452f 36% 100%)}.battle-field-real{background:repeating-linear-gradient(25deg,#c99a59 0 18px,#bd8d4d 18px 36px);border-color:#ead2a4}.battle-field-real .field-lines{border-color:#fff8dc99}.battle-field-real .field-lines:before,.battle-field-real .field-lines:after{border-color:#fff8dc99}.live-field{background:repeating-linear-gradient(25deg,#c99a59 0 22px,#b98749 22px 44px)}.job-timer{min-height:20px;margin-top:7px;color:#ffd580;font-size:12px;font-weight:bold}.stand-actions button:disabled{opacity:.42;cursor:not-allowed;filter:grayscale(.6)}
.card-fighter{transition:transform .22s,filter .22s}.card-fighter.strike.fighter-home{animation:dashHome .75s ease-in-out}.card-fighter.strike.fighter-away{animation:dashAway .75s ease-in-out}.creature-zombie.strike{animation-duration:1.5s!important}.creature-draak.strike{filter:drop-shadow(0 0 15px #ff6a00)}.creature-vampier.strike{filter:drop-shadow(0 0 15px #c00030)}.creature-weerwolf.strike{filter:drop-shadow(0 0 15px #ddd)}.card-fighter.hit{animation:hitShake .42s linear}.attack-effect{position:absolute;top:40%;z-index:5;font-size:48px;opacity:0;transform:scale(.2);pointer-events:none}.attack-effect.active{animation:effectFly .85s ease-out}.effect-fire,.effect-hell{filter:drop-shadow(0 0 18px #ff5a00)}.effect-blood{filter:drop-shadow(0 0 18px #b50024)}.effect-magic{filter:drop-shadow(0 0 18px #b45cff)}.effect-ghost{filter:blur(.5px) drop-shadow(0 0 18px #cff)}
@keyframes dashHome{0%{transform:translate(0,0)}45%{transform:translate(230px,-35px) scale(1.25)}100%{transform:translate(0,0)}}@keyframes dashAway{0%{transform:translate(0,0)}45%{transform:translate(-230px,35px) scale(1.25)}100%{transform:translate(0,0)}}@keyframes hitShake{25%{transform:translateX(-12px) rotate(-8deg)}50%{transform:translateX(12px) rotate(8deg)}75%{transform:translateX(-7px)}}@keyframes effectFly{0%{opacity:0;transform:scale(.2) translateX(0)}35%{opacity:1;transform:scale(1.25) translateX(45px)}100%{opacity:0;transform:scale(.7) translateX(120px)}}
@media(max-width:800px){.auth-creatures>div{font-size:72px;opacity:.6}.login-vampire{right:1vw}.login-dragon{left:1vw}.login-wolf{left:3vw}.auth-title{top:2vh}.auth-card{margin-top:18vh}}
/* V6: vulkaanlogin */
.volcano-login{overflow:hidden;background:radial-gradient(circle at 50% 72%,#5b1708 0,#170807 34%,#050304 75%);min-height:100vh;position:relative}
.volcano-scene{position:fixed;inset:0;z-index:0;overflow:hidden}.volcano{position:absolute;left:50%;bottom:4vh;transform:translateX(-50%);width:68vw;height:45vh;background:linear-gradient(145deg,#171112,#35201c 48%,#0c090a);cvip-path:polygon(16% 100%,37% 25%,44% 14%,56% 14%,64% 25%,85% 100%);filter:drop-shadow(0 0 35px #ff4a00)}.crater{position:absolute;left:39%;top:10%;width:22%;height:11%;border-radius:50%;background:radial-gradient(elvipse,#fff08a 0,#ff5b00 30%,#5d0900 75%);box-shadow:0 0 30px #ff4d00,0 0 90px #ff2500}.lava-stream{position:absolute;top:17%;width:4%;height:75%;background:linear-gradient(90deg,#7a0900,#ff5b00,#ffd264,#ff3b00,#650500);box-shadow:0 0 18px #ff4c00;filter:blur(.3px);animation:lavaPulse 1.8s infinite alternate}.lava-a{left:47%;transform:rotate(7deg)}.lava-b{left:53%;height:63%;transform:rotate(-8deg);animation-delay:.5s}.lava-c{left:43%;height:50%;transform:rotate(13deg);animation-delay:1s}.lava-ground{position:absolute;bottom:-3vh;left:-5vw;width:110vw;height:18vh;background:repeating-linear-gradient(100deg,#220500 0 4%,#ff4b00 5%,#ffb000 6%,#310600 9%);filter:blur(2px);box-shadow:0 -20px 70px #ff3b00;animation:lavaFlow 5s linear infinite}.ash{position:absolute;inset:0;background:radial-gradient(circle at 20% 30%,rgba(255,90,20,.08),transparent 25%),radial-gradient(circle at 80% 22%,rgba(255,40,0,.1),transparent 26%);animation:ashMove 8s ease-in-out infinite alternate}.ember-field i{position:absolute;left:calc((var(--n)*43)%100 * 1%);bottom:-5%;width:4px;height:4px;border-radius:50%;background:#ffb300;box-shadow:0 0 12px #ff5300;animation:emberRise calc(3s + (var(--n)*.13s)) linear infinite;animation-delay:calc(var(--n)*-.21s)}
.monster-silhouettes>div{position:fixed;z-index:1;font-size:clamp(54px,7vw,112px);filter:drop-shadow(0 0 18px #ff4e00);animation:monsterFloat 3.2s ease-in-out infinite;text-align:center}.monster-silhouettes span{display:block;font:bold 11px Arial;letter-spacing:2px;color:#ffc78e;text-shadow:0 2px 8px #000}.m-dragon{left:5vw;top:10vh}.m-vampire{right:7vw;top:14vh;animation-delay:.5s!important}.m-wolf{left:8vw;bottom:17vh;animation-delay:1s!important}.m-witch{right:8vw;bottom:17vh;animation-delay:1.5s!important}.m-zombie{left:25vw;bottom:5vh;font-size:64px!important}.m-ghost{right:24vw;bottom:4vh;font-size:62px!important}.m-demon{left:48%;top:8vh;font-size:65px!important}.volcanic-title{z-index:3}.volcanic-title b{text-shadow:0 0 12px #ff3b00,0 0 40px #ff5a00}.volcanic-card{z-index:4;border:1px solid rgba(255,118,42,.65);background:linear-gradient(180deg,rgba(20,9,10,.93),rgba(8,4,5,.96));box-shadow:0 0 0 1px rgba(255,170,70,.15),0 30px 80px #000,0 0 45px rgba(255,65,0,.35);backdrop-filter:blur(10px)}.login-emblem{width:62px;height:62px;margin:-48px auto 12px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#ffbd52,#d63a00 58%,#260400);box-shadow:0 0 30px #ff5600;font-size:29px}.volcanic-card button{background:linear-gradient(180deg,#ff8c2c,#b72e00);box-shadow:0 8px 22px rgba(255,62,0,.35)}
@keyframes lavaPulse{to{filter:brightness(1.5) blur(1px);box-shadow:0 0 36px #ffb000}}@keyframes lavaFlow{to{background-position:180px 0}}@keyframes ashMove{to{transform:scale(1.08) translateY(-2vh)}}@keyframes emberRise{0%{transform:translateY(0) scale(.5);opacity:0}12%{opacity:1}100%{transform:translateY(-105vh) translateX(55px) scale(1.5);opacity:0}}@keyframes monsterFloat{50%{transform:translateY(-12px) scale(1.04)}}
/* V6: opstelling */
.lineup-page{max-width:1200px;margin:auto}.lineup-head{display:grid;grid-template-columns:1fr minmax(280px,420px);gap:22px;align-items:start}.risk-warning{padding:16px;border:1px solid #c95120;border-radius:14px;background:linear-gradient(135deg,rgba(104,23,8,.7),rgba(30,7,7,.9));color:#ffd2bd;font-weight:700}.lineup-slots{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:12px;margin:12px 0 28px}.lineup-slots.boosters{grid-template-columns:repeat(3,minmax(180px,1fr));max-width:800px}.lineup-slot{position:relative;padding:16px 12px 12px;border-radius:15px;background:linear-gradient(180deg,#24191a,#100b0c);border:1px solid #5c3a32;box-shadow:inset 0 0 20px rgba(255,95,32,.08)}.lineup-slot>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e05016;color:white;font-weight:900;margin:-28px auto 10px;box-shadow:0 0 18px #ff5b1b}.lineup-slot select{width:100%;min-height:48px}.booster-slot{border-color:#6d4aa5}.booster-slot>span{background:#6d3bc1}.save-lineup{font-size:16px;padding:14px 22px}.live-lineups{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:10px 0}.mini-lineup{display:flex;gap:6px}.mini-card{flex:1;min-width:0;padding:5px;border-radius:8px;background:#171113;border:1px solid #473237;opacity:.6;position:relative}.mini-card img{width:100%;height:46px;object-fit:cover;border-radius:5px}.mini-card small{display:block;white-space:nowrap;overflow:hidden;text-overflow:elvipsis;font-size:9px}.mini-card>span{position:absolute;top:2px;left:2px;background:#000c;border-radius:50%;width:18px;height:18px;text-align:center}.mini-card.active-card{opacity:1;border-color:#ff8a36;box-shadow:0 0 15px #ff5a003d}.mini-card.disabled-card{opacity:.22;filter:grayscale(1)}.effect-ice{filter:drop-shadow(0 0 20px #8eeeff)}
@media(max-width:900px){.lineup-head{grid-template-columns:1fr}.lineup-slots{grid-template-columns:1fr 1fr}.monster-silhouettes>div{opacity:.45}.m-demon,.m-zombie,.m-ghost{display:none}}
.card-fighter.speed-veryfast.strike{animation-duration:.45s}.card-fighter.speed-fast.strike{animation-duration:.62s}.card-fighter.speed-normal.strike{animation-duration:.8s}.card-fighter.speed-slow.strike{animation-duration:1.35s}
/* V7 visuele opstelling en levendigere competitie */
.lineup-card-slots{grid-template-columns:repeat(5,minmax(190px,1fr));align-items:start}.visual-lineup-slot{display:block}.lineup-card-preview{margin-top:10px;border:3px solid #74513e;border-radius:13px;overflow:hidden;background:linear-gradient(#26201d,#110d0c);min-height:330px;box-shadow:0 8px 24px #0008}.lineup-card-preview.empty{display:grid;place-items:center;padding:18px;min-height:220px;color:#a99d96;text-align:center}.lineup-card-preview img{width:100%;height:135px;object-fit:cover;display:block}.lineup-card-preview .preview-body{padding:10px}.lineup-card-preview h4{margin:0 0 4px;color:#ffd18c}.lineup-card-preview .preview-rarity{font-size:11px;color:#c8b9af}.lineup-card-preview .preview-stats{display:flex;justify-content:space-between;margin:9px 0;padding:7px;background:#0c0908;border-radius:8px;font-weight:bold}.lineup-card-preview p{font-size:11px;line-height:1.35;margin:6px 0}.lineup-card-preview.rarity-zilver{border-color:#bfc7cf}.lineup-card-preview.rarity-goud,.lineup-card-preview.rarity-legendary{border-color:#e9bb45;box-shadow:0 0 20px #e9a90044}.booster-preview{min-height:240px}.booster-preview img{height:120px}.battle-log p{padding:8px 10px;margin:5px 0;border-left:3px solid #815b3b;background:#111612;border-radius:5px}.battle-log p.event-defense{border-color:#60a9d3;background:#10202a}.battle-log p.event-dodge{border-color:#c3c3c3}.battle-log p.event-counter{border-color:#e07a3e}.battle-log p.event-critical,.battle-log p.event-knockout{border-color:#ff3f1f;background:#32100c}.battle-log p.event-heal{border-color:#4dc76c;background:#102719}.battle-log p.event-booster{border-color:#a36df0;background:#211331}.card-fighter.defending{animation:defendPulse .8s ease}.card-fighter.dodging{animation:dodgeMove .7s ease}.attack-effect.effect-shield{filter:drop-shadow(0 0 20px #66c8ff)}.attack-effect.effect-heal{filter:drop-shadow(0 0 20px #65ff8c)}.attack-effect.effect-boost{filter:drop-shadow(0 0 20px #bf78ff)}
@keyframes defendPulse{45%{transform:scale(1.28);filter:drop-shadow(0 0 25px #75d7ff)}}@keyframes dodgeMove{35%{transform:translateY(-70px) translateX(45px) rotate(15deg)}70%{transform:translateY(20px) translateX(-25px)}}
@media(max-width:1200px){.lineup-card-slots{grid-template-columns:repeat(3,minmax(190px,1fr))}}@media(max-width:800px){.lineup-card-slots{grid-template-columns:1fr 1fr}}@media(max-width:520px){.lineup-card-slots,.lineup-slots.boosters{grid-template-columns:1fr}}

.facility-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-top:20px}.facility-card{position:relative;overflow:hidden;padding:20px;border:1px solid rgba(255,150,50,.28);border-radius:18px;background:linear-gradient(145deg,rgba(38,21,22,.96),rgba(14,13,19,.96));box-shadow:0 14px 35px rgba(0,0,0,.25)}.facility-card:before{content:"";position:absolute;inset:auto -25% -55% -25%;height:130px;background:radial-gradient(circle,rgba(255,92,0,.2),transparent 70%)}.facility-icon{font-size:46px;filter:drop-shadow(0 0 14px rgba(255,115,35,.5))}.facility-card h3{margin:8px 0}.facility-card p{min-height:68px;color:#c9c0c2}.facility-card button{width:100%;margin-top:12px}.training-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:14px}.training-card{display:grid;grid-template-columns:104px 1fr;gap:14px;padding:12px;border-radius:16px;border:1px solid rgba(255,255,255,.12);background:rgba(13,12,18,.86)}.training-card img{width:104px;height:138px;object-fit:cover;border-radius:12px}.training-card h3{margin:3px 0 6px}.training-card button{font-size:12px}.mission-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;margin:12px 0;border-radius:14px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09)}.mission-row>div{flex:1}.mission-row small{display:block;color:#bbb;margin-top:5px}.mission-progress{height:8px;margin-top:10px;border-radius:999px;background:#1b1820;overflow:hidden}.mission-progress i{display:block;height:100%;background:linear-gradient(90deg,#e35b16,#ffc85a);box-shadow:0 0 12px rgba(255,109,25,.55)}.achievement{border-left:4px solid #c99335}.achievement b:before{content:"🏆 ";}.mission-row button[disabled],.facility-card button[disabled],.training-card button[disabled]{opacity:.45;cursor:not-allowed}
@media(max-width:700px){.training-grid{grid-template-columns:1fr}.mission-row{align-items:flex-start;flex-direction:column}.mission-row button{width:100%}}

.evolution-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:18px;margin-top:18px}.evolution-card{display:grid;grid-template-columns:145px 1fr;gap:16px;padding:14px;border:1px solid #503824;border-radius:16px;background:linear-gradient(145deg,#15100d,#090807);box-shadow:0 12px 30px #0008}.evolution-art{position:relative}.evolution-art img{width:145px;height:190px;object-fit:cover;border-radius:12px;border:2px solid #7d5a35}.evolution-art span{position:absolute;left:7px;right:7px;bottom:7px;padding:5px;text-align:center;border-radius:8px;background:#090707d9;color:#ffd98b;font-size:12px}.evolution-card .stats{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.evolution-card .stats span{background:#251b15;padding:5px 8px;border-radius:8px}.evolution-card button:disabled{opacity:.45;cursor:not-allowed}.rarity-legendary.evolution-card{box-shadow:0 0 30px #ffd45c33;border-color:#d8a83f}.rarity-goud.evolution-card{border-color:#b78b31}.rarity-zilver.evolution-card{border-color:#86919d}
.power-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#2c1b0f;color:#ffcb6b;font-weight:800}
.market-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:16px;margin-top:18px}.market-card{display:grid;grid-template-columns:130px 1fr;gap:14px;padding:14px;border:1px solid #45372f;border-radius:16px;background:linear-gradient(145deg,#17130f,#0b0a09);box-shadow:0 12px 35px #0008}.market-card img{width:130px;height:160px;object-fit:cover;border-radius:12px;border:2px solid #69513d}.market-card h3{margin:0 0 4px}.market-card .stats{display:flex;gap:8px;margin:10px 0}.market-card .stats span{background:#0007;padding:5px 8px;border-radius:8px}.market-actions{display:grid;grid-template-columns:1fr auto;gap:7px}.market-actions button:last-child{grid-column:1/-1}.market-timer{color:#ffbd66;font-weight:700}
/* V11: duidelijke transfermarkt en zichtbare cards */
.market-header{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px}.market-header h2{margin:0 0 5px}.market-wallet{padding:12px 16px;border-radius:14px;background:#0e0b09;border:1px solid #5b3b21;white-space:nowrap}.market-wallet b{display:block;color:#ffd06e;font-size:20px}.market-layout{display:grid;grid-template-columns:310px 1fr;gap:18px;align-items:start}.market-sell-panel{position:sticky;top:82px}.market-sell-panel label,.clear-actions label{display:grid;gap:5px;color:#cfc1b7;font-size:12px}.market-sell-preview{min-height:310px;margin:12px 0 16px;border:2px dashed #5c4638;border-radius:16px;background:#0c0908;overflow:hidden}.market-sell-preview.empty{display:grid;place-items:center;padding:20px;color:#9f938a;text-align:center}.market-sell-preview img{width:100%;height:185px;object-fit:cover;display:block}.market-sell-preview .preview-content{padding:12px}.market-sell-preview h3{margin:0 0 5px;color:#ffd08a}.market-sell-preview .preview-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:10px}.market-sell-preview .preview-stats span{padding:6px 4px;text-align:center;background:#17100d;border-radius:7px;font-size:11px}.market-list-button{width:100%;padding:13px}.market-tools{display:grid;grid-template-columns:minmax(220px,1.6fr) repeat(4,minmax(135px,1fr));gap:10px;margin-bottom:16px}.clear-market-grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));align-items:stretch}.clear-market-card{display:block;padding:0;overflow:hidden;border-width:2px}.market-art-wrap{position:relative;height:225px;background:#080706}.market-art-wrap img{width:100%;height:100%;object-fit:cover;border:0;border-radius:0;display:block}.rarity-label,.own-label{position:absolute;top:10px;padding:6px 9px;border-radius:999px;background:#090806d9;border:1px solid #ffffff2c;font-weight:800;font-size:11px}.rarity-label{left:10px}.own-label{right:10px;color:#ffce72}.market-card-body{padding:15px}.market-title-row{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.market-title-row h3{font-size:20px}.market-power{padding:6px 9px;border-radius:999px;background:#2d1c0f;color:#ffc35c;font-weight:800;white-space:nowrap}.market-stats{display:grid!important;grid-template-columns:repeat(4,1fr);gap:6px!important}.market-stats span{text-align:center}.market-lore{min-height:42px;color:#bcaea4;font-size:12px;line-height:1.45}.market-bid-info{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.market-bid-info>div{padding:10px;border-radius:10px;background:#0c0908;border:1px solid #39291f}.market-bid-info small{display:block;color:#9f9188}.market-bid-info strong{display:block;margin-top:4px;color:#ffd174;font-size:16px}.market-bidder{font-size:12px}.clear-actions{grid-template-columns:1fr auto}.clear-actions label{grid-column:1/-1}.clear-actions .buy-now{grid-column:1/-1;background:linear-gradient(180deg,#d69722,#87530b)}.danger-soft{width:100%;background:linear-gradient(180deg,#7e2c2c,#441414)}.danger-soft:disabled{opacity:.45}.rarity-legendary.clear-market-card{border-color:#e0b84f;box-shadow:0 0 25px #dba52a33}.rarity-goud.clear-market-card{border-color:#a9802e}.rarity-zilver.clear-market-card{border-color:#89929f}.hidden{display:none!important}
@media(max-width:1150px){.market-layout{grid-template-columns:1fr}.market-sell-panel{position:static}.market-tools{grid-template-columns:1fr 1fr}.market-tools input{grid-column:1/-1}}
@media(max-width:650px){.market-header{align-items:flex-start;flex-direction:column}.market-tools{grid-template-columns:1fr}.market-tools input{grid-column:auto}.clear-market-grid{grid-template-columns:1fr}.market-art-wrap{height:200px}}

.mollie-status{padding:14px;border-radius:12px;margin:0 0 18px;display:grid;gap:4px}.mollie-status.ok{background:#123d2b;border:1px solid #31d17c}.mollie-status.bad{background:#4a2020;border:1px solid #d35b5b}.payment-page,.profile-page{max-width:1050px;margin:40px auto;padding:20px}.payment-checkout{max-width:760px;margin:auto}.checkout-offer{display:flex;gap:20px;align-items:center;margin:24px 0}.checkout-offer img{width:140px;height:200px;object-fit:cover;border-radius:14px}.payment-methods{display:grid;gap:10px;margin:16px 0}.payment-method{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #555;border-radius:12px;cursor:pointer}.payment-method img{width:48px;height:32px;object-fit:contain;background:white;border-radius:5px}.public-profile{max-width:780px;margin:auto}.profile-hero{display:flex;align-items:center;gap:20px;margin:25px 0}.profile-avatar{width:110px;height:110px;border-radius:50%;display:grid;place-items:center;font-size:52px;overflow:hidden;background:#24182b;border:3px solid #bb7cff}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-bio{padding:18px;background:#18131d;border-radius:12px}.profile-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}.profile-stats span{padding:14px;background:#1d1722;border-radius:10px;text-align:center}.profile-stats b{display:block;font-size:22px}.profile-form{display:grid;gap:14px}.profile-form label{display:grid;gap:6px}.button-link{display:inline-block;padding:11px 16px;border-radius:10px;background:#8f4ee8;color:#fff;text-decoration:none;font-weight:700}@media(max-width:650px){.profile-stats{grid-template-columns:repeat(2,1fr)}.checkout-offer{align-items:flex-start}.payment-page,.profile-page{margin:10px auto;padding:10px}}

/* v17 berichten, reports en premiumbeheer */
.messages-page{max-width:1200px;margin:32px auto;padding:0 18px}.messages-layout{display:grid;grid-template-columns:280px 1fr;min-height:680px;overflow:hidden}.conversation-list{padding:22px;border-right:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column;gap:8px}.conversation{display:flex;flex-direction:column;padding:12px;border-radius:12px;background:rgba(255,255,255,.04);text-decoration:none}.conversation.active,.conversation:hover{background:rgba(255,135,35,.18)}.conversation small{opacity:.7}.message-thread{padding:22px;display:flex;flex-direction:column;min-width:0}.thread-header{display:flex;justify-content:space-between;align-items:center;gap:16px}.message-list{display:flex;flex-direction:column;gap:10px;overflow:auto;flex:1;padding:18px 0}.private-message{max-width:72%;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.08)}.private-message.mine{align-self:flex-end;background:rgba(255,116,25,.2)}.private-message p{margin:6px 0}.message-compose{display:grid;grid-template-columns:1fr auto;gap:10px}.message-compose textarea{min-height:78px}.report-button{background:rgba(190,42,42,.22)}@media(max-width:760px){.messages-layout{grid-template-columns:1fr}.conversation-list{border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}.private-message{max-width:92%}}

/* v18: seizoenen en MonsterDex */
.season-hero{min-height:270px;background:linear-gradient(120deg,#160c08,#33120a 55%,#080b12);background-size:cover;background-position:center;border:1px solid #7b351f;display:flex;align-items:center;padding:34px;margin-bottom:18px;overflow:hidden;position:relative}.season-hero:after{content:"";position:absolute;inset:auto -10% -70px 35%;height:130px;background:radial-gradient(elvipse,#ff6b184f,transparent 65%);filter:blur(8px);animation:seasonGlow 2.8s ease-in-out infinite alternate}.season-hero>div{max-width:720px;position:relative;z-index:1}.season-hero h1{font-size:clamp(32px,5vw,64px);margin:4px 0;color:#ffd7a5;text-shadow:0 3px 20px #000}.season-hero h3{margin:0 0 8px;color:#ff8a4c}.season-kicker{font-size:12px;font-weight:900;letter-spacing:.2em;color:#ff9860}.season-hero button{border:0;border-radius:10px;padding:12px 18px;background:#e85b18;color:#fff;font-weight:800;cursor:pointer}.season-new-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.season-new-card{display:grid;grid-template-columns:90px 1fr;gap:12px;background:#0b1018;border:1px solid #2b3445;border-radius:12px;padding:9px;align-items:center}.season-new-card img{width:90px;height:100px;object-fit:cover;border-radius:8px}.season-new-card b,.season-new-card small,.season-new-card span{display:block}.season-new-card small{color:#ff9b63;margin:4px 0}.season-new-card span{font-size:12px;color:#aeb9ca}.monsterdex-head{display:flex;justify-content:space-between;align-items:end;gap:20px}.monsterdex-tools{display:grid;grid-template-columns:minmax(220px,1fr) 160px 170px;gap:8px}.monsterdex-tools input,.monsterdex-tools select{background:#090d14;border:1px solid #344055;color:#fff;border-radius:9px;padding:11px}.monsterdex-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:18px;margin-top:18px}.monsterdex-card{background:linear-gradient(155deg,#23271f,#10140f);border:4px solid #8b5a2b;border-radius:17px;overflow:hidden;box-shadow:0 14px 30px #0008;min-height:450px}.monsterdex-card.rarity-zilver{border-color:#bfc8cf}.monsterdex-card.rarity-goud,.monsterdex-card.rarity-legendary{border-color:#e5b437}.monsterdex-art{height:240px;background:#05070a;position:relative;overflow:hidden}.monsterdex-art img{width:100%;height:100%;object-fit:cover}.season-tag{position:absolute;left:10px;bottom:10px;background:#100d0de8;border:1px solid #ff8a4c;padding:5px 8px;border-radius:999px;font-size:10px;color:#ffd1b6}.monsterdex-body{padding:14px}.monsterdex-body h3{margin:0;color:#ffd18c}.monsterdex-body small{color:#9ca9b8}.dex-meta{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:10px 0}.dex-meta span{background:#090d0b;border-radius:7px;padding:7px;font-size:11px}.monsterdex-card.undiscovered{border-color:#313846;background:#0c0f15}.mystery-monster{height:100%;display:grid;place-items:center;font-size:110px;font-weight:900;color:#313948;text-shadow:0 0 30px #7785a126;background:radial-gradient(circle,#1b2230,#05070b)}@keyframes seasonGlow{to{opacity:.45;transform:scale(1.08)}}@media(max-width:850px){.monsterdex-head{align-items:stretch;flex-direction:column}.monsterdex-tools{grid-template-columns:1fr}.season-hero{padding:24px}}

/* v19.1 veilige navigatie, valuta, weer en pack-opening */
.game-topbar{position:fixed;left:0;right:0;top:0;height:66px;z-index:1200;display:flex;align-items:center;gap:16px;padding:0 18px;background:rgba(9,12,18,.96);border-bottom:1px solid rgba(255,255,255,.1);backdrop-filter:blur(14px)}
.game-menu-toggle{display:none;width:42px;height:42px;padding:0;font-size:22px}
.game-topbar .brand{margin-right:auto}.game-topbar-right{display:flex;align-items:center;gap:8px}.top-chip{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:7px 11px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.05);color:#fff}.top-chip-diamonds{box-shadow:inset 0 0 18px rgba(66,190,255,.12)}.top-chip-weather small{opacity:.72}.top-icon-link,.top-profile-link{padding:8px 10px;border-radius:10px;color:#fff;text-decoration:none}.top-icon-link:hover,.top-profile-link:hover{background:rgba(255,255,255,.08)}
.game-sidebar{position:fixed;left:0;top:66px;bottom:0;width:250px;z-index:1100;background:rgba(10,13,20,.98);border-right:1px solid rgba(255,255,255,.08);overflow:hidden}.game-sidebar-scroll{height:100%;overflow:auto;padding:14px 10px 24px}.game-sidebar button,.game-sidebar a{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;margin:2px 0;border:0;border-radius:10px;background:transparent;color:#dce4f4;text-align:left;text-decoration:none}.game-sidebar button:hover,.game-sidebar a:hover,.game-sidebar button.active{background:rgba(255,255,255,.08);color:#fff}.game-menu-group{margin:12px 0}.game-menu-group>b{display:block;padding:4px 12px;color:#8792a8;font-size:11px;text-transform:uppercase;letter-spacing:.12em}.staff-menu-link{border:1px solid rgba(226,175,55,.25)!important;background:rgba(226,175,55,.07)!important}.game-content{margin-left:250px;padding-top:84px;min-height:100vh}.game-sidebar-backdrop{display:none}
.weather-fx{position:fixed;inset:66px 0 0 250px;z-index:0;pointer-events:none;overflow:hidden}.weather-fx:before,.weather-fx:after{content:"";position:absolute;inset:-20%}.weather-fx-rain:before,.weather-fx-thunderstorm:before,.weather-fx-storm:before{background-image:repeating-linear-gradient(105deg,transparent 0 18px,rgba(170,210,255,.18) 19px 20px,transparent 21px 35px);animation:realmRain .75s linear infinite}.weather-fx-snow:before{background-image:radial-gradient(circle,rgba(255,255,255,.75) 0 2px,transparent 3px);background-size:34px 34px;animation:realmSnow 8s linear infinite}.weather-fx-fog:before{background:linear-gradient(90deg,transparent,rgba(210,220,230,.09),transparent);filter:blur(16px);animation:realmMist 12s ease-in-out infinite}.game-content>*{position:relative;z-index:1}@keyframes realmRain{to{transform:translate(-40px,85px)}}@keyframes realmSnow{to{transform:translate(25px,85px)}}@keyframes realmMist{50%{transform:translateX(10%)}}
.pack-opening-overlay{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;background:radial-gradient(circle at center,rgba(55,25,90,.45),rgba(0,0,0,.94));padding:20px}.pack-opening-overlay.hidden{display:none}.pack-opening-stage{position:relative;width:min(1000px,96vw);min-height:620px;padding:34px;border:1px solid rgba(255,255,255,.15);border-radius:24px;background:rgba(8,10,16,.96);box-shadow:0 30px 120px #000;text-align:center;overflow:auto}.pack-opening-close{position:absolute;right:16px;top:12px;z-index:2}.pack-opening-wrapper{position:relative;width:210px;height:300px;margin:24px auto;cursor:pointer;transition:.7s}.pack-opening-pack{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;border-radius:18px;background:linear-gradient(145deg,#20103c,#6d2157 48%,#d4862e);border:3px solid #e6b85c;box-shadow:0 0 40px rgba(222,127,39,.55);font-size:22px}.pack-opening-pack small{margin-top:20px;letter-spacing:.16em}.pack-opening-rune{font-size:56px}.pack-opening-glow{position:absolute;inset:-30px;border-radius:50%;background:radial-gradient(circle,rgba(255,205,90,.34),transparent 68%);animation:packGlow 1.4s ease-in-out infinite}.pack-opening-wrapper.tearing{animation:packShake .13s linear 6}.pack-opening-wrapper.opened{transform:scale(.15) rotate(20deg);opacity:0}.pack-reveal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:14px}.pack-reveal-card{position:relative;opacity:0;transform:translateY(28px) rotateY(90deg);transition:.55s;padding:10px;border-radius:16px;background:#171b25;border:2px solid #6c7280}.pack-reveal-card.shown{opacity:1;transform:none}.pack-reveal-card .art{height:190px}.pack-reveal-card .art img{width:100%;height:100%;object-fit:cover;border-radius:10px}.pack-reveal-count{position:absolute;right:8px;top:8px;z-index:2;padding:3px 7px;border-radius:8px;background:#000b}.legendary-flash{animation:legendaryFlash .7s ease}.pack-art-pulse{animation:packGlow 1.7s ease-in-out infinite}@keyframes packGlow{50%{filter:brightness(1.35);transform:scale(1.03)}}@keyframes packShake{25%{transform:translateX(-8px) rotate(-2deg)}75%{transform:translateX(8px) rotate(2deg)}}@keyframes legendaryFlash{50%{box-shadow:inset 0 0 120px rgba(255,210,70,.85),0 0 100px rgba(255,210,70,.8)}}
@media(max-width:900px){.game-menu-toggle{display:inline-flex;align-items:center;justify-content:center}.game-topbar .brand span,.top-profile-link{display:none}.game-topbar-right{gap:4px}.top-chip{padding:6px 8px}.top-chip-weather small{display:none}.game-sidebar{transform:translateX(-102%);transition:.25s}.game-sidebar.open{transform:none}.game-sidebar-backdrop{position:fixed;inset:66px 0 0;z-index:1050;background:rgba(0,0,0,.55)}.game-sidebar-backdrop.open{display:block}.game-content{margin-left:0;padding-top:82px}.weather-fx{left:0}.global-chat-dock{max-width:calc(100vw - 20px)}}
@media(max-width:560px){.game-topbar{padding:0 8px;gap:7px}.game-topbar .brand b{font-size:13px}.top-chip-weather{display:none}.pack-opening-stage{padding:26px 12px;min-height:90vh}.pack-reveal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pack-reveal-card .art{height:150px}}
/* v20 stable navigation repair */
.game-topbar,.game-topbar *{pointer-events:auto}.top-icon-link{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:38px;z-index:2}.top-badge{position:absolute;right:-3px;top:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:99px;background:#e63b3b;color:#fff;font-size:11px;font-weight:800;display:grid;place-items:center;border:2px solid #090c12}.standalone-body{margin:0;min-height:100vh;background:radial-gradient(circle at 80% 0,#39170d,transparent 34%),#070a10;color:#eef3ff}.standalone-topbar{position:sticky;top:0;z-index:100;min-height:64px;padding:0 22px;display:flex;align-items:center;gap:18px;background:#0a0f17;border-bottom:1px solid rgba(255,255,255,.1)}.standalone-brand{font-weight:900;letter-spacing:2px;color:#ff985d;text-decoration:none;margin-right:auto}.standalone-topbar nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.standalone-topbar nav a,.standalone-topbar nav span{color:#fff;text-decoration:none;padding:8px 10px;border-radius:9px;background:rgba(255,255,255,.05)}.notice{padding:12px 14px;border-radius:10px;margin:10px 0}.notice.good{background:#123d29;border:1px solid #287a50}.notice.bad{background:#501b22;border:1px solid #9d3642}.safe-update-card{max-width:760px;margin:70px auto;padding:28px}.button-link{display:inline-flex;padding:10px 14px;border-radius:9px;background:#d75e20;color:#fff;text-decoration:none;font-weight:700}@media(max-width:760px){.standalone-topbar{align-items:flex-start;padding:12px;flex-direction:column}.standalone-topbar nav{width:100%}}
\n/* v21 legendary glow, compact pack, leaderboard, world map */\n.rarity-legendary{position:relative;animation:legendaryPulse 2.2s ease-in-out infinite;background:linear-gradient(145deg,#2a2312,#12100a)}\n.rarity-legendary:after{content:"";position:absolute;inset:-5px;border-radius:inherit;pointer-events:none;background:conic-gradient(from 0deg,transparent,#ffd96a55,transparent,#fff0a355,transparent);filter:blur(7px);z-index:-1;animation:legendarySpin 4s linear infinite}\n.rarity-legendary .art:after{content:"✦";position:absolute;right:8px;top:6px;color:#fff1a0;text-shadow:0 0 14px #ffd000;font-size:20px;animation:legendarySpark 1.4s ease-in-out infinite}\n.card .art,.monsterdex-art,.market-art-wrap{position:relative}\n@keyframes legendaryPulse{50%{box-shadow:0 0 18px #ffd54a99,0 0 44px #ff9d0060}}\n@keyframes legendarySpin{to{transform:rotate(360deg)}}@keyframes legendarySpark{50%{opacity:.35;transform:scale(.7) rotate(35deg)}}\n.compact-pack-stage{width:min(900px,94vw)!important;max-height:88vh!important;min-height:0!important;padding:24px!important;overflow:auto!important}\n.compact-pack-stage .pack-opening-wrapper{width:150px;height:215px;margin:8px auto 14px}.compact-pack-stage .pack-opening-rune{font-size:38px}.compact-pack-stage .pack-opening-pack{font-size:17px}\n.compact-pack-stage .pack-reveal-grid{grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:10px}.compact-pack-stage .pack-reveal-card .art{height:145px}\n.shop-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:stretch}.shield-shop-card{max-width:340px;margin:auto;display:grid;gap:12px;place-items:center;padding:22px;border-radius:18px;background:linear-gradient(145deg,#0f2235,#132b24);border:1px solid #4d9baf}.shield-orb{font-size:86px;filter:drop-shadow(0 0 20px #59d9ff)}\n.leaderboard-table{display:grid;gap:4px}.leaderboard-row{display:grid;grid-template-columns:55px minmax(170px,1fr) 130px 130px 110px;gap:10px;align-items:center;padding:12px;border-radius:10px;background:#0c1210}.leaderboard-head{font-size:12px;text-transform:uppercase;color:#9fab9f;background:#181f1a}.leaderboard-row.is-me{border:1px solid #e0a33e;background:#2a2012}\n.worldmap-panel{overflow:hidden}.worldmap-head{display:flex;justify-content:space-between;gap:18px}.shield-status{padding:12px 16px;border-radius:12px;background:#10283a;border:1px solid #478db8}.worldmap-grid{position:relative;min-height:720px;margin-top:18px;border-radius:24px;overflow:auto;background:radial-gradient(circle at 25% 30%,#426837 0 12%,transparent 13%),radial-gradient(circle at 70% 65%,#274e68 0 14%,transparent 15%),linear-gradient(145deg,#173821,#0e2018 58%,#0b1820);border:6px solid #4a3829}.worldmap-grid:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(35deg,transparent 0 80px,#ffffff07 81px 83px)}\n.world-node{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:150px;text-align:center;padding:8px;border-radius:12px;background:#080d0bd9;border:1px solid #617167;box-shadow:0 8px 24px #000}.world-castle{font-size:38px}.world-node b,.world-node small{display:block}.world-node small{font-size:10px}.world-actions{display:flex;gap:5px;margin-top:6px}.world-actions a,.world-actions button{flex:1;padding:5px;font-size:10px}.world-result{margin-top:14px}.world-battle-result{padding:14px;border-radius:12px}.world-battle-result.win{background:#153c25;border:1px solid #3e9b61}.world-battle-result.loss{background:#3b2020;border:1px solid #9a4d4d}\n@media(max-width:800px){.shop-choice-grid{grid-template-columns:1fr}.leaderboard-row{grid-template-columns:36px 1fr 80px}.leaderboard-row span:nth-child(3),.leaderboard-row span:nth-child(5){display:none}.worldmap-head{flex-direction:column}.worldmap-grid{min-width:760px}.compact-pack-stage{max-height:84vh!important}}\n
/* v22.1 optimalisatie: compacte shop, interactieve wereldkaart en spelersmenu */
.compact-shop{max-width:1000px;margin:auto}.shop-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;text-align:left}.shop-heading h2{margin:0}.shop-wallet{padding:10px 14px;border-radius:999px;background:#0d120f;border:1px solid #5c4930;color:#ffd17d;font-weight:800}.shop-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:880px;margin:18px auto 0}.shop-product{display:grid;grid-template-columns:82px 1fr auto;align-items:center;gap:14px;min-height:150px;padding:16px;border-radius:16px;background:linear-gradient(145deg,#171d19,#0b0e0c);border:1px solid #3d4a40;text-align:left}.shop-product-icon{font-size:58px;display:grid;place-items:center;min-height:82px;border-radius:14px;background:radial-gradient(circle,#3b4b40,#121612)}.shop-product-copy h3{margin:0 0 5px}.shop-product-copy p{margin:0 0 8px;color:#adb7af;font-size:13px}.shop-product-copy strong,.shop-product-copy small{display:block}.shop-product button{white-space:nowrap}.shield-shop-card{max-width:none;margin:0;place-items:initial;padding:16px}.shield-orb{font-size:58px}

.worldmap-toolbar{display:flex;gap:8px;align-items:center;margin-top:14px}.worldmap-toolbar input{min-width:260px;flex:1}.worldmap-toolbar button{padding:9px 12px}.worldmap-viewport{position:relative;height:650px;margin-top:12px;overflow:hidden;border:6px solid #4a3829;border-radius:24px;background:#0a1710;cursor:grab;touch-action:none}.worldmap-viewport.dragging{cursor:grabbing}.worldmap-canvas{position:absolute;left:0;top:0;width:1600px;height:1000px;transform-origin:0 0;background:radial-gradient(circle at 18% 22%,#446e39 0 11%,transparent 12%),radial-gradient(circle at 68% 67%,#28506b 0 13%,transparent 14%),radial-gradient(circle at 82% 28%,#72562d 0 8%,transparent 9%),linear-gradient(145deg,#173821,#0e2018 58%,#0b1820);background-size:auto;will-change:transform}.worldmap-canvas:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(35deg,transparent 0 80px,#ffffff07 81px 83px),radial-gradient(circle at 45% 45%,transparent 0 220px,#0002 500px)}.world-node{position:absolute;transform:translate(-50%,-50%);width:150px;padding:9px;border-radius:13px;background:#080d0be6;border:1px solid #617167;color:#fff;text-align:center;box-shadow:0 8px 24px #000;z-index:2;transition:.18s}.world-node:hover{transform:translate(-50%,-50%) scale(1.08);filter:none;border-color:#e4a950}.world-node b,.world-node small{display:block}.world-node small{font-size:10px}.world-node-hidden{display:none!important}.world-castle{font-size:38px}.worldmap-help{margin:8px 0 0;color:#9fa99f;font-size:12px}.world-player-modal{position:fixed;inset:0;z-index:7000;display:grid;place-items:center;padding:20px;background:#000c}.world-player-card{position:relative;width:min(420px,94vw);padding:26px;border-radius:20px;background:linear-gradient(145deg,#17201a,#090c0a);border:1px solid #637166;box-shadow:0 25px 90px #000;text-align:center}.world-player-avatar{font-size:72px;filter:drop-shadow(0 0 18px #d79645)}.world-player-card h2{margin:4px 0}.world-player-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.world-player-actions>*{display:flex;justify-content:center;align-items:center;min-height:42px}.world-player-actions .danger-soft{grid-column:1/-1}

/* Zorg dat aangepaste kaartafbeeldingen scherp en volledig zichtbaar zijn */
.card .art img,.training-card img,.evolution-art img,.lineup-card-preview img,.market-sell-preview img{width:100%;height:100%;object-fit:cover;display:block}.card .art{overflow:hidden}

@media(max-width:850px){.shop-choice-grid{grid-template-columns:1fr}.shop-product{grid-template-columns:70px 1fr}.shop-product button{grid-column:1/-1;width:100%}.worldmap-toolbar{flex-wrap:wrap}.worldmap-toolbar input{min-width:100%;flex-basis:100%}.worldmap-viewport{height:560px}.world-player-actions{grid-template-columns:1fr}}

/* v23 stable infinite world map */
.worldmap-viewport{background-color:#0c1d13;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px),radial-gradient(circle at center,#254f31,#0a1710 70%);background-size:80px 80px,80px 80px,100% 100%;}
.worldmap-canvas{width:200000px!important;height:200000px!important;left:-100000px!important;top:-100000px!important;background:repeating-radial-gradient(circle at 50% 50%,#1a3a24 0 180px,#15321f 181px 360px,#10291b 361px 540px)!important;}
.worldmap-canvas:before{background:linear-gradient(#ffffff06 1px,transparent 1px),linear-gradient(90deg,#ffffff06 1px,transparent 1px)!important;background-size:160px 160px!important;}
.world-node-self{border:2px solid #ffd45d!important;box-shadow:0 0 22px #ffca4277,0 8px 24px #000!important;}
.world-node.world-search-hit{animation:worldSearchPulse 1s ease-in-out 3;border-color:#70e6ff!important;z-index:10}
@keyframes worldSearchPulse{50%{transform:translate(-50%,-50%) scale(1.2);box-shadow:0 0 35px #48dfff}}

/* v24 usability, profiles, monthly missions and scalable card grids */
.collection-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.card-size-control{display:flex;align-items:center;gap:8px}.card-size-control label{font-weight:700;color:#d7ded8}.card-size-control select{min-width:135px}.cards.size-compact{grid-template-columns:repeat(auto-fill,minmax(125px,1fr));gap:9px}.cards.size-normal{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.cards.size-large{grid-template-columns:repeat(auto-fill,minmax(255px,1fr))}.cards.size-xl{grid-template-columns:repeat(auto-fill,minmax(335px,1fr))}.monsterdex-grid.size-compact{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.monsterdex-grid.size-normal{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.monsterdex-grid.size-large{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.monsterdex-grid.size-xl{grid-template-columns:repeat(auto-fill,minmax(390px,1fr))}.sidebar-language-form{margin:8px 0;padding:8px;border-top:1px solid #2d3931;border-bottom:1px solid #2d3931}.sidebar-language-form label{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px}.sidebar-language-form select{grid-column:1/-1;width:100%;padding:8px}.messages-game-body .messages-content{max-width:none}.messages-content .messages-layout{min-height:calc(100vh - 110px)}.conversation{display:flex!important;gap:10px;align-items:center}.conversation-avatar{width:42px;height:42px;border-radius:50%;object-fit:cover;background:#202a23;display:grid;place-items:center;flex:0 0 42px}.conversation-avatar.fallback{font-size:22px}.profile-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.profile-form select{width:100%}@media(max-width:760px){.cards.size-xl,.cards.size-large{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.monsterdex-grid.size-xl,.monsterdex-grid.size-large{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.messages-layout{grid-template-columns:1fr!important}.conversation-list{max-height:260px;overflow:auto}}

/* v25: realistische monster-login met lava-afbeelding en lichte animatie */
.monster-login-v25{
  min-height:100vh;
  overflow:hidden;
  position:relative;
  display:block;
  background:#080405;
}
.monster-login-background{
  position:fixed;
  inset:0;
  z-index:0;
  background-image:
    linear-gradient(90deg,rgba(3,2,3,.35),rgba(3,2,3,.06) 35%,rgba(3,2,3,.28) 72%,rgba(3,2,3,.58)),
    url('../images/login-monster-lava.webp');
  background-size:cover;
  background-position:center;
  transform:scale(1.015);
  animation:monsterLoginDrift 18s ease-in-out infinite alternate;
}
.monster-login-background:after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 18% 78%,rgba(255,72,0,.28),transparent 24%),
    radial-gradient(circle at 50% 95%,rgba(255,87,0,.22),transparent 30%),
    linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.12) 58%,rgba(0,0,0,.48));
  mix-blend-mode:screen;
  animation:monsterLavaGlow 3.2s ease-in-out infinite alternate;
}
.monster-login-smoke{
  position:fixed;
  inset:-10%;
  z-index:1;
  pointer-events:none;
  opacity:.32;
  background:
    radial-gradient(elvipse at 18% 88%,rgba(120,43,22,.6),transparent 28%),
    radial-gradient(elvipse at 73% 80%,rgba(80,34,44,.45),transparent 34%),
    radial-gradient(elvipse at 50% 15%,rgba(85,80,105,.34),transparent 32%);
  filter:blur(24px);
  animation:monsterSmokeMove 12s ease-in-out infinite alternate;
}
.monster-login-embers{position:fixed;inset:0;z-index:2;pointer-events:none;overflow:hidden}
.monster-login-embers i{
  position:absolute;
  left:calc((var(--i) * 37) % 100 * 1%);
  bottom:-30px;
  width:calc(2px + (var(--i) % 4) * 1px);
  height:calc(2px + (var(--i) % 4) * 1px);
  border-radius:50%;
  background:#ffbd62;
  box-shadow:0 0 10px #ff4f00,0 0 22px #ff2700;
  opacity:.85;
  animation:monsterEmberRise calc(5s + (var(--i) % 7) * .7s) linear infinite;
  animation-delay:calc(var(--i) * -.31s);
}
.monster-login-layout{
  position:relative;
  z-index:3;
  width:min(1180px,94vw);
  min-height:100vh;
  margin:auto;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(360px,430px);
  align-items:center;
  gap:clamp(28px,6vw,90px);
  padding:42px 0;
}
.monster-login-brand{
  align-self:end;
  padding:0 0 8vh 2vw;
  max-width:680px;
  text-shadow:0 5px 25px #000;
}
.monster-login-kicker{
  display:block;
  margin-bottom:10px;
  color:#ffbd75;
  font-size:12px;
  font-weight:800;
  letter-spacing:4px;
}
.monster-login-brand h1{
  margin:0;
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(46px,7vw,92px);
  line-height:.9;
  letter-spacing:3px;
  color:#f1eee7;
  filter:drop-shadow(0 3px 0 #1b0b08) drop-shadow(0 0 25px #ff4f003c);
}
.monster-login-brand h1 strong{display:block;color:#d34227;font-weight:700;letter-spacing:8px}
.monster-login-brand p{max-width:580px;margin:20px 0 0;color:#e1d8d2;font-size:18px;line-height:1.6}
.monster-login-card{
  width:100%;
  margin:0;
  padding:38px 34px 30px;
  border-radius:20px;
  border:1px solid rgba(223,146,83,.52);
  background:linear-gradient(160deg,rgba(16,10,11,.94),rgba(6,5,7,.97));
  box-shadow:0 30px 100px #000,0 0 45px rgba(255,74,0,.18),inset 0 1px rgba(255,255,255,.05);
  backdrop-filter:blur(14px);
}
.monster-login-card:before{content:none}
.monster-login-seal{
  width:64px;height:64px;margin:-72px auto 14px;
  display:grid;place-items:center;border-radius:50%;
  color:#ffe0a7;font-size:27px;
  background:radial-gradient(circle at 35% 30%,#ffb45e,#9a240f 52%,#190505 76%);
  border:2px solid #db8148;
  box-shadow:0 0 0 5px rgba(22,8,7,.82),0 0 32px rgba(255,78,0,.48);
}
.monster-login-card h2{margin:0;text-align:center;font-family:Georgia,serif;font-size:32px;color:#f4dfc7}
.monster-login-card>p{text-align:center;margin:5px 0 12px}
.monster-login-field{display:grid;gap:7px}
.monster-login-field span{font-size:12px;font-weight:800;letter-spacing:.8px;color:#cbbab0}
.monster-login-field input{
  width:100%;
  min-height:48px;
  background:rgba(3,3,4,.75);
  border:1px solid #4b3732;
  color:#fff;
  transition:.2s;
}
.monster-login-field input:focus{outline:none;border-color:#e57436;box-shadow:0 0 0 3px rgba(229,116,54,.14),0 0 20px rgba(255,68,0,.12)}
.monster-login-submit{
  width:100%;
  min-height:50px;
  margin-top:4px;
  border-color:#f18a4f;
  background:linear-gradient(180deg,#b63822,#6e130d);
  box-shadow:0 8px 24px rgba(152,27,13,.45),inset 0 1px rgba(255,255,255,.13);
  font-weight:900;
  letter-spacing:1px;
  text-transform:uppercase;
}
.monster-login-links{display:flex;justify-content:space-between;gap:14px;font-size:13px}
.monster-login-links a{color:#d8c2b7;text-decoration:none}.monster-login-links a:hover{color:#ffae73}
@keyframes monsterLoginDrift{to{transform:scale(1.04) translate3d(-8px,-4px,0)}}
@keyframes monsterLavaGlow{to{opacity:.62;filter:brightness(1.25)}}
@keyframes monsterSmokeMove{to{transform:translate3d(35px,-12px,0) scale(1.06)}}
@keyframes monsterEmberRise{0%{transform:translateY(0) translateX(0) scale(.7);opacity:0}10%{opacity:.85}100%{transform:translateY(-115vh) translateX(35px) scale(1.45);opacity:0}}
@media(max-width:850px){
  .monster-login-layout{grid-template-columns:1fr;align-content:center;gap:28px;padding:90px 0 35px}
  .monster-login-brand{align-self:auto;text-align:center;padding:0;max-width:none}
  .monster-login-brand h1{font-size:clamp(42px,13vw,70px)}
  .monster-login-brand p{margin:15px auto 0;font-size:15px}
  .monster-login-card{width:min(430px,94vw);margin:auto}
  .monster-login-background{background-position:42% center}
}
@media(max-width:480px){
  .monster-login-layout{padding-top:72px}.monster-login-card{padding:34px 20px 24px}.monster-login-links{flex-direction:column;text-align:center}.monster-login-kicker{letter-spacing:2px}.monster-login-brand h1 strong{letter-spacing:4px}
}
@media(prefers-reduced-motion:reduce){.monster-login-background,.monster-login-background:after,.monster-login-smoke,.monster-login-embers i{animation:none!important}}

/* v26 header language selector + stable staff/profile/message links */
.header-language-form{display:flex;align-items:center;margin-left:14px}.header-language-form select{background:#121722;color:#fff;border:1px solid rgba(255,255,255,.14);border-radius:9px;padding:7px 28px 7px 10px;min-width:118px}.brand-row{display:flex;align-items:center;min-width:0}.game-topbar .brand{display:flex;align-items:baseline;gap:7px}.game-topbar .brand span{white-space:nowrap}.top-admin-link{display:inline-flex;align-items:center;gap:5px;padding:8px 10px;border-radius:10px;background:rgba(133,76,255,.18);border:1px solid rgba(176,125,255,.35);color:#fff;text-decoration:none}.top-admin-link:hover{background:rgba(133,76,255,.32)}
.profile-page.game-body{min-height:100vh}.profile-page-shell{padding:92px 24px 40px;margin-left:260px}.profile-page-shell .public-profile{max-width:980px;margin:0 auto}.profile-page .game-sidebar{display:block}.profile-header-actions{display:flex;align-items:center;gap:10px}.profile-header-actions a{color:#fff;text-decoration:none}
@media(max-width:900px){.header-language-form select{min-width:92px;max-width:110px}.game-topbar .brand span{display:none}.profile-page-shell{margin-left:0;padding:82px 12px 28px}}

/* v29: gebruiker-afbeelding als rustige loginachtergrond */
.monster-login-v25 .monster-login-background{
  background-image:
    linear-gradient(90deg,rgba(3,4,7,.72),rgba(3,4,7,.42) 34%,rgba(3,4,7,.48) 66%,rgba(3,4,7,.76)),
    linear-gradient(180deg,rgba(0,0,0,.20),rgba(0,0,0,.38)),
    url('../images/login-monsters-user.webp');
  background-size:cover;
  background-position:center center;
  filter:saturate(.92) contrast(1.03);
  animation:monsterLoginDrift 18s ease-in-out infinite alternate;
}
.monster-login-v25 .monster-login-background:after{
  background:
    radial-gradient(circle at 50% 50%,transparent 0 22%,rgba(0,0,0,.18) 52%,rgba(0,0,0,.64) 100%),
    linear-gradient(180deg,rgba(5,7,12,.08),rgba(5,7,12,.30));
  mix-blend-mode:normal;
  opacity:1;
  animation:none;
}
.monster-login-v25 .monster-login-smoke{opacity:.16;filter:blur(34px)}
.monster-login-v25 .monster-login-embers{opacity:.34}
.monster-login-centered{
  width:min(720px,94vw);
  grid-template-columns:1fr;
  justify-items:center;
  align-content:center;
  gap:22px;
  padding:54px 0;
}
.monster-login-centered .monster-login-brand{
  align-self:auto;
  padding:0;
  max-width:660px;
  text-align:center;
}
.monster-login-centered .monster-login-kicker{font-size:13px;letter-spacing:4px}
.monster-login-centered .monster-login-brand h1{font-size:clamp(46px,7vw,78px);line-height:.9}
.monster-login-centered .monster-login-brand p{
  max-width:600px;
  margin:14px auto 0;
  color:#efe7e2;
  font-size:16px;
  text-shadow:0 2px 12px #000;
}
.monster-login-centered .monster-login-card{
  width:min(560px,94vw);
  padding:48px 46px 36px;
  border-radius:22px;
  background:linear-gradient(160deg,rgba(13,12,16,.90),rgba(5,5,8,.96));
  box-shadow:0 30px 110px rgba(0,0,0,.92),0 0 0 1px rgba(255,255,255,.04),0 0 44px rgba(255,70,20,.14);
}
.monster-login-centered .monster-login-card h2{font-size:36px}
.monster-login-centered .monster-login-field input{min-height:54px;font-size:16px}
.monster-login-centered .monster-login-submit{min-height:56px;font-size:16px}
@media(max-width:650px){
  .monster-login-centered{padding:34px 0;gap:18px}
  .monster-login-centered .monster-login-brand p{display:none}
  .monster-login-centered .monster-login-card{padding:40px 24px 28px}
  .monster-login-v25 .monster-login-background{background-position:48% center}
}

/* v30.1 MonsterDex artwork framing fix
   Keep the complete portrait visible instead of cropping faces. */
.monsterdex-art{
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at 50% 35%,rgba(255,255,255,.05),transparent 48%),
    linear-gradient(180deg,#0b0e12,#040506);
}
.monsterdex-art img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center top;
  display:block;
}

/* v31: vergrootbare cards en 100-competities */
.card-preview-trigger{cursor:zoom-in;transition:transform .18s ease,box-shadow .18s ease}.card-preview-trigger:hover,.card-preview-trigger:focus-visible{transform:translateY(-4px);box-shadow:0 18px 42px rgba(0,0,0,.48);outline:2px solid rgba(244,190,76,.7);outline-offset:2px}
.card-preview-overlay{position:fixed;inset:0;z-index:1600;background:rgba(3,5,8,.9);backdrop-filter:blur(8px);display:grid;place-items:center;padding:24px;overflow:auto}.card-preview-overlay.hidden{display:none}.card-preview-dialog{position:relative;width:min(92vw,720px);min-height:min(86vh,760px);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:54px 30px 78px;border:1px solid rgba(231,177,65,.42);border-radius:22px;background:radial-gradient(circle at 50% 15%,rgba(105,69,22,.28),transparent 42%),#101511;box-shadow:0 30px 90px #000}.card-preview-close{position:absolute;right:16px;top:12px;z-index:3}.card-preview-dialog #cardPreviewContent{width:min(440px,78vw);transform-origin:center center;transition:transform .15s ease}.card-preview-dialog #cardPreviewContent>.card,.card-preview-dialog #cardPreviewContent>.monsterdex-card{width:100%;max-width:none;margin:0;display:block}.card-preview-dialog .art,.card-preview-dialog .monsterdex-art{min-height:420px}.card-preview-dialog .art img,.card-preview-dialog .monsterdex-art img{height:420px;object-fit:contain}.card-preview-actions{position:absolute;bottom:18px;display:flex;align-items:center;gap:10px}.card-preview-actions button{min-width:44px}.card-preview-actions span{min-width:56px;text-align:center;font-weight:800}.league-banner{display:flex;justify-content:space-between;align-items:center;gap:18px}.league-banner>strong{font-size:1.1rem;border:1px solid #6d5528;background:#211a0c;padding:12px 16px;border-radius:12px;color:#f5cf72}.league-table{display:grid;gap:4px;overflow:auto}.league-table-row{display:grid;grid-template-columns:38px minmax(150px,1fr) repeat(5,48px);gap:7px;align-items:center;padding:9px;border-radius:8px;background:rgba(255,255,255,.035);min-width:510px}.league-table-row.head{font-size:.76rem;text-transform:uppercase;color:#aeb7b0;background:#1c251f}.league-table-row.is-me{outline:1px solid #d7a840;background:rgba(215,168,64,.12)}
@media(max-width:700px){.card-preview-dialog{padding:48px 15px 72px}.card-preview-dialog .art,.card-preview-dialog .monsterdex-art,.card-preview-dialog .art img,.card-preview-dialog .monsterdex-art img{min-height:310px;height:310px}.league-banner{align-items:flex-start;flex-direction:column}}
/* v32 - optionele spelers-2FA */
.two-factor-panel{max-width:1000px;margin:0 auto}.two-factor-setup-grid,.two-factor-actions{display:grid;grid-template-columns:minmax(260px,1fr) minmax(300px,1fr);gap:24px;align-items:start}.two-factor-qr{width:min(280px,100%);aspect-ratio:1;background:#fff;padding:12px;border-radius:16px;display:grid;place-items:center}.two-factor-qr svg{width:100%;height:100%}.two-factor-secret{display:block;word-break:break-all;padding:12px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:rgba(0,0,0,.35);font-size:1.05rem;letter-spacing:.08em}.totp-input{text-align:center;letter-spacing:.28em;font-size:1.35rem;font-weight:800}.recovery-code-box{padding:20px;margin:20px 0;border:1px solid rgba(255,190,70,.5);background:rgba(90,55,0,.28);border-radius:14px}.recovery-code-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}.recovery-code-grid code{padding:10px;background:rgba(0,0,0,.42);border-radius:8px;text-align:center;font-size:1.05rem;letter-spacing:.08em}.profile-security-card{margin-top:22px;padding:18px;border:1px solid rgba(110,180,255,.28);background:rgba(24,58,96,.28);border-radius:14px}.danger-zone{border-color:rgba(255,90,90,.35)!important}.two-factor-login-card{max-width:560px}@media(max-width:780px){.two-factor-setup-grid,.two-factor-actions{grid-template-columns:1fr}.recovery-code-grid{grid-template-columns:1fr}}


/* v32.2 — optional 2FA for every role + unified Ebonspire lava theme */
.game-body{
  background:#07080a;
  color:#f2eee9;
}
.game-body::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:-3;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(4,5,7,.96) 0,rgba(4,5,7,.74) 255px,rgba(4,5,7,.66) 55%,rgba(4,5,7,.82) 100%),
    linear-gradient(180deg,rgba(0,0,0,.28),rgba(0,0,0,.82)),
    url('../images/login-monsters-user.webp') center 24%/cover fixed no-repeat;
  filter:saturate(.82) contrast(1.06);
}
.game-body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background:
    radial-gradient(circle at 68% 83%,rgba(255,84,17,.16),transparent 30%),
    radial-gradient(circle at 28% 70%,rgba(255,137,38,.09),transparent 24%),
    linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.35));
}
.game-topbar{
  background:linear-gradient(90deg,rgba(7,8,11,.98),rgba(19,10,8,.96),rgba(7,8,11,.98));
  border-bottom:1px solid rgba(255,126,47,.25);
  box-shadow:0 8px 30px rgba(0,0,0,.42),inset 0 -1px rgba(255,183,104,.05);
}
.game-topbar .brand b{
  color:#ffc078;
  text-shadow:0 0 18px rgba(255,95,20,.34);
}
.game-sidebar{
  background:
    linear-gradient(180deg,rgba(10,11,14,.985),rgba(20,10,8,.98)),
    url('../images/login-monsters-user.webp') 29% center/auto 100% no-repeat;
  border-right:1px solid rgba(255,133,57,.23);
  box-shadow:12px 0 38px rgba(0,0,0,.44);
}
.game-sidebar::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(5,6,8,.22),rgba(5,6,8,.70)),radial-gradient(circle at 50% 88%,rgba(226,66,18,.12),transparent 38%);
}
.game-sidebar-scroll{position:relative;z-index:1}
.game-sidebar button,.game-sidebar a{
  color:#e9e3dc;
  border:1px solid transparent;
  transition:background .16s,border-color .16s,transform .16s,color .16s;
}
.game-sidebar button:hover,.game-sidebar a:hover,.game-sidebar button.active,.game-sidebar a.active{
  background:linear-gradient(90deg,rgba(178,57,21,.30),rgba(255,139,54,.08));
  border-color:rgba(255,145,68,.24);
  color:#fff7ef;
  transform:translateX(2px);
}
.game-menu-group>b{color:#c49a79;border-bottom:1px solid rgba(255,145,68,.10);padding-bottom:7px}
.staff-menu-link{
  border-color:rgba(255,190,80,.32)!important;
  background:linear-gradient(90deg,rgba(180,102,21,.20),rgba(255,182,73,.06))!important;
}
.game-content,.profile-page-shell,.messages-content{
  background:linear-gradient(180deg,rgba(8,10,12,.25),rgba(8,10,12,.60));
}
.panel{
  background:linear-gradient(155deg,rgba(24,25,27,.93),rgba(16,12,11,.94));
  border-color:rgba(255,143,70,.18);
  box-shadow:0 16px 46px rgba(0,0,0,.34);
  backdrop-filter:blur(7px);
}
.top-chip,.top-icon-link,.top-profile-link,.header-language-form select{
  background:rgba(17,14,14,.72);
  border-color:rgba(255,149,80,.17);
}
@media(max-width:900px){
  .game-body::after{background-position:58% 20%;background-attachment:scroll}
  .game-sidebar{background-position:28% center}
}
@media(prefers-reduced-motion:reduce){.game-sidebar button,.game-sidebar a{transition:none}}

/* v32.3 — rustige gameachtergrond: geen bewegende strepen of schermvullende weereffecten */
.weather-fx,
.weather-fx::before,
.weather-fx::after{
  display:none!important;
  animation:none!important;
  background-image:none!important;
}
.game-body::before,
.game-body::after{
  animation:none!important;
}
/* v34 Kingdom & Weather */
.weather-widget{position:relative}.weather-popover{position:absolute;right:0;top:calc(100% + 12px);width:min(760px,92vw);padding:16px;border:1px solid rgba(255,183,71,.35);border-radius:16px;background:linear-gradient(145deg,rgba(12,16,26,.98),rgba(35,18,13,.98));box-shadow:0 24px 70px rgba(0,0,0,.55);opacity:0;visibility:hidden;transform:translateY(-8px);transition:.18s;z-index:999}.weather-widget:hover .weather-popover,.weather-widget:focus-within .weather-popover{opacity:1;visibility:visible;transform:none}.weather-current{display:flex;gap:14px;align-items:center}.weather-big-icon{font-size:42px}.weather-current div{display:grid}.weather-current strong{font-size:28px;color:#ffbd53}.wind-visual{margin:14px 0;display:flex;align-items:center;gap:12px;padding:10px;border-radius:12px;background:rgba(255,255,255,.05)}.wind-arrow{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:rgba(71,186,255,.16);color:#79d6ff;font-size:25px}.wind-visual div{display:grid}.forecast-strip{display:grid;grid-template-columns:repeat(9,minmax(55px,1fr));gap:7px;overflow-x:auto;padding-bottom:4px}.forecast-strip div{display:grid;place-items:center;gap:4px;padding:8px 4px;border-radius:10px;background:rgba(255,255,255,.045)}.forecast-strip span{font-size:21px}.weather-unit-form{display:flex;gap:10px;align-items:center;margin-top:12px}.weather-unit-form button{margin-left:auto;padding:7px 13px}.kingdom-page{min-height:100vh;background:linear-gradient(rgba(7,10,16,.55),rgba(7,10,16,.8)),url('../images/login-monsters-user.webp') center/cover fixed}.kingdom-back{color:#ffd36b;text-decoration:none;font-weight:800}.kingdom-shell{max-width:1500px;margin:0 auto;padding:92px 24px 40px}.kingdom-intro{display:flex;justify-content:space-between;gap:24px;align-items:center}.kingdom-stats{display:grid;gap:8px;text-align:right}.kingdom-map{position:relative;min-height:850px;margin-top:20px;overflow:hidden;border:1px solid rgba(255,190,75,.32);border-radius:26px;background:radial-gradient(circle at 30% 30%,rgba(55,105,56,.78),transparent 35%),radial-gradient(circle at 75% 74%,rgba(190,126,47,.68),transparent 36%),linear-gradient(145deg,#43623d,#71845d 45%,#9a7443 75%,#55422f);box-shadow:inset 0 0 110px rgba(0,0,0,.5),0 28px 80px rgba(0,0,0,.42)}.kingdom-map:after{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(105deg,rgba(255,255,255,.015) 0 2px,transparent 2px 9px)}.terrain{position:absolute;pointer-events:none;filter:drop-shadow(0 18px 16px rgba(0,0,0,.35));z-index:1}.mountain{width:220px;height:160px;background:linear-gradient(145deg,#78808a,#2e3540 58%,#161d25);cvip-path:polygon(50% 0,100% 100%,0 100%)}.mountain:after{content:'';position:absolute;inset:25px 52px 60px;background:#d7d9de;cvip-path:polygon(50% 0,100% 100%,0 100%);opacity:.65}.mountain-a{left:4%;top:4%;transform:rotate(-5deg)}.mountain-b{right:3%;top:7%;transform:scale(.72) rotate(8deg)}.forest{font-size:52px;letter-spacing:-18px}.forest-a{left:5%;bottom:13%}.forest-b{right:8%;bottom:7%}.sand{right:-7%;bottom:-8%;width:46%;height:43%;border-radius:50%;background:radial-gradient(circle,#dab36a,#9f733e 70%)}.river{left:45%;top:-12%;width:90px;height:125%;background:linear-gradient(90deg,#2b7391,#6bc2d5,#23617e);transform:rotate(8deg);border-radius:55%;opacity:.8}.build-slot{position:absolute;z-index:3;width:170px;min-height:120px}.slot-1{left:18%;top:16%}.slot-2{left:39%;top:11%}.slot-3{left:62%;top:17%}.slot-4{left:76%;top:34%}.slot-5{left:59%;top:40%}.slot-6{left:36%;top:35%}.slot-7{left:14%;top:39%}.slot-8{left:22%;top:63%}.slot-9{left:44%;top:61%}.slot-10{left:67%;top:64%}.slot-11{left:79%;top:78%}.slot-12{left:5%;top:78%}.empty-build-slot,.kingdom-building{width:100%;min-height:110px;border:1px dashed rgba(255,221,137,.5);border-radius:18px;background:rgba(15,20,27,.72);backdrop-filter:blur(5px);color:#f5f1e8;text-align:center;padding:12px;box-shadow:0 12px 28px rgba(0,0,0,.35)}.empty-build-slot span{display:block;font-size:31px;color:#ffc557}.kingdom-building{border-style:solid;border-color:rgba(255,178,52,.56)}.building-icon{display:block;font-size:38px}.kingdom-building small,.kingdom-building b{display:block}.kingdom-building button{margin-top:8px;font-size:12px;padding:7px}.build-timer{margin-top:8px;color:#7dd7ff;font-size:13px}.build-dialog{width:min(950px,94vw);max-height:86vh;border:1px solid #815e2d;border-radius:20px;background:#111723;color:#eee;padding:22px}.build-dialog::backdrop{background:rgba(0,0,0,.72)}.dialog-close{float:right;font-size:25px}.building-catalog{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:10px}.building-option{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:10px;padding:12px;border-radius:13px;background:rgba(255,255,255,.045)}.building-option>span{font-size:34px}.building-option div{display:grid}.building-option small,.building-option em{font-size:12px;color:#bac2d0}.building-option em{color:#ffcd72;font-style:normal;margin-top:4px}@media(max-width:800px){.kingdom-intro{display:block}.kingdom-map{min-height:1050px}.build-slot{width:135px}.forecast-strip{grid-template-columns:repeat(9,65px)}.slot-1{left:5%}.slot-2{left:48%}.slot-3{left:5%;top:27%}.slot-4{left:50%;top:27%}.slot-5{left:5%;top:44%}.slot-6{left:50%;top:44%}.slot-7{left:5%;top:61%}.slot-8{left:50%;top:61%}.slot-9{left:5%;top:78%}.slot-10{left:50%;top:78%}.slot-11,.slot-12{display:none}}

/* v35 Kingdom progression */
.collection-capacity{padding:.7rem 1rem;border:1px solid rgba(217,160,76,.35);background:rgba(34,21,15,.7);border-radius:10px}.collection-capacity a{color:#ffc978}
.castle-progress{margin-bottom:1rem}.castle-progress-grid{display:grid;grid-template-columns:repeat(5,minmax(100px,1fr));gap:.55rem}.castle-level-step{padding:.7rem;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(10,9,9,.55);display:flex;flex-direction:column}.castle-level-step.current{border-color:#ffc45d;box-shadow:0 0 18px rgba(255,151,35,.24)}.castle-level-step.complete{background:rgba(45,75,43,.45)}
.locked-build-slot{height:100%;min-height:118px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;border:1px dashed rgba(255,255,255,.16);border-radius:12px;background:rgba(10,10,12,.65);opacity:.72}.locked-build-slot span{font-size:1.6rem}.building-option.building-locked{opacity:.58}.building-option.building-locked button{cursor:not-allowed}
@media(max-width:800px){.castle-progress-grid{grid-template-columns:repeat(2,minmax(120px,1fr))}}

/* v36: My realm uses the same persistent game navigation and top status bar. */
.kingdom-content{padding-left:0;padding-right:0}
.kingdom-content .kingdom-shell{max-width:1500px;margin:0 auto;padding:24px 24px 40px}
.top-message-link{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.06);color:#f2f5fb;text-decoration:none}
.message-badge{position:absolute;right:-5px;top:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#d13a45;color:#fff;font-size:11px;font-weight:900;display:grid;place-items:center}
@media(max-width:900px){.kingdom-content .kingdom-shell{padding:18px 12px 32px}.top-message-link{min-width:34px;height:34px}}

/* v39 legal pages, registration consent and footer links */
.legal-mini-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 14px;margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.10);font-size:12px}
.legal-mini-links a{color:#d8c3ae;text-decoration:none}.legal-mini-links a:hover{color:#ffc478}
.legal-register-card{width:min(610px,calc(100vw - 28px));max-height:94vh;overflow:auto}
.legal-checks{display:grid;gap:10px;margin:14px 0;text-align:left}.legal-checks label{display:flex;align-items:flex-start;gap:10px;padding:11px;border:1px solid rgba(255,170,92,.16);border-radius:11px;background:rgba(255,255,255,.035);line-height:1.35}.legal-checks input{margin-top:3px;accent-color:#d66d27}.legal-checks a{color:#ffc478}
.legal-page{margin:0;min-height:100vh;color:#eee;background:linear-gradient(rgba(7,7,10,.88),rgba(10,6,5,.94)),url('../images/login-monsters-user.webp') center/cover fixed;font-family:system-ui,-apple-system,Segoe UI,sans-serif}
.legal-top{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:15px clamp(16px,4vw,52px);background:rgba(10,8,8,.94);border-bottom:1px solid rgba(255,151,66,.22);backdrop-filter:blur(12px)}
.legal-brand{color:#ffc478;font-weight:900;font-size:20px;text-decoration:none}.legal-top nav{display:flex;flex-wrap:wrap;gap:13px}.legal-top nav a{color:#e4d9cf;text-decoration:none;font-size:14px}.legal-top nav a:hover{color:#fff}
.legal-document{width:min(980px,calc(100% - 28px));margin:30px auto 70px}.legal-heading,.legal-document section,.legal-footer{padding:clamp(18px,3vw,32px);border:1px solid rgba(255,153,72,.18);border-radius:18px;background:linear-gradient(145deg,rgba(28,23,22,.94),rgba(14,12,13,.94));box-shadow:0 18px 55px rgba(0,0,0,.30)}
.legal-heading{margin-bottom:18px}.legal-heading span{color:#d49a6e;font-size:13px;text-transform:uppercase;letter-spacing:.08em}.legal-heading h1{margin:.35em 0 .2em;font-size:clamp(30px,5vw,52px);color:#ffd0a0}.legal-heading p{color:#c9c2bc}
.legal-document section{margin:13px 0}.legal-document h2{margin-top:0;color:#ffc478}.legal-document p,.legal-document li{line-height:1.68;color:#e1ddd8}.legal-document li+li{margin-top:6px}.legal-document a{color:#ffc478}.legal-footer{margin-top:22px;font-size:13px;color:#bfb8b2}.legal-footer p{margin:.35em 0}
@media(max-width:720px){.legal-top{align-items:flex-start;flex-direction:column}.legal-document{margin-top:18px}}
.vip-chip{border-color:#c99a35!important;background:linear-gradient(135deg,#4a2f08,#1d1609)!important;color:#ffd970!important;text-decoration:none}.vip-offer-card{box-shadow:0 0 30px rgba(232,181,62,.28)}.lorebook-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}.lore-entry{display:grid;grid-template-columns:130px 1fr;gap:16px;padding:15px;border:1px solid #4e4332;border-radius:14px;background:rgba(13,18,15,.9)}.lore-cover{height:180px;border-radius:10px;overflow:hidden;background:#090d0a;display:grid;place-items:center;font-size:70px}.lore-cover img{width:100%;height:100%;object-fit:contain}.lore-entry.locked{filter:grayscale(.8);opacity:.72}.battle-pass-track{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.pass-level{padding:16px;border-radius:13px;border:1px solid #4a4234;background:#121812;display:grid;gap:8px}.pass-level.unlocked{border-color:#d8aa45;box-shadow:0 0 18px rgba(216,170,69,.18)}.pass-level.locked{opacity:.58}.broadcast-inbox{margin-bottom:16px}.broadcast-message{padding:12px;border:1px solid #4a4031;border-radius:10px;margin:8px 0;background:#111711}.broadcast-message summary{display:flex;justify-content:space-between;gap:15px;cursor:pointer}.broadcast-message small{color:#a8b0aa}.bot-badge{font-size:10px;padding:2px 5px;border-radius:10px;background:#28372d;color:#9bd0aa}.admin2-offer p{margin:.5rem 0 0}.vip-pass .notice a{color:#ffd970}

/* Ebonspire Legends v43 - realistic code-rendered kingdom terrain */
.vip-chip.is-inactive{opacity:.78;filter:saturate(.65);border-color:#66583a!important;background:linear-gradient(135deg,#24221d,#151511)!important;color:#c9bea4!important}
.kingdom-map{
  isolation:isolate;
  background:
    radial-gradient(elvipse at 18% 20%,rgba(255,255,255,.09) 0 1%,transparent 22%),
    radial-gradient(elvipse at 76% 16%,rgba(91,68,44,.72) 0 13%,transparent 35%),
    radial-gradient(elvipse at 72% 76%,rgba(201,150,76,.66) 0 16%,transparent 39%),
    radial-gradient(elvipse at 22% 72%,rgba(26,74,37,.86) 0 19%,transparent 42%),
    radial-gradient(circle at 48% 44%,rgba(91,130,72,.95),rgba(68,104,57,.98) 43%,rgba(49,78,46,.99) 73%),
    linear-gradient(145deg,#4c7048,#7e8f61 48%,#7d633f 100%);
  box-shadow:inset 0 0 0 2px rgba(233,196,126,.11),inset 0 0 150px rgba(2,8,5,.72),0 30px 90px rgba(0,0,0,.52)
}
.kingdom-map:before{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.42;
  background:
   radial-gradient(circle at 10px 14px,rgba(255,255,255,.06) 0 1px,transparent 1.8px),
   radial-gradient(circle at 34px 31px,rgba(18,43,24,.22) 0 1.4px,transparent 2px),
   radial-gradient(circle at 56px 9px,rgba(112,86,49,.18) 0 1px,transparent 1.7px);
  background-size:68px 55px,73px 61px,81px 69px;mix-blend-mode:soft-light
}
.kingdom-map:after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(elvipse at center,transparent 48%,rgba(5,12,8,.42) 100%)}
.terrain-highlands{z-index:1;width:320px;height:210px;border-radius:48% 52% 32% 68%/60% 43% 57% 40%;background:radial-gradient(elvipse at 52% 22%,#a5a69e 0 4%,#686d68 5% 18%,#454a45 19% 38%,#2c342e 39% 58%,#203025 59% 100%);box-shadow:inset -28px -28px 35px rgba(0,0,0,.38),inset 25px 20px 25px rgba(255,255,255,.1),0 25px 35px rgba(0,0,0,.42)}
.terrain-highlands:before,.terrain-highlands:after{content:"";position:absolute;background:inherit;border-radius:52% 48% 60% 40%;box-shadow:inherit}.terrain-highlands:before{width:62%;height:86%;left:-18%;bottom:-8%}.terrain-highlands:after{width:52%;height:72%;right:-14%;bottom:2%}.highlands-a{left:-4%;top:-5%;transform:rotate(-7deg)}.highlands-b{right:-7%;top:1%;transform:scale(.74) rotate(10deg);opacity:.93}
.forest{z-index:2;width:260px;height:180px;display:block;letter-spacing:0}.forest i{position:absolute;width:38px;height:78px;bottom:8px;background:linear-gradient(90deg,#17351f,#326441 55%,#183c28);cvip-path:polygon(50% 0,68% 27%,61% 27%,81% 58%,69% 58%,100% 100%,0 100%,31% 58%,19% 58%,39% 27%,32% 27%);filter:drop-shadow(0 13px 7px rgba(0,0,0,.35))}.forest i:after{content:"";position:absolute;left:17px;bottom:-9px;width:5px;height:18px;background:#4a3020}.forest i:nth-child(1){left:2%;transform:scale(1.2)}.forest i:nth-child(2){left:19%;bottom:28px;transform:scale(.85)}.forest i:nth-child(3){left:34%;transform:scale(1.08)}.forest i:nth-child(4){left:52%;bottom:21px;transform:scale(.92)}.forest i:nth-child(5){left:67%;transform:scale(1.25)}.forest i:nth-child(6){left:84%;bottom:18px;transform:scale(.76)}.forest-a{left:1%;bottom:9%}.forest-b{right:2%;bottom:3%;transform:scale(.9)}
.sand{z-index:0;right:-4%;bottom:-11%;width:49%;height:47%;border-radius:55% 45% 0 0;background:radial-gradient(circle at 33% 27%,rgba(246,217,151,.56),transparent 16%),radial-gradient(circle at 69% 63%,rgba(93,63,31,.22),transparent 20%),linear-gradient(145deg,#d0ad69,#a87c44 72%,#7f5935);box-shadow:inset 20px 28px 48px rgba(255,232,170,.13),inset -36px -26px 65px rgba(68,38,16,.35)}
.river{z-index:1;left:47%;top:-13%;width:92px;height:128%;background:linear-gradient(90deg,#163c4b 0,#2e7187 15%,#75b9c6 47%,#2c7084 75%,#153c4a 100%);transform:rotate(7deg);border-radius:46% 54% 51% 49%;opacity:.94;box-shadow:0 0 0 7px rgba(55,69,48,.45),inset 12px 0 18px rgba(255,255,255,.12),inset -14px 0 19px rgba(0,0,0,.28)}
.river:after{content:"";position:absolute;inset:0;background:radial-gradient(elvipse at 40% 20%,rgba(255,255,255,.2),transparent 8%),radial-gradient(elvipse at 60% 53%,rgba(255,255,255,.16),transparent 10%),radial-gradient(elvipse at 42% 79%,rgba(255,255,255,.14),transparent 7%);background-size:100% 190px}
.footpath{z-index:1;height:38px;border-radius:50%;background:linear-gradient(#b39260,#775a37);box-shadow:inset 0 5px 8px rgba(255,255,255,.1),inset 0 -7px 10px rgba(50,29,13,.28),0 3px 0 rgba(35,27,18,.25);opacity:.74}.path-a{left:13%;top:47%;width:66%;transform:rotate(7deg)}.path-b{left:34%;top:28%;width:43%;transform:rotate(75deg)}
.meadow{z-index:0;left:28%;top:24%;width:34%;height:34%;border-radius:50%;background:radial-gradient(circle at 34% 38%,rgba(208,206,104,.13) 0 2px,transparent 3px),radial-gradient(circle at 57% 68%,rgba(230,202,103,.11) 0 2px,transparent 3px);background-size:32px 31px,41px 39px;opacity:.8}
.empty-build-slot,.kingdom-building,.locked-build-slot{position:relative;z-index:5;background:linear-gradient(150deg,rgba(19,27,22,.89),rgba(12,17,15,.82));border-color:rgba(231,196,123,.5);box-shadow:0 14px 30px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.06)}
.kingdom-building:after,.empty-build-slot:after{content:"";position:absolute;left:14%;right:14%;bottom:-12px;height:15px;border-radius:50%;background:rgba(0,0,0,.32);filter:blur(5px);z-index:-1}
.admin2-danger-note{margin:0;color:#ffb2aa;font-size:12px;line-height:1.45}.admin2-player-actions form[data-admin2-action="player_delete"]{border-color:#8b2f2f;background:linear-gradient(145deg,rgba(72,17,17,.48),rgba(28,12,12,.66))}.admin2-player-actions form[data-admin2-action="player_delete"] button{background:#9b2929;border-color:#df5b5b}

/* Ebonspire Legends v44.3 - realistic player-area terrain map */
.kingdom-map{
  min-height:920px;
  aspect-ratio:3/2;
  background-image:
    linear-gradient(rgba(8,12,8,.08),rgba(8,12,8,.12)),
    url('../images/kingdom/realistic-terrain.webp');
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
  box-shadow:inset 0 0 90px rgba(0,0,0,.42),0 28px 80px rgba(0,0,0,.42);
}
.kingdom-map:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:2;
  background:radial-gradient(elvipse at center,transparent 55%,rgba(4,8,5,.28) 100%);
}
.kingdom-map:after{display:none!important}
.kingdom-map>.terrain{display:none!important}

/* Build locations are deliberately kept on clear land or at forest/mountain edges. */
.kingdom-map .slot-1{left:45%;top:39%}  /* castle / central grassland */
.kingdom-map .slot-2{left:58%;top:49%}  /* arena / open land near forest edge */
.kingdom-map .slot-3{left:70%;top:28%}  /* forge / rocky edge */
.kingdom-map .slot-4{left:30%;top:53%}  /* library / open grass near western edge */
.kingdom-map .slot-5{left:44%;top:58%}  /* research / central lower grass */
.kingdom-map .slot-6{left:63%;top:66%}  /* habitat / forest edge, not inside forest */
.kingdom-map .slot-7{left:21%;top:68%}  /* temple / grass above coastline */
.kingdom-map .slot-8{left:67%;top:16%}  /* magic tower / mountain edge */
.kingdom-map .slot-9{left:38%;top:72%}  /* training camp / clear southern field */
.kingdom-map .slot-10{left:29%;top:34%} /* mission hall / clear western grass */
.kingdom-map .slot-11{left:73%;top:73%} /* black market / south-east forest edge */
.kingdom-map .slot-12{left:48%;top:19%} /* reserve plot / northern open grass */

.kingdom-map .build-slot{
  width:150px;
  min-height:108px;
  transform:translate(-50%,-50%);
}
.kingdom-map .empty-build-slot,
.kingdom-map .kingdom-building,
.kingdom-map .locked-build-slot{
  background:linear-gradient(150deg,rgba(16,22,18,.9),rgba(8,13,11,.84));
  border:1px solid rgba(233,195,112,.62);
  box-shadow:0 14px 30px rgba(0,0,0,.48),inset 0 1px rgba(255,255,255,.07);
  backdrop-filter:blur(4px);
}
.kingdom-map .empty-build-slot:hover,
.kingdom-map .kingdom-building:hover{
  transform:translateY(-3px);
  border-color:#f0bd5b;
  box-shadow:0 18px 38px rgba(0,0,0,.55),0 0 24px rgba(245,174,58,.18);
}

@media(max-width:900px){
  .kingdom-map{min-height:1050px;aspect-ratio:auto;background-position:center top}
  .kingdom-map .build-slot{width:132px;transform:none}
  .kingdom-map .slot-1{left:8%;top:10%}.kingdom-map .slot-2{left:55%;top:10%}
  .kingdom-map .slot-3{left:8%;top:25%}.kingdom-map .slot-4{left:55%;top:25%}
  .kingdom-map .slot-5{left:8%;top:40%}.kingdom-map .slot-6{left:55%;top:40%}
  .kingdom-map .slot-7{left:8%;top:55%}.kingdom-map .slot-8{left:55%;top:55%}
  .kingdom-map .slot-9{left:8%;top:70%}.kingdom-map .slot-10{left:55%;top:70%}
  .kingdom-map .slot-11{left:8%;top:85%}.kingdom-map .slot-12{left:55%;top:85%}
}


/* v44.4 Lorebook chapters + VIP archive */
.lorebook-shell{max-width:1500px;margin:0 auto;padding-bottom:70px}
.lorebook-hero{display:flex;align-items:center;justify-content:space-between;gap:30px;background:linear-gradient(135deg,rgba(42,27,12,.96),rgba(14,17,24,.96));border-color:#8f6429}
.lorebook-hero h1{font-family:Georgia,serif;font-size:clamp(34px,5vw,64px);margin:6px 0 12px;color:#f2c36b}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;color:#d6a84f;font-weight:800}
.lore-progress-card{min-width:220px;text-align:center;padding:18px;border:1px solid rgba(237,184,80,.35);border-radius:16px;background:rgba(0,0,0,.28)}
.lore-progress-card strong{display:block;font-size:2rem;color:#ffd985}.lore-progress-card span,.lore-progress-card small{display:block;color:#c8c8cc}
.lore-progress{height:10px;background:#080a0f;border-radius:999px;overflow:hidden;margin:12px 0}.lore-progress i{display:block;height:100%;background:linear-gradient(90deg,#8d5716,#ffd36d);box-shadow:0 0 16px #df9e32}
.lore-vip-archive{display:flex;justify-content:space-between;align-items:center;gap:24px;border-color:#8d6d21;background:radial-gradient(circle at 90% 20%,rgba(135,83,190,.20),transparent 42%),linear-gradient(120deg,#191321,#0e1119)}
.lore-vip-archive.is-locked{filter:saturate(.75)}
.lorebook-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:18px;align-items:start}
.lore-chapters{position:sticky;top:80px;padding:12px}.lore-chapters h3{margin:6px 8px 12px}.lore-chapters a{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;margin:4px 0;border-radius:9px;color:#e8e0d1;text-decoration:none;background:rgba(255,255,255,.025)}.lore-chapters a:hover{background:rgba(221,164,58,.13);color:#ffd578}.lore-chapters b{color:#c6a057}
.lore-chapter{scroll-margin-top:90px}.lore-chapter>header{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:12px;margin-bottom:16px}.lore-chapter h2{font-family:Georgia,serif;color:#efc26a;margin:4px 0 0;font-size:2rem}
.lore-pages{display:grid;gap:14px}.lore-page{display:grid;grid-template-columns:180px minmax(0,1fr);gap:20px;padding:16px;border-radius:14px;border:1px solid rgba(180,130,57,.28);background:linear-gradient(130deg,rgba(31,27,22,.96),rgba(16,19,25,.96));box-shadow:0 12px 30px rgba(0,0,0,.22)}
.lore-page.locked{opacity:.62;filter:grayscale(.65)}.lore-page-image{height:230px;border-radius:10px;overflow:hidden;background:#090b10;display:grid;place-items:center;border:1px solid rgba(255,255,255,.08)}.lore-page-image img{width:100%;height:100%;object-fit:contain;object-position:top center}.lore-page-image span{font:700 5rem Georgia;color:#675337}
.lore-page-meta{display:flex;gap:8px;flex-wrap:wrap}.lore-page-meta span{font-size:.75rem;padding:4px 8px;border-radius:99px;background:#241b10;color:#e9c678;border:1px solid #5d4322}.lore-page h3{font-family:Georgia,serif;font-size:1.65rem;margin:10px 0;color:#f5e2b8}.lore-main-text{line-height:1.75;color:#d7d3cc}
.lore-facts{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.lore-facts div{padding:8px 11px;background:#11151d;border-radius:8px}.lore-facts dt{font-size:.68rem;text-transform:uppercase;color:#9e9ca5}.lore-facts dd{margin:2px 0 0;color:#e7c273}
.vip-lore-note{margin-top:15px;padding:13px 14px;border-radius:10px;border:1px solid rgba(179,119,255,.35);background:linear-gradient(120deg,rgba(80,34,105,.22),rgba(26,20,38,.6))}.vip-lore-note b{color:#d6a3ff}.vip-lore-note.locked{border-style:dashed;opacity:.72}.vip-lore-note p{margin:7px 0 0;color:#cfc4d8}
@media(max-width:900px){.lorebook-layout{grid-template-columns:1fr}.lore-chapters{position:static;display:flex;overflow:auto;gap:6px}.lore-chapters h3{display:none}.lore-chapters a{min-width:max-content}.lorebook-hero,.lore-vip-archive{align-items:flex-start;flex-direction:column}.lore-progress-card{width:100%}.lore-page{grid-template-columns:130px minmax(0,1fr)}.lore-page-image{height:180px}}
@media(max-width:600px){.lore-page{grid-template-columns:1fr}.lore-page-image{height:300px}}
/* v45 unified game chrome */
.game-topbar .brand{color:inherit;text-decoration:none;display:flex;flex-direction:column;line-height:1.05}.game-topbar .brand span{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;opacity:.62;margin-top:.2rem}.game-sidebar-scroll>a.active,.game-sidebar-scroll>button.active{border-color:rgba(245,174,55,.7);background:linear-gradient(90deg,rgba(192,103,14,.28),rgba(45,28,13,.22));color:#ffd47a}.game-sidebar .menu-section-label{display:block;margin:14px 12px 5px;color:#8f98a8;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em}.game-topbar-right>a{text-decoration:none}.weather-widget{position:relative}
.public-language-switch{position:fixed;right:18px;top:14px;z-index:50}.public-language-switch form,.legal-brand-wrap{display:flex;align-items:center;gap:12px}.public-language-switch select{background:#0e1118;color:#fff;border:1px solid #8f5a22;border-radius:8px;padding:7px}.legal-brand-wrap{flex-wrap:wrap}
.public-language-switch{position:fixed;right:18px;top:14px;z-index:50}.public-language-switch form,.legal-brand-wrap{display:flex;align-items:center;gap:12px}.public-language-switch select{background:#0e1118;color:#fff;border:1px solid #8f5a22;border-radius:8px;padding:7px}.legal-brand-wrap{flex-wrap:wrap}

/* v46 public league viewer */
.league-public-shell{margin-left:270px;padding:96px 28px 40px;max-width:1500px}.league-public-hero{display:flex;align-items:center;justify-content:space-between;gap:24px}.league-public-page .league-table-row.is-viewed{outline:2px solid rgba(255,190,70,.85);background:rgba(255,174,48,.12)}.league-public-page .league-table-row a{color:inherit;text-decoration:none}.league-public-page .league-table-row a:hover{text-decoration:underline}@media(max-width:900px){.league-public-shell{margin-left:0;padding:88px 14px 30px}.league-public-hero{align-items:flex-start;flex-direction:column}}

/* v71 Deck Builder UX */
.deck-builder-page{max-width:1500px;margin:0 auto;padding:18px;overflow:visible}.deck-builder-sticky{position:sticky;top:64px;z-index:15;background:linear-gradient(180deg,rgba(14,14,18,.99),rgba(17,12,11,.97));border:1px solid #61412d;border-radius:18px;padding:16px;box-shadow:0 14px 38px #000a;margin-bottom:16px}.deck-builder-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.deck-builder-topbar h2{margin:0 0 4px}.deck-builder-topbar p{margin:0;color:#bdb2aa}.deck-save-state{min-width:150px;text-align:center;padding:9px 13px;border-radius:999px;background:#1d251e;border:1px solid #4b6b4f;color:#baf0c1;font-weight:800}.deck-save-state.saving,.deck-save-state.pending{background:#2c2413;border-color:#a77b2d;color:#ffd88c}.deck-save-state.error{background:#341516;border-color:#aa3e3e;color:#ffb1b1}.deck-summary{display:grid;grid-template-columns:repeat(6,minmax(105px,1fr));gap:9px;margin:14px 0}.deck-summary>div{background:#0d1210;border:1px solid #2c392f;border-radius:11px;padding:9px 11px}.deck-summary span{display:block;color:#9eaaa0;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.deck-summary strong{display:block;font-size:18px;color:#f8e5bd}.deck-ready.is-ready{border-color:#3d8c52;background:#11291a}.deck-ready.is-ready strong{color:#70e38d}.deck-section-title{display:flex;align-items:baseline;gap:12px;margin:10px 0 8px}.deck-section-title h3{margin:0}.deck-section-title small{color:#a89b91}.deck-slot-row{display:grid;gap:10px}.monster-deck-slots{grid-template-columns:repeat(5,minmax(145px,1fr))}.booster-deck-slots{grid-template-columns:repeat(3,minmax(160px,1fr));max-width:760px}.deck-drop-slot{position:relative;min-height:178px;border:2px dashed #715348;border-radius:14px;background:linear-gradient(150deg,#241916,#100d0c);transition:.18s ease;overflow:hidden}.booster-drop-slot{min-height:130px;border-color:#69489a;background:linear-gradient(150deg,#24172c,#100c14)}.deck-drop-slot.drag-over{transform:translateY(-3px);border-color:#73d88b;box-shadow:0 0 0 3px #52d97935,0 12px 25px #0008}.deck-drop-slot.invalid-drop{border-color:#ff5555;animation:deckShake .35s}.deck-slot-number{position:absolute;top:7px;left:8px;z-index:3;background:#e95b1c;color:#fff;border-radius:999px;min-width:27px;height:27px;display:grid;place-items:center;font-weight:900;font-size:12px;box-shadow:0 0 13px #e95b1c88}.booster-drop-slot .deck-slot-number{background:#713ec2}.deck-slot-content{height:100%;min-height:inherit;display:flex;flex-direction:column}.deck-empty-text{margin:auto;padding:20px;color:#9f9188;text-align:center;font-size:12px}.deck-drop-slot img{width:100%;height:104px;object-fit:cover;display:block}.booster-drop-slot img{height:72px}.deck-slotted-body{padding:7px 9px;display:grid;gap:3px}.deck-slotted-body strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#ffe0aa}.deck-slotted-body small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#bcaea5}.deck-slotted-body>div{display:flex;justify-content:space-between;gap:4px;font-size:10px}.deck-slotted-body>span{font-size:10px;color:#cbb7e7;line-height:1.25}.deck-remove-card{position:absolute;right:6px;top:6px;z-index:4;width:27px;height:27px;border-radius:50%;padding:0;background:#130d0ddd;border:1px solid #a84d3b;color:#fff;font-size:17px}.deck-collection-panel{border:1px solid #3d322d;border-radius:17px;background:#0c0c0f;padding:13px}.deck-collection-toolbar{position:sticky;top:0;z-index:5;display:grid;grid-template-columns:minmax(240px,1fr) 180px 190px auto;gap:8px;padding:6px 0 11px;background:#0c0c0fee}.deck-collection-toolbar input,.deck-collection-toolbar select{min-height:42px}.deck-collection-scroll{height:min(47vh,530px);overflow:auto;overscroll-behavior:contain;display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));align-content:start;gap:10px;padding:4px 5px 12px}.deck-collection-card{position:relative;border:1px solid #44342e;border-radius:12px;overflow:hidden;background:#141519;min-width:0;transition:.15s ease;cursor:grab}.deck-collection-card:hover{transform:translateY(-2px);border-color:#d08a44;box-shadow:0 7px 20px #0008}.deck-collection-card.dragging{opacity:.42}.deck-collection-card.in-deck{outline:2px solid #56ae6c;outline-offset:-3px}.deck-card-art{height:118px;overflow:hidden}.deck-card-art img{width:100%;height:100%;object-fit:cover}.deck-card-info{padding:8px}.deck-card-info h4{margin:0 0 2px;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.deck-card-info small{display:block;color:#a89b92;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.deck-card-stats{display:grid;grid-template-columns:1fr 1fr;gap:3px;margin:6px 0;font-size:10px}.deck-card-info p{font-size:10px;line-height:1.25;height:25px;overflow:hidden;color:#baaaca}.deck-add-button{width:100%;padding:6px;margin-top:5px;font-size:11px}.deck-help{margin:9px 4px 0;color:#a69a92;font-size:12px}@keyframes deckShake{25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}
@media(max-width:1150px){.deck-builder-sticky{top:54px}.monster-deck-slots{grid-template-columns:repeat(5,minmax(120px,1fr))}.deck-summary{grid-template-columns:repeat(3,1fr)}.deck-collection-toolbar{grid-template-columns:1fr 1fr 1fr}.deck-collection-toolbar button{grid-column:1/-1}.deck-collection-scroll{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}}
@media(max-width:800px){.deck-builder-sticky{position:relative;top:auto}.monster-deck-slots{display:flex;overflow-x:auto;padding-bottom:7px}.monster-deck-slots .deck-drop-slot{min-width:155px}.booster-deck-slots{display:flex;overflow-x:auto}.booster-deck-slots .deck-drop-slot{min-width:165px}.deck-summary{grid-template-columns:repeat(2,1fr)}.deck-collection-toolbar{position:relative;grid-template-columns:1fr}.deck-collection-toolbar button{grid-column:auto}.deck-collection-scroll{height:55vh;grid-template-columns:repeat(2,minmax(125px,1fr))}}


/* v72 consistent realistic card artwork and element identity */
.card .art,.monsterdex-art,.deck-card-art,.lineup-card-preview,.training-card,.evolution-art,.mini-card,.deck-drop-slot,.card-art-frame{position:relative}
.card .art img,.monsterdex-art img,.deck-card-art img,.deck-drop-slot>img,.lineup-card-preview>img,.training-card>img,.evolution-art>img,.mini-card img,.live-card-art img{object-fit:cover;object-position:50% 38%;transform-origin:center;transition:transform .2s ease}
.card-element-badge{position:absolute;z-index:5;top:8px;right:8px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:19px;background:#101114e8;border:1px solid #ffffff55;box-shadow:0 4px 14px #000b,0 0 14px var(--element-glow,#aaa8);backdrop-filter:blur(4px)}
.element-fire{--element-glow:#ff641e}.element-ice{--element-glow:#76dcff}.element-lightning{--element-glow:#ffe66b}.element-water{--element-glow:#4fa7ff}.element-nature{--element-glow:#5ed16f}.element-earth{--element-glow:#bd8752}.element-poison{--element-glow:#a4e33e}.element-dark{--element-glow:#8753cf}.element-holy{--element-glow:#fff2a5}.element-spirit{--element-glow:#a9d9ff}.element-none{--element-glow:#aaa}
.admin2-ai-monster-generator{margin:14px 0;padding:15px;border:1px solid #5b416d;border-radius:15px;background:linear-gradient(135deg,#18131f,#0e1015)}.admin2-ai-monster-generator h4{margin:0 0 4px;color:#e4c0ff}.admin2-ai-monster-generator p{margin:0 0 10px;color:#bdb1c5}.admin2-image-generator-controls{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.admin2-generated-image{margin-top:12px;min-height:180px;display:grid;place-items:center;border:1px dashed #5c5166;border-radius:12px;overflow:hidden;background:#090b10}.admin2-generated-image img{width:100%;max-height:520px;object-fit:contain;background:#07090d}.admin2-generated-image span{padding:8px;font-size:12px;color:#baadbf}.admin2-generated-image.empty span{font-size:14px}.admin2-image-composition{margin:14px 0;border:1px solid #4c4039;border-radius:12px}.admin2-image-composition input[type=range]{width:100%}
@media(max-width:760px){.admin2-image-generator-controls{grid-template-columns:1fr}}

/* v77: one-screen Deck Builder */
body.deck-builder-open{overflow:hidden}
body.deck-builder-open .game-content{height:100vh;overflow:hidden;padding-bottom:8px}
#lineup.active{height:calc(100vh - 98px);overflow:hidden}
#lineup.active .deck-builder-page{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px;padding:10px;overflow:hidden}
#lineup.active .deck-builder-sticky{position:relative;top:auto;margin:0;padding:10px 12px;max-height:43vh;overflow:auto}
#lineup.active .deck-builder-topbar p{display:none}
#lineup.active .deck-summary{margin:7px 0;gap:6px}
#lineup.active .deck-summary>div{padding:6px 8px}
#lineup.active .deck-summary strong{font-size:15px}
#lineup.active .deck-section-title{margin:5px 0 4px}
#lineup.active .deck-section-title small{font-size:10px}
#lineup.active .deck-drop-slot{min-height:122px}
#lineup.active .booster-drop-slot{min-height:92px}
#lineup.active .deck-drop-slot img{height:70px}
#lineup.active .booster-drop-slot img{height:48px}
#lineup.active .deck-slotted-body{padding:4px 6px}
#lineup.active .deck-slotted-body small,#lineup.active .deck-slotted-body>span{display:none}
#lineup.active .deck-collection-panel{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding:9px;overflow:hidden}
#lineup.active .deck-collection-toolbar{position:relative;grid-template-columns:minmax(180px,1.2fr) repeat(3,minmax(125px,.65fr)) repeat(3,auto);gap:6px;padding:0 0 8px}
#lineup.active .deck-collection-toolbar input,#lineup.active .deck-collection-toolbar select,#lineup.active .deck-collection-toolbar button{min-height:36px;padding:7px 9px;font-size:12px}
.deck-browser-layout{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:10px;overflow:hidden}
#lineup.active .deck-collection-scroll{height:auto;min-height:0;overflow:auto;grid-template-columns:repeat(auto-fill,minmax(122px,1fr));gap:7px;padding:2px 5px 8px}
#lineup.active .deck-card-art{height:88px}
#lineup.active .deck-card-info{padding:6px}
#lineup.active .deck-card-info p{display:none}
#lineup.active .deck-card-info h4{font-size:12px}
#lineup.active .deck-card-stats{margin:4px 0;font-size:9px}
#lineup.active .deck-add-button{padding:4px;margin-top:3px}
.deck-card-preview-panel{min-height:0;overflow:auto;border:1px solid #493a32;border-radius:13px;background:linear-gradient(180deg,#171319,#0c0b0e);padding:9px}
.deck-preview-empty{height:100%;display:grid;place-content:center;text-align:center;color:#9f958e;gap:5px}.deck-preview-empty span{font-size:38px}.deck-preview-empty small{line-height:1.35}
.deck-preview-art{position:relative;height:180px;border-radius:10px;overflow:hidden}.deck-preview-art img{width:100%;height:100%;object-fit:cover}
.deck-preview-content h3{margin:7px 0 5px;color:#ffd99c}.deck-preview-content>small{color:#b9aba1}.deck-preview-content p{font-size:11px;line-height:1.35;max-height:70px;overflow:auto}.deck-preview-stats{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:8px 0}.deck-preview-stats span{background:#0d1110;padding:6px;border-radius:7px}.deck-preview-content button{width:100%;padding:7px}
.danger-soft{border-color:#8e453c!important;background:#351716!important}
@media(max-width:1200px){.deck-browser-layout{grid-template-columns:minmax(0,1fr) 220px}#lineup.active .deck-collection-toolbar{grid-template-columns:1fr repeat(3,minmax(110px,.7fr));}.deck-collection-toolbar button{display:none}}
@media(max-width:900px){body.deck-builder-open{overflow:auto}body.deck-builder-open .game-content{height:auto;overflow:visible}#lineup.active{height:auto;overflow:visible}#lineup.active .deck-builder-page{height:auto;display:block;overflow:visible}#lineup.active .deck-builder-sticky{max-height:none;overflow:visible}.deck-browser-layout{display:block}.deck-card-preview-panel{display:none}#lineup.active .deck-collection-scroll{height:52vh}#lineup.active .deck-collection-toolbar{grid-template-columns:1fr 1fr}.deck-collection-toolbar button{display:block}}

/* v80: Modern Deck Studio */
body.deck-builder-open{overflow:hidden;background:#08090d}
#lineup.active{height:calc(100vh - 92px);overflow:hidden;padding:0}
#lineup.active .deck-studio{height:100%;display:grid;grid-template-rows:auto minmax(250px,44vh) minmax(0,1fr);gap:10px;padding:10px;overflow:hidden;background:radial-gradient(circle at 20% 0,#23160f66,transparent 38%),linear-gradient(180deg,#0b0d12,#08090d)}
.deck-studio-header{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:12px 16px;border:1px solid #3c332d;border-radius:16px;background:linear-gradient(135deg,#17191f,#121116);box-shadow:0 14px 35px #0008}
.deck-studio-header h2{margin:2px 0 3px;font-size:24px}.deck-studio-header p{margin:0;color:#a99f98;font-size:12px}.deck-studio-kicker,.deck-board-label{font-size:10px;letter-spacing:.16em;font-weight:900;color:#e7a84d}
.deck-header-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.deck-header-actions button{min-height:36px;padding:7px 11px;font-size:11px}.deck-header-actions .deck-save-state{min-width:112px}
.deck-studio-body{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:10px;overflow:hidden}
.deck-board-panel{min-height:0;overflow:hidden;padding:12px;border:1px solid #46372e;border-radius:17px;background:linear-gradient(160deg,#181318,#0d0e12);box-shadow:inset 0 1px #ffffff08,0 12px 30px #0007}
.deck-board-topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.deck-board-topline>div:first-child{display:grid;gap:2px}.deck-board-topline strong{font-size:12px;color:#d7cdc5}.deck-ready-pill{display:flex;gap:8px;align-items:center;border:1px solid #6c4e36;border-radius:999px;padding:6px 10px;background:#211812}.deck-ready-pill span{font-size:9px;text-transform:uppercase;color:#a89a90}.deck-ready-pill strong{font-size:11px;color:#ffc877}.deck-ready-pill.is-ready{border-color:#3f8c59;background:#10251a}.deck-ready-pill.is-ready strong{color:#79e99a}
.modern-monster-slots{display:grid;grid-template-columns:repeat(5,minmax(112px,1fr));gap:8px}.modern-monster-slot{min-height:142px;border-style:solid;border-width:1px;background:linear-gradient(180deg,#211712,#100f12)}.modern-monster-slot::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,#ffffff08,transparent 38%)}.modern-monster-slot .deck-slot-number{top:6px;left:6px}.paired-booster-label{position:absolute;left:8px;right:8px;bottom:5px;text-align:center;font-size:8px;color:#91796c;text-transform:uppercase;letter-spacing:.05em}
.modern-booster-track{margin-top:8px;padding-top:8px;border-top:1px solid #332922}.booster-track-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.booster-track-title span{font-size:9px;font-weight:900;letter-spacing:.13em;color:#bd8cf1}.booster-track-title small{font-size:9px;color:#8f838d}.modern-booster-slots{width:60%;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.modern-booster-slot{min-height:76px;border-style:solid;border-width:1px}.modern-booster-slot .deck-empty-text{padding:10px}.deck-empty-text{display:grid;gap:3px;place-content:center}.deck-empty-text b{font-size:11px;color:#c8b8ad}.deck-empty-text small{font-size:9px;color:#82766f}
.modern-deck-summary{grid-template-columns:repeat(5,1fr);gap:6px;margin:8px 0 0}.modern-deck-summary>div{padding:5px 8px}.modern-deck-summary strong{font-size:14px}
.deck-card-preview-panel{min-height:0;overflow:auto;border:1px solid #493a32;border-radius:17px;background:linear-gradient(180deg,#181319,#0c0b0e);padding:10px;box-shadow:0 12px 28px #0007}.deck-preview-art{height:165px}.deck-preview-content h3{font-size:18px}.deck-preview-content p{font-size:10px;max-height:58px}.deck-preview-empty strong{font-size:15px;color:#ddcdbf}
.deck-library-panel{min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;padding:10px;border:1px solid #3d332d;border-radius:17px;background:#0c0e13;overflow:hidden}.deck-library-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px}.deck-library-heading>div{display:grid;gap:1px}.deck-library-heading strong{font-size:12px}.deck-library-heading small{color:#9b9089;font-size:10px}
.deck-collection-toolbar{position:relative;display:grid;grid-template-columns:minmax(220px,1.4fr) repeat(4,minmax(120px,.7fr));gap:7px;padding:0 0 8px;background:transparent}.deck-search-box{display:flex;align-items:center;gap:6px;border:1px solid #4b4039;border-radius:10px;background:#10131a;padding:0 10px}.deck-search-box:focus-within{border-color:#c8843a;box-shadow:0 0 0 3px #c8843a1f}.deck-search-box input{border:0!important;background:transparent!important;padding:0!important;min-height:36px!important;width:100%}.deck-search-box span{font-size:18px;color:#d79b50}.deck-collection-toolbar select{min-height:36px;padding:6px 8px;font-size:11px}
.modern-card-library{height:auto!important;min-height:0;overflow:auto;overscroll-behavior:contain;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:8px;padding:2px 5px 8px}.deck-collection-card{border-radius:13px;background:linear-gradient(180deg,#181b22,#111319);border-color:#3d3735}.deck-collection-card:hover,.deck-collection-card.is-selected{border-color:#db963e;box-shadow:0 0 0 2px #db963e25,0 10px 22px #0009}.deck-collection-card.is-selected{transform:translateY(-2px)}.deck-collection-card.in-deck{outline:2px solid #5ec879;outline-offset:-2px}.modern-card-library .deck-card-art{height:102px;position:relative}.modern-card-library .deck-card-info{padding:7px}.deck-card-title-row{display:flex;align-items:center;justify-content:space-between;gap:5px}.deck-card-title-row h4{min-width:0}.deck-card-title-row span{font-size:8px;color:#e8b96f;white-space:nowrap}.modern-card-library .deck-card-stats{font-size:9px;margin:4px 0}.modern-card-library .deck-add-button{padding:5px;font-size:10px;border-radius:8px}.deck-help{margin:6px 2px 0;font-size:10px}
#lineup.active .deck-drop-slot img{height:75px;object-fit:cover}.modern-booster-slot img{height:42px!important}.modern-monster-slot .deck-slotted-body{padding:4px 6px 14px}.modern-booster-slot .deck-slotted-body{padding:3px 6px}.modern-monster-slot .deck-slotted-body strong,.modern-booster-slot .deck-slotted-body strong{font-size:10px}.modern-monster-slot .deck-slotted-body small,.modern-monster-slot .deck-slotted-body>span,.modern-booster-slot .deck-slotted-body small,.modern-booster-slot .deck-slotted-body>span{display:none}
@media(max-width:1250px){.deck-studio-body{grid-template-columns:minmax(0,1fr) 220px}.modern-monster-slots{gap:6px}.deck-studio-header p{display:none}.deck-header-actions button{font-size:10px;padding:6px 8px}.deck-collection-toolbar{grid-template-columns:minmax(180px,1.2fr) repeat(4,minmax(100px,.7fr))}}
@media(max-width:950px){body.deck-builder-open{overflow:auto}#lineup.active{height:auto;overflow:visible}#lineup.active .deck-studio{height:auto;display:block;overflow:visible}.deck-studio-header{display:block}.deck-header-actions{justify-content:flex-start;margin-top:10px}.deck-studio-body{display:block}.deck-card-preview-panel{display:none}.modern-monster-slots{display:flex;overflow-x:auto;padding-bottom:6px}.modern-monster-slot{min-width:150px}.modern-booster-slots{width:100%;display:flex;overflow-x:auto}.modern-booster-slot{min-width:160px}.deck-library-panel{margin-top:10px;height:60vh}.deck-collection-toolbar{grid-template-columns:1fr 1fr}.deck-search-box{grid-column:1/-1}.modern-card-library{grid-template-columns:repeat(2,minmax(125px,1fr))}}

/* v82: Readable full-card deck builder */
#lineup.active{height:calc(100vh - 64px);overflow:hidden;padding:0}
#lineup.active .deck-studio-v82{height:100%;display:grid;grid-template-rows:auto minmax(0,1.55fr) minmax(220px,.85fr);gap:10px;padding:10px 14px;overflow:hidden;background:radial-gradient(circle at 18% 0,#2c1a1055,transparent 34%),linear-gradient(180deg,#0b0d12,#07090d)}
.deck-command-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;border:1px solid #43352d;border-radius:14px;background:linear-gradient(135deg,#17191f,#101116);box-shadow:0 10px 28px #0008}
.deck-status-group,.deck-command-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.deck-command-actions button{min-height:34px;padding:6px 12px;font-size:11px}.deck-command-bar .deck-save-state{min-width:110px;padding:7px 11px}
.deck-battle-board{min-height:0;display:grid;grid-template-rows:auto minmax(250px,1fr) auto minmax(95px,.42fr) auto;gap:7px;padding:10px 12px;border:1px solid #4b3b30;border-radius:17px;background:linear-gradient(160deg,#181318,#0d0e12);box-shadow:inset 0 1px #ffffff08,0 12px 30px #0008;overflow:hidden}
.deck-section-caption{display:flex;justify-content:space-between;align-items:end;gap:12px}.deck-section-caption>div{display:flex;align-items:baseline;gap:9px}.deck-section-caption span{font-size:10px;letter-spacing:.15em;font-weight:900;color:#f0ad53}.deck-section-caption strong{font-size:12px;color:#d7ccc4}.deck-section-caption small{font-size:10px;color:#91867f}.booster-caption span{color:#c08bf4}
.v82-monster-slots{min-height:0;display:grid;grid-template-columns:repeat(5,minmax(170px,1fr));gap:10px;align-items:stretch}.v82-monster-slot{min-height:0;height:100%;border:1px solid #72513b;border-radius:15px;background:linear-gradient(180deg,#251912,#100f12);overflow:hidden;box-shadow:0 8px 20px #0008}.v82-monster-slot.filled{border-color:#cf8d35;box-shadow:0 0 0 1px #cf8d3538,0 12px 24px #0009}.v82-monster-slot .deck-slot-content{height:100%}.v82-monster-slot .deck-slot-content>img{width:100%;height:58%;min-height:140px;object-fit:cover;display:block}.v82-monster-slot .deck-slotted-body{height:42%;min-height:105px;box-sizing:border-box;padding:9px 10px 8px;display:flex;flex-direction:column;gap:4px;background:linear-gradient(180deg,#17171c,#0d0f13)}.v82-monster-slot .deck-slotted-body strong{font-size:14px;line-height:1.15;color:#ffe0a6;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.v82-monster-slot .deck-slotted-body small{display:block;font-size:10px;color:#bbaea5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v82-monster-slot .deck-slot-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;font-size:10px}.v82-monster-slot .deck-slot-stats span{padding:4px 2px;border-radius:6px;text-align:center;background:#0a0d10}.v82-monster-slot .deck-slot-ability{display:block;font-size:10px;color:#d6c4e9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v82-monster-slot .deck-empty-text{height:100%;display:grid;place-content:center;text-align:center;gap:5px;color:#a79a91}.v82-monster-slot .deck-empty-text b{font-size:15px}.v82-monster-slot .deck-empty-text small{font-size:10px}
.v82-booster-slots{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:10px;max-width:none;width:72%;min-height:0}.v82-booster-slot{min-height:0;height:100%;border:1px solid #704c9d;border-radius:13px;background:linear-gradient(160deg,#25182e,#100d14);overflow:hidden}.v82-booster-slot .deck-slot-content{height:100%;display:grid;grid-template-columns:110px 1fr}.v82-booster-slot .deck-slot-content>img{width:110px;height:100%!important;object-fit:cover}.v82-booster-slot .deck-slotted-body{padding:10px;display:flex;flex-direction:column;justify-content:center;gap:4px}.v82-booster-slot .deck-slotted-body strong{font-size:13px;color:#e9cfff}.v82-booster-slot .deck-slotted-body small{display:block;font-size:10px;color:#b7a8c1}.v82-booster-slot .deck-slot-ability{display:block;font-size:10px;color:#d8c6e4;line-height:1.3;white-space:normal;overflow:hidden}.v82-booster-slot .deck-empty-text{grid-column:1/-1}
.v82-deck-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:0}.v82-deck-summary>div{padding:6px 9px;border-radius:9px}.v82-deck-summary span{font-size:9px}.v82-deck-summary strong{font-size:15px}
.v82-library-panel{min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr);padding:9px 10px;border:1px solid #3f352f;border-radius:16px;background:#0b0e13;overflow:hidden}.v82-library-panel .deck-library-heading{margin-bottom:6px}.v82-library-panel .deck-collection-toolbar{grid-template-columns:minmax(210px,1.35fr) repeat(4,minmax(105px,.7fr));gap:7px;padding-bottom:7px}.v82-card-library{min-height:0;height:auto!important;overflow:auto;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;padding:2px 5px 9px}.v82-collection-card{min-height:255px;border-radius:14px;background:linear-gradient(180deg,#191c23,#101319);border:1px solid #4c4039;box-shadow:0 7px 18px #0007}.v82-collection-card:hover{transform:translateY(-3px);border-color:#dda04d;box-shadow:0 0 0 2px #dda04d22,0 13px 24px #000a}.v82-collection-card .deck-card-art{height:148px;position:relative}.v82-collection-card .deck-card-art img{width:100%;height:100%;object-fit:cover}.deck-owned-badge{position:absolute;right:7px;bottom:7px;z-index:4;padding:4px 7px;border-radius:999px;background:#080a0de8;border:1px solid #e4b15d;color:#ffe2a1;font-size:10px;font-weight:900;box-shadow:0 3px 9px #000b}.deck-owned-slot{top:8px;bottom:auto;right:40px}.v82-collection-card .deck-card-info{padding:9px}.v82-collection-card .deck-card-title-row h4{font-size:13px;line-height:1.18;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v82-collection-card .deck-card-title-row span{font-size:8px}.v82-collection-card .deck-card-info>small{font-size:10px}.v82-collection-card .deck-card-stats{font-size:10px;margin:6px 0}.v82-collection-card .deck-card-ability{height:28px;margin:3px 0 6px;font-size:10px;line-height:1.35;color:#cbb8db;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.v82-collection-card .deck-add-button{padding:6px;font-size:11px}
@media(max-width:1400px){.v82-monster-slots{grid-template-columns:repeat(5,minmax(145px,1fr));gap:7px}.v82-monster-slot .deck-slot-content>img{min-height:120px}.v82-monster-slot .deck-slotted-body strong{font-size:12px}.v82-card-library{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.v82-collection-card .deck-card-art{height:130px}.v82-booster-slots{width:82%}}
@media(max-width:1050px){body.deck-builder-open{overflow:auto}#lineup.active{height:auto;overflow:visible}#lineup.active .deck-studio-v82{height:auto;display:block;overflow:visible}.deck-command-bar{align-items:flex-start}.v82-monster-slots{display:flex;overflow-x:auto;padding-bottom:7px}.v82-monster-slot{min-width:205px;height:315px}.v82-booster-slots{width:100%;display:flex;overflow-x:auto}.v82-booster-slot{min-width:280px;height:110px}.v82-library-panel{height:62vh;margin-top:10px}.v82-library-panel .deck-collection-toolbar{grid-template-columns:1fr 1fr}.deck-search-box{grid-column:1/-1}.v82-card-library{grid-template-columns:repeat(2,minmax(150px,1fr))}}

/* v83 universal realistic card system */
:root{--card-frame-url:url('../images/card-frame-realistic.png')}
.universal-game-card,.deck-collection-card,.card,.training-card,.evolution-card,.mini-card,.monsterdex-card,.season-new-card{
 position:relative;isolation:isolate;background:#24180f var(--card-frame-url) center/100% 100% no-repeat!important;
 border:0!important;border-radius:22px!important;overflow:hidden;box-shadow:0 16px 34px #000c,inset 0 0 0 1px #d3a85d55!important;color:#f6ead3
}
.universal-game-card:after,.deck-collection-card:after,.card:after,.training-card:after,.evolution-card:after,.mini-card:after,.monsterdex-card:after{
 content:"";position:absolute;inset:0;pointer-events:none;z-index:20;border-radius:inherit;box-shadow:inset 0 0 0 2px #0008,inset 0 0 28px #0009
}
.rarity-silver,.rarity-zilver{filter:drop-shadow(0 0 7px #dbe4ef55)}
.rarity-gold,.rarity-goud{filter:drop-shadow(0 0 8px #e8b74266)}
.rarity-legendary{filter:drop-shadow(0 0 12px #f1b73299)}
.rarity-ancient-legendary{filter:drop-shadow(0 0 14px #d85c2799)}
.rarity-mythic{filter:drop-shadow(0 0 16px #a95cffaa)}
.universal-game-card{height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,47%) auto auto minmax(38px,1fr) auto;padding:15px 14px 17px;gap:5px}
.ugc-topline{display:flex;justify-content:space-between;align-items:center;padding:0 18px 0 10px;z-index:3;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.09em;color:#ffd78b}
.ugc-art{position:relative;min-height:0;margin:0 8px;overflow:hidden;border:1px solid #ba8b44aa;border-radius:8px;background:#050608;box-shadow:inset 0 0 18px #000}
.ugc-art img{width:100%;height:100%;object-fit:cover;display:block}
.ugc-name{padding:4px 13px 2px;text-align:center;z-index:3}.ugc-name strong{display:block;font-family:Georgia,serif;font-size:15px;line-height:1.05;color:#fff2cf}.ugc-name small{font-size:9px;color:#d4b783;text-transform:uppercase;letter-spacing:.07em}
.ugc-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;padding:0 11px;z-index:3}.ugc-stats span{background:#090909bb;border:1px solid #8e673b66;border-radius:6px;padding:4px 2px;text-align:center;font-size:9px}
.ugc-ability{margin:0 11px;padding:5px 7px;border:1px solid #8c623788;background:#0b0908c7;border-radius:7px;display:grid;gap:2px;z-index:3;min-height:0}.ugc-ability b{font-size:9px;color:#d7a4ff;text-transform:uppercase}.ugc-ability span{font-size:8px;color:#f1e4cc;line-height:1.15}
.ugc-lore{margin:0 11px;padding:5px 7px;background:#ddc28e20;border-radius:6px;font-family:Georgia,serif;font-size:8px;line-height:1.2;color:#eadcc2;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;z-index:3}
.ugc-matchups{display:flex;justify-content:space-between;margin:0 12px;font-size:8px;color:#d9c2a0;z-index:3}.ugc-matchups span:first-child{color:#8fe08d}.ugc-matchups span:last-child{color:#ff8e7f}
.v83-monster-card-slot{min-width:225px}.v82-monster-slot{min-height:390px}.v82-monster-slot .deck-slot-content{padding:0}.v82-monster-slot .deck-slot-content>.universal-game-card{height:100%}
.v82-monster-slot .deck-slot-number{z-index:30}.v82-monster-slot .deck-remove-card{z-index:31}
.v82-monster-slot .card-element-badge{z-index:30;top:37px}.v82-monster-slot .deck-owned-slot{z-index:30;top:37px}
.v82-collection-card{min-height:380px!important;padding:13px 12px 16px!important;display:grid!important;grid-template-rows:minmax(0,47%) auto auto auto minmax(38px,1fr) auto auto!important;gap:4px!important}
.v82-collection-card .deck-card-art{height:auto!important;min-height:165px;margin:17px 6px 0;border:1px solid #b78b4a88;border-radius:8px;overflow:hidden;background:#050608}
.v82-collection-card .deck-card-info{padding:2px 10px 0!important;display:contents}.v82-collection-card .deck-card-title-row{padding:2px 12px 0;text-align:center;display:block}.v82-collection-card .deck-card-title-row h4{font-family:Georgia,serif;font-size:15px!important;color:#fff0ca}.v82-collection-card .deck-card-title-row span{display:block;font-size:8px!important;color:#d9a95c}.v82-collection-card .deck-card-info>small{text-align:center;color:#d6bc8a}.v82-collection-card .deck-card-stats{padding:0 8px}.v82-collection-card .deck-card-ability,.v82-collection-card .deck-card-lore{margin:0 8px;padding:5px 7px;background:#0b0908bb;border:1px solid #8d683f66;border-radius:6px;height:auto!important;font-size:9px}.v82-collection-card .deck-card-lore{font-family:Georgia,serif;color:#e3d4b8;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.deck-card-matchups{display:flex;justify-content:space-between;padding:0 10px;font-size:8px}.deck-card-matchups span:first-child{color:#86d887}.deck-card-matchups span:last-child{color:#f58b7e}.v82-collection-card .deck-add-button{margin:0 9px 2px;z-index:25}
#collectionGrid .card{min-height:510px;padding:17px 16px 20px;display:flex;flex-direction:column}#collectionGrid .card .art{height:255px;margin:16px 7px 0;border:1px solid #b78b4a88;border-radius:9px;overflow:hidden}#collectionGrid .card h3{font-family:Georgia,serif;color:#fff0ca;text-align:center;font-size:18px;margin:8px 10px 2px}#collectionGrid .card>small{text-align:center;color:#d6bc8a}#collectionGrid .card .stats{margin:8px 9px}#collectionGrid .card .lore{font-family:Georgia,serif;background:#0b0908a8;border:1px solid #8d683f55;border-radius:7px;padding:8px;color:#eadcc2;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.training-card,.evolution-card{padding:18px!important}.training-card .card-art-frame,.evolution-card .evolution-art{border:1px solid #b78b4a88;border-radius:9px;overflow:hidden;background:#050608}
@media(max-width:1400px){.v82-monster-slot{min-width:190px;min-height:350px}.universal-game-card{padding:13px 11px 15px}.ugc-name strong{font-size:13px}.ugc-lore{-webkit-line-clamp:2}.v82-card-library{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}}

/* v87 - Separate Monster Deck and practical two-column Line-up */
.monster-deck-page{max-width:1500px;margin:0 auto}.monster-deck-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.monster-deck-header h2{margin:0}.monster-deck-header p{margin:5px 0 0;color:#b8aca3}.monster-deck-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:16px}.monster-deck-profile{border:1px solid #4c3a31;border-radius:16px;background:linear-gradient(180deg,#191411,#0d0b0a);padding:15px;box-shadow:0 12px 34px #0008}.monster-deck-profile.is-active{border-color:#d8953f;box-shadow:0 0 24px #d8953f33}.monster-deck-profile header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.monster-deck-profile header h3{margin:2px 0 0}.monster-deck-profile header>span{font-size:11px;font-weight:900;letter-spacing:.12em;color:#1a1208;background:#f1b85d;border-radius:999px;padding:6px 10px}.monster-deck-card-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:12px}.monster-deck-mini-card{min-width:0;border:1px solid #49382f;border-radius:10px;background:#0d0b0a;overflow:hidden;padding-bottom:7px}.monster-deck-mini-card img{width:100%;aspect-ratio:2/3;object-fit:cover;display:block}.monster-deck-mini-card b,.monster-deck-mini-card small{display:block;padding:0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.monster-deck-mini-card b{font-size:11px;margin-top:6px;color:#f4d7a2}.monster-deck-mini-card small{font-size:9px;color:#aaa}.monster-deck-mini-card>span{min-height:130px;display:grid;place-items:center;color:#766d67;font-size:11px}

#lineup.active{height:auto;overflow:visible;padding:0}.deck-studio-v82{height:auto!important;display:block!important;overflow:visible!important;padding:14px!important}.deck-command-bar{position:sticky;top:0;z-index:20;background:#0b0d12eF;backdrop-filter:blur(10px);padding:10px;border:1px solid #34271f;border-radius:14px}.deck-battle-board{margin-top:12px}.v82-monster-slots{display:grid!important;grid-template-columns:repeat(2,minmax(330px,1fr))!important;gap:18px!important;align-items:start!important}.v82-monster-slot{min-height:520px!important;height:auto!important}.v82-monster-slot .universal-game-card{min-height:490px}.v82-monster-slot .ugc-art{height:235px!important}.v82-monster-slot .ugc-name strong{font-size:18px}.v82-monster-slot .ugc-lore{min-height:72px;max-height:92px;overflow:auto;font-size:12px;line-height:1.45}.v82-monster-slot .ugc-stats{font-size:14px}.v82-booster-slots{display:grid!important;grid-template-columns:repeat(3,minmax(240px,1fr))!important;gap:14px!important;width:100%!important}.v82-booster-slot{min-height:190px!important;height:auto!important}.v82-library-panel{height:58vh!important;min-height:430px;margin-top:18px;display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden}.v82-card-library{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))!important;gap:14px!important;overflow-y:auto!important;padding-right:8px}.v82-collection-card{min-height:440px}.v82-collection-card .deck-card-art{height:210px!important}.v82-collection-card .deck-card-info{padding:10px!important}.v82-collection-card .deck-card-info h4{font-size:15px!important}.v82-collection-card .deck-card-info p{display:block!important}.deck-level-badge{position:absolute;right:8px;bottom:8px;z-index:4;background:#0b0d12df;color:#ffd58f;border:1px solid #d8953f;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:900}.deck-add-button{min-height:42px;font-weight:900}.deck-collection-scroll{scrollbar-width:thin;scrollbar-color:#b06a35 #17110d}
@media(max-width:1000px){.v82-monster-slots{grid-template-columns:1fr!important}.v82-booster-slots{grid-template-columns:1fr!important}.v82-library-panel{height:60vh!important}.monster-deck-card-row{grid-template-columns:repeat(3,1fr)}}


/* ==========================================================================
   V88 — CLEAN LINE-UP (Monster Deck removed)
   ========================================================================== */
body.deck-builder-open {
  overflow: hidden;
}

#gameMain,
#gameContent,
#lineup {
  min-width: 0;
}

#lineup.active {
  display: block;
  height: calc(100vh - 88px);
  overflow: hidden;
}

#lineup .deck-studio {
  height: 100%;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 12px;
  overflow: hidden;
  padding: 10px 12px 12px;
  box-sizing: border-box;
}

#lineup .deck-command-bar {
  min-height: 48px;
  margin: 0;
  padding: 8px 12px;
  flex-wrap: wrap;
}

#lineup .deck-battle-board {
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 12px;
  border-radius: 16px;
  scrollbar-gutter: stable;
}

#lineup .modern-monster-slots,
#lineup .v82-monster-slots {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(300px, 1fr)) !important;
  align-items: start;
  gap: 18px !important;
  width: 100%;
  overflow: visible !important;
}

#lineup .modern-monster-slot,
#lineup .v82-monster-slot {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 620px !important;
  height: auto !important;
  aspect-ratio: auto !important;
  padding: 12px !important;
  overflow: hidden !important;
  box-sizing: border-box;
}

#lineup .modern-monster-slot:nth-child(5),
#lineup .v82-monster-slot:nth-child(5) {
  grid-column: 1 / -1;
  width: min(520px, 100%) !important;
  justify-self: center;
}

#lineup .modern-monster-slot .deck-slot-content,
#lineup .v82-monster-slot .deck-slot-content {
  height: 100%;
  min-height: 580px;
}

#lineup .modern-monster-slot .universal-game-card,
#lineup .v82-monster-slot .universal-game-card {
  width: 100%;
  height: 100%;
  min-height: 570px;
  max-height: none;
  transform: none !important;
}

#lineup .universal-game-card .ugc-art {
  min-height: 245px;
  height: 42%;
}

#lineup .universal-game-card .ugc-art img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#lineup .universal-game-card .ugc-name strong {
  font-size: clamp(18px, 1.5vw, 25px);
  line-height: 1.12;
}

#lineup .universal-game-card .ugc-name small,
#lineup .universal-game-card .ugc-level,
#lineup .universal-game-card .ugc-rarity {
  font-size: 13px;
}

#lineup .universal-game-card .ugc-stats {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
}

#lineup .universal-game-card .ugc-stats span {
  min-width: 0;
  padding: 7px 4px;
  font-size: 14px;
}

#lineup .universal-game-card .ugc-ability {
  min-height: 62px;
  font-size: 13px;
}

#lineup .universal-game-card .ugc-lore {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  overflow: hidden;
  min-height: 76px;
  line-height: 1.35;
  font-size: 12.5px;
}

#lineup .modern-booster-slots,
#lineup .v82-booster-slots {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(180px, 1fr)) !important;
  gap: 14px !important;
  width: 100%;
  overflow: visible !important;
}

#lineup .modern-booster-slot,
#lineup .v82-booster-slot {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 220px !important;
  height: auto !important;
}

#lineup .deck-summary {
  margin-top: 12px;
}

#lineup .deck-library-panel {
  margin-top: 18px;
  min-height: 390px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

#lineup .deck-collection-toolbar {
  flex: 0 0 auto;
}

#lineup .deck-collection-scroll,
#lineup .modern-card-library,
#lineup .v82-card-library {
  flex: 1 1 auto;
  min-height: 330px;
  max-height: 54vh;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)) !important;
  align-content: start;
  gap: 16px !important;
  padding: 12px !important;
  scrollbar-gutter: stable;
}

#lineup .deck-collection-card,
#lineup .v82-collection-card {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: auto !important;
  min-height: 520px;
  overflow: hidden !important;
}

#lineup .deck-collection-card .deck-card-art {
  height: 245px !important;
  min-height: 245px;
  overflow: hidden;
}

#lineup .deck-collection-card .deck-card-art img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#lineup .deck-card-info {
  min-width: 0;
  overflow: hidden;
}

#lineup .deck-card-title-row,
#lineup .deck-card-title-row h4,
#lineup .deck-card-info p,
#lineup .deck-card-info small,
#lineup .deck-card-matchups {
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
}

#lineup .deck-card-lore {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
  min-height: 68px;
}

#lineup .deck-level-badge {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  z-index: 5;
  font-weight: 800;
}

#lineup .deck-add-button {
  width: 100%;
  min-height: 42px;
  margin-top: auto;
  font-weight: 800;
}

.monster-deck-page,
[data-tab="monsterdeck"] {
  display: none !important;
}

@media (max-width: 980px) {
  body.deck-builder-open {
    overflow: auto;
  }

  #lineup.active {
    height: auto;
    overflow: visible;
  }

  #lineup .deck-studio {
    height: auto;
    display: block;
    overflow: visible;
  }

  #lineup .modern-monster-slots,
  #lineup .v82-monster-slots {
    grid-template-columns: 1fr !important;
  }

  #lineup .modern-monster-slot:nth-child(5),
  #lineup .v82-monster-slot:nth-child(5) {
    grid-column: auto;
    width: 100% !important;
  }

  #lineup .modern-booster-slots,
  #lineup .v82-booster-slots {
    grid-template-columns: 1fr !important;
  }

  #lineup .deck-collection-scroll,
  #lineup .modern-card-library,
  #lineup .v82-card-library {
    max-height: 70vh;
    grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important;
  }
}

/* v89 - volledig nieuwe line-up */
#lineup.active{padding:0;overflow:visible;height:auto}.new-lineup{display:grid;gap:14px}.new-lineup-head{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 20px}.new-lineup-head h2{margin:4px 0}.new-lineup-head p{margin:0;color:#aaa}.new-lineup-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}.new-lineup-layout{display:grid;grid-template-columns:minmax(430px,.9fr) minmax(520px,1.1fr);gap:14px;align-items:start}.new-lineup-active,.new-lineup-collection{padding:16px;min-width:0}.new-lineup-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.new-lineup-title span{display:block;color:#d8953f;font-size:11px;font-weight:900;letter-spacing:.14em}.new-lineup-title strong{font-size:13px;color:#ddd}.new-lineup-title>b{background:#17110d;border:1px solid #69482c;border-radius:999px;padding:6px 10px}.new-lineup-slots{display:grid;grid-template-columns:1fr 1fr;gap:10px}.new-lineup-slot{position:relative;min-height:145px;border:1px dashed #735235;border-radius:13px;background:linear-gradient(145deg,#15110f,#0c0d11);overflow:hidden}.new-lineup-slot:nth-child(5){grid-column:1/-1}.new-slot-number{position:absolute;z-index:3;top:7px;left:7px;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#d8953f;color:#160d07;font-weight:900}.new-empty-slot{height:100%;min-height:145px;display:grid;place-content:center;text-align:center;color:#777;gap:3px}.new-empty-slot small{font-size:11px}.new-slot-card{display:grid;grid-template-columns:112px 1fr;min-height:145px}.new-slot-card img{width:112px;height:145px;object-fit:cover}.new-slot-card>div{padding:16px 12px 10px}.new-slot-card small{color:#c89a69;font-size:10px}.new-slot-card h3{font-size:14px;margin:5px 26px 9px 0}.new-remove{position:absolute;z-index:5;right:7px;top:7px;width:27px;height:27px;padding:0;border-radius:50%;background:#2a1111;border:1px solid #883b3b}.new-card-stats{display:flex;gap:5px;flex-wrap:wrap}.new-card-stats span{font-size:11px;background:#090a0d;border:1px solid #353943;border-radius:7px;padding:4px 6px}.new-lineup-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:12px 0}.new-lineup-summary>div{background:#0b0c10;border:1px solid #292d35;border-radius:10px;padding:9px;text-align:center}.new-lineup-summary small{display:block;color:#888}.new-lineup-summary strong{color:#ffd18d}.new-booster-box{border-top:1px solid #2b2d34;padding-top:13px}.new-booster-slots{display:grid;grid-template-columns:1fr;gap:7px}.new-lineup-slot.booster{min-height:92px}.new-lineup-slot.booster .new-empty-slot{min-height:92px}.new-lineup-slot.booster .new-slot-card{min-height:92px;grid-template-columns:78px 1fr}.new-lineup-slot.booster .new-slot-card img{width:78px;height:92px}.new-lineup-filters{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:7px;margin-bottom:10px}.new-lineup-filters input,.new-lineup-filters select{min-width:0}.new-card-scroll{height:calc(100vh - 285px);min-height:520px;overflow-y:auto;padding-right:5px}.new-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.new-lineup-card{position:relative;background:#111319;border:1px solid #343842;border-radius:13px;overflow:hidden;transition:.16s}.new-lineup-card:hover{transform:translateY(-2px);border-color:#a96b35}.new-lineup-card.in-lineup{box-shadow:0 0 0 2px #3aa66d inset;opacity:.72}.new-card-art{position:relative;height:205px;background:#08090b}.new-card-art img{width:100%;height:100%;object-fit:cover}.new-level,.new-owned{position:absolute;bottom:7px;background:#090a0ddd;border:1px solid #b8783b;border-radius:999px;padding:3px 7px;font-size:10px;font-weight:900}.new-level{left:7px}.new-owned{right:7px}.new-card-info{padding:10px}.new-card-info small{color:#bf9469;font-size:10px}.new-card-info h3{font-size:14px;margin:4px 0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.new-card-info p{font-size:11px;min-height:34px;color:#aaa}.new-card-info .deck-add-button{width:100%;margin-top:9px}.new-lineup-card.in-lineup .deck-add-button{background:#244f38}.deck-save-state.saved{color:#72d59b}.deck-save-state.error{color:#ff8585}.deck-save-state.saving{color:#ffd18d}@media(max-width:1100px){.new-lineup-layout{grid-template-columns:1fr}.new-card-scroll{height:65vh}.new-lineup-filters{grid-template-columns:1fr 1fr}}@media(max-width:650px){.new-lineup-head{align-items:flex-start;flex-direction:column}.new-lineup-actions{justify-content:flex-start}.new-lineup-slots{grid-template-columns:1fr}.new-lineup-slot:nth-child(5){grid-column:auto}.new-card-grid{grid-template-columns:repeat(2,minmax(125px,1fr))}.new-card-art{height:170px}.new-lineup-filters{grid-template-columns:1fr}.new-lineup-summary{grid-template-columns:1fr 1fr}.new-slot-card{grid-template-columns:92px 1fr}.new-slot-card img{width:92px}}

/* v90 - Line-up cards restored as full collectible cards */
.new-lineup-layout{grid-template-columns:minmax(520px,.95fr) minmax(560px,1.05fr)}
.new-lineup-slots{grid-template-columns:repeat(2,minmax(220px,1fr));gap:16px;align-items:start}
.new-lineup-slot{min-height:390px;padding:10px;border-style:solid;border-color:#694b31;background:radial-gradient(circle at 50% 20%,#2b1b11,#0c0d11 68%);overflow:visible}
.new-lineup-slot:nth-child(5){grid-column:1/-1;width:min(260px,100%);justify-self:center}
.new-lineup-slot.filled{border-color:#c78a3d;box-shadow:0 0 0 1px #e0aa5a40,0 16px 30px #000a}
.new-lineup-slot .deck-slot-content{height:100%}
.new-lineup-slot .new-empty-slot{min-height:368px;border:1px dashed #77543b;border-radius:18px;background:linear-gradient(180deg,#17110eaa,#0b0c10cc)}
.new-slot-number{top:14px;left:14px;z-index:30;box-shadow:0 4px 12px #000b}
.new-remove{z-index:35;right:14px;top:14px}
.slotted-game-card{height:368px;min-height:368px;padding:14px 13px 16px;grid-template-rows:auto minmax(0,47%) auto auto minmax(42px,1fr) auto}
.slotted-game-card .ugc-art{min-height:0}
.slotted-game-card .ugc-ability span{-webkit-line-clamp:2;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}
.new-booster-slots{grid-template-columns:repeat(3,minmax(150px,1fr));gap:10px}
.new-lineup-slot.booster{min-height:300px;padding:8px}
.new-lineup-slot.booster .new-empty-slot{min-height:282px}
.new-lineup-slot.booster .slotted-game-card{height:282px;min-height:282px;grid-template-rows:auto minmax(0,52%) auto minmax(52px,1fr)}
.new-lineup-slot.booster .ugc-stats,.new-lineup-slot.booster .ugc-matchups{display:none}
.new-lineup-card{height:410px;min-height:410px;padding:14px 13px 16px!important;display:grid!important;grid-template-rows:auto minmax(0,48%) auto auto minmax(44px,1fr) auto auto!important;border-radius:22px!important;overflow:hidden!important;transition:transform .16s,filter .16s,opacity .16s!important}
.new-lineup-card:hover{transform:translateY(-5px) scale(1.01);filter:brightness(1.08)}
.new-lineup-card.in-lineup{opacity:.62;box-shadow:0 0 0 3px #45bd7b inset,0 15px 32px #000c!important}
.new-lineup-card.in-lineup:before{content:'IN LINE-UP';position:absolute;z-index:40;top:42%;left:50%;transform:translate(-50%,-50%) rotate(-8deg);padding:7px 12px;border:2px solid #79e3a2;border-radius:8px;background:#0c2b1dde;color:#baf6ce;font-weight:900;font-size:12px;letter-spacing:.08em;white-space:nowrap}
.new-lineup-card .ugc-art{margin:0 8px;min-height:0}
.new-lineup-card .ugc-name strong{font-size:14px}
.new-lineup-card .ugc-ability span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.new-lineup-card .deck-add-button{z-index:25;margin:2px 11px 0;width:auto;padding:7px 8px;font-size:11px}
.new-lineup-card.in-lineup .deck-add-button{background:#244f38}
.new-card-grid{grid-template-columns:repeat(2,minmax(220px,1fr));gap:16px;padding:6px}
.new-card-scroll{height:calc(100vh - 285px);min-height:620px}
.new-lineup-card .element-badge{z-index:8}
@media(max-width:1250px){.new-lineup-layout{grid-template-columns:1fr}.new-card-scroll{height:70vh}.new-card-grid{grid-template-columns:repeat(2,minmax(200px,1fr))}}
@media(max-width:720px){.new-lineup-slots{grid-template-columns:1fr}.new-lineup-slot:nth-child(5){grid-column:auto;width:100%}.new-booster-slots{grid-template-columns:1fr}.new-card-grid{grid-template-columns:repeat(2,minmax(145px,1fr));gap:9px}.new-lineup-card{height:350px;min-height:350px;padding:11px 10px 13px!important}.new-lineup-card .ugc-ability,.new-lineup-card .ugc-matchups{display:none}.new-lineup-card .ugc-name strong{font-size:12px}.new-lineup-card .ugc-stats span{font-size:8px}.new-lineup-slot{min-height:370px}.slotted-game-card{height:348px;min-height:348px}}

/* ==========================================================================
   V92 — Compact collectible-card line-up
   Keeps artwork inside the card frame and removes excessive empty space.
   ========================================================================== */
#lineup .new-lineup-layout{
  grid-template-columns:minmax(520px,.92fr) minmax(610px,1.08fr);
  gap:16px;
}
#lineup .new-lineup-slots{
  grid-template-columns:repeat(3,minmax(155px,1fr));
  gap:12px;
}
#lineup .new-lineup-slot,
#lineup .new-lineup-slot:nth-child(5){
  grid-column:auto;
  width:auto;
  min-height:338px;
  padding:7px;
  border-radius:16px;
  overflow:hidden;
}
#lineup .new-lineup-slot .new-empty-slot{
  min-height:322px;
  border-radius:12px;
}
#lineup .slotted-game-card,
#lineup .new-lineup-card{
  box-sizing:border-box;
  width:100%;
  height:338px;
  min-height:338px;
  padding:10px 9px 11px!important;
  gap:3px;
  border-radius:17px!important;
  overflow:hidden!important;
  grid-template-rows:18px 154px 38px 29px 58px 17px 34px!important;
}
#lineup .new-lineup-card{
  max-width:230px;
  justify-self:center;
}
#lineup .new-card-grid{
  grid-template-columns:repeat(3,minmax(175px,1fr));
  gap:12px;
  padding:4px;
  align-items:start;
}
#lineup .new-card-scroll{
  min-height:560px;
}
#lineup .universal-game-card .ugc-topline{
  padding:0 10px 0 7px;
  font-size:8px;
  line-height:18px;
  white-space:nowrap;
}
#lineup .universal-game-card .ugc-art{
  position:relative;
  width:auto;
  height:154px;
  min-height:154px;
  margin:0 5px;
  border-radius:7px;
  overflow:hidden!important;
  isolation:isolate;
  clip-path:inset(0 round 7px);
  background:#050608;
}
#lineup .universal-game-card .ugc-art img{
  display:block;
  width:100%!important;
  height:100%!important;
  max-width:100%;
  max-height:100%;
  object-fit:cover!important;
  object-position:center center;
  transform-origin:center center;
}
#lineup .universal-game-card .ugc-art .element-badge{
  z-index:6;
  max-width:30px;
  max-height:30px;
}
#lineup .universal-game-card .ugc-name{
  padding:3px 8px 1px;
  min-height:38px;
  display:grid;
  align-content:center;
}
#lineup .universal-game-card .ugc-name strong{
  font-size:13px;
  line-height:1.05;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
#lineup .universal-game-card .ugc-name small{
  margin-top:2px;
  font-size:8px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
#lineup .universal-game-card .ugc-stats{
  padding:0 7px;
  gap:3px;
}
#lineup .universal-game-card .ugc-stats span{
  padding:3px 1px;
  font-size:8px;
  border-radius:5px;
}
#lineup .universal-game-card .ugc-ability{
  min-height:58px;
  max-height:58px;
  margin:0 7px;
  padding:5px 6px;
  gap:2px;
  overflow:hidden;
}
#lineup .universal-game-card .ugc-ability b{
  font-size:8px;
  line-height:1.05;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
#lineup .universal-game-card .ugc-ability span{
  font-size:7.5px;
  line-height:1.2;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
#lineup .universal-game-card .ugc-matchups{
  margin:0 8px;
  font-size:7px;
  line-height:17px;
  white-space:nowrap;
  overflow:hidden;
}
#lineup .universal-game-card .ugc-matchups span{
  max-width:48%;
  overflow:hidden;
  text-overflow:ellipsis;
}
#lineup .new-lineup-card .deck-add-button{
  align-self:end;
  height:34px;
  min-height:34px;
  margin:0 7px;
  padding:5px 6px;
  font-size:9px;
  line-height:1;
  border-radius:7px;
}
#lineup .new-lineup-card.in-lineup:before{
  top:40%;
  padding:5px 8px;
  font-size:9px;
}
#lineup .new-slot-number{
  top:10px;
  left:10px;
  width:22px;
  height:22px;
  font-size:10px;
}
#lineup .new-remove{
  top:10px;
  right:10px;
  width:24px;
  height:24px;
}
#lineup .new-booster-slots{
  grid-template-columns:repeat(3,minmax(135px,1fr));
}
#lineup .new-lineup-slot.booster{
  min-height:275px;
}
#lineup .new-lineup-slot.booster .new-empty-slot{
  min-height:259px;
}
#lineup .new-lineup-slot.booster .slotted-game-card{
  height:259px;
  min-height:259px;
  grid-template-rows:18px 130px 38px 58px!important;
}
#lineup .new-lineup-slot.booster .ugc-matchups,
#lineup .new-lineup-slot.booster .ugc-stats,
#lineup .new-lineup-slot.booster .deck-add-button{
  display:none!important;
}
@media(max-width:1400px){
  #lineup .new-card-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}
  #lineup .new-lineup-slots{grid-template-columns:repeat(2,minmax(170px,1fr))}
}
@media(max-width:1150px){
  #lineup .new-lineup-layout{grid-template-columns:1fr}
  #lineup .new-lineup-slots{grid-template-columns:repeat(3,minmax(155px,1fr))}
  #lineup .new-card-grid{grid-template-columns:repeat(3,minmax(175px,1fr))}
}
@media(max-width:760px){
  #lineup .new-lineup-slots,
  #lineup .new-card-grid{grid-template-columns:repeat(2,minmax(140px,1fr))}
  #lineup .new-lineup-card{height:320px;min-height:320px;grid-template-rows:17px 140px 36px 27px 54px 16px 30px!important}
  #lineup .universal-game-card .ugc-art{height:140px;min-height:140px}
}
@media(max-width:430px){
  #lineup .new-lineup-slots,
  #lineup .new-card-grid{grid-template-columns:1fr}
  #lineup .new-lineup-card{max-width:230px}
}


/* ========================================================================== 
   V93 — Readable line-up cards, scrollable collection and working interaction
   ========================================================================== */
#lineup .new-lineup-layout{
  grid-template-columns:minmax(500px,.9fr) minmax(570px,1.1fr);
  align-items:start;
}
#lineup .new-card-scroll{
  height:min(72vh,820px);
  min-height:560px;
  overflow-y:auto;
  overflow-x:hidden;
  padding:6px 9px 18px 5px;
  scrollbar-gutter:stable;
  overscroll-behavior:contain;
}
#lineup .new-card-grid{
  grid-template-columns:repeat(2,minmax(220px,1fr));
  gap:15px;
}
#lineup .new-lineup-card{
  max-width:270px;
  height:382px;
  min-height:382px;
  grid-template-rows:19px 172px 42px 31px 68px 18px 36px!important;
  cursor:pointer;
}
#lineup .new-lineup-card .ugc-art{
  height:172px;
  min-height:172px;
}
#lineup .new-lineup-card .ugc-name strong{font-size:14px}
#lineup .new-lineup-card .ugc-name small{font-size:9px}
#lineup .new-lineup-card .ugc-stats span{font-size:9px;padding:4px 2px}
#lineup .new-lineup-card .ugc-ability{min-height:68px;max-height:68px}
#lineup .new-lineup-card .ugc-ability b{font-size:9px}
#lineup .new-lineup-card .ugc-ability span{font-size:8.5px;line-height:1.25;-webkit-line-clamp:4}
#lineup .new-lineup-card .ugc-matchups{font-size:8px}
#lineup .new-lineup-card .deck-add-button{height:36px;min-height:36px;font-size:10px}
#lineup .new-lineup-card.is-dragging{opacity:.45;transform:scale(.98)}
#lineup .new-lineup-slot.drag-over{border-color:#f1b34d!important;box-shadow:0 0 0 2px #f1b34d99,0 0 24px #f1b34d66!important}
#lineup .new-lineup-slot.drag-over .new-empty-slot{background:#3b2814cc;color:#ffe0a1}
@media(max-width:1250px){
  #lineup .new-lineup-layout{grid-template-columns:1fr}
  #lineup .new-card-scroll{height:min(68vh,760px)}
  #lineup .new-card-grid{grid-template-columns:repeat(3,minmax(190px,1fr))}
}
@media(max-width:900px){
  #lineup .new-card-grid{grid-template-columns:repeat(2,minmax(175px,1fr))}
}
@media(max-width:520px){
  #lineup .new-card-grid{grid-template-columns:1fr}
  #lineup .new-lineup-card{max-width:270px;margin-inline:auto}
  #lineup .new-card-scroll{height:68vh;min-height:480px}
}

/* V101 - live kaarttafel */
.table-battle-box{max-width:1120px}.coin-toss-stage{display:grid;place-items:center;gap:8px;padding:10px 0 14px}.battle-coin{width:74px;height:74px;position:relative;transform-style:preserve-3d;transition:transform 1.8s cubic-bezier(.2,.75,.2,1);filter:drop-shadow(0 12px 12px #0008)}.battle-coin span{position:absolute;inset:0;display:grid;place-items:center;border-radius:50%;backface-visibility:hidden;border:5px solid #8a5f18;background:radial-gradient(circle at 35% 30%,#ffe69a,#d29b2f 55%,#7a4a0c);color:#241400;font-weight:900}.battle-coin .coin-tails{transform:rotateY(180deg);background:radial-gradient(circle at 35% 30%,#d9d9d9,#929292 55%,#3c3c3c);border-color:#666}.battle-coin.tossing{animation:coinToss 1.8s cubic-bezier(.2,.75,.2,1)}@keyframes coinToss{0%{transform:translateY(0) rotateY(0) rotateX(0)}45%{transform:translateY(-110px) rotateY(900deg) rotateX(360deg)}100%{transform:translateY(0) rotateY(1800deg) rotateX(720deg)}}.card-table-wrap{display:grid;grid-template-rows:auto minmax(340px,1fr) auto;gap:12px}.card-table{position:relative;min-height:390px;border:12px solid #4b2f1c;border-radius:34px;background:radial-gradient(ellipse at center,#24593f 0,#173c2c 62%,#0d251b 100%);box-shadow:inset 0 0 70px #000b,0 20px 45px #0008;overflow:hidden}.card-table:before{content:"";position:absolute;inset:16px;border:2px solid #d7bb6a66;border-radius:22px}.table-felt-mark{position:absolute;left:50%;top:50%;width:180px;height:180px;border:2px solid #d7bb6a33;border-radius:50%;transform:translate(-50%,-50%)}.table-center-badge{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;display:grid;place-items:center;border-radius:50%;background:#111b;border:2px solid #c99b43;color:#efc86f;font-weight:900;z-index:5}.played-table-card{position:absolute;width:190px;aspect-ratio:2/3;border-radius:16px;border:2px solid #b58a43;background:#15110c;overflow:hidden;box-shadow:0 20px 30px #000a;transition:transform .6s ease,opacity .45s ease}.played-table-card img{width:100%;height:100%;object-fit:cover}.played-table-card .played-card-info{position:absolute;left:0;right:0;bottom:0;padding:10px;background:linear-gradient(transparent,#000 35%);color:#fff}.played-table-card .played-card-info b,.played-table-card .played-card-info small{display:block}.played-table-card.empty{display:grid;place-items:center;color:#a99f8a;border-style:dashed;opacity:.38}.home-played{left:18%;bottom:36px;transform:translateY(130%) rotate(-8deg);opacity:0}.away-played{right:18%;top:36px;transform:translateY(-130%) rotate(8deg);opacity:0}.played-table-card.on-table{transform:translateY(0) rotate(0);opacity:1}.played-table-card.card-impact{animation:tableImpact .55s ease}@keyframes tableImpact{0%{scale:.92}60%{scale:1.06}100%{scale:1}}.table-hand{justify-content:center;padding:8px 0}.table-hand .mini-card{max-width:115px;cursor:default}.table-hand .mini-card.active-card{transform:translateY(-7px);box-shadow:0 0 22px #eab85a88}.turn-instruction{margin:12px 0;padding:12px 16px;border:1px solid #806233;background:#18130b;border-radius:12px;text-align:center;color:#f2d394;font-weight:700}.table-battle-log{max-height:170px;overflow:auto}@media(max-width:760px){.played-table-card{width:132px}.home-played{left:8%}.away-played{right:8%}.card-table{min-height:300px}.scoreboard strong{font-size:32px}}

/* V107 live battle table + synchronized realm weather */
.table-battle-box{max-width:1050px;background:radial-gradient(circle at 50% 35%,rgba(68,102,79,.3),rgba(12,18,24,.97) 62%);border:1px solid rgba(220,186,92,.42)}
.battle-weather{display:flex;align-items:center;justify-content:center;gap:.55rem;margin:.35rem auto .8rem;padding:.48rem .85rem;width:max-content;max-width:94%;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(4,10,14,.7);box-shadow:0 6px 22px rgba(0,0,0,.24)}
.battle-weather>span{font-size:1.45rem}.battle-weather small{opacity:.78}.battle-weather[data-weather="rain"],.battle-weather[data-weather="storm"]{box-shadow:0 0 26px rgba(94,163,255,.18)}.battle-weather[data-weather="sunny"],.battle-weather[data-weather="clear"]{box-shadow:0 0 26px rgba(255,196,78,.18)}
.battle-side-label{text-align:center;font-size:.78rem;letter-spacing:.22em;font-weight:800;opacity:.78;margin:.15rem 0 .45rem}
.table-away-side{order:1}.card-table{order:2}.table-home-side{order:3}
.card-table-wrap{display:flex;flex-direction:column;gap:.7rem}
.table-hand{display:flex;justify-content:center;gap:.65rem;flex-wrap:nowrap;overflow-x:auto;padding:.3rem .45rem .65rem}
.battle-hand-card{position:relative;flex:0 0 112px;height:158px;border-radius:12px;border:1px solid rgba(255,255,255,.18);padding:0;overflow:hidden;background:#141923;color:#fff;box-shadow:0 8px 20px rgba(0,0,0,.35);transition:.18s transform,.18s filter,.18s opacity}
button.battle-hand-card:hover:not(:disabled){transform:translateY(-9px) scale(1.035);z-index:3}
.battle-hand-card img{width:100%;height:112px;object-fit:cover;display:block}.battle-hand-card span:not(.card-back span){display:block;font-size:.72rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:.3rem .35rem 0}.battle-hand-card small{display:block;font-size:.62rem;opacity:.72;padding:.08rem .35rem}
.battle-hand-card.used{filter:grayscale(1);opacity:.35;transform:scale(.92)}.battle-hand-card.active{outline:2px solid rgba(240,196,85,.9);box-shadow:0 0 22px rgba(240,196,85,.28)}
.card-back{display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle,#502c67 0,#191129 58%,#080711 100%);border:2px solid #b48b43;box-shadow:inset 0 0 0 5px #211733,0 8px 20px rgba(0,0,0,.38)}.card-back b{font-size:2.25rem;color:#e6bd61;text-shadow:0 0 14px rgba(230,189,97,.65)}.card-back span{font-size:.62rem;letter-spacing:.16em}.card-back small{letter-spacing:.12em}
.choice-countdown{text-align:center;margin-top:.25rem;font-size:.9rem}.choice-countdown b{font-size:1.5rem;color:#f1c75c}.choice-countdown.urgent b{color:#ff5d5d;animation:battlePulse .7s infinite alternate}@keyframes battlePulse{to{transform:scale(1.15);text-shadow:0 0 12px #ff3b3b}}
@media(max-width:700px){.battle-hand-card{flex-basis:88px;height:132px}.battle-hand-card img{height:88px}.battle-weather{font-size:.78rem}.battle-weather small{display:none}}

/* V108 MonsterDex - permanent discoveries and rarity catalogue */
.monsterdex-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(130deg,#111a16,#25180f 70%,#0a0d0b);border-color:#735331}.monsterdex-hero h2{font-size:clamp(32px,5vw,58px);margin:4px 0;color:#f3c77f}.monsterdex-hero p{max-width:760px;color:#bbc5bd}.monsterdex-total{min-width:170px;text-align:center;padding:20px;border-radius:18px;background:#090d0bd9;border:1px solid #8d6939}.monsterdex-total strong,.monsterdex-total span{display:block}.monsterdex-total strong{font-size:32px;color:#ffd991}.monsterdex-total span{text-transform:uppercase;letter-spacing:.14em;font-size:11px;color:#9eaa9f}.monsterdex-progress-label{display:flex;justify-content:space-between;gap:12px}.monsterdex-progress-track,.dex-rarity-box>div{height:10px;border-radius:999px;overflow:hidden;background:#070a08;margin-top:10px}.monsterdex-progress-track i,.dex-rarity-box i{display:block;height:100%;background:linear-gradient(90deg,#8d5f2f,#f0c36b);border-radius:inherit}.monsterdex-rarity-summary{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:12px;margin:14px 0}.dex-rarity-box{padding:14px;border-radius:14px;background:#101510;border:1px solid #485047}.dex-rarity-box span,.dex-rarity-box strong{display:block}.dex-rarity-box span{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#abb5ad}.dex-rarity-box strong{font-size:23px;margin-top:4px}.dex-rarity-box.rarity-zilver,.dex-rarity-box.rarity-silver{border-color:#9ca7b1}.dex-rarity-box.rarity-goud,.dex-rarity-box.rarity-gold{border-color:#c99632}.dex-rarity-box.rarity-legendary{border-color:#f0c14e;box-shadow:0 0 20px #e6ad2933}.monsterdex-tools{grid-template-columns:minmax(220px,1fr) repeat(3,minmax(150px,190px))}.monsterdex-card{min-height:0;transition:transform .18s ease,box-shadow .18s ease}.monsterdex-card:hover{transform:translateY(-5px);box-shadow:0 18px 38px #000b}.monsterdex-card .monsterdex-art{height:310px}.monsterdex-card.undiscovered{filter:saturate(.35)}.monsterdex-card.undiscovered:hover{filter:saturate(.55)}.mystery-monster{font-size:0}.mystery-monster span{font-size:120px;color:#3b4655;text-shadow:0 0 34px #8191aa44}.dex-title{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.dex-title span{font-size:11px;border-radius:999px;padding:5px 8px;background:#142019;color:#9fd7ad;white-space:nowrap}.undiscovered .dex-title span{background:#171a20;color:#89919d}.dex-found{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #293229;padding-top:10px;color:#9da89f;font-size:11px}.dex-hidden-copy{color:#7f8894;min-height:60px}.monsterdex-card[hidden]{display:none!important}@media(max-width:900px){.monsterdex-rarity-summary{grid-template-columns:repeat(2,1fr)}.monsterdex-tools{grid-template-columns:1fr 1fr}.monsterdex-hero{align-items:flex-start;flex-direction:column}.monsterdex-total{width:100%}}@media(max-width:560px){.monsterdex-rarity-summary,.monsterdex-tools{grid-template-columns:1fr}.monsterdex-card .monsterdex-art{height:260px}}

/* V110 line-up card zoom and drag feedback */
body.card-zoom-open{overflow:hidden}
.new-lineup-card{cursor:zoom-in;user-select:none;-webkit-user-drag:element;touch-action:pan-y}
.new-lineup-card.is-dragging,.new-lineup-slot.is-dragging{opacity:.48;cursor:grabbing}
.new-lineup-slot.drag-over{outline:3px solid #f2b55d;outline-offset:3px;box-shadow:0 0 28px #e69a3d88}
.deck-slot-content.filled,.new-lineup-slot.filled .deck-slot-content{cursor:zoom-in}
.lineup-card-zoom{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:22px}
.lineup-card-zoom.hidden{display:none}
.lineup-card-zoom-backdrop{position:absolute;inset:0;background:rgba(2,3,6,.88);backdrop-filter:blur(8px)}
.lineup-card-zoom-dialog{position:relative;z-index:1;width:min(430px,92vw);max-height:94vh;display:flex;justify-content:center;animation:lineupZoomIn .18s ease-out}
.lineup-card-zoom-content{width:100%;max-height:94vh;overflow:auto;padding:8px}
.lineup-card-zoom-close{position:absolute;right:-10px;top:-10px;z-index:4;width:42px;height:42px;border-radius:50%;border:1px solid #dba35d;background:#17100c;color:#fff;font-size:27px;line-height:1;cursor:pointer;box-shadow:0 6px 20px #0008}
.zoom-game-card{width:100%;min-height:610px;box-shadow:0 24px 70px #000,0 0 38px #b8753455;transform:none!important}
.zoom-game-card .ugc-art{height:310px!important}
.zoom-game-card .ugc-name strong{font-size:22px}
.zoom-game-card .ugc-stats{font-size:16px}
.zoom-game-card .ugc-ability,.zoom-game-card .ugc-matchups{font-size:14px;line-height:1.45}
@keyframes lineupZoomIn{from{opacity:0;transform:scale(.88) translateY(18px)}to{opacity:1;transform:scale(1) translateY(0)}}
@media(max-width:600px){.lineup-card-zoom{padding:10px}.lineup-card-zoom-dialog{width:min(390px,96vw)}.zoom-game-card{min-height:540px}.zoom-game-card .ugc-art{height:260px!important}.lineup-card-zoom-close{right:2px;top:2px}}


/* V112 live battle layering and full-card animation fix */
.coin-toss-stage{max-height:150px;overflow:hidden;opacity:1;transition:max-height .45s ease,opacity .35s ease,padding .45s ease,margin .45s ease}
.coin-toss-stage.is-finished{max-height:0;opacity:0;padding-top:0!important;padding-bottom:0!important;margin:0;pointer-events:none}
.card-table{isolation:isolate}
.table-felt-mark{z-index:1}
.played-table-card{z-index:3}
.table-center-badge{z-index:4}
.attack-effect{z-index:8}
.played-table-card.strike.home-played{animation:playedStrikeHome .72s ease-in-out}
.played-table-card.strike.away-played{animation:playedStrikeAway .72s ease-in-out}
.played-table-card.hit{animation:playedCardHit .42s linear}
.played-table-card.defending{filter:drop-shadow(0 0 18px #9dd9ff)}
.played-table-card.dodging{animation:playedCardDodge .55s ease}
@keyframes playedStrikeHome{0%,100%{transform:translateY(0)}50%{transform:translate(90px,-38px) rotate(3deg) scale(1.04)}}
@keyframes playedStrikeAway{0%,100%{transform:translateY(0)}50%{transform:translate(-90px,38px) rotate(-3deg) scale(1.04)}}
@keyframes playedCardHit{0%,100%{translate:0 0}25%{translate:-8px 0}50%{translate:8px 0}75%{translate:-5px 0}}
@keyframes playedCardDodge{0%,100%{translate:0 0}50%{translate:45px 0;opacity:.55}}

/* V113 live kaartkeuze */
.battle-hand-card.can-choose{cursor:pointer;transform:translateY(-4px);box-shadow:0 0 0 2px rgba(231,180,63,.85),0 10px 24px rgba(0,0,0,.45);animation:battleChoicePulse 1.35s ease-in-out infinite}
.battle-hand-card.can-choose:hover{transform:translateY(-12px) scale(1.045);z-index:5}
.choice-countdown.hidden{visibility:hidden}
@keyframes battleChoicePulse{50%{box-shadow:0 0 0 4px rgba(231,180,63,.25),0 14px 28px rgba(0,0,0,.5)}}

/* ========================================================================== 
   V114 — Compacte line-up en bereikbare booster-slots
   ========================================================================== */
#lineup .new-lineup-active{
  position:sticky;
  top:12px;
  max-height:calc(100vh - 24px);
  overflow-y:auto;
  scrollbar-gutter:stable;
}
#lineup .new-lineup-slots{
  grid-template-columns:repeat(3,minmax(135px,1fr));
  gap:9px;
}
#lineup .new-lineup-slot,
#lineup .new-lineup-slot:nth-child(5){
  min-height:246px;
  height:246px;
  padding:5px;
  width:auto;
  grid-column:auto;
}
#lineup .new-lineup-slot .new-empty-slot{
  min-height:234px;
}
#lineup .slotted-game-card{
  height:234px;
  min-height:234px;
  padding:7px 6px 8px!important;
  grid-template-rows:15px 106px 31px 24px 35px 13px!important;
  border-radius:13px!important;
}
#lineup .slotted-game-card .ugc-art{
  height:106px;
  min-height:106px;
  margin:0 3px;
}
#lineup .slotted-game-card .ugc-topline{font-size:7px;line-height:15px;padding:0 5px}
#lineup .slotted-game-card .ugc-name{min-height:31px;padding:2px 5px 0}
#lineup .slotted-game-card .ugc-name strong{font-size:10px;-webkit-line-clamp:1}
#lineup .slotted-game-card .ugc-name small{font-size:7px}
#lineup .slotted-game-card .ugc-stats{padding:0 4px;gap:2px}
#lineup .slotted-game-card .ugc-stats span{font-size:7px;padding:2px 1px}
#lineup .slotted-game-card .ugc-ability{min-height:35px;max-height:35px;margin:0 4px;padding:3px 4px}
#lineup .slotted-game-card .ugc-ability b{font-size:7px}
#lineup .slotted-game-card .ugc-ability span{font-size:6.5px;-webkit-line-clamp:2}
#lineup .slotted-game-card .ugc-matchups{font-size:6px;line-height:13px;margin:0 5px}
#lineup .new-lineup-summary{margin:8px 0;gap:5px}
#lineup .new-lineup-summary>div{padding:6px 4px}
#lineup .new-booster-box{padding-top:8px}
#lineup .new-booster-box .new-lineup-title{margin-bottom:7px}
#lineup .new-booster-slots{grid-template-columns:repeat(3,minmax(110px,1fr));gap:7px}
#lineup .new-lineup-slot.booster{
  min-height:142px;
  height:142px;
  padding:4px;
}
#lineup .new-lineup-slot.booster .new-empty-slot{min-height:132px}
#lineup .new-lineup-slot.booster .slotted-game-card{
  height:132px;
  min-height:132px;
  grid-template-rows:14px 70px 28px 18px!important;
  padding:5px!important;
}
#lineup .new-lineup-slot.booster .ugc-art{height:70px;min-height:70px}
#lineup .new-lineup-slot.booster .ugc-name{min-height:28px}
#lineup .new-lineup-slot.booster .ugc-ability{min-height:18px;max-height:18px;padding:2px 3px}
#lineup .new-lineup-slot.booster .ugc-ability span{display:none}
#lineup .new-lineup-slot.drag-over{
  border-color:#ffd16e!important;
  box-shadow:0 0 0 3px #ffd16e55,0 0 25px #ff9d2e55!important;
}
@media(max-width:1150px){
  #lineup .new-lineup-active{position:relative;top:auto;max-height:none;overflow:visible}
}
@media(max-width:720px){
  #lineup .new-lineup-slots{grid-template-columns:repeat(2,minmax(135px,1fr))}
  #lineup .new-lineup-slot,#lineup .new-lineup-slot:nth-child(5){height:236px;min-height:236px}
  #lineup .slotted-game-card{height:224px;min-height:224px}
  #lineup .new-booster-slots{grid-template-columns:repeat(3,minmax(85px,1fr))}
}


/* V118 competition browser and standings zones */
.league-table-row.promotion-zone{background:linear-gradient(90deg,rgba(42,160,82,.32),rgba(42,160,82,.08));border-left:4px solid #46d879}.league-table-row.relegation-zone{background:linear-gradient(90deg,rgba(190,45,52,.34),rgba(190,45,52,.08));border-left:4px solid #ff5d68}.league-zone-legend{display:flex;gap:14px;flex-wrap:wrap;margin:10px 0}.league-zone-legend span{padding:7px 12px;border-radius:999px;font-weight:800}.league-zone-legend .promotion{background:rgba(42,160,82,.3);color:#a8ffc2}.league-zone-legend .relegation{background:rgba(190,45,52,.3);color:#ffb5ba}.league-browser-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;max-height:520px;overflow:auto;padding:4px}.league-browser-card{display:flex;flex-direction:column;gap:5px;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(0,0,0,.22);text-decoration:none;color:inherit}.league-browser-card:hover,.league-browser-card.active{border-color:#e0ae4d;transform:translateY(-1px);background:rgba(224,174,77,.12)}

/* ========================================================================== 
   V123 — Clean unified card frame fix
   Removes the stretched bitmap frame that caused thick vertical lines through
   card artwork and content. The frame is now rendered with CSS on the outside.
   ========================================================================== */
:root{
  --card-surface:#120e0b;
  --card-surface-2:#21170f;
  --card-line:#8f672f;
  --card-line-bright:#d3a34c;
}

.universal-game-card,
.deck-collection-card,
#collectionGrid .card,
.training-card,
.evolution-card,
.mini-card,
.monsterdex-card,
.season-new-card,
.admin-game-card{
  background:
    radial-gradient(circle at 50% 0,rgba(218,164,76,.12),transparent 32%),
    linear-gradient(180deg,var(--card-surface-2),var(--card-surface) 34%,#0c0907)!important;
  border:1px solid var(--card-line)!important;
  border-radius:18px!important;
  box-shadow:
    0 14px 30px rgba(0,0,0,.72),
    inset 0 0 0 2px rgba(15,10,6,.92),
    inset 0 0 0 3px rgba(211,163,76,.32)!important;
  overflow:hidden!important;
  isolation:isolate;
}

.universal-game-card::before,
.deck-collection-card::before,
#collectionGrid .card::before,
.training-card::before,
.evolution-card::before,
.mini-card::before,
.monsterdex-card::before,
.season-new-card::before,
.admin-game-card::before{
  content:"";
  position:absolute;
  inset:6px;
  border:1px solid rgba(219,171,88,.34);
  border-radius:13px;
  pointer-events:none;
  z-index:40;
}

.universal-game-card::after,
.deck-collection-card::after,
#collectionGrid .card::after,
.training-card::after,
.evolution-card::after,
.mini-card::after,
.monsterdex-card::after,
.season-new-card::after,
.admin-game-card::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  z-index:39;
  box-shadow:inset 0 0 24px rgba(0,0,0,.68);
  background:none!important;
}

/* Rarity changes only the outer frame; it never overlays the card artwork. */
.rarity-bronze,.rarity-brons{--card-line:#865027;--card-line-bright:#b87335}
.rarity-silver,.rarity-zilver{--card-line:#86909a;--card-line-bright:#d7dce1;filter:none!important}
.rarity-gold,.rarity-goud{--card-line:#b98225;--card-line-bright:#efc66c;filter:none!important}
.rarity-legendary{--card-line:#d6a132;--card-line-bright:#ffe28a;filter:none!important;box-shadow:0 15px 34px rgba(0,0,0,.76),0 0 18px rgba(233,175,57,.24),inset 0 0 0 2px #0c0805,inset 0 0 0 3px rgba(255,215,126,.45)!important}
.rarity-ancient-legendary{--card-line:#b85e2c;--card-line-bright:#f0a35f;filter:none!important}
.rarity-mythic{--card-line:#7f4fb8;--card-line-bright:#c98cff;filter:none!important}

/* Artwork is a single clean window. No decorative line may cross it. */
.ugc-art,
.v82-collection-card .deck-card-art,
#collectionGrid .card .art,
.monsterdex-card .monsterdex-art,
.training-card .card-art-frame,
.evolution-card .evolution-art,
.admin-game-card .card-art,
.season-new-card>img{
  position:relative;
  z-index:2;
  background:#050505!important;
  border:1px solid rgba(202,151,72,.72)!important;
  border-radius:10px!important;
  overflow:hidden!important;
  box-shadow:inset 0 0 16px rgba(0,0,0,.72)!important;
}

.ugc-art::before,.ugc-art::after,
.v82-collection-card .deck-card-art::before,.v82-collection-card .deck-card-art::after,
#collectionGrid .card .art::before,#collectionGrid .card .art::after{
  content:none!important;
  display:none!important;
}

.ugc-art img,
.v82-collection-card .deck-card-art img,
#collectionGrid .card .art img,
.monsterdex-card .monsterdex-art img,
.training-card .card-art-frame img,
.evolution-card .evolution-art img,
.admin-game-card .card-art img,
.season-new-card>img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  border:0!important;
  box-shadow:none!important;
}

/* Keep every text panel above the surface and below the decorative outline. */
.ugc-topline,.ugc-name,.ugc-stats,.ugc-ability,.ugc-lore,.ugc-matchups,
.deck-card-info,.deck-card-title-row,.deck-card-stats,.deck-card-ability,.deck-card-lore,.deck-card-matchups,
#collectionGrid .card h3,#collectionGrid .card>small,#collectionGrid .card .stats,#collectionGrid .card .lore{
  position:relative;
  z-index:3;
}

.ugc-name{
  margin:0 8px;
  padding:7px 8px 5px;
  background:linear-gradient(90deg,transparent,rgba(0,0,0,.58) 12%,rgba(0,0,0,.58) 88%,transparent);
  border-top:1px solid rgba(201,148,67,.35);
  border-bottom:1px solid rgba(201,148,67,.35);
}
.ugc-name strong{overflow-wrap:anywhere;text-wrap:balance}
.ugc-stats span{min-width:0;white-space:nowrap}
.ugc-ability,.ugc-lore{overflow:hidden}

/* Compact collection cards retain readable proportions. */
.v82-collection-card{padding:14px 13px 16px!important}
.v82-collection-card .deck-card-art{margin:14px 7px 0!important}
#collectionGrid .card{padding:16px 15px 18px!important}
#collectionGrid .card .art{margin:14px 7px 0!important}

@media(max-width:700px){
  .universal-game-card,.deck-collection-card,#collectionGrid .card,.monsterdex-card{border-radius:15px!important}
  .universal-game-card::before,.deck-collection-card::before,#collectionGrid .card::before,.monsterdex-card::before{inset:5px;border-radius:10px}
}

/* V124 - Owner-managed VIP Pass Wheel */
.vip-wheel-section{display:grid;grid-template-columns:minmax(250px,1fr) minmax(310px,460px);gap:34px;align-items:center;margin:24px 0 34px;padding:28px;border:1px solid rgba(216,169,47,.42);border-radius:22px;background:radial-gradient(circle at 82% 42%,rgba(124,65,190,.2),transparent 34%),linear-gradient(145deg,rgba(15,17,23,.98),rgba(31,22,12,.96));box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 18px 45px rgba(0,0,0,.35)}
.vip-wheel-copy h2{font-size:clamp(1.8rem,3vw,3rem);margin:.25rem 0 .7rem}.vip-wheel-copy>p{max-width:580px;color:#bbb}
.vip-grand-prize{position:relative;overflow:hidden;display:grid;gap:4px;margin-top:22px;padding:18px 20px;border:1px solid #f1cb61;border-radius:14px;background:linear-gradient(135deg,#4b3105,#d8a92f 45%,#5c3a05);color:#160e02;box-shadow:0 0 25px rgba(216,169,47,.38),inset 0 1px rgba(255,255,255,.45)}
.vip-grand-prize:after{content:"";position:absolute;inset:-80% -35%;background:linear-gradient(105deg,transparent 44%,rgba(255,255,255,.48) 50%,transparent 56%);transform:rotate(12deg);animation:vipGoldShine 4s infinite}.vip-grand-prize small,.vip-grand-prize strong,.vip-grand-prize span{position:relative;z-index:1}.vip-grand-prize small{font-weight:900;letter-spacing:.16em}.vip-grand-prize strong{font-size:1.35rem}.vip-grand-prize span{font-weight:700}
@keyframes vipGoldShine{0%,55%{transform:translateX(-70%) rotate(12deg)}100%{transform:translateX(70%) rotate(12deg)}}
.vip-wheel-wrap{position:relative;display:flex;flex-direction:column;align-items:center;gap:18px}.vip-wheel-pointer{position:absolute;z-index:5;top:-15px;color:#ffd970;font-size:40px;filter:drop-shadow(0 3px 3px #000)}
.vip-wheel{--wheel-size:min(74vw,400px);position:relative;width:var(--wheel-size);height:var(--wheel-size);border-radius:50%;background:var(--wheel-gradient);border:9px solid #211607;outline:3px solid #d8a92f;box-shadow:0 0 0 7px #070708,0 0 35px rgba(216,169,47,.34),inset 0 0 28px rgba(0,0,0,.75);transform:rotate(0deg)}
.vip-wheel:before{content:"";position:absolute;inset:12px;border:2px solid rgba(255,226,142,.35);border-radius:50%;pointer-events:none}.vip-wheel:after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle,transparent 50%,rgba(0,0,0,.35) 100%);pointer-events:none}
.vip-wheel-label{position:absolute;z-index:2;left:50%;top:50%;width:42%;height:30px;transform-origin:0 50%;transform:rotate(var(--angle)) translateX(20%);display:flex;align-items:center;justify-content:flex-end;text-align:right}.vip-wheel-label b{display:block;max-width:130px;font-size:11px;line-height:1.05;text-transform:uppercase;color:#fff;text-shadow:0 2px 3px #000;transform:rotate(90deg);transform-origin:center}.vip-wheel-label.jackpot b{color:#2a1800;text-shadow:0 1px rgba(255,255,255,.45)}
.vip-wheel-hub{position:absolute;z-index:4;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 28%,#ffe39a,#c69116 58%,#3e2700);border:6px solid #171008;outline:2px solid #ffd96c;color:#241500;font-style:normal;font-weight:1000;font-size:1.25rem;box-shadow:0 6px 16px #000}
.vip-spin-button{min-width:230px;padding:14px 22px;border:1px solid #f3ca5c;background:linear-gradient(#e5b83c,#8d5e09);color:#160d00;font-weight:1000;letter-spacing:.08em;box-shadow:0 7px 18px rgba(0,0,0,.36)}.vip-spin-button:disabled{filter:grayscale(.75);opacity:.6}
@media(max-width:900px){.vip-wheel-section{grid-template-columns:1fr;padding:20px}.vip-wheel-copy{text-align:center}.vip-grand-prize{text-align:left}.vip-wheel{--wheel-size:min(78vw,380px)}}

/* V125 VIP wheel result confirmation */
.vip-spin-result{margin-top:16px;padding:16px 18px;border:1px solid rgba(102,220,255,.55);border-radius:14px;background:linear-gradient(135deg,rgba(15,55,72,.92),rgba(14,18,29,.96));box-shadow:0 10px 28px rgba(0,0,0,.28),inset 0 0 24px rgba(75,190,255,.08);display:grid;gap:5px}
.vip-spin-result small{font-weight:900;letter-spacing:.16em;color:#7bdcff}
.vip-spin-result strong{font-size:1.25rem;color:#fff}
.vip-spin-result span{color:#d8e7ef}
.vip-spin-result em{font-style:normal;font-weight:800;color:#8ce7ff;margin-top:4px}


/* V126 - VIP wheel label/pointer synchronization */
/* Conic gradients start at 12 o'clock, while CSS transforms start at 3 o'clock.
   The PHP angle now subtracts 90deg so every visible label belongs to the exact
   prize segment selected and awarded by the server. */
.vip-wheel-label{transition:filter .25s ease,opacity .25s ease}
.vip-wheel-label.is-winner b{color:#fff7bd!important;text-shadow:0 0 7px #ffd34d,0 2px 3px #000;animation:vipWinnerPulse .9s ease-in-out 2}
@keyframes vipWinnerPulse{50%{transform:rotate(90deg) scale(1.14)}}

/* V133 continuous background music */
.music-toggle{display:inline-flex;align-items:center;gap:9px;min-height:38px;padding:7px 11px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));color:#fff;font:inherit;font-weight:800;cursor:pointer;box-shadow:inset 0 0 16px rgba(255,132,54,.08);transition:.2s ease}
.music-toggle:hover{transform:translateY(-1px);border-color:rgba(255,157,91,.45);background:rgba(255,126,45,.12)}
.music-toggle .music-switch{position:relative;width:34px;height:18px;border-radius:99px;background:#4c5360;box-shadow:inset 0 1px 3px rgba(0,0,0,.45);transition:.2s}
.music-toggle .music-switch::after{content:"";position:absolute;top:3px;left:3px;width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(0,0,0,.4);transition:.2s}
.music-toggle.is-on .music-switch{background:linear-gradient(90deg,#d75e20,#ff9c55);box-shadow:0 0 14px rgba(255,119,47,.34)}
.music-toggle.is-on .music-switch::after{transform:translateX(16px)}
.music-toggle.is-off{opacity:.82}
.public-music-control{position:fixed;z-index:80;top:18px;right:18px}
.public-language-switch~.public-music-control{top:68px}
.legal-music-control{margin-left:auto}
@media(max-width:900px){.game-topbar .music-toggle [data-music-label]{display:none}.game-topbar .music-toggle{padding:7px 8px}.game-topbar .music-toggle .music-switch{display:none}}
@media(max-width:560px){.public-music-control{top:auto;right:12px;bottom:12px}.public-language-switch~.public-music-control{top:auto}}

/* Unread message count in the game sidebar */
.game-sidebar a,.game-sidebar button{position:relative}
.menu-unread-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#e63b3b;color:#fff;font-size:11px;font-weight:900;display:inline-grid;place-items:center;box-shadow:0 0 0 2px rgba(8,11,17,.85)}


/* VPS dashboard season-feature overview */
.season-featured-dashboard{overflow:hidden}.season-featured-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:16px}.season-featured-heading h2{margin:3px 0 4px}.season-featured-heading p{margin:0;color:#aeb9ca}.season-featured-heading button{border:1px solid #d76a2d;background:#25130d;color:#ffd7bd;border-radius:10px;padding:10px 14px;font-weight:800;cursor:pointer}.season-new-card em{display:inline-block;margin:3px 0 5px;color:#ffb17e;font-size:11px;font-style:normal}.season-new-card span{line-height:1.35}@media(max-width:700px){.season-featured-heading{align-items:stretch;flex-direction:column}.season-featured-heading button{width:100%}}
