
*{box-sizing:border-box}body{margin:0;background:#1f5a41}a{color:#C8352B}a:hover{color:#1E1410}
.kw{--ink:#1E1410;--paper:#F3E6C4;--paper2:#E6D09C;--red:#C8352B;--red2:#8E1F18;--mus:#E8B23A;--mus2:#A87618;--muted:#5B4632;font-family:'Bitter',Georgia,serif;color:var(--ink);background:radial-gradient(ellipse at 50% 25%,#4b8e69 0%,#2f6f4e 38%,#21573d 72%,#163f2f 100%);min-height:100vh;position:relative;overflow-x:hidden}
.kw[data-theme="Technicolor"]{--paper:#FFF1CF;--red:#E2372A;--mus:#FFC21F;background:radial-gradient(ellipse at 50% 40%,#FFEFC6 0%,#F6D27E 60%,#D99E45 100%)}
.kw[data-theme="Blanco y negro"]{filter:grayscale(1) contrast(1.12) sepia(.12)}
.kw::before{content:'';position:fixed;inset:0;pointer-events:none;z-index:40;background:radial-gradient(ellipse at center,transparent 58%,#3a240f55 88%,#2a1808aa 100%)}
.grain{position:fixed;inset:-60px;pointer-events:none;z-index:41;opacity:.22;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .2  0 0 0 0 .12  0 0 0 0 .05  0 0 0 1.4 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");animation:grain .5s steps(4) infinite}
.kw[data-grain="false"] .grain{display:none}
@keyframes grain{0%{transform:translate(0,0)}25%{transform:translate(-18px,12px)}50%{transform:translate(14px,-20px)}75%{transform:translate(-10px,-8px)}100%{transform:translate(0,0)}}
.kw button,.kw input{font:inherit}.kw button{cursor:pointer}.kw button:disabled{opacity:.5;cursor:not-allowed;filter:sepia(.6) saturate(.5)}
.wrap{max-width:1160px;margin:auto;padding:26px 16px 60px;position:relative;z-index:1}
.kw h1,.kw h2,.kw h3{font-family:'Ultra',serif;font-weight:400;letter-spacing:.3px;text-transform:uppercase}
header{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:18px}
.mascot{width:72px;height:72px;flex:none;border-radius:16px;background:var(--paper);border:4px solid var(--ink);box-shadow:5px 5px 0 var(--ink);position:relative;animation:bob 1.1s ease-in-out infinite}
.mascot i{position:absolute;top:15px;width:13px;height:22px;border-radius:50%;background:conic-gradient(from 28deg,var(--paper) 0 42deg,var(--ink) 42deg)}
.mascot i:nth-of-type(1){left:17px}.mascot i:nth-of-type(2){right:17px}
.mascot b{position:absolute;left:50%;bottom:10px;width:30px;height:14px;transform:translateX(-50%);border:4px solid var(--ink);border-top:0;border-radius:0 0 30px 30px;background:var(--red)}
@keyframes bob{0%,100%{transform:rotate(-7deg) translateY(0) scaleY(1)}50%{transform:rotate(5deg) translateY(-6px) scaleY(1.04)}}
h1{margin:0;font-size:clamp(34px,5.6vw,60px);line-height:.95;color:var(--mus);-webkit-text-stroke:2.5px var(--ink);paint-order:stroke fill;text-shadow:4px 4px 0 var(--red),7px 7px 0 var(--ink)}
h1 em{font-style:normal;color:var(--paper);font-size:.7em;vertical-align:.12em;margin:0 .1em}
.sub{margin:12px 0 0;font-size:13px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}
.btn{border:3px solid var(--ink);border-radius:14px;background:var(--red);color:var(--paper);box-shadow:4px 4px 0 var(--ink);padding:11px 18px;font-family:'Ultra',serif;text-transform:uppercase;font-size:14px;letter-spacing:.5px;transition:transform .12s,box-shadow .12s}
.btn:not(:disabled):hover{transform:translate(-1px,-2px) rotate(-1.5deg);box-shadow:6px 6px 0 var(--ink)}
.btn:not(:disabled):active{transform:translate(3px,3px);box-shadow:1px 1px 0 var(--ink)}
.btn.alt{background:var(--paper);color:var(--ink)}
.btn.gold{background:var(--mus);color:var(--ink)}
.panel{position:relative;background:var(--paper);border:3px solid var(--ink);border-radius:20px;padding:18px;box-shadow:inset 0 0 0 4px var(--paper),inset 0 0 0 6px var(--ink),6px 6px 0 var(--ink)}
.panel h3{font-size:17px}
[data-seat="0"]{--pc:#4F8FA3;--pd:#1F4F5E;--pw:#D9E3CF}[data-seat="1"]{--pc:#C8352B;--pd:#7A1A14;--pw:#F0D3B8}
.panel[data-seat]{transition:transform .25s}
.panel[data-seat].active{transform:rotate(-.6deg)}
.panel[data-seat].active::after{white-space:nowrap;content:'¡Tu turno!';position:absolute;top:-18px;left:50%;transform:translateX(-50%) rotate(-4deg);background:var(--mus);color:var(--ink);font-family:'Ultra';font-size:14px;text-transform:uppercase;padding:5px 18px;border:3px solid var(--ink);border-radius:8px;box-shadow:3px 3px 0 var(--ink);animation:wiggle .9s ease-in-out infinite}
@keyframes wiggle{0%,100%{transform:translateX(-50%) rotate(-4deg)}50%{transform:translateX(-50%) rotate(3deg) scale(1.06)}}
.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;margin-top:22px}
.pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}
.boardTitle{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:8px}
.boardTitle strong{font-family:'Ultra';font-weight:400;text-transform:uppercase;font-size:17px;display:flex;align-items:center;gap:8px}
.boardTitle strong::before{content:'';width:16px;height:16px;border-radius:50%;background:var(--pc);border:3px solid var(--ink);flex:none}
.points{font-family:'Ultra';font-size:24px;background:var(--pc);color:var(--paper);-webkit-text-stroke:1px var(--ink);padding:2px 14px;border-radius:12px;min-width:56px;text-align:center;border:3px solid var(--ink);box-shadow:3px 3px 0 var(--ink)}
.board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.column{display:flex;flex-direction:column;gap:6px;background:var(--pw);padding:6px;border-radius:14px;min-width:0;border:3px solid var(--ink);transition:transform .15s,background .15s}
.column.eligible{cursor:pointer;background:var(--mus)}.column.eligible:hover{transform:translateY(-4px) rotate(-1.5deg)}
.cell{height:clamp(40px,5.4vw,62px);display:flex;align-items:center;justify-content:center;border-radius:11px;border:2px dashed #1E141055;padding:2px}
.cell.filled{border-color:transparent}.cell.eligible{outline:3px dashed var(--red);outline-offset:1px;cursor:pointer}
.colScore{white-space:nowrap;text-align:center;font-size:12px;font-weight:900;color:var(--ink);margin-top:4px;letter-spacing:.5px;text-transform:uppercase}
.cell{container-type:size}.diceFace{width:min(100cqw,100cqh);height:min(100cqw,100cqh);max-width:none;aspect-ratio:1;background:#FBF3DC;border:3px solid var(--ink);border-radius:24%;box-shadow:3px 3px 0 var(--pd);display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);padding:15%;margin:auto;animation:squash .35s cubic-bezier(.3,1.7,.5,1) both}
.pip{border-radius:50%}.pip.on{background:var(--ink)}
@keyframes squash{0%{transform:scale(1.4,.5)}60%{transform:scale(.9,1.15)}100%{transform:scale(1)}}
.playrow{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.die{width:92px;height:92px;flex:none;border-radius:22px;background:var(--paper2);border:3px dashed var(--ink);display:grid;place-items:center;font-family:'Ultra';font-size:46px;color:var(--red);-webkit-text-stroke:1.5px var(--ink);--pd:var(--red)}
.die:has(.diceFace){border-color:transparent;background:none}.die .diceFace{width:100%;height:100%;max-width:100%;box-shadow:5px 5px 0 var(--ink)}
.die.spinning{animation:wob .14s infinite alternate}.die.spinning .diceFace{animation:none}
@keyframes wob{from{transform:rotate(-14deg) scale(1.08,.94)}to{transform:rotate(14deg) scale(.94,1.08)}}
.status{flex:1;min-width:180px}.status h3{margin:0 0 4px;font-size:22px}.status p{margin:0;font-size:14px;color:var(--muted);line-height:1.45;font-weight:500;text-wrap:pretty}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}
.pill{border-radius:8px;padding:5px 11px;background:var(--paper2);color:var(--ink);font-size:12px;font-weight:900;letter-spacing:1px;text-transform:uppercase;border:2px solid var(--ink);white-space:nowrap}
.energy{font-family:'Ultra';font-size:34px;color:var(--mus);-webkit-text-stroke:1.5px var(--ink);paint-order:stroke fill;text-shadow:3px 3px 0 var(--ink)}
.meter{height:20px;margin:10px 0 18px;background:var(--paper2);border:3px solid var(--ink);border-radius:999px;overflow:hidden}
.meter>div{height:100%;background:repeating-linear-gradient(-45deg,var(--mus) 0 9px,var(--red) 9px 18px);border-right:3px solid var(--ink);transition:width .4s cubic-bezier(.3,1.6,.5,1)}
.cards{display:grid;gap:14px}
.card{position:relative;border:3px solid var(--ink);border-radius:16px;background:var(--paper);color:var(--ink);padding:0 0 12px;text-align:left;width:100%;box-shadow:4px 4px 0 var(--ink);display:flex;flex-direction:column;align-items:flex-start;gap:4px;overflow:hidden;transition:transform .15s,box-shadow .15s}
.card::before{content:'';display:block;width:100%;height:30px;background:repeating-linear-gradient(90deg,var(--tc) 0 14px,var(--td) 14px 28px);border-bottom:3px solid var(--ink);margin-bottom:4px}
.card:not(:disabled):hover{transform:translate(-2px,-4px) rotate(-1.5deg);box-shadow:7px 7px 0 var(--ink)}
.t2{--tc:#8BA858;--td:#6F8C42}.t3{--tc:#5C9AAE;--td:#447F92}.t4{--tc:#E08A3A;--td:#C26F24}.t5{--tc:#C8352B;--td:#A42A21}
.card .icon{position:absolute;top:8px;left:12px;width:44px;height:44px;border-radius:50%;background:var(--paper);border:3px solid var(--ink);display:grid;place-items:center;font-size:21px;box-shadow:2px 2px 0 var(--ink)}
.card .name{font-family:'Ultra';text-transform:uppercase;font-size:14.5px;line-height:1.15;margin:20px 12px 0;letter-spacing:.2px}
.card .cost{position:absolute;top:6px;right:8px;background:var(--mus);color:var(--ink);font-family:'Ultra';border-radius:8px;padding:2px 9px;font-size:14px;border:3px solid var(--ink);transform:rotate(4deg)}
.handCard .cost{background:var(--paper);font-size:11px}
.desc{font-size:12.5px;line-height:1.4;color:var(--muted);font-weight:500;margin:0 12px;text-wrap:pretty}
.buyLabel{margin:auto 12px 0;background:var(--ink);color:var(--paper);border-radius:6px;padding:5px 12px;font-weight:900;font-size:11px;letter-spacing:1px;text-transform:uppercase}
.marketTop{margin-top:14px;padding:12px 14px 10px}.marketHeading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.marketHeading h3{font-size:20px;color:var(--red);-webkit-text-stroke:1px var(--ink)}
.marketTop .small{font-size:11.5px;line-height:1.35}.marketTrack{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.marketOffer{min-height:142px;animation:slideOffer .45s cubic-bezier(.3,1.6,.5,1) both}.marketTop .card{padding-bottom:8px}.marketTop .card::before{height:22px;margin-bottom:2px}.marketTop .card .icon{width:34px;height:34px;font-size:16px;top:6px;left:10px}.marketTop .card .name{font-size:12.5px;margin:14px 10px 0}.marketTop .card .desc{font-size:11px;line-height:1.28;margin:0 10px}.marketTop .card .cost{font-size:12px;padding:1px 7px;top:4px}.marketTop .buyLabel{font-size:9.5px;padding:4px 10px;margin:auto 10px 0}
@keyframes slideOffer{from{transform:translateX(30px) rotate(6deg) scale(.9);opacity:0}to{transform:none;opacity:1}}
.small{font-size:12.5px;color:var(--muted);line-height:1.5;font-weight:500}
.log{max-height:190px;overflow:auto;background:var(--paper2);border:2px solid var(--ink);padding:12px 14px;border-radius:12px;font-size:12.5px;color:var(--muted);font-weight:500}
.log p{margin:0 0 7px;padding-left:16px;position:relative}.log p::before{content:'✦';position:absolute;left:0;top:0;color:var(--red)}
.log p:first-child{color:var(--ink);font-weight:800}
[data-show="false"]{display:none}
hr{border:0;border-top:3px dotted var(--ink);margin:18px 0}
details{margin-top:20px;background:var(--paper);border:3px solid var(--ink);border-radius:16px;padding:14px 16px;font-size:13px;color:var(--muted);line-height:1.5;font-weight:500;box-shadow:5px 5px 0 var(--ink)}
summary{cursor:pointer;font-family:'Ultra';text-transform:uppercase;color:var(--ink);font-size:15px}
.overlay{position:fixed;inset:0;background:#1e1410b0;z-index:20;display:grid;place-items:center;overflow:auto;padding:16px}
.modal{width:min(860px,100%);max-height:94vh;overflow:auto;background:var(--paper);border-radius:24px;padding:30px;border:4px solid var(--ink);box-shadow:inset 0 0 0 6px var(--paper),inset 0 0 0 9px var(--ink),9px 9px 0 var(--mus),12px 12px 0 var(--ink);animation:iris .45s cubic-bezier(.3,1.5,.5,1) both}
@keyframes iris{from{transform:scale(.6) rotate(-4deg);opacity:0}to{transform:none;opacity:1}}
.modal h2{margin:4px 0 8px;font-size:clamp(26px,4vw,38px);color:var(--red);-webkit-text-stroke:1.5px var(--ink);text-shadow:3px 3px 0 var(--ink)}
.muted{color:var(--muted);font-weight:500}
.modes{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:22px 0}
.btn.mode{min-height:150px;text-align:left;display:flex;flex-direction:column;gap:6px;padding:18px;font-size:28px;background:#C9DCC2;color:var(--ink);border-radius:18px;text-transform:none;font-family:'Bitter'}
.btn.mode:nth-child(2){background:#F2C3A6}.btn.mode:nth-child(3){background:#F3D98B}
.btn.mode b{font-family:'Ultra';font-weight:400;font-size:17px;text-transform:uppercase}.mode .small{color:var(--ink);font-size:13px}
.picker{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:16px 0}.pick{min-height:150px}
.pick.selected{background:var(--mus);transform:rotate(-1.5deg)}
#choices{display:flex;flex-wrap:wrap;gap:10px}
.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.code{font-family:'Ultra';font-size:38px;letter-spacing:6px;color:var(--mus);-webkit-text-stroke:1.5px var(--ink);text-shadow:3px 3px 0 var(--ink);background:var(--paper2);display:inline-block;padding:8px 22px;border-radius:14px;border:3px dashed var(--ink)}
.field{border-radius:12px;border:3px solid var(--ink);background:#FBF3DC;color:var(--ink);padding:11px 14px;max-width:100%;text-transform:uppercase;font-weight:900;letter-spacing:2px}
#error{color:var(--red);font-weight:800}
.hide{display:none!important}
@media(max-width:1000px){.layout{grid-template-columns:minmax(0,1fr)}.picker{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.wrap{padding:16px 10px 40px}.pair{gap:10px}.panel{padding:10px;border-radius:16px}.board{gap:3px}.column{padding:3px;gap:4px;border-radius:10px;border-width:2px}.cell{height:clamp(30px,9vw,54px);border-radius:8px}.diceFace{border-width:2px;box-shadow:2px 2px 0 var(--pd)}.boardTitle strong{font-size:12px}.boardTitle strong::before{width:11px;height:11px}.points{font-size:16px;padding:1px 8px;min-width:0}.marketTrack{gap:8px}.marketOffer{min-height:180px}.card .name{font-size:11.5px;margin:18px 8px 0}.desc{font-size:10.5px;margin:0 8px}.card .icon{width:34px;height:34px;font-size:15px;left:8px}.card .cost{font-size:11px;padding:1px 6px}.buyLabel{margin:auto 8px 0;font-size:9px;padding:4px 8px}.marketHeading .pill{display:none}.colScore{font-size:9px}.modes{grid-template-columns:1fr}.btn.mode{min-height:0}.modal{padding:22px}.mascot{width:56px;height:56px}.mascot i{top:11px;width:10px;height:17px}.mascot i:nth-of-type(1){left:12px}.mascot i:nth-of-type(2){right:12px}.mascot b{width:22px;bottom:7px}}

/* Ajustes para integrar el juego existente en el diseño retro */
body{font-family:'Bitter',Georgia,serif}
.kw .card:disabled{opacity:.55}
.kw .card.selected{outline:4px solid var(--mus);background:#F3D98B}
.kw .card .name{overflow-wrap:anywhere}
.kw .card .desc{margin-top:5px}
.kw .boardTitle strong{font-size:clamp(12px,1.7vw,17px)}
.kw .column{overflow:visible}
.kw .cell{min-width:0}
.kw .cell .diceFace{flex-shrink:0}
.kw .card .buyLabel{margin-top:auto}
.kw .boardB .diceFace{background:#FFDED4}
.kw .marketOffer:disabled .buyLabel{background:#6d5944}
.kw .status h3{font-size:clamp(16px,2vw,22px)}
.kw .marketTrack .card{height:100%}
.kw .cards .card{min-height:125px}
.kw .pill{flex-shrink:0}
@media(max-width:650px){.kw .marketOffer{min-height:175px}.kw .cards .card{min-height:110px}.kw .die{width:78px;height:78px}}

/* V0.7: power theatrical effects and throw clock */
.rollClock{display:none;place-items:center;min-width:64px;height:64px;border-radius:50%;border:4px solid var(--ink);background:var(--mus);color:var(--ink);font:28px 'Ultra',serif;box-shadow:4px 4px 0 var(--ink)}
.rollClock.visible{display:grid;animation:clockPulse .5s ease-in-out infinite alternate}
.rollClock.urgent{background:var(--red);color:var(--paper)}
@keyframes clockPulse{to{transform:scale(1.09)}}
.powerFX{position:fixed;inset:0;z-index:55;pointer-events:none;display:none;align-items:center;justify-content:center;overflow:hidden}
.powerFX.on{display:flex;animation:powerBackdrop .85s ease-out both}
.powerFX .fxFlash{position:absolute;inset:0;background:var(--fxcolor,#E8B23A);opacity:.20;animation:flashOut .9s both}
.powerFX .fxName{position:relative;text-align:center;font:clamp(23px,5vw,64px) 'Ultra',serif;text-transform:uppercase;color:var(--paper);-webkit-text-stroke:2px var(--ink);text-shadow:5px 6px 0 var(--ink);max-width:90%;animation:fxTitle .9s cubic-bezier(.15,1.4,.4,1) both}
.powerFX .fxIcon{display:block;font-size:clamp(70px,14vw,150px);line-height:1.1;filter:drop-shadow(5px 8px 0 #1E1410);animation:fxIcon .85s ease-in-out both}
.powerFX .fxParticle{position:absolute;left:50%;top:50%;width:14px;height:14px;background:var(--fxcolor);border:2px solid var(--ink);border-radius:3px;animation:fxBurst .95s cubic-bezier(.16,.8,.3,1) forwards;transform:rotate(var(--rot))}
.powerFX[data-effect="rain"] .fxParticle{border-radius:45% 45% 55% 55%;width:9px;height:30px}
.powerFX[data-effect="silence"] .fxFlash{background:#15121e;opacity:.75}
.powerFX[data-effect="quake"] .fxName,.powerFX[data-effect="rowclear"] .fxName{animation:fxShake .7s both}
.powerFX[data-effect="shield"] .fxFlash{opacity:.12}
.powerFX[data-effect="ghost"] .fxIcon{display:inline-block;animation:ghostFloat 1.05s ease-in-out both;filter:drop-shadow(0 0 14px #bde4ff)}
.powerFX[data-effect="ghost"] .fxParticle{border-radius:50%;background:#bde4ff;box-shadow:0 0 12px #a0bbff}
@keyframes ghostFloat{0%{transform:translate(120px,60px) scale(.4);opacity:0}35%{opacity:1;transform:translate(-22px,-30px) scale(1.5) rotate(-14deg)}70%{transform:translate(20px,-45px) scale(1.2) rotate(12deg)}100%{transform:translate(-30px,-85px) scale(.35);opacity:0}}
.powerFX[data-effect="steal"] .fxParticle{border-radius:50%}
@keyframes powerBackdrop{0%{opacity:0}10%{opacity:1}85%{opacity:1}100%{opacity:0}}
@keyframes fxTitle{0%{transform:scale(.2) rotate(-15deg);opacity:0}35%{transform:scale(1.2) rotate(3deg);opacity:1}65%{transform:scale(1) rotate(-2deg)}100%{transform:translateY(-15px);opacity:0}}
@keyframes fxIcon{0%{transform:translateY(-140px) rotate(-35deg) scale(.5)}35%{transform:translateY(5px) rotate(14deg) scale(1.2)}70%{transform:rotate(-9deg)}100%{transform:translateY(-32px) scale(.8);opacity:0}}
@keyframes fxBurst{from{transform:translate(0,0) rotate(var(--rot)) scale(.4);opacity:1}to{transform:translate(var(--x),var(--y)) rotate(calc(var(--rot) + 250deg)) scale(.1);opacity:0}}
@keyframes flashOut{0%{opacity:.5}100%{opacity:0}}
@keyframes fxShake{0%,100%{transform:translateX(0)}20%{transform:translateX(-18px) rotate(-5deg)}40%{transform:translateX(18px) rotate(6deg)}60%{transform:translateX(-12px)}80%{transform:translateX(10px)}}
@media(prefers-reduced-motion:reduce){.powerFX .fxName,.powerFX .fxIcon,.powerFX .fxParticle{animation-duration:.2s}.rollClock.visible{animation:none}}
.blindOffer{background:#29243b!important;color:#f7e3b7!important;border-color:#caa75e!important}.blindOffer .name{font-size:22px;color:#f1d58b}.blindOffer .desc{color:#e9d3a8}.blindOffer .cost{background:#caa75e}.blindOffer .buyLabel{background:#caa75e;color:#252032}

/* Barra de marcador proporcional y animacion cartoon retro del lider */
.leaderPanel{margin-top:16px;margin-bottom:2px;padding:14px 18px 18px;background:var(--paper);border:3px solid var(--ink);border-radius:18px;box-shadow:5px 5px 0 var(--ink)}
.leaderLabels{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;font-family:'Ultra',serif;font-size:clamp(11px,1.6vw,17px);text-transform:uppercase}
.leaderLabels span:last-child{text-align:right}.leaderLabels b{display:inline-block;margin-left:6px;font-size:1.1em}.leaderLabels #leaderStatus{color:var(--red);font-size:clamp(10px,1.35vw,14px);text-align:center}
.leaderBar{height:30px;border:3px solid var(--ink);border-radius:100px;overflow:hidden;margin-top:12px;display:flex;position:relative;background:var(--paper2);box-shadow:inset 0 3px 5px #1e141033}
.leaderFill0{height:100%;width:50%;background:repeating-linear-gradient(115deg,#4F8FA3 0 22px,#6FAFC2 22px 30px);transition:width .55s cubic-bezier(.3,.9,.3,1)}
.leaderFill1{height:100%;flex:1;background:repeating-linear-gradient(115deg,#C8352B 0 22px,#E45B45 22px 30px)}
.leaderMid{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:17px;color:#fff5da;text-shadow:1px 2px 0 #1E1410}
@keyframes cupheadPanelDance{0%,100%{transform:translateY(0) rotate(-.4deg)}25%{transform:translateY(-3px) rotate(1deg)}50%{transform:translateY(-7px) rotate(-.9deg)}75%{transform:translateY(-3px) rotate(.8deg)}}
@keyframes cupheadDiceDance{0%,100%{transform:translateY(0) rotate(-5deg) scale(1)}25%{transform:translateY(-5px) rotate(6deg) scale(1.06,.97)}50%{transform:translateY(-9px) rotate(-5deg) scale(.97,1.06)}75%{transform:translateY(-4px) rotate(4deg) scale(1.04,.97)}}
.kw .panel[data-seat].turnDance{animation:cupheadPanelDance 1.4s ease-in-out infinite;transform-origin:center bottom;box-shadow:inset 0 0 0 4px var(--paper),inset 0 0 0 6px var(--ink),6px 6px 0 var(--ink),0 0 20px #e8b23a99}
.kw .panel[data-seat].turnDance .diceFace{animation:none;transform:none}
.fxRollResult{margin-top:12px;padding:7px 18px;border:3px solid #1E1410;border-radius:12px;background:#E8B23A;color:#1E1410;-webkit-text-stroke:0;font-size:clamp(17px,3vw,31px);box-shadow:4px 4px 0 #1e1410;animation:fxTitle .5s both}
@media(max-width:650px){.leaderPanel{padding:10px}.leaderLabels{gap:4px}.leaderLabels b{display:block;margin:2px 0 0}.leaderBar{height:24px}.marketTop{padding:10px 10px 8px}.marketTrack{gap:8px}.marketOffer{min-height:126px}.marketTop .card .name{font-size:11px;margin:12px 8px 0}.marketTop .card .desc{font-size:10px;margin:0 8px}.marketTop .buyLabel{margin:auto 8px 0;font-size:8.5px;padding:4px 8px}.marketTop .card .icon{width:30px;height:30px;font-size:14px;left:7px}.marketTop .card .cost{font-size:10px;padding:1px 6px}}
@media(prefers-reduced-motion:reduce){.kw .panel[data-seat].turnDance,.kw .panel[data-seat].turnDance .diceFace{animation:none}}
.kw .column.blockedCol{background:repeating-linear-gradient(-45deg,#b59a55 0 11px,#503f27 11px 17px);box-shadow:inset 0 0 0 3px #24170a;position:relative}.kw .column.blockedCol .cell{opacity:.68}.kw .column.blockedCol .colScore{background:#f5daa2;border-radius:6px;padding:3px}.kw .column.blockedCol:not(.eligible){cursor:not-allowed}@keyframes blockPulse{0%,100%{filter:brightness(1)}50%{filter:brightness(1.13)}}.kw .column.blockedCol{animation:blockPulse 1.8s ease-in-out infinite}

/* Desgaste acumulado: solo capa visual, nunca altera dados */
.kw .panel[data-seat].damagedBoard:before{content:"";position:absolute;inset:7px;border-radius:15px;pointer-events:none;z-index:2;opacity:var(--damage-opacity,0);background:linear-gradient(137deg,transparent 17%,#3a241a80 17.4%,transparent 18.5% 51%,#3a241a88 51.4%,transparent 52.7%),linear-gradient(32deg,transparent 31%,#3a241a77 31.5%,transparent 33%),radial-gradient(circle at 82% 25%,#6e47396b 0 11px,transparent 12px),radial-gradient(circle at 22% 79%,#6e473955 0 19px,transparent 20px);mix-blend-mode:multiply}
.kw .panel[data-seat].damagedBoard.damage1{--damage-opacity:.16}
.kw .panel[data-seat].damagedBoard.damage2{--damage-opacity:.30}
.kw .panel[data-seat].damagedBoard.damage3{--damage-opacity:.48}
.kw .panel[data-seat].damagedBoard.damage4{--damage-opacity:.67}
