:root{color-scheme:light;--bg:#f8f7f1;--paper:#fffefa;--ink:#283d33;--green:#365c49;--dim:#687068;--rule:#deded2;--terra:#995638;--serif:Georgia,"Noto Serif KR","Nanum Myeongjo","Batang",serif;--sans:"Instrument Sans","Apple SD Gothic Neo","Malgun Gothic",system-ui,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);letter-spacing:-.035em}button,input,textarea,select{font:inherit;color:inherit}button,a{touch-action:manipulation}button{cursor:pointer;background:none;border:0}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,.world:focus-visible{outline:3px solid #bf7234;outline-offset:3px}svg.ico{width:1.2em;height:1.2em;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;display:inline-block;vertical-align:middle;flex-shrink:0}.shell{width:min(1392px,91.5%);margin:auto}
header{border-bottom:1px solid var(--rule);background:#fbfaf5}.bar{height:70px;display:flex;align-items:center;gap:52px}.brand{display:flex;align-items:center;gap:11px;font:700 23px var(--serif);letter-spacing:-.08em}.brandmark{height:35px;width:35px;background:var(--green);border-radius:10px;display:grid;place-items:center;color:#fff7db}.brandmark .ico{width:23px;height:23px}nav{display:flex;align-self:stretch;gap:28px}nav button{position:relative;font-size:14px;font-weight:600;color:#657068;display:flex;align-items:center;gap:7px;padding:0 2px}nav button.current{color:var(--green)}nav button.current:after{content:"";position:absolute;height:3px;border-radius:2px;bottom:0;left:0;right:0;background:var(--green)}.profile{margin-left:auto;display:flex;align-items:center;gap:9px;background:var(--paper);border:1px solid var(--rule);border-radius:25px;padding:5px 11px 5px 5px;font-size:13px;font-weight:bold}.profile .ico{width:13px}.mini-face{width:29px;height:29px;border-radius:50%;background:#e8e3cf;overflow:hidden;display:grid;place-items:center}.mini-face canvas{width:20px;height:27px;image-rendering:pixelated}
.intro{display:flex;justify-content:space-between;align-items:flex-end;padding:37px 0 25px;gap:12px}.club{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700;letter-spacing:.015em;color:#856149}.club svg{color:#7b8866}.intro h1{font:700 clamp(31px,3.2vw,49px)/1.3 var(--serif);letter-spacing:-.085em;margin:8px 0 6px}.intro p{margin:0;color:var(--dim);font-size:15px;line-height:1.55}.presence{display:flex;align-items:center;gap:7px;background:#eaf0e5;border:1px solid #d7e1d0;color:#456243;border-radius:22px;padding:7px 12px;font-size:11px;white-space:nowrap;margin-bottom:1px}.presence span{width:7px;height:7px;border-radius:50%;background:#719469}.layout{display:grid;grid-template-columns:minmax(0,2.52fr) minmax(263px,1fr);gap:22px;align-items:start}.map-card,.directory{background:var(--paper);border:1px solid var(--rule);border-radius:19px;overflow:hidden}.world{aspect-ratio:3/2;position:relative;overflow:hidden;isolation:isolate;background:#bdc691;cursor:crosshair}.world>img{display:block;width:100%;height:100%;object-fit:cover;user-select:none}.pins,.visitors{position:absolute;inset:0;pointer-events:none}.pin{position:absolute;transform:translate(-50%,-100%);background:#fffbee;color:#354233;border:1.5px solid #8b815f;box-shadow:0 3px 0 #574e3535,0 3px 14px #362f3025;border-radius:30px;font-size:clamp(12px,1.03vw,16px);font-weight:750;display:flex;align-items:center;gap:6px;white-space:nowrap;padding:7px 13px 7px 10px;pointer-events:auto;transition:translate .16s,background .16s;z-index:2}.pin:hover{translate:0 -4px;background:white}.pin:after{content:"";position:absolute;bottom:-5px;left:calc(50% - 4px);width:7px;height:7px;background:#fffbee;border:solid #8b815f;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}.pin .ico{color:var(--tint);width:18px;height:18px}.map-foot{padding:0 18px;min-height:49px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--dim);font-size:12px}.map-foot>span,.map-foot button{display:flex;align-items:center;gap:7px}.map-foot button{font-weight:600;min-height:40px}.map-foot button:hover{color:var(--ink)}.walker{pointer-events:none;position:absolute;z-index:3;transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center;transition:left .72s ease-in-out,top .72s ease-in-out}.walker canvas{width:27px;height:36px;image-rendering:pixelated;filter:drop-shadow(1px 2px 1px #3b2c2850)}.walker:before{content:"";position:absolute;width:22px;height:6px;border-radius:50%;bottom:-1px;background:#49372950;z-index:-1}.walker small{color:#fff;background:#355344ed;padding:2px 6px;margin-bottom:2px;border-radius:12px;font-size:9px;font-weight:700;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.walker.moving canvas{animation:step .17s alternate infinite}@keyframes step{to{transform:translateY(-3px) rotate(3deg)}}aside{display:grid;gap:16px}.directory{padding:19px 20px 8px}.section-heading{display:flex;align-items:center;gap:9px;margin:0 0 6px}.section-heading>svg{color:var(--green);width:20px;height:20px}.section-heading h2{font-size:18px;margin:0;letter-spacing:-.055em}.place{display:flex;gap:11px;align-items:center;text-align:left;width:100%;padding:15px 0;border-bottom:1px solid #e9e8df}.place:last-child{border:0}.place>span:nth-child(2){flex:1}.place b,.place small{display:block}.place b{font-size:15px;margin-bottom:4px}.place small{font-size:12px;color:var(--dim);line-height:1.55}.place>.ico{color:#90988b;font-size:13px}.place:hover b{color:var(--terra)}.tile{display:grid;place-items:center;border-radius:13px;width:43px;height:43px;background:var(--pale);color:var(--tint);flex-shrink:0}.tile .ico{width:23px;height:23px;stroke-width:1.5}.shelf{--pale:#f2e1ca;--tint:#92552f}.trail{--pale:#e2ead7;--tint:#4f724c}.bench{--pale:#e0e9ec;--tint:#406e7e}.gallery{--pale:#efe1e4;--tint:#926070}
.question{border-radius:17px;background:#355647;color:#fff9e8;padding:20px 22px;position:relative;isolation:isolate;overflow:hidden}.question:after{content:"";position:absolute;z-index:-1;width:110px;height:140px;border:1px solid #a8b99638;border-radius:85% 5% 90% 0;transform:rotate(24deg);bottom:-80px;right:6px;box-shadow:12px 5px 0 2px #355647,13px 5px 0 2px #a8b99638,25px 12px 0 1px #355647,26px 12px 0 1px #a8b99638}.question>div{color:#d9e5cd;display:flex;align-items:center;gap:7px;font-size:12px}.question h2{font:500 clamp(20px,1.52vw,25px)/1.5 var(--serif);letter-spacing:-.06em;word-break:keep-all;margin:11px 0 16px;max-width:19em}.question button{padding:0;color:#fff8e5;font-size:12px;display:flex;align-items:center;gap:7px;font-weight:600}.question button:hover{text-decoration:underline}footer{padding:17px 1px;margin:24px 0 0;border-top:1px solid var(--rule);font-size:11px;color:#777e73;display:flex;align-items:center;justify-content:space-between}footer span{display:flex;align-items:center;gap:7px}
dialog{width:min(570px,calc(100% - 24px));max-height:86dvh;border:1px solid #d6d8c9;border-radius:20px;padding:0;background:#fbfaf4;color:var(--ink);box-shadow:0 24px 110px #182a3152}dialog::backdrop{background:#192b24a6;backdrop-filter:blur(3px)}.dialog-head{position:sticky;top:0;z-index:5;background:#fbfaf4f5;display:flex;align-items:center;padding:10px 14px;border-bottom:1px solid var(--rule);font-size:12px;color:var(--dim)}.dialog-head #close{margin-left:auto}.icon-button{display:grid;place-items:center;border-radius:50%;width:35px;height:35px}.icon-button:hover{background:#eaece1}
#roomBody{padding:24px 28px 28px}#roomBody h2{font:700 28px/1.4 var(--serif);margin:0 0 6px;letter-spacing:-.065em;overflow-wrap:anywhere}.desc{font-size:14px;color:var(--dim);margin:0 0 18px;line-height:1.65;word-break:keep-all}.room-symbol{margin-bottom:12px}.primary,.soft,.choice{padding:10px 15px;min-height:41px;border-radius:11px;font-size:14px;font-weight:bold}.primary{background:var(--green);color:white}.primary:hover{background:#294d3a}.soft,.choice{border:1px solid #d5dbcf;background:#f1f3e9}.soft:hover,.choice:hover{background:#e6ebde}.wide{width:100%}.empty{border:1px dashed #cdd0bd;border-radius:14px;padding:20px;color:var(--dim);font-size:14px;line-height:1.7;margin-top:16px;text-align:center;background:#f7f7ed}.toolbar,.rowwrap{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:14px 0}.toolbar{justify-content:space-between}.toolbar .count{font-size:13px;color:var(--dim)}.entry{border:1px solid var(--rule);background:var(--paper);border-radius:13px;padding:15px 16px;margin-top:10px;text-align:left;display:block;width:100%;overflow-wrap:anywhere}.entry p,.entry blockquote,.book-question{white-space:pre-wrap;line-height:1.7;margin:8px 0;font-size:15px;overflow-wrap:anywhere}.entry b{font-size:16px}.entry small,.meta{display:block;font-size:12px;color:#667366;line-height:1.7}.book-entry{display:flex;gap:13px;align-items:center}.book-entry>span:nth-child(2){flex:1}.book-entry>svg{width:15px}.book-spine{width:34px;height:45px;flex-shrink:0;background:#9c654c;box-shadow:inset 5px 0 #0002;border-radius:3px 6px 6px 3px;border-bottom:4px solid #ded4b8;position:relative}.book-spine:after{content:"";position:absolute;left:10px;right:6px;border-top:2px solid #f2dfb9;top:12px}.book-entry:nth-child(3n) .book-spine{background:#708674}.book-entry:nth-child(3n+1) .book-spine{background:#9c8549}.book-question{background:#edf1e5;border-left:3px solid #738966;padding:13px 15px;border-radius:0 10px 10px 0}.section-title{font-size:16px;margin:24px 0 4px}.actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:9px}.linkbtn{font-size:12px;padding:6px 0;color:var(--green);font-weight:700}.linkbtn.delete{margin-left:auto;color:#8a6658}.choice.active{color:#fff;background:var(--green);border-color:var(--green)}form{display:grid;gap:15px;margin-top:15px}label.field{display:grid;gap:7px;font-size:13px;font-weight:700}input,textarea,select{width:100%;padding:11px 12px;border:1px solid #cdd2c4;border-radius:9px;background:white;font-size:15px}input:focus,textarea:focus,select:focus{outline:2px solid #7c9977}textarea{min-height:82px;resize:vertical}.field small,.helper{color:var(--dim);font-weight:400;font-size:12px;line-height:1.6}.form-error{margin:0;color:#93412e;font-size:13px}.form-error:empty{display:none}button:disabled{opacity:.55;cursor:wait}.danger{color:#9a4637}.selection{border:2px solid var(--green)}.colorpick{border-radius:10px;padding:5px 10px;background:#eae9db}.colorpick canvas{width:23px;image-rendering:pixelated}.swatches{display:flex;gap:7px}.hide,[hidden]{display:none!important}audio{max-width:100%;height:38px;margin:6px 0}.exhibit-list{line-height:1.85;padding-left:24px}.reply{border-left:2px solid #dddccf;margin:10px 0 0;padding-left:12px}.reply p{font-size:14px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);border-radius:30px;background:#233d31;color:white;font-size:13px;padding:10px 17px;box-shadow:0 3px 16px #25342c30;z-index:100;pointer-events:none;opacity:0;transition:opacity .2s}#toast.show{opacity:1}
@media(min-width:1500px){.bar{height:78px}.intro{padding-top:44px;padding-bottom:30px}.directory{padding:24px 24px 10px}.place{padding:19px 0}.question{padding:23px 25px}}
@media(max-width:960px){.shell{width:94%}.layout{gap:14px;grid-template-columns:minmax(0,2.05fr) minmax(245px,1fr)}.directory{padding:15px 14px 5px}.place{padding:10px 0;gap:9px}.tile{width:37px;height:37px}.question{padding:16px}.intro{padding-top:26px}.bar{gap:28px}.intro p{font-size:14px}}
@media(max-width:760px){.shell{width:calc(100% - 32px)}.bar{height:58px}.brand{font-size:21px}.brandmark{width:31px;height:31px}nav{display:none}.intro{padding:25px 0 17px;align-items:flex-start;position:relative}.intro h1{font-size:34px}.intro p{font-size:13px;max-width:32em}.club{font-size:11px}.presence{position:absolute;top:24px;right:0;padding:4px 8px;font-size:10px}.layout{grid-template-columns:1fr}.map-card{border-radius:15px}.map-foot{padding:0 11px;min-height:40px;font-size:11px}.pin{font-size:11px;gap:3px;padding:5px 8px}.pin .ico{width:14px;height:14px}.walker canvas{width:20px;height:27px}aside{grid-template-columns:1fr 1fr;gap:12px}.question{align-self:start}.place{padding:10px 0}.place small{font-size:11px}footer{margin:18px 0 0}.map-foot button{min-height:35px}}
@media(max-width:550px){aside{grid-template-columns:1fr}.directory{padding:16px 15px 8px}.section-heading h2{font-size:16px}#places{display:grid;grid-template-columns:1fr 1fr;column-gap:12px}.place{gap:7px}.place b{font-size:13px}.place small{font-size:10px}.place>svg{display:none}.place:nth-child(3){border-bottom:0}.tile{width:33px;height:35px;border-radius:10px}.tile .ico{width:18px;height:18px}.question h2{max-width:none;font-size:20px}.world{aspect-ratio:1.42}.world>img{object-fit:fill}#roomBody{padding:19px}.bar{gap:12px}.pin:before{content:"";position:absolute;inset:-7px -2px}.walker small{font-size:8px}.presence{top:22px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.shelf-tabs{display:flex;gap:6px;border-bottom:1px solid var(--rule);padding-bottom:10px}
.shelf-tabs .choice{padding:7px 12px;min-height:35px;font-size:13px}
.archive-link{display:inline-block;margin:13px 16px 1px 0;font-size:13px;font-weight:650;color:var(--green);text-decoration:underline;text-underline-offset:3px}
.archive-info{background:#eff1e7;border-radius:12px;padding:12px 16px;margin:12px 0 18px}
.archive-info p{margin:2px 0}
.archive-info .archive-link{margin-top:7px}
