#guest-warning{background:transparent;border:0;color:#e6ded5;display:block;width:100%;min-height:44px;text-align:center;padding:7px 4px;font:inherit;font-size:12px;line-height:1.4;text-decoration:underline;text-decoration-color:#e4d2b956;text-underline-offset:4px}
#account-dialog{width:min(480px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 24px);padding:22px;overflow:auto;box-sizing:border-box;background:linear-gradient(145deg,#303544,#202630);color:#fff5e8;border:1px solid #cbb49c55;border-radius:24px}
#account-dialog .dialog-header{margin-bottom:8px}
#account-dialog h2{font-size:27px;line-height:1.15;margin:10px 0 14px}
#account-dialog p{font-size:15px;line-height:1.4;margin:0 0 12px}
#account-dialog .chapter{font-size:10px;letter-spacing:.15em;margin:0}
#account-dialog .account-unavailable{padding-top:8px;color:#e0d2c0}
#account-dialog button{min-height:44px;touch-action:manipulation}
#account-dialog .account-save-status{font-size:12px;color:#decda9;margin:8px 0}
#account-dialog .account-save-status:empty{display:none}
#account-dialog .dialog-return{font-size:13px;margin-top:8px}
#account-retry,#account-new-confirm,#guest-story-actions button,#account-story-options button{width:100%;padding:12px;border:1px solid #e2bc9866;border-radius:12px;background:#bd824c12;color:inherit;font:inherit;font-size:14px;line-height:1.35;text-align:center}
#account-retry,#account-new-confirm{margin-bottom:10px}
#account-new-confirm{border-color:#e6a884;background:#af65452b}
#account-story-options,#guest-story-actions{display:grid;gap:8px;margin:12px 0}
#account-story-options[hidden],#guest-story-actions[hidden],#main-story-actions[hidden]{display:none}
#account-story-options button[aria-pressed=true]{border-color:#f5d8ac;background:#dbc49b2b;box-shadow:inset 3px 0 #eed0a3}
#account-choice-note{padding:12px;background:#dac49c12;border-radius:12px;font-size:14px!important}
#account-dialog button:focus-visible,#main-story-actions button:focus-visible,.hp-main-menu:focus-visible{outline:2px solid #ffe0b1;outline-offset:3px}
#account-dialog button:disabled{opacity:.6;cursor:wait}
#main-story-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px;margin-top:10px}
#main-story-actions p{grid-column:1/-1;font-size:12px;line-height:1.4;margin:0 0 3px;color:#e3d4c3}
#main-story-actions button{min-height:44px;padding:8px;border:1px solid #d9bfa554;border-radius:10px;background:#17202eac;color:#f5eee4;font:inherit;font-size:13px;line-height:1.3}
#main-story-actions #menu-login{grid-column:1/-1;background:transparent;border:0;font-size:12px}
.welcome.has-guest-story h1{font-size:clamp(40px,11vw,65px);margin-bottom:18px}
.welcome.has-guest-story .opening-line{margin-bottom:12px}
.welcome.has-guest-story .replay{margin-top:0}
.living-opening .hp-save{min-width:52px;min-height:44px;padding:5px;border:1px solid #ddc89b40;border-radius:13px;background:#dac49c12;color:#decda9;font-size:11px;flex:none}
.hp-save[data-status=unavailable],.hp-save[data-status=invalid],.hp-save[data-status=conflict]{border-color:#e6a884;color:#ffd5b5}
.hp-history-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.hp-history-row .hp-period{margin:0}
.living-opening .hp-main-menu{min-height:44px;min-width:100px;padding:8px;border:1px solid #ddc89b40;border-radius:12px;background:#dac49c12;color:#decda9;font:inherit;font-size:12px}
@media(max-height:620px) and (orientation:portrait){#account-dialog{padding:12px 16px}#account-dialog .dialog-header{margin-bottom:2px}#account-dialog h2{font-size:22px;margin:5px 0 8px}#account-dialog p{font-size:14px;margin-bottom:9px}#account-dialog .start-button{min-height:44px;padding:10px 12px}.welcome.has-guest-story h1{font-size:40px;margin-bottom:12px}.welcome.has-guest-story .opening-line{font-size:16px;margin-bottom:8px}}
@media(orientation:landscape) and (max-height:600px){#account-dialog{width:min(600px,calc(100vw - 24px));padding:14px 18px}#account-dialog h2{font-size:23px}#account-dialog .start-button{min-height:44px;padding:10px 12px}.hp-header{padding-right:50px}.hp-header>div{padding-right:0}.hp-save{margin-left:auto}.welcome.has-guest-story .title-composition{max-width:560px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:0 20px;align-items:center}.welcome.has-guest-story .opening-line,.welcome.has-guest-story h1{grid-column:1}.welcome.has-guest-story h1{font-size:38px;margin:0}.welcome.has-guest-story #start{grid-column:2;grid-row:1/3;min-height:44px;font-size:14px}.welcome.has-guest-story #main-story-actions{grid-column:2;grid-row:3/5;margin:0}.welcome.has-guest-story .replay{grid-column:1;grid-row:3;align-self:start}}

.welcome.has-guest-story .title-composition{position:relative;isolation:isolate}
.welcome.has-guest-story .title-composition::before{content:"";position:absolute;z-index:-1;inset:-30px -16px -14px;pointer-events:none;background:linear-gradient(180deg,transparent,#080f19a6 24%,#080f19e8 70%,#080f19)}

/* Keep home-screen instructions beside the main story action. */
.welcome .install-shortcut{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:48px;margin-top:10px;padding:10px 8px;border:1px solid #d9bfa570;border-radius:12px;background:#17202ee8;color:#f5e9d8;font:inherit;font-size:14px;line-height:1.35}
.welcome .install-shortcut img{width:36px;height:36px;flex:none;border-radius:8px}
.welcome .install-shortcut span{text-align:left}
#install-instructions{white-space:pre-line}
.welcome .install-shortcut:hover{background:#2c3542;border-color:#e8c7a1}
.welcome .install-shortcut:focus-visible{outline:2px solid #ffe0b1;outline-offset:3px}
@media(orientation:landscape) and (max-height:600px){
 .welcome:not(.has-guest-story) .title-composition{max-width:650px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:0 24px;align-items:center}
 .welcome:not(.has-guest-story) .opening-line{grid-column:1;grid-row:1;font-size:15px;margin-bottom:10px}
 .welcome:not(.has-guest-story) h1{grid-column:1;grid-row:2;font-size:38px;margin-bottom:8px}
 .welcome:not(.has-guest-story) #start{grid-column:2;grid-row:1/3}
 .welcome:not(.has-guest-story) .install-shortcut{grid-column:2;grid-row:3;margin-top:0;font-size:13px}
 .welcome:not(.has-guest-story) .replay{grid-column:1;grid-row:3}
 .welcome.has-guest-story .install-shortcut{grid-column:1;grid-row:4;align-self:start;margin-top:0;font-size:13px}
}
