/* Jerarquía visual de tarjetas: contenido grande, contraste y espacio útil. */
.pp-home .pp-lower{--impact-title:clamp(30px,2.25vw,46px);--impact-copy:clamp(20px,1.3vw,26px)}
.pp-home .pp-lower :is(.panel,.ley-card,.gan-card,.hor-card,.leaderboard,.daily-ritual,.dimension-card){border-color:#385774;box-shadow:inset 0 1px 0 #b8e4ff12,0 14px 40px #0002}
.pp-home .pp-lower .panel{padding:clamp(22px,2.4vw,44px);border-radius:20px;background:radial-gradient(ellipse at 0 0,#1d456430,transparent 60%),linear-gradient(135deg,#102030,#0a1420)}
.pp-home .pp-lower .panel>h3{font-size:var(--impact-title)!important;line-height:1.2;margin-bottom:16px!important}
.pp-home .pp-lower :is(a,button):focus-visible{outline:3px solid #ffe49a;outline-offset:5px}
.pp-home .pp-lower .btn{min-height:58px;padding:14px 24px;font-size:clamp(20px,1.3vw,26px);font-weight:700;white-space:normal;line-height:1.3;transition:transform .18s,box-shadow .18s,background .18s}
.pp-home .pp-lower .btn:hover{transform:translateY(-2px);box-shadow:0 9px 24px #219bff30}
/* Sorteo: cabecera, premios + reloj, tres pasos. Sin columnas vacías. */
.pp-home #sorteos .giveaway-card{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:30px 40px;padding:clamp(24px,3vw,54px);border:1px solid #bb954a;border-radius:22px;background:radial-gradient(ellipse at 95% 5%,#b786272e,transparent 60%),linear-gradient(135deg,#1c2330,#0a1320 70%);box-shadow:inset 0 1px 0 #ffdc8b66,0 18px 60px #0003}
.pp-home #sorteos .giveaway-card::before{content:'';position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,#67cfff,#ffe49b 50%,#ff566d);pointer-events:none}
.pp-home #sorteos .draw-heading{grid-column:1/-1;border-bottom:1px solid #d8b26438;padding-bottom:24px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 32px;background:transparent}
.pp-home #sorteos .draw-heading h3{font:700 clamp(32px,2.9vw,56px)/1.12 var(--display);margin:0;letter-spacing:-.025em}
.pp-home #sorteos .giveaway-tag{color:#ffe3a0;border-color:#bc9454;background:#96702b20;font:700 18px/1.3 var(--display);letter-spacing:.06em;padding:9px 14px;margin:0 0 12px}
.pp-home #sorteos #sorteoTitulo{font:600 clamp(23px,1.7vw,34px)/1.35 var(--display);color:#ffe1a0;margin:0;max-width:24ch}
.pp-home #sorteos .draw-rewards{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:18px;min-width:0}
.pp-home #sorteos .draw-total{font:700 clamp(70px,6.2vw,124px)/1 var(--display);letter-spacing:-.055em;color:#ffe49f;text-shadow:0 3px 24px #ffbf2825;overflow-wrap:anywhere;max-width:100%}
.pp-home #sorteos .draw-total[data-pending]{font-size:clamp(32px,3vw,52px);letter-spacing:-.02em}
.pp-home #sorteos .draw-total-label{font:600 clamp(22px,1.6vw,32px)/1.3 var(--display);color:#e2d0ab;display:block;margin-top:6px}
.pp-home #sorteos .draw-total-label[hidden]{display:none}
.pp-home #sorteos .prize{margin:0;display:flex;flex-wrap:wrap;gap:10px;font:600 clamp(20px,1.4vw,28px)/1.35 var(--display)}
.pp-home #sorteos .prize b{padding:10px 14px;background:#050d1890;border:1px solid #8b79434d;border-radius:10px;overflow-wrap:anywhere}
.pp-home #sorteos .draw-note{font:400 var(--impact-copy)/1.45 var(--body);color:#c3d0df;margin:0}
.pp-home #sorteos .draw-cta{display:inline-flex;align-items:center;justify-content:center;gap:20px;width:100%;max-width:520px;min-height:76px;margin-top:6px;background:linear-gradient(120deg,#ffe29b,#e4b64d);color:#20190c;border:1px solid #ffe49f;border-radius:12px;font-size:clamp(23px,1.7vw,32px);box-shadow:0 8px 28px #e8b34920}
.pp-home #sorteos .draw-cta:hover{background:linear-gradient(120deg,#fff0c6,#ffd477);box-shadow:0 10px 34px #e8b34945}
.pp-home #sorteos .draw-clock{display:flex;flex-direction:column;justify-content:center;gap:24px;padding:clamp(20px,2.2vw,40px);border:1px solid #c39a4d55;border-radius:18px;background:linear-gradient(150deg,#30291b80,#08121fed);text-align:center;container-type:inline-size}
.pp-home #sorteos .draw-clock-heading{font:700 clamp(24px,1.9vw,36px)/1.25 var(--display);color:#fff0ce;margin:0}
.pp-home #sorteoCountdown{max-width:none;width:100%;padding:0;border:0;background:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.pp-home #sorteoCountdown .count-unit{padding:22px 4px;min-width:0;border:1px solid #a6864b80;border-radius:12px;background:linear-gradient(160deg,#58442666,#060f1a);box-shadow:inset 0 2px 0 #ffe49f18}
.pp-home #sorteoCountdown .num{font:700 clamp(40px,15cqi,110px)/1.05 var(--display);letter-spacing:-.035em;color:#ffe5a7;font-variant-numeric:tabular-nums}
.pp-home #sorteoCountdown .lbl{font:600 clamp(14px,3cqi,20px)/1.3 var(--display);letter-spacing:.025em;color:#dacaa7;margin-top:12px}
.pp-home #sorteos .draw-clock .draw-note{font-size:clamp(18px,1.25vw,24px)}
.pp-home #sorteos .steps{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:26px 0 0;border-top:1px solid #d8b26438}
.pp-home #sorteos .steps li{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:start;gap:14px;font:500 clamp(19px,1.25vw,25px)/1.45 var(--body);padding:16px;background:#07111b80;border-radius:12px}
.pp-home #sorteos .steps .n{font:700 30px/1.15 var(--display);color:#ffe09a;letter-spacing:-.04em}
.pp-home #sorteos .steps b{font-weight:500}
/* Ganadores: avatar y nombre protagonistas, premio legible, sin podios inventados. */
.pp-home #sorteos .winners-panel>p{max-width:none;font-size:var(--impact-copy)!important;line-height:1.55}
.pp-home #sorteos .sorteo-tabs{gap:10px;margin:26px 0}
.pp-home #sorteos .sorteo-tab{font:700 clamp(18px,1.25vw,25px)/1.3 var(--display);padding:14px 20px;border-radius:10px;min-height:56px;letter-spacing:.02em}
.pp-home #sorteos .sorteo-tab.activa{color:#1d180e;background:linear-gradient(135deg,#ffe3a0,#cda13e);border-color:#ffe09b;box-shadow:0 6px 22px #e1b34c25}
.pp-home #sorteos .ganadores-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:22px}
.pp-home #sorteos .gan-card{padding:30px 22px;gap:14px;border-radius:16px;background:radial-gradient(ellipse at 50% 0,#28506d66,transparent 65%),#0b1724;justify-content:flex-start;min-width:0}
.pp-home #sorteos .gan-card.extra{background:radial-gradient(ellipse at 50% 0,#8a662d66,transparent 65%),#0f1822}
.pp-home #sorteos .gan-avatar,.pp-home #sorteos .gan-card>div:has(>img.gan-avatar){width:104px!important;height:104px!important;flex:none}
.pp-home #sorteos .gan-avatar{font-size:42px;border-color:#82b9df;box-shadow:0 0 0 7px #82b9df0b}
.pp-home #sorteos .gan-nombre{font:700 clamp(26px,1.85vw,36px)/1.2 var(--display);white-space:normal;overflow-wrap:anywhere;overflow:visible;text-overflow:clip}
.pp-home #sorteos .gan-premio{font:600 clamp(22px,1.5vw,30px)/1.35 var(--display);color:#e3d3ad;margin:0}
/* Resto de tarjetas: misma jerarquía, distintos acentos según contenido. */
.pp-home .pp-lower .clip-card{border-radius:16px;border-color:#385774}
.pp-home .pp-lower .clip-card .info{padding:22px}
.pp-home .pp-lower .clip-card .t{font:700 clamp(23px,1.6vw,32px)/1.3 var(--display);display:block;overflow:visible;-webkit-line-clamp:unset}
.pp-home .pp-lower .clip-card .m{font-size:18px;line-height:1.5;color:#b8cadf;margin-top:12px}
.pp-home #leyendas .ley-card{padding:28px;border-top:3px solid #54b9f0}
.pp-home #leyendas .ley-title{font:700 clamp(24px,1.6vw,32px)/1.25 var(--display)}
.pp-home #leyendas .ley-title small{display:block;font:400 18px/1.45 var(--body);color:#b6cadc;margin-top:8px}
.pp-home #leyendas .ley-fila{padding:18px 12px;gap:12px;flex-wrap:wrap}
.pp-home #leyendas .ley-quien{font-size:clamp(23px,1.6vw,30px);line-height:1.3}
.pp-home #leyendas .ley-valor{font-size:clamp(20px,1.35vw,26px);line-height:1.3}
.pp-home #horario .hor-card{padding:26px;border-radius:16px}
.pp-home #horario .hor-fondo{transform:none}
.pp-home #horario :is(.hor-dur,.hor-falta,.hor-cal){white-space:normal;overflow-wrap:anywhere}
.pp-home #horario .hor-juego{font-size:clamp(28px,2vw,40px);line-height:1.2;white-space:normal}
.pp-home #horario .hor-dia{font-size:24px;line-height:1.4}
.pp-home #horario :is(.hor-dur,.hor-falta,.hor-cal){font-size:20px;line-height:1.45}
.pp-home #horario .hor-hora .hh{font:700 clamp(42px,3.8vw,72px)/1.1 var(--display)}
.pp-home #pitipoints :is(.coins-h,.sp-aviso h3){font-size:var(--impact-title);line-height:1.2}
.pp-home #pitipoints :is(.daily-ritual,.leaderboard){padding:26px;border-radius:16px;background:linear-gradient(145deg,#122c40,#0a1622)}
.pp-home #pitipoints :is(.coins-list li,.leaderboard li,.daily-ritual p){font-size:var(--impact-copy);line-height:1.5}
.pp-home #pitipoints .coins-list li{padding:14px 0;gap:16px;display:grid;grid-template-columns:58px minmax(0,1fr);align-items:baseline}
.pp-home #pitipoints .coin-description{min-width:0;overflow-wrap:anywhere}
.pp-home #pitipoints .sp-btn{font-size:24px;min-height:62px;padding:14px 28px;border-radius:12px}
.pp-home #pitipoints .coin-val{color:#ffe19a;font:700 28px/1.3 var(--display);min-width:58px}
.pp-home #pitipoints .leaderboard .pts{font-size:20px;color:#8fd6ff}
.pp-home #pitipoints #webPremioLogout>p{font-size:var(--impact-copy);line-height:1.5}
.pp-home #pitipoints #btnWebLogin{font-size:24px!important;min-height:64px;padding:16px 24px!important}
.pp-home #disco .dimension-info h3{font-size:clamp(32px,2.4vw,48px)}
.pp-home #disco .dimension-lista .name{font-size:clamp(21px,1.4vw,28px)}
@media(max-width:1050px){
 .pp-home #sorteos .giveaway-card{grid-template-columns:1fr;gap:26px}
 .pp-home #sorteos .draw-heading{grid-column:1;align-items:flex-start}
 .pp-home #sorteos .draw-rewards{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:16px 26px}
 .pp-home #sorteos .draw-rewards .draw-total-wrap{grid-row:1/3}.pp-home #sorteos .draw-cta{grid-column:1/-1;max-width:none}
 .pp-home #sorteos .steps{grid-template-columns:1fr}.pp-home #sorteos .steps li{padding:16px}
}
@media(max-width:600px){
 .pp-home .pp-lower{--impact-title:28px;--impact-copy:20px}
 .pp-home .pp-lower .panel{padding:22px 18px}
 .pp-home #sorteos .giveaway-card{padding:26px 18px;border-radius:16px;gap:24px}
 .pp-home #sorteos .draw-heading{padding-bottom:22px;gap:14px}
 .pp-home #sorteos .draw-heading h3{font-size:34px}.pp-home #sorteos #sorteoTitulo{font-size:24px}
 .pp-home #sorteos .draw-rewards{display:flex;gap:16px}
 .pp-home #sorteos .draw-total{font-size:84px}.pp-home #sorteos .draw-total-label{font-size:25px}
 .pp-home #sorteos .prize{font-size:22px}.pp-home #sorteos .prize b{padding:9px 12px}
 .pp-home #sorteos .draw-cta{font-size:24px;min-height:68px;padding:16px 12px;gap:12px}
 .pp-home #sorteos .draw-clock{padding:22px 10px;gap:18px}.pp-home #sorteos .draw-clock-heading{font-size:25px}
 .pp-home #sorteoCountdown{gap:6px;grid-template-columns:repeat(4,minmax(0,1fr))}
 .pp-home #sorteoCountdown .count-unit{padding:18px 2px;border-radius:8px}
 .pp-home #sorteoCountdown .num{font-size:clamp(30px,15cqi,54px)}.pp-home #sorteoCountdown .lbl{font-size:13px;margin-top:10px}
 .pp-home #sorteos .steps{padding-top:22px;gap:12px}.pp-home #sorteos .steps li{font-size:20px;grid-template-columns:32px 1fr;padding:14px 10px;gap:10px}
 .pp-home #sorteos .steps .n{font-size:26px}
 .pp-home #sorteos .sorteo-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.pp-home #sorteos .sorteo-tab{font-size:18px;padding:12px 8px;letter-spacing:0}
 .pp-home #sorteos .ganadores-grid{grid-template-columns:1fr}.pp-home #sorteos .gan-card{padding:26px 18px}
 .pp-home #leyendas .ley-card{padding:22px 16px}.pp-home #leyendas .ley-valor{font-size:20px}
 .pp-home #horario .hor-card{padding:22px 16px}.pp-home #horario .hor-dia{font-size:20px}
 .pp-home #pitipoints :is(.daily-ritual,.leaderboard){padding:22px 16px}
}
@media(prefers-reduced-motion:reduce){.pp-home .pp-lower .btn{transition:none}.pp-home .pp-lower .btn:hover{transform:none}}
