@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500&family=Oswald:wght@300;400&display=swap');
@import url('./maps.css');
:root{color-scheme:dark;font-family:'Noto Sans KR',sans-serif;color:#e9e3d4;background:#151611;font-synthesis:none}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;font-size:14px;color:inherit;border:1px solid #ffffff25;background:#11130ee0;padding:12px 17px;cursor:pointer;transition:background .2s,border-color .2s}button:hover{background:#3b3b2a;border-color:#c4b78c}button:focus-visible,a:focus-visible{outline:2px solid #e0cb89;outline-offset:4px}button.active{color:#191b14;background:#d5c59b;border-color:#d5c59b}#stage{position:fixed;inset:0;outline:0;touch-action:none}#stage canvas{display:block;width:100%;height:100%}header{position:fixed;top:0;left:0;right:0;padding:30px 36px;display:flex;align-items:flex-start;justify-content:space-between;pointer-events:none;background:linear-gradient(#10120ec4,transparent)}header nav{display:flex;gap:8px;pointer-events:auto}.eyebrow{font-size:12px;letter-spacing:.18em;color:#c5b58a}h1{font-family:'Oswald',Arial,sans-serif;font-size:36px;letter-spacing:.15em;font-weight:300;margin:4px 0 2px;line-height:1.2}.identity p{margin:8px 0;font-size:13px;letter-spacing:.1em;color:#c8c5b8}#helpToggle,#fullScreen{padding:8px;width:44px;height:44px;font-size:20px}.location{position:fixed;left:36px;top:190px;display:flex;align-items:flex-start;gap:14px;pointer-events:none;text-shadow:0 2px 12px #000}.location>span{border-top:1px solid #cabb91;color:#d4c393;font-size:16px;padding-top:8px}.location h2{font-size:18px;font-weight:400;margin:4px 0 8px}.location p{font-size:11px;letter-spacing:.17em;color:#c8c6b7;margin:0}.crosshair{position:fixed;left:50%;top:50%;width:4px;height:4px;border-radius:50%;border:1px solid #fff8;pointer-events:none;opacity:.5}footer{position:fixed;bottom:0;left:0;right:0;min-height:100px;padding:24px 36px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(transparent,#10120ed9);pointer-events:none}footer>*{pointer-events:auto}.levels{display:flex;border:1px solid #ffffff2a}.levels button{border:0;border-radius:0;background:#11130ec9;min-width:83px}.levels button.active{background:#c8b78c}.levels span{font-size:12px;margin-left:9px}.guidance{font-size:12px;color:#d2ccbd;pointer-events:none}.guidance i{margin:0 7px;color:#857e69}#home{background:none;border:0;font-size:12px;white-space:nowrap}.walkpad{position:fixed;left:36px;bottom:138px;text-align:center}.walkpad button{width:43px;height:43px;margin:2px;padding:0;background:#11130e90;font-size:21px;touch-action:none;user-select:none}.walkpad>button{margin-bottom:3px}.walkpad button.pressed{background:#b8a676;color:#111}#moveHint{position:fixed;bottom:112px;left:50%;transform:translateX(-50%);padding:8px 14px;background:#111a;border-radius:2px;font-size:13px;pointer-events:none;opacity:0;transition:opacity .2s}#moveHint.shown{opacity:1}#mapPanel{position:fixed;right:28px;top:93px;bottom:118px;width:min(470px,calc(100vw - 40px));padding:22px;background:#161912f5;border:1px solid #92856a4a;overflow:auto;box-shadow:0 15px 80px #0008;backdrop-filter:blur(15px)}.panelTop{display:flex;justify-content:space-between;align-items:center}.panelTop h2{font-size:18px;font-weight:400;margin:0}.panelTop button{padding:4px 12px;font-size:24px;border:0;background:none}#map{width:100%;height:auto;max-height:43vh;object-fit:contain;margin:18px 0 8px}#roomLinks{display:flex;flex-wrap:wrap;gap:8px}#roomLinks button{font-size:13px;padding:9px 12px}.small{font-size:12px;color:#aaa899;line-height:1.8}.textButton{background:none;border:0;border-bottom:1px solid #9b8e67;padding:7px 0;font-size:13px;color:#d5c59b}dialog{background:#191c15;color:#ece6d5;border:1px solid #867b584f;width:min(560px,calc(100% - 36px));padding:42px;max-height:85vh;box-shadow:0 30px 130px #0009}dialog::backdrop{background:#020503a8;backdrop-filter:blur(5px)}dialog h2{font-size:29px;font-weight:400;line-height:1.5}dialog p{font-size:15px;line-height:1.95;color:#c9c7b9}.close{position:absolute;right:14px;top:12px;border:0;background:none;font-size:26px;padding:4px 12px}.primary{margin-top:28px;background:#caba91;color:#171a12;width:100%;border:0}label{display:flex;align-items:center;justify-content:space-between;font-size:14px;margin-top:24px;gap:30px}input{accent-color:#caba91;width:60%}#reference{width:min(1000px,calc(100% - 36px))}.references{display:grid;grid-template-columns:1fr 1fr;gap:24px}.references figure{margin:0}.references img{width:100%;display:block;max-height:350px;object-fit:contain;background:#0c0f09}.references figcaption{font-size:13px;color:#ccc2a7;margin-top:10px}a{color:#c9b98a;font-size:13px;margin-right:20px}#loading{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;gap:20px;background:#141710;z-index:20;font-size:14px;letter-spacing:.08em}#loading span{width:20px;height:20px;border:1px solid #d3c19933;border-top-color:#d3c199;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}[hidden]{display:none!important}@media(max-width:950px){.guidance{display:none}.levels span{display:none}header{padding:24px}.location{left:24px;top:172px}footer{padding:20px 24px}.walkpad{left:22px;bottom:120px}}@media(max-width:560px){h1{font-size:29px}.eyebrow{font-size:10px}.identity p{font-size:12px}header{padding:20px;gap:18px}header nav{gap:5px}header button{padding:10px;font-size:12px}#fullScreen{display:none}#helpToggle{width:37px;height:39px}.location{left:20px;top:156px}.location h2{font-size:16px}.location p{font-size:10px}footer{padding:20px;min-height:88px}.walkpad{bottom:111px;left:18px}.walkpad button{width:42px;height:42px}#mapPanel{right:18px;top:85px;bottom:98px;padding:18px}dialog{padding:34px 25px}.references{grid-template-columns:1fr}#moveHint{bottom:95px;max-width:65vw;text-align:center}.levels button{min-width:65px}}
header nav .modeSwitch{background:#d5c59b;color:#191b14;border-color:#d5c59b;white-space:nowrap}@media(max-width:760px){header nav{flex-wrap:wrap;justify-content:flex-end;max-width:250px}header nav .modeSwitch{font-size:12px;padding:10px}}
