@import"https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap";@import"https://fonts.googleapis.com/css2?family=Pixelify+Sans:wght@400..700&display=swap";html,body{margin:0;padding:0;overflow:hidden;background:#00008b;touch-action:none;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}canvas#canvas{touch-action:none}@media (pointer: coarse){body{cursor:auto}#customCursorCrush,#customCursorPickUp,#customCursorHand{display:none!important}}body{margin:0;height:100vh;display:flex;justify-content:center;align-items:center;background-color:#000}body{font-family:Pixelify Sans}canvas{display:block}#gameLogo{position:fixed;top:6px;left:6px;height:124px;width:auto;z-index:50;pointer-events:none;-webkit-mask-image:radial-gradient(ellipse at center,#000 52%,transparent 100%);mask-image:radial-gradient(ellipse at center,#000 52%,transparent 100%)}#loading{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;padding:24px;box-sizing:border-box;background:radial-gradient(ellipse at center,#0d1b2a,#000 78%);transition:opacity .5s ease}#loading.loading-hidden{opacity:0;pointer-events:none}.loading-logo{width:min(85vw,560px);height:auto;max-height:68vh;object-fit:contain}.loading-bar{width:min(70vw,320px);height:18px;background:#ffffff1f;border:3px solid #fff;box-shadow:0 0 0 3px #000;overflow:hidden}.loading-bar-fill{display:block;height:100%;width:0;background:#ffd23f;animation:loadingFill 3s ease forwards}@keyframes loadingFill{0%{width:0}to{width:100%}}.loading-text{margin:0;font-family:"Press Start 2P",cursive;font-size:12px;color:#fff;letter-spacing:1px;animation:loadingBlink 1s steps(2,start) infinite}@keyframes loadingBlink{0%,50%{opacity:1}50.01%,to{opacity:.35}}#menu{position:absolute;bottom:20px;left:50%;transform:translate(-50%);background-color:#000000b3;border-radius:10px;padding:10px;display:flex;gap:10px;z-index:10}#menu button{background:none;border:none;cursor:pointer;padding:0}#menu button img{width:48px;height:48px}#metaMenu{position:absolute;bottom:20px;left:50%;transform:translate(150px);background-color:#000000b3;border-radius:10px;padding:10px;display:flex;gap:10px;z-index:10}#metaMenu button{background:none;border:none;cursor:pointer;padding:0}#metaMenu button img{width:48px;height:48px}#menu button.tool-selected,#metaMenu button.tool-selected{background:#ffffffe6;border-radius:6px;outline:3px solid #ffffff;outline-offset:0;box-shadow:0 0 10px #ffffffd9}#menu button.tool-combo{position:relative}#menu button.tool-combo .tool-combo-tree{position:absolute;right:-3px;bottom:-4px;width:26px;height:26px;image-rendering:pixelated}#menu button .tool-emoji,#metaMenu button .tool-emoji{display:inline-block;width:48px;height:48px;line-height:48px;font-size:34px;text-align:center}body.lightning-mode,body.lightning-mode canvas{cursor:crosshair!important}#personModal .modal-config-content{max-width:224px;padding:12px 14px;position:relative;overflow:visible}#personModal #pmActionBadge{position:absolute;top:-14px;right:-6px;z-index:2;max-width:150px;padding:4px 8px;font-size:12px;font-weight:700;text-transform:uppercase;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff;background:#209cee;border:3px solid #000;box-shadow:2px 2px #000;border-radius:2px}#personModal .title{font-size:13px;margin-bottom:8px}#personModal .pm-info{text-align:left;font-size:11px;line-height:1.5}#personModal .pm-info>div{display:flex;align-items:center;gap:6px;margin:1px 0}#personModal .pm-k{flex:0 0 auto;min-width:62px;color:#666}#personModal .pm-bar{margin:3px 0}#personModal .nes-progress{width:110px;height:16px;margin:0}@media (max-width: 768px){#gameLogo{height:94px;width:auto}#menu,#metaMenu{padding:6px;gap:7px}#menu button img,#metaMenu button img,#menu button .tool-emoji,#metaMenu button .tool-emoji{width:34px;height:34px}#menu button .tool-emoji,#metaMenu button .tool-emoji{line-height:34px;font-size:24px}#metaMenu{left:10px;right:auto;bottom:20px;transform:none;flex-direction:column}#menu{left:10px;right:auto;bottom:200px;transform:none;flex-direction:column}}body{cursor:url(../cursors/hand.png) 10 8,auto}#nightOverlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000;opacity:0;pointer-events:none;z-index:10;transition:opacity 1s ease}#lightningFlash{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000;opacity:0;pointer-events:none;z-index:11}.modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;align-items:center;justify-content:center;z-index:2000;padding:16px;box-sizing:border-box;overflow-y:auto}.modal-content{background:#fff;padding:20px;border-radius:5px;max-width:600px;text-align:left;font-size:.8rem}.modal-content h2{margin-top:0}.modal-content button{margin-top:15px;padding:10px 20px;border:none;background:#008cba;color:#fff;cursor:pointer;border-radius:3px;font-size:1rem;font-family:Pixelify Sans}.modal-content button:hover{background:#006f9a}.modal-config{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000c;display:flex;align-items:center;justify-content:center;z-index:2000}.modal-config-content{cursor:pointer;background-color:#fff;padding:20px;border:2px solid #000}.modal-config.side-panel{left:auto;right:0;width:auto;background:none;justify-content:flex-end;align-items:flex-start;padding:150px 16px 16px;pointer-events:none}.modal-config.side-panel .modal-config-content{pointer-events:auto;cursor:default;margin:0;animation:sidePanelIn .22s ease;box-shadow:-4px 0 #000,0 0 0 4px #000}@keyframes sidePanelIn{0%{transform:translate(24px);opacity:0}to{transform:translate(0);opacity:1}}.modal-config-content{box-sizing:border-box;max-height:calc(100vh - 32px);max-width:100%;margin:auto;display:flex;flex-direction:column;overflow:hidden}.modal-config-content>.modal-logo,.modal-config-content>.title,.modal-config-content>.modal-footer{flex:0 0 auto}.modal-logo{display:block;width:min(72%,260px);height:auto;margin:0 auto 4px;-webkit-mask-image:radial-gradient(ellipse at center,#000 60%,transparent 100%);mask-image:radial-gradient(ellipse at center,#000 60%,transparent 100%)}.modal-body-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.55) rgba(255,255,255,.08)}.modal-body-scroll::-webkit-scrollbar{width:8px}.modal-body-scroll::-webkit-scrollbar-track{background:#ffffff14;border-radius:4px;margin:4px 0}.modal-body-scroll::-webkit-scrollbar-thumb{background:#ffffff8c;border-radius:4px}.modal-body-scroll::-webkit-scrollbar-thumb:hover{background:#fffc}.modal-config-content>.modal-footer{padding-top:12px}.modal-body-scroll ul{padding-left:0;padding-right:0;margin-left:0;margin-right:0}#chronicle{position:fixed;top:150px;left:6px;width:320px;max-height:42vh;display:flex;flex-direction:column;background-color:#000000b8;border:3px solid rgba(255,255,255,.85);border-radius:8px;box-shadow:0 0 0 3px #000;padding:8px 10px;z-index:40;font-family:Pixelify Sans;color:#fff;pointer-events:auto;overflow:hidden}.chronicle-title{margin:0 0 6px;font-family:"Press Start 2P",cursive;font-size:10px;color:#ffd23f;text-align:center;letter-spacing:1px;display:block;width:100%;background:none;border:none;cursor:pointer;padding:0}.chronicle-caret{display:inline-block;transition:transform .15s ease}#chronicle.collapsed{max-height:none}#chronicle.collapsed .chronicle-list{display:none}#chronicle.collapsed .chronicle-title{margin:0}#chronicle.collapsed .chronicle-caret{transform:rotate(-90deg)}#chronicle.hidden{display:none}.chronicle-list{list-style:none;margin:0;padding:0;overflow-y:auto;scrollbar-width:thin}.chronicle-item{font-size:12px;line-height:1.35;padding:3px 0;border-bottom:1px solid rgba(255,255,255,.1);animation:chronicleIn .25s ease}.chronicle-time{color:#7fd1ff;font-size:10px;margin-right:4px}.chronicle-person{font-family:inherit;font-size:inherit;color:#ffd23f;background:none;border:none;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:2px;pointer-events:auto}.chronicle-person:hover{color:#fff}@keyframes chronicleIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){#chronicle{top:128px;width:170px;max-height:32vh;padding:6px 8px}.chronicle-item{font-size:11px}.chronicle-head,.chronicle-action{display:block}.chronicle-action{padding-left:2px;color:#eaeaea}}#dayNightClock{position:fixed;top:6px;right:16px;z-index:40;pointer-events:none;-webkit-user-select:none;user-select:none;display:flex;flex-direction:column;align-items:center}#dayNightClock .clock-disc-wrap{position:relative;width:82px;height:82px}#dayNightClock .clock-disc{width:100%;height:100%;display:block;image-rendering:pixelated;filter:drop-shadow(0 0 3px #000)}#dayNightClock .clock-time{margin-top:4px;font-family:"Press Start 2P",cursive;font-size:12px;color:#ffe9c2;text-shadow:1px 1px 0 #3a2412;padding:5px 9px;background:repeating-linear-gradient(90deg,#0000001a,#0000001a 2px,#ffffff0d 2px,#ffffff0d 4px),linear-gradient(#8a5a2b,#6f4420);border:3px solid #4a2e14;border-radius:3px;box-shadow:0 0 0 2px #2b1a0c,inset 0 2px #ffffff2e,inset 0 -2px #0000004d;image-rendering:pixelated}#dayNightClock .clock-date{margin-top:-6px;font-family:"Press Start 2P",cursive;font-size:9px;color:#ffe9c2;text-shadow:1px 1px 0 #3a2412;padding:3px 7px;background:linear-gradient(#8a5a2b,#6f4420);border:2px solid #4a2e14;border-radius:3px;box-shadow:0 0 0 2px #2b1a0c;image-rendering:pixelated}#dayNightClock .clock-needle{position:absolute;left:50%;bottom:50%;width:4px;height:34px;margin-left:-2px;border-radius:2px;background:linear-gradient(to top,#e6a533,#e6a533 74%,#d93636 74%,#d93636);transform-origin:bottom center;box-shadow:0 0 2px #0009}#dayNightClock .clock-hub{position:absolute;left:50%;top:50%;width:9px;height:9px;margin:-4.5px 0 0 -4.5px;border-radius:50%;background:#e6a533;box-shadow:0 0 0 2px #d93636}@media (max-width: 768px){#dayNightClock{top:10px;right:10px}#dayNightClock .clock-disc-wrap{width:72px;height:72px}#dayNightClock .clock-needle{height:26px}#dayNightClock .clock-time{font-size:10px;padding:4px 7px}}
