.forty-screen{--card-w:clamp(58px,6.3vw,94px);--card-h:calc(var(--card-w)*1.485);grid-template-rows:clamp(54px,7vh,72px) 56px minmax(0,1fr) 36px;background-size:cover;background-position:center}.forty-screen .solitaire-ad-space{grid-row:1;margin:5px 12px 0}.forty-screen .solitaire-hud{grid-row:2;z-index:100;padding:0 clamp(10px,2vw,34px)}.forty-screen .solitaire-brand{display:flex;align-items:center;gap:10px;color:#f0d582;font:800 clamp(11px,1.2vw,18px) Arial;letter-spacing:.07em}.forty-screen .solitaire-brand button{width:36px;height:36px;border:1px solid #d9b65e;border-radius:50%;color:#ffe398;background:#07140dbb}.forty-screen .solitaire-stats{display:flex;justify-content:center;height:100%}.forty-screen .solitaire-stats span{display:grid;place-content:center;min-width:clamp(68px,8vw,112px);text-align:center;border-inline-start:1px solid #e8c66e2b}.forty-screen .solitaire-stats small{color:#a89056;font:7px Arial;letter-spacing:.13em}.forty-screen .solitaire-stats b{color:#f4dda0;font:700 15px Arial}.forty-screen .solitaire-actions{display:flex;gap:7px}.forty-screen .solitaire-actions button{width:38px;height:38px;padding:0;border:0;background:transparent}.forty-screen .solitaire-actions img{width:100%;height:100%;object-fit:contain}
.forty-board{grid-row:3;position:relative;align-self:stretch;display:grid;grid-template-rows:calc(var(--card-h) + 14px) minmax(0,1fr);gap:8px;box-sizing:border-box;width:min(98%,1500px);height:100%;margin:0 auto;padding-top:10px;overflow:hidden}.forty-top{display:flex;justify-content:space-between;align-items:start;padding:0 1%;position:relative;z-index:60}.forty-draw,.forty-foundations{display:flex;gap:clamp(4px,.65vw,10px)}.forty-stock,.forty-waste,.forty-foundation{position:relative;width:var(--card-w);height:var(--card-h);padding:0;border:1px solid #e7c86e80;border-radius:8px;background:#07140da8;color:#d6bc72}.forty-stock img,.forty-waste img,.forty-foundation img{display:block;width:100%;height:100%;object-fit:fill;border-radius:7px}.forty-stock b{position:absolute;right:-7px;bottom:-7px;display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#e5bd50;color:#142016}.forty-foundation span{font:40px Georgia;color:#d9bd7055}
.forty-columns{display:grid;grid-template-columns:repeat(10,var(--card-w));justify-content:space-between;gap:clamp(3px,.8vw,12px);padding:0 1%;position:relative;z-index:20}.forty-column{position:relative;width:var(--card-w);min-height:100%;border-top:1px dashed #e6c86d55;border-radius:8px}.forty-column>span{display:grid;height:var(--card-h);place-items:center;color:#d8bc6d44;font:32px Georgia}.forty-card{position:absolute;left:0;width:var(--card-w);height:var(--card-h);padding:0;border:0;border-radius:8px;background:transparent;box-shadow:0 3px 8px #0008}.forty-card img{display:block;width:100%;height:100%;object-fit:fill;border-radius:8px}.forty-card.is-selected,.forty-waste.is-selected{filter:brightness(1.25) drop-shadow(0 0 12px #ffe17a);transform:translateY(-6px)}.forty-screen .solitaire-mode-label{grid-row:4}.forty-screen .is-hint-source{animation:fortyHint .45s ease-in-out 3 alternate}@keyframes fortyHint{to{filter:brightness(1.5) drop-shadow(0 0 15px #ffe17a)}}
@media(max-width:700px){.forty-screen{--card-w:min(9.2vw,40px);grid-template-rows:40px 48px minmax(0,1fr) 30px}.forty-screen .solitaire-brand{font-size:8px;gap:2px}.forty-screen .solitaire-brand button{width:27px;height:27px}.forty-screen .solitaire-stats span{min-width:44px}.forty-screen .solitaire-actions{gap:1px}.forty-screen .solitaire-actions button{width:28px;height:28px}.forty-board{width:100%;gap:4px;padding-top:4px;grid-template-rows:calc(var(--card-h) + 6px) minmax(0,1fr)}.forty-foundations,.forty-draw{gap:1px}.forty-columns{gap:0;padding:0}.forty-card{box-shadow:0 2px 4px #0008}}

/* Tablero compacto para WebView Android en horizontal. */
.forty-card{top:calc(var(--card-index,0)*34px)}
@media(max-height:600px) and (orientation:landscape){
  .forty-screen{--card-w:clamp(46px,7vw,64px);grid-template-rows:32px 44px minmax(0,1fr) 26px}
  .forty-screen .solitaire-ad-space{margin:2px 10px 0}
  .forty-screen .solitaire-hud{padding-inline:10px}
  .forty-screen .solitaire-brand{gap:6px;font-size:clamp(9px,1.35vw,13px)}
  .forty-screen .solitaire-brand button{width:31px;height:31px}
  .forty-screen .solitaire-stats span{min-width:clamp(54px,7.5vw,76px)}
  .forty-screen .solitaire-stats small{font-size:6px}
  .forty-screen .solitaire-stats b{font-size:13px}
  .forty-screen .solitaire-actions{gap:3px}
  .forty-screen .solitaire-actions button{width:32px;height:32px}
  .forty-board{width:calc(100% - 12px);padding-top:3px;gap:2px;grid-template-rows:calc(var(--card-h) + 2px) minmax(0,1fr)}
  .forty-top{padding-inline:2px}
  .forty-columns{padding-inline:2px;gap:2px}
  .forty-card{top:calc(var(--card-index,0)*clamp(15px,4.6vh,20px))}
  .forty-screen .solitaire-mode-label{font-size:7px;letter-spacing:.18em}
}
@media(max-height:390px) and (orientation:landscape){
  .forty-screen{--card-w:clamp(43px,6.8vw,58px);grid-template-rows:26px 40px minmax(0,1fr) 23px}
  .forty-screen .solitaire-brand button{width:28px;height:28px}
  .forty-screen .solitaire-actions button{width:29px;height:29px}
  .forty-board{grid-template-rows:calc(var(--card-h) - 3px) minmax(0,1fr);padding-top:1px}
  .forty-card{top:calc(var(--card-index,0)*clamp(13px,4.2vh,17px))}
}
.forty-card,.forty-waste{touch-action:none;-webkit-user-select:none;user-select:none}
.forty-drag-ghost{position:fixed!important;inset:auto!important;z-index:10000!important;margin:0!important;pointer-events:none!important;opacity:.94;transform-origin:top left;will-change:transform;filter:brightness(1.12) drop-shadow(0 12px 14px #000a)}
