@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600&display=swap');
:root{font-family:'Noto Sans KR',sans-serif;color:#eeeae0;background:#050b13;font-synthesis:none}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a{font:inherit;color:inherit;font-size:14px}button{cursor:pointer;border:1px solid #ffffff35;background:#222b27e8;padding:12px 18px;border-radius:3px}button:hover{background:#445047}button:focus-visible,a:focus-visible{outline:2px solid #ebc787;outline-offset:4px}button.active{background:#e6dcc6;color:#222c26;border-color:#e6dcc6}#worldStage{position:fixed;inset:0;touch-action:none;outline:0}canvas{display:block}header{position:fixed;inset:0 0 auto;display:flex;justify-content:space-between;align-items:flex-start;padding:28px 34px;pointer-events:none;background:linear-gradient(#17231d94,transparent)}header>div,header nav{pointer-events:auto}header small,.eyebrow{font-size:12px;letter-spacing:.18em;color:#dbd9c6}h1{font-size:30px;font-weight:500;letter-spacing:.02em;margin:6px 0}header p{font-size:14px;margin:0;color:#e0e3d9}nav{display:flex;gap:8px}.buildingCard{position:fixed;left:34px;top:174px;width:265px;background:#1e2923e8;padding:20px 22px;border-top:2px solid #d5bc85;backdrop-filter:blur(14px)}.buildingCard h2{font-size:24px;font-weight:500;margin:11px 0 6px}.buildingCard p{font-size:14px;line-height:1.8;color:#d2d9ce;margin:7px 0 16px}.buildingCard button{width:100%;background:#d9c49a;border:0;color:#202b24}.buildingCard small{display:block;font-size:12px;line-height:1.7;color:#c4cbbf;margin-top:12px}#worldLocation{position:fixed;bottom:30px;left:34px;font-size:14px;color:#f0edde;text-shadow:0 2px 10px #000}#walkControls{position:fixed;left:32px;bottom:82px;text-align:center}#walkControls button{width:44px;height:44px;padding:0;margin:2px;font-size:22px;touch-action:none;user-select:none}#worldMap{position:fixed;bottom:28px;right:32px;width:224px;background:#1c2922ec;border:1px solid #ffffff30;padding:12px 14px}#worldMap summary{font-size:14px;cursor:pointer}#worldMap svg{width:100%;height:174px;display:block;margin-top:10px}#worldMap p{font-size:12px;color:#dfd1ac;margin:7px 0 0}#entranceAction{position:fixed;bottom:36px;left:50%;transform:translateX(-50%);background:#e7c68a;color:#263027;border:0;box-shadow:0 4px 30px #0004}#worldHint{position:fixed;bottom:38px;left:50%;transform:translateX(-50%);color:#fff;background:#17241fc9;padding:9px 16px;font-size:14px;border-radius:3px;pointer-events:none;max-width:45vw;text-align:center}#worldLoading,#transition{position:fixed;inset:0;display:grid;place-items:center;background:#1b2520;color:#e5dfce;font-size:16px;z-index:20}#transition{opacity:0;pointer-events:none;transition:opacity .35s}body.leaving #transition{opacity:1;pointer-events:auto}dialog{width:min(520px,calc(100vw - 32px));background:#253128;color:#eee8da;border:1px solid #84907b;padding:28px;line-height:1.9}dialog::backdrop{background:#1020169c}dialog h2{font-size:24px}dialog p{font-size:16px}dialog button{width:100%}[hidden]{display:none!important}body[data-mode=walk] .buildingCard{display:none}body[data-mode=overview] #walkControls{display:none}
@media(max-width:700px){header{padding:20px;gap:10px}h1{font-size:24px}header small{font-size:11px}header p{font-size:12px}nav{max-width:190px;flex-wrap:wrap;justify-content:flex-end;gap:5px}nav button{padding:9px 11px;font-size:13px}.buildingCard{left:20px;top:158px;width:220px;padding:16px}.buildingCard h2{font-size:21px}#worldMap{right:18px;bottom:22px;width:170px;padding:10px}#worldMap svg{height:130px}#worldLocation{left:20px;bottom:20px;max-width:45%;font-size:12px}#walkControls{left:16px;bottom:64px}#worldHint{bottom:220px;max-width:85vw;width:max-content;font-size:13px}#entranceAction{bottom:220px;width:max-content;max-width:90vw}#worldMap summary{font-size:13px}}
@media(max-height:540px){.buildingCard{top:135px;width:220px;padding:12px 16px}.buildingCard small{display:none}.buildingCard p{margin:4px 0 8px}.buildingCard h2{margin:5px 0}#worldMap svg{height:95px}#worldMap{width:165px}#worldHint,#entranceAction{bottom:24px}#worldLocation{bottom:12px}}
@media(prefers-reduced-motion:reduce){#transition{transition:none}}
