.password-recovery{max-width:440px;width:calc(100% - 32px);box-sizing:border-box;max-height:calc(100dvh - 32px);overflow-y:auto;border:0;border-radius:22px;padding:26px;background:#fff;color:#223d48;box-shadow:0 20px 90px #162a3850;font:15px/1.5 system-ui}
.password-recovery::backdrop{background:#112e426b}.password-recovery header{display:flex;gap:12px;justify-content:space-between;align-items:center}.password-recovery h2{font-size:24px;margin:0}.password-recovery label{display:grid;gap:6px;margin:14px 0;font-weight:600}.password-recovery input{box-sizing:border-box;width:100%;min-height:46px;border:1px solid #b7cbd2;border-radius:10px;padding:10px 12px;font:inherit}.password-recovery button{min-height:44px;border:0;border-radius:10px;padding:10px 16px;background:#fca832;color:#243c47;font-weight:750;cursor:pointer}.password-recovery [role=status]{color:#954326}.password-recovery input:focus-visible{outline:2px solid #187abd;outline-offset:2px}
.password-recovery [hidden]{display:none!important}
[data-password-recovery]{background:transparent;border:0;color:#547089;min-height:44px;cursor:pointer;text-decoration:underline;font:inherit}

/* Authentication stays in the original landing card at every viewport size. */
#authScreen #accountPanel{scroll-margin-top:108px}
#authScreen .ppu-entry-guest h2{font-size:26px!important;line-height:1.25!important;font-weight:800!important;letter-spacing:-.5px}
#authScreen .ppu-entry-guest .ppu-auth-tabs{margin:16px 0 14px}
#authScreen .ppu-auth-tabs button{min-height:44px;padding:8px 4px!important;font-size:14px!important}
#authScreen .ppu-providers button{min-height:44px}
#authScreen .ppu-entry-guest .ppu-auth-or{margin:12px 0;font-size:12px}
#authScreen .ppu-entry-guest .ppu-field{margin:0 0 12px}
#authScreen .ppu-entry-guest .ppu-referral{margin:0}
#authScreen .ppu-referral summary{min-height:44px;align-content:center;color:#547089;cursor:pointer;font-size:13px;font-weight:650}
#authScreen .ppu-referral summary:hover{color:#23658c}
#authScreen .ppu-referral[open] summary{margin-bottom:6px}
#authScreen .ppu-entry-guest .ppu-referral label{margin-top:0}
#authScreen .ppu-entry-guest .account-form>.ppu-button{margin-top:4px;min-height:48px;font-size:15px;border-radius:12px}
#authScreen .ppu-entry-guest .account-form>.ppu-button:hover{transform:none}
#authScreen .ppu-field{min-width:0}
#authScreen .ppu-field>label{display:block;margin-bottom:6px}
#authScreen .ppu-field>label>span{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font:inherit}
#authScreen .registration-password{display:flex!important;align-items:stretch;gap:0!important;border:1px solid #d7e4e9;border-radius:10px;background:#f6f9fc;overflow:hidden;box-sizing:border-box}
#authScreen .registration-password input{border:0!important;background:transparent!important;flex:1;min-width:0;border-radius:0!important;box-shadow:none!important;padding-right:4px!important}
#authScreen .registration-password:focus-within{outline:2px solid #167bb4;outline-offset:2px}
#authScreen .registration-password button{flex-shrink:0;align-self:stretch;min-width:76px;min-height:44px;border:0;background:transparent;color:#23658c;padding:8px 10px;font:650 13px/1.3 system-ui;cursor:pointer}
#authScreen .ppu-field input{font-size:16px!important;min-height:46px;height:46px;box-sizing:border-box}
#authScreen :is(.registration-hint,.registration-feedback,.registration-caps){display:block;font:400 12px/1.5 system-ui;letter-spacing:normal;margin:6px 0 0;text-transform:none;color:#59737e}
#authScreen .registration-feedback:empty{display:none}
#authScreen :is(.registration-feedback,.registration-caps){color:#a13c28}
#authScreen .ppu-field input[aria-invalid=true]{border-color:#bb5039!important;box-shadow:inset 0 0 0 1px #bb5039!important}
#authScreen .ppu-field input:focus-visible,#authScreen button:focus-visible,.password-recovery button:focus-visible,#homeScreen button:focus-visible{outline:3px solid #167bb4;outline-offset:3px}
#authScreen [hidden]{display:none!important}
#authScreen [aria-busy=true]{cursor:progress}
#authScreen .ppu-field em{white-space:normal}
.password-recovery input{font-size:16px}
.password-recovery header [data-close]{width:44px;flex-shrink:0;padding:6px;font-size:24px;background:#eff5f7}
.password-recovery{overscroll-behavior:contain;scroll-padding:18px}
@media(max-width:540px){
 .password-recovery{padding:20px;width:calc(100% - 24px);max-height:calc(100dvh - 24px)}
}
@media(max-height:500px) and (min-width:541px){#homeScreen .registration-scene{height:170px}#homeScreen .skin-picker button{min-height:146px}#homeScreen .skin-picker .trainer-mini{height:100px!important}#homeScreen[data-mode=setup] .home-topbar{margin-bottom:10px}}

#authScreen .registration-password input{font-weight:400!important;height:44px!important;min-height:44px!important}
#authScreen .ppu-field>.registration-password{margin:0!important}
#authScreen .ppu-field>label{font-size:13px;line-height:1.35;font-weight:700;color:#445865}

@media(max-width:700px){#authScreen #accountPanel{scroll-margin-top:88px}}
@media(max-width:360px){#authScreen .ppu-entry-guest h2{font-size:24px!important}}

/* Light game palette, original room and trainer colours. */
#homeScreen .setup-icon{display:inline-block;width:18px;height:18px;flex:none;vertical-align:middle}
#homeScreen[data-mode=setup]{--studio-ink:#193b50;--studio-muted:#617a8b;--studio-blue:#096caa;background:#dcecf0!important;overflow-y:auto!important;overscroll-behavior:contain;min-height:100dvh;padding:24px 28px 32px!important;box-sizing:border-box;color:var(--studio-ink);font-family:'Segoe UI',system-ui,sans-serif}
#homeScreen[data-mode=setup] .home-backdrop{position:fixed;inset:-8px;z-index:-3;transform:none;filter:blur(3px);background:none!important}
#app[data-screen=home] #homeScreen[data-mode=setup] .home-backdrop{background:linear-gradient(#e8f4f0aa,#e9f3f0a8),url('/assets/world-illustrated-v1/trainer-grove.webp') center/cover no-repeat!important}
#homeScreen[data-mode=setup] .home-vignette{position:fixed;inset:0;background:radial-gradient(ellipse at 50% 35%,#f3f9ff6b,transparent 70%);pointer-events:none}
#homeScreen[data-mode=setup] :is(.home-showcase,.prototype-note,.avatar-ring){display:none!important}
#homeScreen[data-mode=setup] .home-topbar{position:relative;inset:auto;max-width:1060px;margin:0 auto 24px;gap:14px;align-items:center}
#homeScreen[data-mode=setup] .registration-brand{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:0;border:0;background:transparent;text-shadow:none}
#homeScreen .registration-brand .pp-brand-wordmark{width:204px;height:68px;object-fit:contain;filter:none}
#homeScreen .registration-brand small{display:block!important;font:650 11px/1.3 'Segoe UI',system-ui;letter-spacing:.02em;color:#45697a;text-shadow:none;margin:-3px 0 0 8px}
#homeScreen[data-mode=setup] .account-chip{display:flex;gap:10px;align-items:center;min-height:46px;padding:9px 15px;background:#ffffffed;border:1px solid #d8e6eb;border-radius:14px;color:#254a60;text-align:left;box-shadow:0 4px 15px #264b6110}
#homeScreen .account-chip i{display:none}#homeScreen .account-chip b{font-size:13px}#homeScreen .account-chip small{font:11px/1.5 'Segoe UI',system-ui;color:#6a8392}
#homeScreen[data-mode=setup] .account-chip>span{display:block!important}
#homeScreen[data-mode=setup] .home-setup-card{position:relative!important;inset:auto!important;transform:none!important;box-sizing:border-box;width:min(100%,900px)!important;max-width:900px!important;margin:0 auto!important;padding:28px!important;border:1px solid #dce7ee!important;border-radius:26px!important;background:#fff!important;color:var(--studio-ink)!important;box-shadow:0 22px 70px #20496022,0 2px 8px #2049600a!important;backdrop-filter:none}
#homeScreen .registration-steps{display:flex;align-items:center;gap:8px;list-style:none;margin:0 0 22px;padding:0;font:600 12px/1.3 'Segoe UI',system-ui;color:#8296a2}
#homeScreen .registration-steps li{position:relative;flex:1;display:flex;align-items:center;gap:8px;margin:0!important;padding:0!important}
#homeScreen .registration-steps li:not(:last-child)::after{content:'';height:1px;flex:1;max-width:86px;margin:0 6px;background:#e4edf2}
#homeScreen .registration-steps b{display:grid;place-items:center;width:26px;height:26px;flex:none;border:1px solid #dce7ee;border-radius:9px;background:#f3f7fa;font-size:11px;font-weight:750}
#homeScreen .registration-steps li:first-child{color:#51846e}#homeScreen .registration-steps li:first-child b{color:#2f8b69;background:#e9f6ef;border-color:#daede3}
#homeScreen .registration-steps [aria-current=step]{color:var(--studio-blue)}#homeScreen .registration-steps [aria-current=step] b{color:#fff;background:var(--studio-blue);border-color:var(--studio-blue);box-shadow:0 3px 7px #096caa20}
#homeScreen .hero-card-head{display:flex;align-items:center;justify-content:space-between;margin:0 0 23px!important}
#homeScreen .hero-card-head>span{display:flex;flex-direction:column;gap:5px}
#homeScreen .hero-card-head small{font:750 10px/1.3 'Segoe UI',system-ui;letter-spacing:.12em;color:#8a9eac}
#homeScreen .hero-card-head strong{font-size:29px!important;line-height:1.25;overflow-wrap:anywhere;margin:0!important;color:var(--studio-ink);letter-spacing:-.02em;font-weight:750;text-shadow:none!important;-webkit-text-stroke:0!important}
#homeScreen .hero-card-head em{font:400 13px/1.5 'Segoe UI',system-ui!important;color:var(--studio-muted)}
#homeScreen .registration-head-mark{display:grid!important;place-items:center;width:47px;height:47px;border-radius:16px;background:#edf7fc;color:#1585b3;flex:none;margin-left:16px}
#homeScreen .registration-head-mark svg{width:24px;height:24px}
#homeScreen .name-field{margin:0 0 18px!important}#homeScreen .name-field input{font-size:16px!important;min-height:44px!important}
#homeScreen .registration-workspace{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(270px,1fr);gap:26px;align-items:start}
#homeScreen .registration-scene{position:relative;min-width:0;height:324px;border:1px solid #d7e4e8;border-radius:19px;overflow:hidden;background:#dbe9e9}
#app[data-screen=home] #homeScreen .registration-scene{background:url('/assets/registration-room-r2/trainer-room.png') center bottom/cover no-repeat}
#homeScreen .registration-scene::before{content:'';position:absolute;inset:0;background:linear-gradient(#f3faff1a,transparent 45%,#325b6412);pointer-events:none}
#homeScreen .registration-scene::after{content:'';position:absolute;bottom:36px;left:50%;width:150px;height:19px;transform:translateX(-50%);border:1px solid #90c4d46b;border-radius:50%;background:radial-gradient(ellipse,#519cb03d,transparent 70%);pointer-events:none}
#homeScreen .registration-scene-badge{position:absolute;left:14px;top:14px;display:flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid #fff9;border-radius:9px;background:#ffffffe8;color:#3e6578;font:650 10px/1.2 'Segoe UI',system-ui;box-shadow:0 2px 8px #37546208}
#homeScreen .registration-scene-badge svg{width:14px;height:14px;color:#478ba4}
#homeScreen #registrationHeroPreview{position:absolute;bottom:36px;left:50%;z-index:1;transform:translateX(-50%);width:192px;height:256px}
#homeScreen .registration-art-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none}
#homeScreen .registration-scene-caption{position:absolute;left:12px;right:12px;bottom:10px;text-align:center;color:#4b6b7c;font:650 11px/1.3 'Segoe UI',system-ui;text-shadow:0 1px #fffd}
#homeScreen .registration-customize{min-width:0;padding-top:3px}
#homeScreen .registration-field-title{display:flex;align-items:center;gap:8px;margin:0 0 10px;font:750 13px/1.4 'Segoe UI',system-ui;color:var(--studio-ink)}
#homeScreen .registration-field-title>.setup-icon{width:17px;height:17px;color:#458aaf}
#homeScreen .skin-picker{display:grid!important;grid-template-columns:1fr 1fr;gap:9px!important;margin:0 0 22px!important}
#homeScreen .skin-picker button{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:8px;min-width:0;min-height:76px;padding:7px 9px!important;border:1.5px solid #e0e9ef!important;border-radius:13px!important;background:#f8fbfd!important;color:#496677!important;box-shadow:none!important;font:650 12px/1.3 'Segoe UI',system-ui;transition:border-color .18s,background .18s,box-shadow .18s}
#homeScreen .skin-picker button:is(.is-active,[aria-pressed=true]){border-color:#137fb5!important;background:#eff8fd!important;color:#075c8f!important;box-shadow:0 0 0 2px #e6f4fb!important}
#homeScreen .skin-picker button>span{padding:0;background:none;border-radius:0}
#homeScreen .skin-picker button .setup-icon{position:absolute;right:5px;top:5px;width:12px;height:12px;color:#096caa;opacity:0}
#homeScreen .skin-picker button[aria-pressed=true] .setup-icon{opacity:1}
#homeScreen .skin-picker .trainer-mini{position:relative;height:58px!important;width:38px!important;flex:none;display:block;background:center/contain no-repeat;margin:0!important;filter:none}
#homeScreen .registration-color-caption{display:flex!important;align-items:center;gap:8px;margin:0 0 11px;font:750 13px/1.4 'Segoe UI',system-ui;color:var(--studio-ink);text-align:left}
#homeScreen .registration-color-caption>.setup-icon{width:17px;height:17px;color:#458aaf}
#homeScreen #registrationColorName{font:600 10px/1.3 'Segoe UI',system-ui;color:#658599;margin-left:auto;border-radius:6px;background:#f0f6fa;padding:3px 6px}
#homeScreen .registration-colors{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:0}
#homeScreen .registration-colors button{position:relative;display:flex;align-items:center;gap:8px;min-width:0;min-height:51px;padding:9px 10px;border:1.5px solid #e0e9ef;border-radius:11px;background:#fff;color:#526f80;font:650 11px/1.3 'Segoe UI',system-ui;cursor:pointer;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}
#homeScreen .registration-colors button:hover{background:#f4f9fc;transform:translateY(-1px)}#homeScreen .registration-colors button[aria-pressed=true]{border-color:#0c7eb6;background:#eef8fd;color:#075e91;box-shadow:0 0 0 2px #e4f3fc}
#homeScreen .registration-swatch{display:grid;place-items:center;flex:none;width:27px;height:29px;border-radius:7px;background:color-mix(in srgb,var(--swatch) 12%,white);color:var(--swatch)}
#homeScreen .registration-swatch .setup-icon{width:19px;height:19px;fill:color-mix(in srgb,var(--swatch) 15%,white);stroke-width:1.7}
#homeScreen .registration-colors .registration-color-check{position:absolute;top:3px;right:3px;display:none;color:#096caa;width:10px;height:10px}#homeScreen .registration-colors [aria-pressed=true] .registration-color-check{display:block}#homeScreen .registration-color-check>.setup-icon{display:block;width:100%;height:100%}
#homeScreen .registration-choice-note{display:flex;align-items:flex-start;gap:7px;margin:14px 0 0;color:#8499a7;font:11px/1.5 'Segoe UI',system-ui}#homeScreen .registration-choice-note svg{width:13px;height:13px;flex:none;margin-top:2px}
#homeScreen .registration-bottom{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-top:24px;border-top:1px solid #edf2f5;padding-top:20px}
#homeScreen .foundation-status{display:flex!important;align-items:center;gap:9px;margin:0!important;text-align:left;color:#7892a2;font:12px/1.4 'Segoe UI',system-ui}#homeScreen .foundation-status>.setup-icon{width:20px;height:20px;color:#83a9bd}
#homeScreen .foundation-status small{display:block;font:inherit!important;color:inherit!important}#homeScreen .foundation-status b{display:block;font-weight:650;color:#496a7f}
#homeScreen .registration-next{position:relative;z-index:2;flex:none;width:235px;padding:0;background:#fff}
#homeScreen .registration-next button{display:flex!important;align-items:center;justify-content:center;gap:14px;width:100%;min-height:51px;white-space:normal;background:#096caa!important;color:#fff!important;border:1px solid #09659e!important;border-radius:12px!important;box-shadow:0 3px 0 #075b8c,0 5px 13px #096caa18!important;font:750 15px/1.3 'Segoe UI',system-ui!important;letter-spacing:0!important;text-transform:none!important;transition:background .18s,box-shadow .18s}
#homeScreen .registration-next button:hover{background:#087bb9!important;transform:none!important}#homeScreen .registration-next button>.setup-icon{width:18px;height:18px}
#homeScreen [hidden]{display:none!important}#homeScreen button:disabled{opacity:.65;cursor:progress}#homeScreen :is(button,input):focus-visible{outline:3px solid #168ac0!important;outline-offset:3px}
@media(max-width:760px){
 #homeScreen[data-mode=setup]{padding:14px 14px 24px!important}#homeScreen[data-mode=setup] .home-topbar{max-width:560px;margin-bottom:16px}#homeScreen .registration-brand .pp-brand-wordmark{width:162px;height:54px}#homeScreen .registration-brand small{font-size:10px}
 #homeScreen[data-mode=setup] .account-chip{padding:8px 11px}#homeScreen .account-chip b{max-width:112px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 #homeScreen[data-mode=setup] .home-setup-card{max-width:560px!important;padding:20px!important;border-radius:22px!important}
 #homeScreen .registration-workspace{grid-template-columns:minmax(0,1fr);gap:18px}#homeScreen .registration-scene{height:230px}#homeScreen #registrationHeroPreview{width:141px;height:188px;bottom:27px}#homeScreen .registration-scene::after{bottom:26px;width:125px;height:16px}#homeScreen .registration-scene-caption{bottom:7px;font-size:10px}#homeScreen .registration-scene-badge{top:10px;left:10px;padding:5px 8px}
 #homeScreen .registration-customize{padding:0}#homeScreen .skin-picker{margin-bottom:17px!important}#homeScreen .skin-picker button{min-height:60px;justify-content:center;padding:5px 10px!important;font-size:13px}#homeScreen .skin-picker .trainer-mini{height:45px!important;width:30px!important}
 #homeScreen .registration-colors{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}#homeScreen .registration-colors button{flex-direction:column;justify-content:center;gap:5px;padding:8px 3px;min-height:64px;font-size:10px}
 #homeScreen .registration-choice-note{margin-top:11px;font-size:10px}#homeScreen .registration-bottom{position:sticky;bottom:-20px;z-index:3;display:block;margin-top:18px;padding:14px 0 4px;background:#fff;box-shadow:0 -8px 12px #ffffffd9}#homeScreen .foundation-status{display:none!important}#homeScreen .registration-next{width:100%}
 #homeScreen .registration-steps{font-size:11px;margin-bottom:20px;gap:4px}#homeScreen .registration-steps li{gap:6px}#homeScreen .registration-steps li:not(:last-child)::after{margin:0 3px;max-width:30px}#homeScreen .hero-card-head{margin-bottom:18px!important}#homeScreen .hero-card-head strong{font-size:26px!important}
}
@media(max-width:360px){#homeScreen[data-mode=setup]{padding:10px!important}#homeScreen[data-mode=setup] .home-setup-card{padding:16px!important}#homeScreen .registration-brand .pp-brand-wordmark{width:142px;height:48px}#homeScreen .registration-brand small{font-size:9px}#homeScreen .account-chip small{font-size:10px}#homeScreen .registration-steps{font-size:10px}#homeScreen .registration-scene{height:212px}#homeScreen #registrationHeroPreview{width:129px;height:172px}#homeScreen .registration-bottom{bottom:-16px}}
@media(prefers-reduced-motion:reduce){#homeScreen :is(.skin-picker button,.registration-colors button,.registration-next button){transition:none!important}}

/* Trainer creation R4: five explicit choices, accessible actions and bounded name layout. */
#homeScreen .registration-header-actions{display:flex;align-items:center;gap:10px;min-width:0}
#homeScreen .registration-sound{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:9px 12px;border:1px solid #d8e6eb;border-radius:12px;background:#fffffff0;color:#3d677d;font:600 11px/1.3 'Segoe UI',system-ui;cursor:pointer}
#homeScreen .registration-sound>.setup-icon,#homeScreen .account-chip>.setup-icon{width:19px;height:19px;flex:none}
#homeScreen .account-chip small{font-size:11px}#homeScreen .hero-card-head>span{min-width:0;max-width:100%}
#homeScreen .account-chip b,#homeScreen .account-chip small{display:block}
#homeScreen[data-mode=setup] .home-topbar{min-width:0;flex-wrap:nowrap}
#homeScreen .account-chip{min-width:0;flex-shrink:1}
#homeScreen .account-chip>span{min-width:0}
#homeScreen .registration-swatch{width:24px;height:24px;border:1px solid #18394a12;background:var(--swatch);border-radius:50%;box-shadow:inset 0 1px 2px #fff5}
#homeScreen .registration-swatch>i{display:none}
#homeScreen .registration-colors [data-registration-style=custom]{grid-column:1/-1}
#homeScreen .registration-colors [data-registration-style=custom] .registration-swatch{background:conic-gradient(#d95673,#dfac4f,#6eb65b,#45a6bc,#8c68ce,#d95673)}
#homeScreen .registration-colors [data-registration-style=custom][aria-pressed=true] .registration-swatch{background:var(--swatch)}
#homeScreen #registrationColorName{background:none;color:#607d8d;padding:0}
#homeScreen .registration-custom-color{padding:12px;margin-top:10px;border:1px solid #dce7ee;border-radius:11px;background:#f6fafd}
#homeScreen .registration-custom-color>label{display:block;margin-bottom:8px;color:#527385;font:600 11px/1.3 'Segoe UI',system-ui}
#homeScreen .registration-custom-color>div{display:flex;gap:8px;align-items:center}
#homeScreen #registrationColorPicker{width:46px;min-width:46px;height:40px;border:1px solid #cfdee7;border-radius:8px;padding:3px;background:#fff;cursor:pointer}
#homeScreen #registrationColorHex{min-width:0;width:100%;height:40px;padding:8px 10px;border:1px solid #cfdee7;border-radius:8px;background:#fff;color:#254a60;font:600 14px/1.2 ui-monospace,monospace;text-transform:uppercase}
#homeScreen #registrationColorHex[aria-invalid=true]{border-color:#b64d43}
#homeScreen #registrationColorFeedback,#homeScreen #registrationAppearanceStatus{display:block;font:11px/1.4 'Segoe UI',system-ui;margin:7px 0 0;color:#6c8a9b;min-height:0}
#homeScreen #registrationAppearanceStatus:empty,#homeScreen #registrationColorFeedback:empty{display:none}
#homeScreen #registrationAppearanceStatus[data-error=true],#homeScreen #registrationColorFeedback:not(:empty){color:#ad4c3e}
#homeScreen .registration-custom-color .visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:700px){#homeScreen .registration-header-actions{gap:7px}#homeScreen .registration-sound{width:42px;min-width:42px;padding:0}#homeScreen .registration-sound>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#homeScreen .account-chip{min-height:44px}#homeScreen .account-chip>.setup-icon{width:18px;height:18px}#homeScreen .registration-colors{grid-template-columns:repeat(2,minmax(0,1fr))}#homeScreen .registration-colors button{flex-direction:row;justify-content:flex-start;min-height:46px;padding:8px 11px;font-size:11px}#homeScreen .hero-card-head strong{font-size:24px!important}#homeScreen .account-chip b{max-width:88px}}
@media(max-width:360px){#homeScreen[data-mode=setup] .home-topbar{gap:6px}#homeScreen .registration-header-actions{gap:5px}#homeScreen .registration-brand .pp-brand-wordmark{width:130px;height:44px}#homeScreen .account-chip b{display:none}#homeScreen .account-chip small{font-size:11px}#homeScreen .registration-sound{min-width:36px;width:36px}}
@media(min-width:361px) and (max-width:700px){#homeScreen .registration-brand .pp-brand-wordmark{width:142px;height:48px}#homeScreen .account-chip b{max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#homeScreen .registration-header-actions{flex-shrink:1}#homeScreen[data-mode=setup] .account-chip{padding:7px 9px;gap:7px}}

/* The image box depends on the viewport, never on login/register content. */
#authScreen.ppu-light .ppu-hero{isolation:isolate}
#authScreen.ppu-light .ppu-hero-art{inset:0 0 auto;height:clamp(700px,calc(100svh - 80px),1000px);width:100%;aspect-ratio:auto;overflow:hidden;animation:none;transform:none;pointer-events:none}
#authScreen.ppu-light .ppu-hero-art :is(img,video){width:100%;height:100%;object-fit:cover;object-position:45% center}
#authScreen.ppu-light .ppu-hero-shade{inset:0 0 auto;height:clamp(700px,calc(100svh - 80px),1000px);pointer-events:none}
#authScreen.ppu-light .ppu-hero-content{align-items:start}
@media(min-width:701px){#authScreen.ppu-light .ppu-entry{align-self:start}}
@media(max-width:700px){
 #authScreen.ppu-light .ppu-hero-art{top:300px;height:auto;aspect-ratio:16/9}
 #authScreen.ppu-light .ppu-hero-art :is(img,video){object-fit:contain;object-position:center}
 #authScreen.ppu-light .ppu-hero-shade{height:calc(300px + 56.25vw)}
}

/* Loading/error feedback occupies the fixed preview, not the form's grid. */
#homeScreen #registrationAppearanceStatus[data-error=true]{color:#a12c34;border-color:#eabec3}
@media(prefers-reduced-motion:reduce){#homeScreen #registrationAppearanceStatus::before{animation:none!important}}
