:root{font-family:Arial,Helvetica,system-ui,sans-serif;background:#f8f3ff;color:#222138;color-scheme:light}*{box-sizing:border-box}body{margin:0;background:linear-gradient(160deg,#f8f3ff,#faf1eb 75%,#edf6f3)}main{padding:22px 18px 28px;max-width:480px;margin:auto;min-height:100vh}header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.wordmark{display:grid;gap:5px}.wordmark strong{font-size:15px;letter-spacing:.13em}.wordmark span{font-size:11px;letter-spacing:.11em;color:#645471}#badge{font-size:11px;border:1px solid #b9a9ca;border-radius:30px;padding:8px 10px;max-width:46%;overflow-wrap:anywhere}.character-panel{height:180px;position:relative;overflow:hidden;border-radius:24px;background:linear-gradient(130deg,#f1dcdf,#d9d0f2 58%,#bee0dd);margin-bottom:20px}.hero-copy{position:relative;padding:25px 17px;width:54%;z-index:1}.hero-copy>span{font-size:11px;letter-spacing:.13em;font-weight:700;color:#493853}.hero-copy p{font-size:25px;font-weight:700;line-height:1.13;letter-spacing:-.6px;margin:15px 0;color:#292039}.character-art{position:absolute;top:12px;bottom:12px;right:16px;height:calc(100% - 24px);aspect-ratio:2/3;background-repeat:no-repeat;background-position:center bottom;background-size:contain;pointer-events:none}.character-art.jayden,.character-art.avery{background-image:url('/assets/teen-pulse/jayden-avery.webp');background-size:400% 100%;background-position:0 50%}.character-art.avery{background-position:100% 50%}.character-art.eli{background-image:url('/assets/teen-pulse/eli.webp')}.character-art.mia{background-image:url('/assets/teen-pulse/mia.webp')}.character-art.layla{background-image:url('/assets/teen-pulse/layla.webp')}.mode{font-size:11px;font-weight:700;letter-spacing:.13em;color:#6a478d;text-transform:uppercase}h1{font-size:22px;line-height:1.25;letter-spacing:-.4px;margin:10px 0}#support{font-size:14px;color:#554760;line-height:1.5;margin:0 0 16px}.card{margin:0 0 22px}#prompt{font-size:21px;line-height:1.35;letter-spacing:-.35px;margin:0 0 12px;overflow-wrap:anywhere}.privacyNote{font-size:14px;color:#554760;line-height:1.5;margin:0 0 16px}.choices{display:grid;gap:10px}.choices button{display:block;width:100%;padding:14px 13px;min-height:48px;border:1px solid #bdaccd;border-radius:14px;background:#fff;color:#222138;font-family:inherit;font-size:16px;font-weight:400;line-height:1.4;text-align:left;overflow-wrap:anywhere;cursor:pointer}.choices button:hover{border-color:#6a478d}.choices button:focus-visible,summary:focus-visible{outline:3px solid #6a478d;outline-offset:3px}.choices button:disabled{background:#eee6f4;color:#554760;cursor:wait}.thanks{font-size:17px;line-height:1.5;color:#4c3269;margin:16px 0;font-weight:700}.hidden{display:none!important}footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:11px;color:#645471;margin-top:24px}details{margin-top:20px;border-top:1px solid #d4c8df;padding-top:15px;font-size:14px;line-height:1.6}summary{min-height:44px;display:flex;align-items:center;text-decoration:underline;cursor:pointer}body[data-interactive="true"] #message{display:none}body[data-interactive="true"] #support{font-size:13px;margin-top:8px}body[data-reconnecting="true"] #badge{background:#f3e6b5;color:#40351b}body[data-art-missing="true"] .character-art{display:none}
@media(max-width:360px){main{padding:18px 14px 24px}.character-panel{height:150px}.hero-copy{padding:21px 13px}.hero-copy p{font-size:21px}.character-art{right:12px}#prompt{font-size:20px}}@media(max-height:550px) and (orientation:landscape){.character-panel{height:125px}.hero-copy{padding:16px}.hero-copy p{font-size:21px;margin-top:10px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Post-course banner uses its full composition; no cover cropping or text overlay. */
.store-banner{display:none;width:100%;height:100%;object-fit:contain;position:absolute;inset:0}
body[data-store-banner="true"]:not([data-banner-failed="true"]) .character-panel{height:auto;aspect-ratio:1099/500;background:#292039}
body[data-store-banner="true"]:not([data-banner-failed="true"]) .store-banner{display:block}
body[data-store-banner="true"]:not([data-banner-failed="true"]) .hero-copy,body[data-store-banner="true"]:not([data-banner-failed="true"]) .character-art{display:none}

.drop-product{margin:0 0 20px}.drop-product img{display:block;width:100%;height:auto;border-radius:16px}.drop-product figcaption{font-size:13px;line-height:1.5;color:#554760;margin-top:8px}
