/* Same portrait frame as the approved hockey lobby. Extra content can grow;
   page scrolling is never clipped and there is no scaled or two-column mode. */
.page-shell{display:contents}
.entry-screen{--entry-frame-height:790.25px;--entry-preview-height:290px;--entry-promo-heading:32px;background:#040e19}
.entry-screen .page-shell{display:flex;flex-direction:column;width:100%;max-width:440px;min-height:100svh;margin:0 auto;background:var(--paper);border:1px solid #b7c6b7;border-radius:0;box-shadow:0 0 80px #0006}
.entry-screen .topbar{width:100%;max-width:none;height:48px;flex:none;margin:0;padding:9px 23px}
.entry-screen .brand{font-size:23px;gap:8px}
.entry-screen .brand-symbol{width:27px;height:27px;font-size:24px}
.entry-screen .connection{font-size:9px}
.entry-screen main{display:flex;flex-direction:column;flex:1;width:100%;max-width:none;margin:0;padding:0;min-width:0}
.entry-screen .lobby{display:flex;flex-direction:column;flex:1;gap:0;max-width:none;margin:0;padding:0;min-width:0}
.entry-screen .prize{margin:0;padding:12px 20px 14px;text-align:left}
.entry-screen .entry-eyebrow{display:block;font:700 17px/1 var(--display);letter-spacing:0;margin:0;color:var(--ink)}
.entry-screen .prize h1{font:700 35px/1.08 var(--display);letter-spacing:-.8px;margin:1px 0 0}
.entry-screen #promo{flex:none;margin:0;border:0;border-radius:0;min-width:0}
.entry-screen .promo-stage{height:var(--entry-preview-height);aspect-ratio:auto}
.entry-screen .promo-heading{height:var(--entry-promo-heading);padding-inline:14px}
.entry-screen .promo-heading strong,.entry-screen .promo-time b{font-size:19px}
.entry-screen .promo-role-icon{font-size:22px}
.entry-screen .promo-time svg{width:15px;height:17px}
.entry-screen .promo-field{top:var(--entry-promo-heading);bottom:0;display:grid;place-items:center}
/* One aspect-ratio box keeps SVG actors and native sponsor overlays aligned. */
.promo-field-content{position:absolute;inset:0;container-type:inline-size}
.entry-screen .promo-field-content{position:relative;inset:auto;width:min(100%,calc((var(--entry-preview-height) - var(--entry-promo-heading))*12/7));aspect-ratio:12/7}
.entry-screen .promo-advance{left:55px;right:55px;bottom:3px;height:28px;font-size:11px;justify-content:center;background:#0e2825cf;border-radius:6px;z-index:2}
.entry-screen .promo-advance svg{width:28px;height:20px}
.entry-screen .promo-advance>span:last-child{display:none}
.entry-screen .promo figcaption{position:absolute;bottom:0;left:auto;right:0;z-index:3;min-height:44px;padding:0;border:0;background:none}
.entry-screen .promo figcaption>span{display:none}
.entry-screen .promo-toggle{background:#0e2825bb;border-radius:8px 0 0 0}
.entry-screen .entry-registration{margin-top:auto;padding:16px 23px 0;min-width:0}
.entry-howto{display:none}
.entry-screen .entry-howto{display:block;font-size:12px;line-height:1.5;color:#526b5d;margin:0 0 13px}
.entry-screen .entry-howto strong{display:block;font-size:15px;color:var(--ink)}
.entry-screen .entry-howto span{display:block}
.entry-screen .lobby form{margin:0}
.entry-screen .lobby label{font-size:10px;letter-spacing:1.4px;font-weight:800;margin:0 0 6px;text-transform:uppercase}
.entry-screen .lobby input{height:45px;min-height:45px;padding:10px 12px;background:#fff;border-color:#b4c6b8}
.entry-screen .lobby .primary{min-height:46px;margin-top:10px;padding:11px 17px;font-size:15px}
.entry-screen .lobby .primary>span{font-size:23px;line-height:1}
.entry-screen #entry-code-field{margin-top:10px}
.entry-screen .lobby .micro{font-size:10px;line-height:1.4;margin-top:9px}
.entry-screen .rules-note{font-size:10px;line-height:1.4;margin:12px 23px 0;text-align:center;color:#617565}
.entry-screen main[data-screen=lobby]>.sponsor-card{flex:none;max-width:none;margin:14px 23px 12px;padding:12px 14px;min-height:80px;border:1px solid #d7d1df;border-radius:10px}
.entry-screen .sponsor-card>small{display:block;font-size:8px;line-height:1.2}
.entry-screen .sponsor-card-content{margin-top:7px;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding-right:24px}
.entry-screen .sponsor-card-brand{gap:8px}
.entry-screen .sponsor-card-brand .sponsor-mark{width:29px;height:25px}
.entry-screen .sponsor-card-brand .sponsor-name{font-size:16px;letter-spacing:0}
.entry-screen .sponsor-card-content>.sponsor-offer{font-size:10px;line-height:1.2;padding-left:10px}
.entry-screen [data-sponsor-wordmark=true] .sponsor-card-brand .sponsor-mark{width:100%;height:32px}
.entry-screen .site-footer{display:none}
@media(min-width:700px){
  .entry-screen .page-shell{min-height:var(--entry-frame-height);margin:8px auto;border-radius:16px}
}
@media(min-width:700px) and (max-height:800px){
  .entry-screen{--entry-frame-height:720.70px;--entry-preview-height:270px}
  .entry-screen .topbar{height:44px}
  .entry-screen .prize{padding-block:8px}
  .entry-screen .entry-eyebrow{font-size:15px}
  .entry-screen .prize h1{font-size:30px}
  .entry-screen .entry-registration{padding-top:10px}
  .entry-screen .entry-howto{margin-bottom:8px}
  .entry-screen .lobby label{margin-bottom:4px}
  .entry-screen .lobby .primary{margin-top:8px}
  .entry-screen .rules-note{margin-top:8px}
  .entry-screen main[data-screen=lobby]>.sponsor-card{margin-top:10px;padding:8px 14px;min-height:70px}
  .entry-screen .sponsor-card-content{margin-top:4px}
}
@media(min-width:700px) and (max-height:680px){
  .entry-screen{--entry-frame-height:601.54px;--entry-preview-height:178px}
  .entry-screen .page-shell{margin-block:6px}
  .entry-screen .topbar{height:40px}
  .entry-screen .prize{padding-block:6px}
  .entry-screen .entry-eyebrow{font-size:14px}
  .entry-screen .prize h1{font-size:28px}
  .entry-screen .entry-registration{padding-top:8px}
  .entry-screen .entry-howto{margin-bottom:6px}
  .entry-screen .lobby .primary{margin-top:6px}
  .entry-screen .rules-note{margin-top:6px}
  .entry-screen main[data-screen=lobby]>.sponsor-card{padding-block:6px;min-height:64px}
}
@media(max-width:699px){
  .entry-screen{--entry-preview-height:clamp(160px,calc(100svh - 430px),250px)}
  .entry-screen .topbar{padding-inline:20px}
  .entry-screen .prize{padding:10px 20px 12px}
  .entry-screen .entry-eyebrow{font-size:15px}
  .entry-screen .prize h1{font-size:30px}
  .entry-screen .entry-registration{padding:12px 20px 0}
  .entry-screen .entry-howto{margin-bottom:10px}
  .entry-screen .rules-note{margin:10px 20px 0;font-size:9px}
  .entry-screen main[data-screen=lobby]>.sponsor-card{margin:12px 20px 12px;min-height:70px;padding:10px 12px}
  .entry-screen .sponsor-card-content{grid-template-columns:minmax(0,1fr);gap:5px}
  .entry-screen .sponsor-card-content>.sponsor-offer{border:0;padding-left:0}
}
