/* Approved B passport identity. Shared by the player, camera gates and operations. */
@font-face{font-family:TravelPretendard;src:url('/assets/travel/PretendardVariable.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--paper:#FAF9F5;--ink:#213B31;--muted:#707C76;--theme:#276BD7;--soft:#EAF2FF;--deep:#173E80;--gold:#F8CF62;--line:#E3E6DF;--font:TravelPretendard,Pretendard,-apple-system,'Malgun Gothic',sans-serif}
[data-region="UIRYEONG"]{--theme:#BE472B;--soft:#FFF0E8;--deep:#713220}
[data-region="HAMAN"]{--theme:#267454;--soft:#EAF4DC;--deep:#214D39}
.brand-logo{display:block;width:160px;height:auto;object-fit:contain}
.brand-icon{width:28px;height:28px;object-fit:contain}
.mascot{display:block;object-fit:contain;pointer-events:none;user-select:none}
.eyebrow{display:block;color:var(--theme);font-size:10px;letter-spacing:2px;font-weight:800;line-height:1.6}
.character-party{display:flex;align-items:flex-end;justify-content:center;gap:4px;position:relative}
.character-party .mascot{width:18%;height:132px;object-position:center bottom}
.character-party .mascot:first-child{width:40%;height:226px}
.character-hero{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--soft);border-radius:24px;padding:24px;position:relative;min-height:180px;overflow:hidden}
.character-hero>div{position:relative;z-index:1;flex:1;min-width:0}
.character-hero .mascot{width:122px;height:164px;flex:none;object-position:center bottom;align-self:flex-end;margin:-12px -8px -24px 0}
.character-hero h1,.character-hero h2{color:var(--deep);margin:7px 0 9px;line-height:1.25;font-family:var(--font);font-weight:800}
.character-hero p{color:var(--deep);font-size:13px;line-height:1.6;margin:0}
.coach{display:flex;gap:12px;align-items:center;background:var(--soft);border-radius:18px;padding:12px 16px;margin:12px 0}
.coach .mascot{width:58px;height:72px;flex:none}
.coach p{font-size:13px;line-height:1.6;color:var(--deep);margin:0}
.portrait{width:180px;height:215px;object-fit:contain;margin:10px auto 18px}
.sheet-portrait{width:92px;height:112px;object-fit:contain;margin:0 auto 12px}
:focus-visible{outline:3px solid var(--theme);outline-offset:4px}
[hidden]{display:none!important}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}
