/* Launcher styles for the narrow entry pages (task entry-speed-20261003).
   Only the launcher's own .entry-* blocks live here; the shared header/footer
   keep their look from /assets/portal-chrome.css. */
.entry-main{padding:clamp(18px,3vw,40px) clamp(14px,4vw,40px) clamp(40px,6vw,72px);background:#fff}
.entry-card{max-width:1120px;margin:0 auto;display:grid;gap:clamp(22px,3.4vw,44px);align-items:center}
@media (min-width:900px){.entry-card{grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr)}}
.entry-preview{margin:0;display:flex;justify-content:center}
.entry-preview img{display:block;width:auto;height:auto;max-width:100%;max-height:min(64vh,700px);border-radius:18px;border:1px solid rgba(23,74,126,.12);background:#fff}
.entry-info{font-family:Fredoka,system-ui,"Segoe UI",sans-serif;color:#174A7E}
.entry-kicker{margin:0 0 10px;font-size:clamp(14px,1.6vw,15px);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#33465E}
.entry-title{margin:0 0 14px;font-size:clamp(30px,5.6vw,46px);font-weight:600;line-height:1.08;color:#174A7E}
.entry-task{margin:0 0 22px;max-width:46ch;font-size:clamp(17px,2.1vw,20px);line-height:1.45;color:#33465E}
.entry-action{margin:0 0 12px}
.entry-play{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:14px 38px;border:0;border-radius:999px;background:#174A7E;color:#fff;font-family:inherit;font-size:clamp(18px,2vw,20px);font-weight:600;line-height:1;cursor:pointer}
.entry-play:hover{background:#123A63}
.entry-play:focus-visible{outline:3px solid #174A7E;outline-offset:3px}
.entry-note{margin:0;font-size:16px;line-height:1.5;color:#33465E}
.entry-direct{margin:12px 0 0;font-size:16px}
.entry-direct a,.entry-stage-link a{color:#174A7E;text-underline-offset:4px}
.entry-direct a:focus-visible,.entry-stage-link a:focus-visible,.entry-exit:focus-visible{outline:3px solid #174A7E;outline-offset:3px;border-radius:8px}
body.entry-playing{overflow:hidden}
.entry-stage{position:fixed;inset:0;z-index:80;display:flex;flex-direction:column;height:100vh;background:#fff}
@supports (height:100dvh){.entry-stage{height:100dvh}}
.entry-stage[hidden]{display:none}
.entry-stage-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:10px clamp(12px,3vw,24px);border-bottom:1px solid rgba(23,74,126,.16);background:#fff;font-family:Fredoka,system-ui,"Segoe UI",sans-serif;color:#174A7E}
.entry-stage-title{margin:0;font-size:16px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:46vw}
.entry-exit{min-height:44px;padding:11px 24px;border:0;border-radius:999px;background:#174A7E;color:#fff;font-family:inherit;font-size:17px;font-weight:600;line-height:1;cursor:pointer}
.entry-exit:hover{background:#123A63}
.entry-stage-link{margin:0;font-size:16px}
.entry-stage-status{margin:0;padding:0 clamp(12px,3vw,24px);font-family:Fredoka,system-ui,"Segoe UI",sans-serif;font-size:15px;color:#33465E}
.entry-stage-status:not(:empty){padding:8px clamp(12px,3vw,24px)}
.entry-stage[data-state="error"] .entry-stage-link{font-weight:600}
.entry-stage-body{flex:1 1 auto;min-height:0;background:#fff}
.entry-stage-body iframe{display:block;width:100%;height:100%;border:0}
@media (max-width:520px){.entry-play{width:100%;padding:16px 24px}.entry-stage-title{max-width:100%}}
