.map-review{color:#273330;background:#eef0ec;grid-template-rows:auto 1fr auto;height:100dvh;min-height:420px;font-family:Arial,sans-serif;display:grid;overflow:hidden}.map-header{z-index:2;align-items:center;gap:24px;padding:22px 32px 12px;display:flex}.map-eyebrow{letter-spacing:.16em;color:#6f7973;font:11px monospace}.map-header h1{letter-spacing:-1px;margin:6px 0 0;font-size:29px;font-weight:500}.map-header h1 span{color:#8a9289;margin-left:12px;font:12px monospace}.map-status{color:#6a746c;margin-left:auto;font:13px monospace}.map-header a{color:#38483e;border-bottom:1px solid #b1b8ae;padding:6px 0;font-size:13px;text-decoration:none}.map-canvas{touch-action:none;background:#000;min-height:0;position:relative}.map-canvas>canvas{width:100%;height:100%;image-rendering:pixelated;outline:none;display:block}.map-label-layer{pointer-events:none;position:absolute;inset:0;overflow:hidden}.map-label{color:#20302c;white-space:nowrap;background:#f8f9f1e8;border:1px solid #c5cec3;padding:6px 10px;font-size:14px;font-weight:500;position:absolute;transform:translate(-50%,-100%);box-shadow:0 2px 2px #27332608}.map-label:after{content:"";background:#57655a;width:1px;height:10px;position:absolute;top:100%;left:50%}.map-label.small{padding:3px 6px;font:11px monospace}.labels-hidden .map-label-layer{display:none}.map-toolbar{z-index:2;background:#f6f7f0;border-top:1px solid #d8ddd3;justify-content:space-between;align-items:center;gap:20px;padding:16px 28px;display:flex}.map-toolbar>div{gap:6px;display:flex}.map-review button{color:#314136;cursor:pointer;background:#fcfdf6;border:1px solid #cbd2c7;border-radius:3px;padding:9px 13px;font:13px Arial}.map-review button:hover{background:#e4eadd;border-color:#83947e}:is(.map-review button:focus-visible,.map-review a:focus-visible){outline-offset:3px;outline:2px solid #286752}.map-help{color:#77806f;font:12px monospace}.blueprint-overlay{z-index:30;background:#f8f9f5f5;justify-content:center;align-items:center;padding:50px 20px 20px;display:flex;position:fixed;inset:0}.blueprint-overlay>img{object-fit:contain;width:100%;height:100%}.blueprint-overlay>button{position:absolute;top:14px;right:24px}.map-error{text-align:center;background:#eef0ec;place-content:center;gap:20px;display:grid;position:absolute;inset:0}@media (max-width:800px){.map-header{gap:12px;padding:15px 18px}.map-header h1{font-size:24px}.map-status{text-align:right;max-width:100px;font-size:11px}.map-header a{display:none}.map-toolbar{flex-wrap:wrap;gap:8px;padding:10px}.map-help{display:none}.map-review button{padding:8px;font-size:12px}.map-label{padding:4px 6px;font-size:11px}.map-eyebrow{font-size:10px}}@media (max-width:1100px){.map-label.small,.map-help{display:none}.map-navigation button{white-space:nowrap}}.blueprint-overlay[data-slot=dialog-content]{z-index:60;border:0;border-radius:0;width:100vw;max-width:none;height:100dvh;inset:0;transform:none}.blueprint-close{cursor:pointer;background:#f4f5ee;border:1px solid #b6c0b1;border-radius:3px;padding:8px 12px;font:14px Arial}.blueprint-overlay[data-slot=dialog-content]{animation:none!important;transform:none!important}.blueprint-close{z-index:2;color:#263b2b!important;background:#f4f5ee!important}.blueprint-overlay[data-slot=dialog-content]{background:#f6f7f1}.map-toolbar{flex-wrap:wrap;position:relative}.map-toolbar>.map-navigation{flex-wrap:wrap;min-width:0}.map-navigation button{white-space:nowrap;flex-shrink:0}.map-save-status{pointer-events:none;background:#f6f7f0;border:1px solid #cbd2c7;border-radius:3px;max-width:calc(100% - 32px);padding:7px 10px;font-size:13px;position:absolute;bottom:calc(100% + 10px);left:16px}.map-save-status:empty{display:none}.live-character-labels{pointer-events:none;position:absolute;inset:0;overflow:hidden}.live-character-label{visibility:hidden;color:#273330;white-space:nowrap;background:#f6f7f0f2;border:1px solid #71816e;border-radius:4px;padding:2px 5px;font-size:10px;line-height:1.2;position:absolute;transform:translate(-50%,-100%)}.map-review button:disabled{opacity:.45;cursor:default}.map-review .playback-button{color:#fff;white-space:nowrap;background:#294e3e;border-color:#294e3e;font-size:14px}.map-review .playback-button:hover{background:#35644f}.playback-error{color:#8b3023;z-index:3;background:#fff3ef;border:1px solid #c58578;padding:10px 14px;position:absolute;bottom:16px;left:16px}.playback-signin{gap:12px;display:grid}.playback-signin input{border:1px solid #8b958a;border-radius:4px;padding:10px}.playback-signin button{color:#fff;background:#294e3e;border-radius:4px;padding:10px}@media (max-width:800px){.map-header{flex-wrap:wrap}}.map-review.world-fullscreen{background:#000;grid-template-rows:minmax(0,1fr);min-height:0}.world-fullscreen>.map-header,.world-fullscreen>.map-toolbar{display:none}.pair-interaction{visibility:hidden;color:#50654e;pointer-events:none;background:#f6f7f0ed;border:1px solid #71816e80;border-radius:50%;width:23px;height:23px;padding:4px;position:absolute;transform:translate(-50%,-100%)}.pair-interaction svg{fill:currentColor;width:100%;height:100%}.pair-interaction .pair-flirt{display:none}.pair-interaction[data-kind=flirt]{color:#d45c84}.pair-interaction[data-kind=flirt] .pair-talk{display:none}.pair-interaction[data-kind=flirt] .pair-flirt{display:block}.conversation-links{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.conversation-links path{fill:none;stroke-width:1.5px;stroke-linecap:round;opacity:.7}.pair-interaction{background:#f6f7f0f5;border-radius:4px;align-items:center;gap:4px;width:max-content;max-width:220px;height:auto;min-height:0;padding:2px 5px;display:flex}.pair-interaction svg{flex:0 0 12px;order:-1;width:12px;height:12px}.conversation-names{color:#273330;white-space:normal;overflow-wrap:anywhere;text-align:center;font-size:10px;line-height:1.2}.pair-interaction .pair-laugh,.pair-interaction .pair-argue,.pair-interaction[data-kind=laugh] .pair-talk,.pair-interaction[data-kind=argue] .pair-talk{display:none}.pair-interaction[data-kind=laugh] .pair-laugh,.pair-interaction[data-kind=argue] .pair-argue{display:block}.pair-interaction .pair-silence,.pair-interaction .pair-story,.pair-interaction[data-kind=silence] .pair-talk,.pair-interaction[data-kind=story] .pair-talk{display:none}.pair-interaction[data-kind=silence] .pair-silence,.pair-interaction[data-kind=story] .pair-story{display:block}.character-host-role{color:#755222;font-weight:600}.pair-interaction .pair-talk{fill:none}.character-meditation-status{margin-left:3px}.character-meditation-status[data-levitating=true]{background:#fff0b8;border-radius:3px;box-shadow:0 0 5px #dfbf63}
