/* A quiet invitation, preserving the existing gallery and six companions. */
.welcome{left:clamp(24px,6vw,96px);top:50%;width:min(440px,calc(100vw - 48px));max-height:calc(100dvh - 150px);transform:translateY(-46%);padding:28px 30px 24px;border:1px solid #d8c09a32;border-radius:20px;background:linear-gradient(140deg,#231d19ed,#231b18d9);box-shadow:0 18px 70px #120b0933;scrollbar-color:#b69a6166 transparent;scrollbar-width:thin}
.welcome .entry-eyebrow{display:flex;align-items:center;gap:10px;margin:0;color:#d6b877;font:9px/1.4 Arial,sans-serif;letter-spacing:2.4px}
.entry-eyebrow>span{width:24px;height:1px;background:#d6b877}
.welcome h1{margin:16px 0 10px;font-size:clamp(32px,3.1vw,43px);line-height:1.4;font-weight:400;letter-spacing:-1.6px;word-break:keep-all}
.welcome .entry-intro{margin:0 0 23px;font-size:13px;line-height:1.8;color:#e4d8c6}
.welcome .entry-section-label{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:18px 0 10px;color:#eadcc3;font-size:11px;font-weight:500}
.entry-section-label span{font-size:10px;font-weight:300;color:#b7a992}
.welcome .character-picker{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin:0 0 14px}
.welcome .character-picker button{border-radius:10px;padding:8px 2px;background:#3c302583;min-height:80px}
.welcome .character-picker button>span{height:49px}
.welcome .character-picker small{font-size:9px}
.welcome .character-picker button[aria-pressed=true]{background:#80623855;border-color:#e2c386;box-shadow:0 0 0 1px #e2c38633}
.welcome .entry-choice{display:none}
.welcome .entry-sharing{max-width:none;margin-top:18px!important;color:#bcb09d;font-size:10px!important;line-height:1.75!important}
.welcome .entry-sharing strong{color:#dcc9a6;font-weight:400}
.welcome .entry-buttons{margin-top:16px}
.welcome .entry-buttons .primary{width:100%;min-height:48px;margin:0;padding:14px 18px;border-radius:9px;letter-spacing:.4px}
.welcome .entry-buttons .primary:not(:disabled)::after{content:'→';font-size:20px;line-height:1;margin-left:auto}
.welcome #entryStatus:empty{display:none}
.welcome .intro-note{display:flex;justify-content:center;align-items:center;gap:9px;margin:13px 0 0!important;color:#b7aa98;font-size:9px}
.intro-note i{font-style:normal;color:#85735b}
#nicknameEntry .nickname-editor{max-width:none;margin:0;padding:13px 14px;border-radius:11px;background:#ffffff05;border-color:#b99e6b33}
#nicknameEntry .nickname-editor label:not(.nickname-remember){display:block;color:#eadcc3;font-size:11px}
#nicknameEntry .nickname-editor .nickname-input-row{display:flex;align-items:center;gap:8px;margin-top:8px}
#nicknameEntry .nickname-editor input[data-name]{width:100%;max-width:none;min-width:0;border-color:#b39b6c66;background:#2a231f;color:#fff3dc;padding:10px 11px;font:13px 'Noto Sans KR',sans-serif}
#nicknameEntry .nickname-editor button[data-random]{flex:none;margin:0;padding:10px;border-radius:8px;color:#e4d1af;border-color:#b99e6b44;font-size:10px}
#nicknameEntry .nickname-editor button[data-save]{display:none}
#nicknameEntry .nickname-editor small{display:none}
#nicknameEntry .nickname-editor .nickname-remember{margin-top:10px;gap:6px;color:#bdb09a;font-size:10px}
#nicknameEntry .nickname-editor input[type=checkbox]{accent-color:#bea16c}
#nicknameEntry .nickname-editor [role=status]:empty{display:none}
#nicknameEntry .nickname-editor [role=status]{margin-top:7px;color:#f0cfa1;font-size:10px}
#nicknameEntry input[aria-invalid=true]{border-color:#e0a297}
.entered .welcome{transform:translate(-18px,-46%)}
@media(max-width:700px){.welcome{left:18px;right:18px;top:88px;width:auto;max-height:calc(100dvh - 106px);padding:22px 20px 18px;transform:none;border-radius:16px}.welcome h1{font-size:34px;margin:12px 0 8px}.welcome .entry-intro{font-size:12px;margin-bottom:18px}.welcome .character-picker{gap:5px}.welcome .character-picker button{min-height:67px;padding:5px 1px}.welcome .character-picker button>span{height:42px}.welcome .character-picker small{font-size:8px}.entry-section-label span{font-size:9px}.welcome .entry-sharing{font-size:10px!important}.entered .welcome{transform:translateX(-18px)}}
@media(max-width:360px){.welcome{left:12px;right:12px;padding:20px 16px}.welcome h1{font-size:31px}.entry-section-label span{display:none}.welcome .character-picker{gap:3px}.welcome .character-picker small{font-size:7px}}
@media(max-height:700px) and (min-width:701px){.welcome{top:98px;max-height:calc(100dvh - 116px);transform:none;padding:22px 26px}.welcome h1{font-size:34px}.welcome .entry-intro{margin-bottom:16px}.entered .welcome{transform:translateX(-18px)}}

/* In-flow seasonal notice: it never covers entry fields or controls. */
.welcome .entry-winter-notice{display:flex;align-items:center;gap:9px;margin:-8px 0 18px;padding:11px 12px;border:1px solid #c9ae705c;border-radius:10px;background:#33554759;color:#f3deb0;font:500 12px/1.65 'Noto Sans KR',sans-serif;word-break:keep-all;overflow-wrap:anywhere}
.entry-winter-notice svg{width:21px;height:24px;flex:none;fill:#c5d8b2}
@media(max-width:700px){.welcome .entry-winter-notice{font-size:11px;padding:9px 10px;margin:-4px 0 14px;gap:7px}}
