*,*:before,*:after{box-sizing:border-box}:root{--paper1: #f7f0e2;--paper2: #ede1c8;--ink: #2b2318;--dim: #8a795c;--wine: #9a3b2f;--gold: #d69645;--edge: rgba(70, 46, 24, .24);--serif: Georgia, "Times New Roman", serif;--plaq: #f7ecd2;--plaq-edge: rgba(108, 76, 38, .42);--plaq-ink: #2e2009;--plaq-r: 18px;--plaq-sh: 0 8px 18px rgba(0, 0, 0, .4), 0 2px 4px rgba(0, 0, 0, .25);--sans: -apple-system, "Segoe UI", Roboto, sans-serif;--z-over: 40}html,body{margin:0;height:100%}body{overflow:hidden;overscroll-behavior:none;background:#0c0a08;color:var(--ink);font-family:var(--serif)}:root{--safe-b: env(safe-area-inset-bottom, 0px);--safe-t: env(safe-area-inset-top, 0px)}#stage{position:relative;width:100%;height:100vh;height:100dvh;overflow:hidden;background:#1a1206}#frame{position:absolute;inset:0;overflow:hidden;border:clamp(13px,1.7vw,28px) solid transparent;border-image:url(/assets/frame_oak-Diqh9RRf.png) 64 stretch;filter:drop-shadow(0 5px 14px #0006)}#frame canvas{position:absolute;top:0;left:0;display:block;transform-origin:0 0;touch-action:none}#frame-top{position:absolute;inset:0;pointer-events:none;border:clamp(13px,1.7vw,28px) solid transparent;border-image:url(/assets/frame_oak-Diqh9RRf.png) 64 stretch;z-index:65}.fps{display:none;position:absolute;right:14px;bottom:10px;font-size:11px;color:#d9c68e77;font-variant-numeric:tabular-nums;z-index:9;pointer-events:none}.fps.on{display:block}.whisper{position:fixed;z-index:60;transform:translate(-50%,-160%);padding:6px 14px;border:1.5px solid var(--plaq-edge);border-radius:14px;background:var(--plaq);color:var(--plaq-ink);font:600 12.5px/1 var(--serif);letter-spacing:.02em;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .14s ease;box-shadow:var(--plaq-sh)}.whisper.on{opacity:1}.loccard{position:absolute;left:50%;bottom:clamp(28px,6vh,70px);transform:translate(-50%,14px);z-index:var(--z-over);min-width:min(520px,78vw);padding:20px 26px 18px;border:1.5px solid var(--plaq-edge);border-radius:var(--plaq-r);background:var(--plaq);box-shadow:0 18px 40px #00000073;text-align:center;opacity:0;visibility:hidden;transition:opacity .3s ease,transform .3s cubic-bezier(.16,1,.3,1)}.loccard.on{opacity:1;visibility:visible;transform:translate(-50%)}.loc-name{font:600 22px/1.1 var(--serif);color:var(--plaq-ink)}.loc-mean{margin-top:6px;font:400 15px/1.5 var(--serif);color:#6b5836}.loc-back,.board-back{margin-top:14px;padding:8px 16px;border:1.5px solid var(--plaq-edge);border-radius:var(--plaq-r);background:var(--plaq);color:var(--plaq-ink);font:600 13px/1 var(--serif);box-shadow:var(--plaq-sh);cursor:pointer}.loc-back:hover,.board-back:hover{background:#fff5df}.plaq,.tag{position:relative;border:1.5px solid var(--plaq-edge);border-radius:var(--plaq-r);background:var(--plaq);color:var(--plaq-ink);font-family:var(--serif);box-shadow:var(--plaq-sh);cursor:pointer}.tag:hover{background:#fff5df}.tag.on{background:#f0d79a;border-color:#56391a99;box-shadow:var(--plaq-sh),inset 0 0 0 2px #fff6dc99}.board{position:absolute;inset:clamp(13px,1.7vw,28px);z-index:var(--z-over);border-radius:5px;overflow:hidden;background:#1a130c;display:grid;place-items:center;container-type:size;opacity:0;visibility:hidden;transition:opacity .4s ease}.board.on{opacity:1;visibility:visible}.board-stage{position:relative;--ar: 1.3694;aspect-ratio:var(--ar);width:100%;min-height:0}@media (max-aspect-ratio: 1/1){.board-stage{width:min(calc(100cqh * var(--ar)),180%)}}.board-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.board-notes{position:absolute;overflow:visible}.note{position:absolute;transform:translate(-50%,-50%) rotate(var(--rot, 0deg));transform-origin:center;z-index:var(--z, 1);width:15.5%;min-height:10.5em;display:flex;flex-direction:column;gap:3px;padding:1em .85em .8em;border:1.5px solid var(--plaq-edge);border-radius:14px;background:var(--plaq);text-align:left;font:400 clamp(9px,.95vw,16px) / 1.28 var(--serif);color:var(--plaq-ink);cursor:default;filter:drop-shadow(0 5px 8px rgba(0,0,0,.5));transition:transform .16s ease,filter .16s ease}.note:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%,-50%);width:11%;min-width:9px;max-width:16px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 36% 30%,#a3793e,#4e3414);box-shadow:0 2px 3px #0008;z-index:2}.note-hot{cursor:pointer}.note-cold{color:#5c4a30}.note-live{filter:drop-shadow(0 5px 8px rgba(0,0,0,.5)) drop-shadow(0 0 7px rgba(222,150,60,.55))}.note:hover,.note.open{transform:translate(-50%,-50%) rotate(0) scale(1.35);width:19%;padding:.9em .7em .7em;z-index:400;filter:drop-shadow(0 12px 18px rgba(0,0,0,.55));aspect-ratio:auto;height:auto;min-height:14em}.note-text{flex:1;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;word-break:break-word}.note:hover .note-text,.note.open .note-text{-webkit-line-clamp:unset;overflow:visible}.note-foot{display:flex;gap:5px;align-items:baseline;font:600 clamp(6px,.6vw,10px) / 1 var(--serif);letter-spacing:.03em;opacity:.82}.note-heat{text-transform:uppercase;color:var(--wine)}.note-cold .note-heat{color:#8a7452}.note-by{color:#7a6446;font-weight:400;font-style:italic}.board-title{position:absolute;top:clamp(20px,4vh,42px);left:50%;transform:translate(-50%);padding:8px 26px;border:1.5px solid var(--plaq-edge);border-radius:var(--plaq-r);background:var(--plaq);color:var(--plaq-ink);font:600 clamp(16px,1.4vw,21px) / 1.2 var(--serif);letter-spacing:.04em;box-shadow:var(--plaq-sh);pointer-events:none}.board-back{position:absolute;top:clamp(16px,3.2vh,34px);left:clamp(16px,2.4vw,34px);margin:0;z-index:3;padding:8px 15px;font:600 13px/1 var(--serif)}.board-write{position:absolute;bottom:clamp(16px,4vh,40px);left:50%;transform:translate(-50%);width:min(560px,82%);display:flex;gap:10px;align-items:stretch}.board-ta{flex:1;resize:none;padding:11px 16px;border-radius:14px;border:1.5px solid var(--plaq-edge);background:var(--plaq);color:var(--plaq-ink);font:400 15px/1.4 var(--serif);box-shadow:var(--plaq-sh)}.board-ta::placeholder{color:#8b7448}.board-ta:focus{outline:none;border-color:var(--gold)}.board-pin{padding:0 20px;font:700 14px/1 var(--serif);white-space:nowrap}.gtalk{position:absolute;inset:0;z-index:var(--z-over);opacity:0;visibility:hidden;transition:opacity .4s ease;cursor:pointer}.gtalk.on{opacity:1;visibility:visible}.gtalk-scrim{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#0c080480,#0c080433 26%,#0c08043d 44%,#0a0603d1);backdrop-filter:saturate(.82) brightness(.86)}.gtalk-side{position:absolute;bottom:0;width:clamp(120px,20vw,260px);height:clamp(190px,42vh,430px);overflow:hidden}.gtalk-side .gtalk-p{cursor:pointer}.gtalk-side.left{left:clamp(4px,2vw,40px)}.gtalk-side.right{right:clamp(4px,2vw,40px)}.gtalk-p{position:absolute;inset:0;background-repeat:no-repeat;background-position:center bottom;background-size:auto 96%;image-rendering:pixelated;-webkit-mask-image:linear-gradient(180deg,#000 90%,transparent 100%);mask-image:linear-gradient(180deg,#000 90%,transparent 100%);filter:brightness(.55) saturate(.85);opacity:0;transition:filter .3s ease,transform .34s cubic-bezier(.22,.9,.3,1),opacity .3s ease}.gtalk-side.left .gtalk-p{transform:translate(-34%)}.gtalk-side.right .gtalk-p{transform:translate(34%)}.gtalk-p.here{opacity:1;transform:translate(0)}.gtalk-p.active{filter:brightness(1.08) saturate(1.06) drop-shadow(0 8px 18px rgba(0,0,0,.6));z-index:2}.gtalk-p.here:not(.active){filter:brightness(.5) saturate(.7)}.gtalk-side.left .gtalk-p.here:not(.active){transform:translate(-12%) scale(.94)}.gtalk-side.right .gtalk-p.here:not(.active){transform:translate(12%) scale(.94)}.gtalk-p.gone{opacity:0}.gtalk-theme{position:absolute;top:clamp(20px,4.5vh,54px);left:50%;transform:translate(-50%);max-width:min(74%,900px);padding:8px 22px;border:1.5px solid var(--plaq-edge);border-radius:var(--plaq-r);background:var(--plaq);color:var(--plaq-ink);font:600 clamp(14px,1.3vw,19px) / 1.2 var(--serif);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:var(--plaq-sh);pointer-events:none}.gtalk-box{position:absolute;left:50%;transform:translate(-50%);bottom:clamp(96px,15vh,172px);width:max(min(100% - 24px,340px),min(760px,calc(100% - (2*clamp(120px,20vw,260px)) - clamp(28px,6vw,110px))));display:flex;flex-direction:column;align-items:flex-start;gap:7px}.gtalk-name{padding:6px 15px;font:600 14px/1.2 var(--serif);cursor:default}.gtalk-name:empty{display:none}.gtalk-plate{width:100%;min-height:46px;padding:16px 26px;border:1.5px solid var(--plaq-edge);border-radius:var(--plaq-r);background:var(--plaq);color:var(--plaq-ink);font:400 clamp(15px,1.5vw,21px) / 1.45 var(--serif);overflow-wrap:anywhere;word-break:break-word;box-shadow:0 14px 30px #0000008c}.gtalk-back{position:absolute;top:clamp(20px,4vh,40px);left:clamp(20px,3vw,44px);z-index:3;padding:8px 15px;font:600 13px/1 var(--serif)}.gtalk-hint{position:absolute;right:clamp(20px,3vw,44px);bottom:clamp(20px,3vh,40px);color:#efdcb4;font:500 12px/1 var(--serif);letter-spacing:.12em;text-shadow:0 1px 0 rgba(20,10,3,.8);opacity:.75;pointer-events:none}.gtalk-count{position:absolute;left:clamp(20px,3vw,44px);bottom:clamp(20px,3vh,40px);color:#efdcb4;font:500 12px/1 var(--serif);letter-spacing:.14em;text-shadow:0 1px 0 rgba(20,10,3,.8);opacity:.75;pointer-events:none}.loc-token{position:absolute;left:50%;bottom:clamp(20px,5vh,54px);transform:translate(-50%);padding:9px 20px;border:1.5px solid var(--plaq-edge);border-radius:var(--plaq-r);background:var(--plaq);color:var(--plaq-ink);font:600 13px/1 var(--serif);letter-spacing:.02em;cursor:pointer;pointer-events:auto;box-shadow:var(--plaq-sh);transition:background .15s}.loc-token:hover{background:#fff5df}.loc-token-line{position:absolute;left:50%;bottom:clamp(64px,12vh,120px);transform:translate(-50%);max-width:60%;padding:7px 16px;border:1.5px solid var(--plaq-edge);border-radius:15px;background:var(--plaq);color:var(--plaq-ink);box-shadow:var(--plaq-sh);font:italic 500 15px/1.3 var(--serif);text-align:center;white-space:nowrap;opacity:0;transition:opacity .5s ease;pointer-events:none}.room{position:absolute;inset:clamp(13px,1.7vw,28px);z-index:var(--z-over);background:#21222f;border-radius:5px;overflow:hidden;display:grid;place-items:center;container-type:size;opacity:0;visibility:hidden;transition:opacity .45s ease}.room-stage{position:relative;--ar: 1.7778;aspect-ratio:var(--ar);width:100%;min-height:0;max-height:100%}@media (max-aspect-ratio: 1/1){.room-stage{width:min(calc(100cqh * var(--ar)),180%);height:auto;max-height:none}}.room.on{opacity:1;visibility:visible}.room-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.room-field{position:absolute;inset:0}.room.room--cover{inset:0;border-radius:0;background:#14100c}.rv{position:absolute;height:200px;cursor:pointer;user-select:none;will-change:left,top;filter:drop-shadow(0 5px 4px rgba(0,0,0,.45))}.rv-bubble{position:absolute;transform:translate(-50%,-100%);padding:8px 15px;border:1.5px solid var(--plaq-edge);border-radius:var(--plaq-r);background:var(--plaq);color:var(--plaq-ink);box-shadow:var(--plaq-sh);font:500 15px/1.3 var(--serif);max-width:min(300px,36vw);white-space:normal;overflow-wrap:anywhere;word-break:break-word;text-align:center;pointer-events:none}.rv-who{font:600 11.5px/1.2 var(--serif);letter-spacing:.04em;color:#8a6a34;margin-bottom:2px}.rv-line{font:500 15px/1.35 var(--serif)}.rv-bubble:after{content:"";position:absolute;left:50%;bottom:-6px;transform:translate(-50%);border:6px solid transparent;border-top-color:var(--plaq)}.room-name{position:absolute;z-index:100000;top:clamp(20px,4vh,42px);left:50%;transform:translate(-50%);padding:8px 24px;border:1.5px solid var(--plaq-edge);border-radius:var(--plaq-r);background:var(--plaq);color:var(--plaq-ink);box-shadow:var(--plaq-sh);font:600 16px/1.2 var(--serif);letter-spacing:.03em}.room-back{position:absolute;z-index:100000;top:clamp(18px,3vh,36px);left:clamp(18px,3vw,40px);margin:0;padding:8px 16px;border:1.5px solid var(--plaq-edge);border-radius:var(--plaq-r);background:var(--plaq);color:var(--plaq-ink);box-shadow:var(--plaq-sh);font:600 13px/1 var(--serif);cursor:pointer}.room-back:hover{background:#fff5df}.inspect{position:absolute;top:clamp(13px,1.7vw,28px);right:clamp(13px,1.7vw,28px);bottom:clamp(13px,1.7vw,28px);width:min(400px,86vw);z-index:50;transform:translate(calc(100% + 34px));transition:transform .38s cubic-bezier(.16,1,.3,1);pointer-events:none}.inspect.on{transform:none;pointer-events:auto}.ins-panel{position:absolute;inset:0;display:flex;flex-direction:column;border-radius:var(--plaq-r);background:var(--plaq);border:1.5px solid var(--plaq-edge);box-shadow:0 20px 44px #00000080;color:var(--plaq-ink);overflow:hidden}.ins-close{position:absolute;top:10px;right:12px;z-index:2;width:28px;height:28px;border-radius:10px;border:1.5px solid var(--plaq-edge);background:#ffffff59;color:#6b5836;font:400 18px/1 var(--serif);cursor:pointer}.ins-close:hover{background:#fff5df}.ins-body{flex:1;overflow-y:auto;padding:22px 22px 8px}.ins-head{display:flex;align-items:baseline;gap:10px}.ins-name{font:600 24px/1.1 var(--serif);color:var(--plaq-ink)}.ins-role{font:500 13px/1 var(--serif);color:#8a5f1e;letter-spacing:.04em}.ins-now{margin-top:8px;font:400 13.5px/1.4 var(--serif);color:#6b5836}.ins-now b{color:#402d12;font-weight:600}.ins-bio{margin-top:10px;font:italic 400 14px/1.5 var(--serif);color:#6b5836}.ins-sec{margin-top:20px}.ins-lbl{display:flex;gap:8px;align-items:center;font:700 10.5px/1 var(--serif);letter-spacing:.18em;text-transform:uppercase;color:#96702f;margin-bottom:10px}.ins-tag{font-weight:500;letter-spacing:.06em;color:#5c4726;text-transform:none;padding:3px 9px;border-radius:10px;border:1.5px solid var(--plaq-edge);background:#fff6}.ins-plan{font:400 15px/1.5 var(--serif);color:var(--plaq-ink)}.ins-steps{margin:8px 0 0;padding-left:20px;color:#6b5836;font:400 13.5px/1.7 var(--serif)}.ins-thought{font:italic 400 15px/1.5 var(--serif);color:#4a3a1c;padding:7px 0;border-bottom:1px solid rgba(108,76,38,.18)}.ins-said{font:400 14px/1.5 var(--serif);color:#3f3118;padding:6px 0;border-bottom:1px solid rgba(108,76,38,.18)}.ins-empty{color:#8b7a58;font-style:italic}.ins-foot{padding:10px 22px 14px;font:500 10px/1 var(--serif);letter-spacing:.16em;text-transform:uppercase;color:#8b7a58;border-top:1px solid rgba(108,76,38,.2)}@media (prefers-reduced-motion: reduce){.board,.loccard,.room,.inspect{transition:opacity .2s ease}}.gtalk-say{position:absolute;left:50%;transform:translate(-50%);bottom:calc(clamp(30px,5vh,62px) + var(--safe-b));display:flex;gap:8px;width:max(min(100% - 24px,340px),min(760px,calc(100% - (2*clamp(120px,20vw,260px)) - clamp(28px,6vw,110px))));z-index:4}.gtalk-input{flex:1 1 auto;min-width:0;padding:10px 16px;border:1.5px solid var(--plaq-edge);border-radius:14px;background:var(--plaq);color:var(--plaq-ink);font:400 14px/1.2 var(--serif);outline:none;box-shadow:var(--plaq-sh)}.gtalk-input::placeholder{color:#8b7448}.gtalk-input:focus{border-color:#96601ef2}.gtalk-send{flex:0 0 auto;padding:9px 18px;font:600 13px/1 var(--serif)}.note-sealed{background:#ecd9ad;border-color:#7a3c1e80;cursor:default}.note-sealed:after{content:"";position:absolute;left:50%;bottom:-5px;width:16px;height:16px;transform:translate(-50%) rotate(45deg);border-radius:3px;background:#7d2b1c;box-shadow:0 1px 3px #0007}.note-sealed .note-heat{color:#7d2b1c;font-weight:700}.board-places{position:absolute;left:50%;transform:translate(-50%);bottom:clamp(64px,10vh,108px);display:flex;flex-wrap:wrap;justify-content:center;gap:6px;max-width:min(760px,86%)}.board-place{padding:7px 14px;font:600 13px/1 var(--serif);letter-spacing:.01em}.room-say{display:flex;width:min(720px,76%);z-index:100000}.room-notice{position:absolute;left:50%;top:clamp(64px,12vh,120px);transform:translate(-50%);max-width:min(72%,720px);padding:9px 20px;font:500 14px/1.35 var(--serif);text-align:center;z-index:100001;cursor:default;opacity:0;visibility:hidden;transition:opacity .3s ease}.room-notice.on{opacity:1;visibility:visible}.think-map{position:absolute;left:50%;bottom:clamp(28px,7vh,82px);transform:translate(-50%);max-width:min(76%,760px);padding:10px 24px;font:italic 600 clamp(15px,1.4vw,20px) / 1.3 var(--serif);text-align:center;z-index:62;cursor:default;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .35s ease}.think-map.on{opacity:1;visibility:visible}.curtain{position:absolute;inset:0;z-index:70;pointer-events:none;visibility:hidden}.curtain.on{visibility:visible;pointer-events:auto}.curtain-puff{position:absolute;background-size:100% 100%;background-repeat:no-repeat;will-change:transform,opacity}.board-title,.board-places,.gtalk-theme,.room-notice,.think-map,.loc-token-line{width:max-content}.board-title{max-width:86%}@media (max-width: 840px),(max-height: 520px){.note{width:30%;font-size:clamp(6.5px,1.9vw,10px);padding:.8em .5em .5em;min-height:7.5em}.note-foot{font-size:8px}.note:hover,.note.open{width:46%;min-height:12em;transform:translate(-50%,-50%) rotate(0) scale(1.05);z-index:400}}@media (max-width: 700px){.board-write{flex-wrap:wrap;justify-content:flex-end}.board-ta,.board-pin{flex:1 1 100%}.board-title{top:calc(clamp(16px,3.2vh,34px) + var(--safe-t) + 54px);font-size:15px;padding:6px 18px}.board-places{max-width:94%;bottom:calc(clamp(58px,9vh,108px) + var(--safe-b))}.board-place{padding:8px 12px;font-size:12px}.board-write{width:92%;bottom:calc(clamp(12px,2.5vh,40px) + var(--safe-b))}.gtalk-theme{top:calc(clamp(20px,4vh,40px) + var(--safe-t) + 54px);max-width:92%}.gtalk-side{width:min(120px,28vw);height:min(190px,32vh)}.gtalk-hint,.gtalk-count{bottom:calc(clamp(30px,5vh,62px) + var(--safe-b) + 48px)}.room-say{width:94%}.rv-bubble{max-width:min(300px,74vw)}.inspect{width:auto;left:clamp(13px,1.7vw,28px)}}@media (hover: none){.tag:hover,.loc-back:hover,.board-back:hover,.room-back:hover,.loc-token:hover,.ins-close:hover{background:var(--plaq)}.ins-close:hover{background:#ffffff59}.tag:active,.loc-back:active,.board-back:active,.room-back:active,.loc-token:active{background:#f0d79a}.whisper{display:none}}@media (pointer: coarse){.board-ta,.gtalk-input,.room-input{font-size:16px}.tag,.board-place,.board-pin,.board-back,.loc-back,.room-back,.room-send,.gtalk-send,.loc-token{min-height:44px}.ins-close{width:40px;height:40px}.board-place,.board-pin,.board-back,.loc-back,.room-back,.gtalk-send,.loc-token{display:inline-flex;align-items:center;justify-content:center}}.board-back{top:calc(clamp(16px,3.2vh,34px) + var(--safe-t))}.room-back{top:calc(clamp(18px,3vh,36px) + var(--safe-t))}.gtalk-back{top:calc(clamp(20px,4vh,40px) + var(--safe-t))}
