:root{--bg:#101b1a;--panel:#192822;--panel2:#24352c;--line:#465344;--text:#eee8d5;--dim:#b0b5a1;--gold:#e6bb75;--green:#96b776;--red:#df7861}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden;background:#000;font-family:Courier New,PingFang SC,Microsoft YaHei,monospace;color:var(--text);-webkit-user-select:none;user-select:none}#game{position:fixed;inset:0;display:block;image-rendering:pixelated;image-rendering:crisp-edges;cursor:crosshair;touch-action:none}#hud{position:fixed;inset:0;pointer-events:none;z-index:5;display:none}#guide-tracker{font-size:12px;line-height:1.6;color:var(--gold);text-shadow:0 1px 3px #000;overflow-wrap:anywhere}#guide-dialog{pointer-events:auto;margin:auto;width:min(420px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow-y:auto;padding:24px;border:4px solid #747b68;border-radius:0;background:#182522;color:var(--text);letter-spacing:0;box-shadow:inset 0 0 0 2px #a0a48a,inset 0 0 0 6px #303d33;clip-path:polygon(8px 0,calc(100% - 8px) 0,calc(100% - 8px) 4px,100% 4px,100% calc(100% - 4px),calc(100% - 8px) calc(100% - 4px),calc(100% - 8px) 100%,8px 100%,8px calc(100% - 4px),0 calc(100% - 4px),0 4px,8px 4px);scrollbar-color:#747b68 #182522}#guide-dialog::backdrop{background:#080e1099}#offering-dialog{pointer-events:auto;margin:auto;width:min(460px,calc(100vw - 24px));box-sizing:border-box;max-height:calc(100dvh - 24px);overflow-y:auto;padding:20px;border:2px solid #747b68;border-radius:4px;background:#182522;color:var(--text);letter-spacing:0}#offering-dialog::backdrop{background:#080e1099}#cooking-dialog{pointer-events:auto;margin:auto;width:min(380px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow-y:auto;padding:20px;border:2px solid #747b68;border-radius:4px;background:var(--panel);color:var(--text);letter-spacing:0}#cooking-dialog::backdrop{background:#080e1099}#cooking-food-label{margin:20px 0 8px;font-size:13px}#cooking-food{display:flex;gap:8px;width:100%;min-width:0;min-height:92px;overflow-x:auto;padding:4px 4px 10px;overscroll-behavior-x:contain;scrollbar-color:var(--gold) var(--panel2)}#cooking-food button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;flex:0 0 64px;height:72px;padding:6px;border:2px solid var(--line);border-radius:4px;background:var(--panel2);color:var(--text);font:inherit;font-size:12px;cursor:pointer}#cooking-food button[aria-pressed=true]{border-color:var(--gold);background:#45402a}#cooking-food button:hover{border-color:var(--gold)}#cooking-food .item-icon{width:32px;height:32px;image-rendering:pixelated}#cooking-food button span{max-width:100%;font-size:11px;overflow-wrap:anywhere;line-height:1.2}#cooking-preview{display:flex;align-items:center;gap:12px;min-height:80px;padding:16px 0;font-size:13px;line-height:1.8;overflow-wrap:anywhere}#cooking-preview .item-icon{width:40px;height:40px;flex:none;image-rendering:pixelated}#btn-cook{width:100%;min-height:42px}#cooking-dialog :focus-visible{outline:2px solid var(--gold);outline-offset:2px}.offering-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.offering-head h2{font-size:20px;margin:0}.offering-head button{flex:none;width:32px;height:32px;font-size:22px;background:#28352d;color:var(--text);border:1px solid #747b68;cursor:pointer}#offering-dialog p{font-size:12px;line-height:1.8;overflow-wrap:anywhere}#offering-dialog h3{font-size:14px}#offering-list{display:grid;gap:6px}#offering-list button{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;padding:10px;min-height:42px;text-align:left;background:#25312e;border:1px solid #596862;border-left:3px solid var(--relic);border-radius:3px;color:var(--relic);font-family:inherit;font-size:12px;line-height:1.5;cursor:pointer}#offering-list button:disabled{cursor:default;opacity:.55}#offering-list button:focus-visible{outline:2px solid #f5ca72;outline-offset:2px}#gold,#bag-gold,#shop-gold{color:var(--gold);font-size:12px;white-space:nowrap}#guide-shop{margin-top:20px;border-top:2px solid #465344;padding-top:16px}#guide-shop summary{cursor:pointer;font-size:14px;line-height:1.8}#shop-gold{display:inline-block;margin-left:8px}#shop-tabs{display:flex;margin-top:12px;border-bottom:1px solid var(--line)}#shop-tabs button{flex:1;min-width:0;min-height:40px;padding:8px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--dim);font:inherit;font-size:14px;cursor:pointer}#shop-tabs button[aria-selected=true]{border-bottom-color:var(--gold);color:var(--gold);background:var(--panel2)}#shop-tabs button:hover{color:var(--text)}#shop-tabs button:focus-visible{outline:2px solid var(--gold);outline-offset:-3px}#shop-items{margin-top:12px}.shop-heading{margin-top:16px;font-size:14px;line-height:1.6}#shop-pets .shop-row{grid-template-columns:64px minmax(0,1fr)}#shop-pets canvas{width:64px;height:48px;image-rendering:pixelated;grid-row:span 2}.shop-row{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;padding:12px 0;border-top:1px solid #465344}.shop-row .item-icon{width:24px;height:24px}.shop-row strong,.shop-row small{display:block;overflow-wrap:anywhere;line-height:1.6}.shop-row strong{font-size:13px}.shop-row small{font-size:12px;color:var(--gold)}.shop-actions{grid-column:2;display:flex;flex-wrap:wrap;gap:8px}.shop-actions button{padding:7px 10px;border:1px solid #747b68;border-radius:2px;background:#303d33;color:var(--text);font:inherit;font-size:12px;cursor:pointer}.shop-actions button:disabled{opacity:.5;cursor:default}.guide-heading{display:flex;align-items:center;gap:14px;padding-right:28px;padding-bottom:20px;border-bottom:2px solid #465344;box-shadow:0 1px #0c1715}.guide-heading>div{min-width:0}.guide-portrait{width:64px;height:64px;flex-shrink:0;image-rendering:pixelated}.guide-speaker{color:var(--gold);font-size:12px;line-height:1.6}.guide-speaker span{display:block;color:#9ca995;font-size:10px}#guide-dialog h2{font-size:21px;line-height:1.4;margin:5px 0 0;letter-spacing:0;overflow-wrap:anywhere;text-shadow:0 2px 0 #080f0e}#guide-dialog #guide-text{margin:20px 0 22px;font-size:14px;line-height:1.9;color:#d3d6c3;overflow-wrap:anywhere}.guide-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:16px;padding-top:16px;border-top:2px solid #465344;box-shadow:0 -1px #0c1715}#guide-dialog #guide-progress{flex:1 0 100%;color:var(--gold);font-size:12px;line-height:1.7;overflow-wrap:anywhere}#guide-progress:empty{display:none}#guide-close{position:absolute;right:14px;top:14px;width:30px;height:30px;background:#28352d;border:2px solid #606b58;border-radius:0;box-shadow:inset 1px 1px #889078,inset -1px -1px #101c19;color:#c8cbb6;font:22px/1 monospace;cursor:pointer}#guide-action{min-width:132px;min-height:40px;max-width:100%;padding:8px 20px;background:#d4ad69;color:#20291f;border:2px solid #a27e45;border-radius:0;box-shadow:inset 2px 2px #f0d59b,inset -2px -2px #96723f,0 3px #0b1512;font-family:inherit;font-size:14px;font-weight:700;line-height:1.5;cursor:pointer;letter-spacing:0}#guide-action:hover:not(:disabled){background:#e6bf7b}#guide-close:hover{color:#fff1d5;border-color:#a0a48a}#guide-action:active:not(:disabled){box-shadow:inset 2px 2px #96723f,inset -2px -2px #f0d59b}#guide-action:focus-visible,#guide-close:focus-visible{outline:2px solid #fff1d5;outline-offset:3px}#guide-action:disabled{background:#334238;color:#a5b19d;border-color:#53614e;box-shadow:inset 1px 1px #68755d,inset -1px -1px #16231b;cursor:default}@media(max-width:380px){#guide-dialog{padding:20px}.guide-heading{gap:10px}.guide-portrait{width:48px;height:48px}#guide-dialog h2{font-size:19px}}#topbar{position:absolute;top:14px;left:16px;display:flex;gap:10px;align-items:baseline}#day{font-size:20px;font-weight:700;letter-spacing:2px;color:var(--gold);text-shadow:0 2px 0 #000}#map-seed{position:absolute;top:calc(100% + 6px);left:12px;width:max-content;max-width:calc(100vw - 56px);font-size:11px;line-height:18px;letter-spacing:0;color:var(--dim);text-shadow:0 1px 3px #000;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}#season{font-size:13px;color:#8fc0ff;padding:2px 8px;background:var(--panel);border:1px solid var(--line);border-radius:3px}#phase{font-size:13px;color:var(--text);padding:2px 8px;background:linear-gradient(90deg,#e6bb7538 var(--day-progress,0%),transparent var(--day-progress,0%)),var(--panel);border:1px solid var(--line);border-radius:3px}#clock{align-self:flex-end;flex-shrink:0;width:128px;min-width:7ch;text-align:center;font-size:13px;line-height:24px;color:var(--dim);text-shadow:0 2px 4px #000;white-space:nowrap}#hud-tools{position:absolute;top:14px;right:16px;width:184px;max-width:calc(100% - 32px);display:flex;flex-direction:column;gap:6px}#lvbox{display:flex;align-items:center;gap:8px;min-height:30px;background:var(--panel);border:1px solid var(--line);border-radius:5px;padding:5px 9px}#lv{font-size:14px;font-weight:700;color:var(--gold);letter-spacing:0;white-space:nowrap}#xpwrap{flex:1;min-width:12px;height:8px;background:#0a0c10;border:1px solid var(--line);border-radius:2px;overflow:hidden}#xpf{height:100%;width:0%;background:linear-gradient(90deg,#4a8af0,#8ac0ff);transition:width .2s}#xpv{font-size:10px;color:var(--dim);white-space:nowrap}#hud-actions{width:128px;align-self:flex-end;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}#blueprint-toggle{position:absolute;left:16px;top:92px;min-height:34px;padding:6px 12px;background:#1c2a20;color:#e8d6a1;border:1px solid #526650;border-radius:4px;font-family:inherit;font-size:12px;line-height:1.2;cursor:pointer;pointer-events:auto;z-index:4;box-shadow:0 3px #0b1512}#blueprint-toggle:hover,#blueprint-toggle[aria-expanded=true]{border-color:#82d7ba;color:#eaffdd;background:#263c30}#blueprint-pack{position:absolute;left:16px;top:132px;width:246px;max-width:calc(100vw - 32px);padding:10px;background:#101814f7;border:2px solid #526650;border-radius:5px;box-shadow:0 8px 24px #0008;pointer-events:auto;z-index:5}#blueprint-pack[hidden]{display:none}.blueprint-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding-bottom:7px;border-bottom:1px solid #405448;color:#e8d6a1;font-size:12px}#blueprint-close{width:24px;height:24px;padding:0;border:1px solid #526650;background:#1b2a22;color:#c7d2c7;font-family:inherit;font-size:18px;line-height:20px;cursor:pointer}#blueprint-close:hover{color:#fff1d5;border-color:#82d7ba}#build-toggle{display:flex;align-items:center;justify-content:center;gap:6px;min-height:30px;margin-bottom:8px;background:#1c2a20;color:#e8d6a1;border:1px solid #526650;font-size:12px;cursor:pointer;pointer-events:auto}#build-mode{accent-color:#82d7ba}#blueprint-rotate{width:100%;min-height:28px;margin-bottom:8px;border:1px solid #526650;background:#1b2a22;color:#c7d2c7;font-family:inherit;font-size:11px;cursor:pointer}#blueprint-rotate:hover{border-color:#82d7ba;color:#eaffdd;background:#263c30}#base-build-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.base-build-item{min-width:0;min-height:72px;padding:5px 3px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:1px solid #405448;background:#1b2a22;color:#c7d2c7;font:10px/1.2 inherit;cursor:pointer}.base-build-item:hover,.base-build-item.selected{border-color:#82d7ba;color:#eaffdd;background:#263c30}.base-build-item.locked{opacity:.5;cursor:default}.blueprint-icon{width:32px;height:32px;image-rendering:pixelated;object-fit:contain}.blueprint-name{white-space:nowrap}.base-build-item small{display:block;color:#a5b19d;font-size:9px;margin-top:2px;white-space:normal;text-align:center}#base-build-hint{font-size:9px;line-height:1.3;color:#a5b19d;margin-top:5px;text-align:center}#btn-save,#btn-net{min-width:0;min-height:30px;pointer-events:auto;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:5px;font-family:inherit;font-size:11px;padding:5px 8px;cursor:pointer;letter-spacing:0;white-space:nowrap}#btn-save:hover{color:var(--gold);border-color:var(--gold)}#btn-net:hover{color:#8fc0ff;border-color:#8fc0ff}#chat-log{position:absolute;left:16px;bottom:220px;width:340px;display:flex;flex-direction:column;gap:2px;pointer-events:none}.chat-line{font-size:11px;line-height:1.5;color:var(--text);text-shadow:0 1px 0 #000;background:#0a0c108c;border-radius:3px;padding:2px 7px;width:fit-content;max-width:100%;animation:chatfade 9s forwards}.chat-line b{color:var(--gold);margin-right:5px}@keyframes chatfade{0%{opacity:1}75%{opacity:1}to{opacity:0}}#chat-wrap{position:absolute;left:16px;bottom:192px;width:340px;pointer-events:auto}#chat-input{width:100%;background:#0a0c10cc;border:1px solid var(--gold);color:var(--text);font-family:inherit;font-size:12px;padding:6px 9px;border-radius:4px;outline:none}#squad{width:100%;display:flex;flex-direction:column;gap:4px}.sq-row{background:#10141ccc;border:1px solid var(--line);border-radius:4px;padding:3px 7px}.sq-row.me{border-color:#3a5a7a}.sq-row.downed{border-color:#a03020;background:#3c0a0abf}.sq-name{font-size:10px;color:var(--dim);display:flex;justify-content:space-between}.sq-name b{color:var(--text);font-weight:400}.sq-row.downed .sq-name b{color:#ff9a8a}.sq-name span{color:var(--gold)}.sq-bar{margin-top:2px;height:4px;background:#0a0c10;border-radius:2px;overflow:hidden}.sq-fill{height:100%;background:linear-gradient(90deg,#7fb054,#a8d06a)}.sq-fill.low{background:linear-gradient(90deg,#e04a3a,#ff7a5a)}.sq-fill.down{background:linear-gradient(90deg,#a03020,#e05a3a)}.ach-head{grid-column:1/-1;font-size:11px;color:var(--gold);letter-spacing:1px;padding-top:6px}.ach-grid{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:4px}.ach{display:flex;align-items:center;gap:6px;background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:4px 7px;opacity:.45}.ach.on{opacity:1;border-color:#6a5a2a;background:#1d1a12}.ach b{font-size:13px}.ach span{display:flex;flex-direction:column;line-height:1.25}.ach span b{font-size:10px;color:var(--text);font-weight:400}.ach.on span b{color:var(--gold)}.ach span i{font-size:9px;color:var(--dim);font-style:normal}#sheet-gear{display:grid;grid-template-columns:1fr 1fr;gap:6px}.start-foot{display:flex;flex-direction:column;gap:12px;align-items:center}.cont-wrap{display:flex;flex-direction:column;gap:6px;align-items:center}#btn-cont.btn.ghost{background:var(--panel);color:var(--gold);border:1px solid var(--line);box-shadow:none;font-weight:400;font-size:14px;padding:10px 26px}#btn-cont.btn.ghost:hover{border-color:var(--gold)}.cont-info{font-size:11px;color:var(--dim);letter-spacing:1px}.coop-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:center}.join-wrap{display:flex;gap:6px;align-items:center}#join-code{width:86px;background:var(--panel);border:1px solid var(--line);color:var(--gold);font-family:inherit;font-size:15px;letter-spacing:4px;text-align:center;padding:9px 4px;border-radius:4px;text-transform:uppercase}#join-code::placeholder{letter-spacing:1px;font-size:11px;color:var(--dim)}.coop-tip{font-size:10px;color:var(--dim);letter-spacing:1px;text-align:center;max-width:520px}.btn.ghost{background:var(--panel);color:var(--text);border:1px solid var(--line);box-shadow:none;font-weight:400}.btn.ghost:hover{border-color:var(--gold);color:var(--gold)}#net-chip{pointer-events:auto;background:var(--panel);border:1px solid var(--line);border-radius:5px;padding:4px 9px;font-size:11px;color:var(--dim);letter-spacing:0;overflow-wrap:anywhere}#net-chip b{color:var(--gold);letter-spacing:2px}#net-chip.ok{border-color:#4a7a4a;color:#9ac09a}#stats{position:absolute;left:16px;bottom:16px;display:flex;gap:10px;pointer-events:auto}#stats .stat{--stat-color:#ea7e72;position:relative;width:48px;height:66px;flex:0 0 48px}#stats .stat:hover:after{content:attr(data-tooltip);position:absolute;z-index:10;left:0;bottom:calc(100% + 8px);width:max-content;max-width:min(240px,calc(100vw - 32px));padding:8px 10px;background:#151d1b;border:1px solid #697461;border-radius:4px;color:#d0d8ce;font-size:12px;line-height:1.6;letter-spacing:0;overflow-wrap:anywhere;box-shadow:0 4px 12px #0008;pointer-events:none}#stats .stat:nth-child(2){--stat-color:#e4b766}#stats .stat:nth-child(3){--stat-color:#aaa5e8}#stats .stat:nth-child(4){--stat-color:#78c9c2}#stats .lbl{font-size:0}#stats .lbl:before{content:"";position:absolute;z-index:1;left:12px;top:12px;width:24px;height:24px;background:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20shape-rendering='crispEdges'%3e%3cpath%20fill='%23202b28'%20d='M4%203h6v2h4V3h6v2h3v9h-3v3h-3v3h-3v3h-4v-3H7v-3H4v-3H1V5h3z'/%3e%3cpath%20fill='%23a34d4d'%20d='M4%205h6v2h4V5h6v2h1v6h-3v3h-3v3h-3v2h-1v-2H8v-3H5v-3H3V7h1z'/%3e%3cpath%20fill='%23df7861'%20d='M5%205h4v2h6V5h4v3h1v4h-3v3h-3v3h-3v-2H8v-3H5V5z'/%3e%3cpath%20fill='%23f6b59a'%20d='M5%206h4v2H7v3H5zM16%206h3v2h-3z'/%3e%3cpath%20fill='%23783e42'%20d='M5%2014h3v3h3v2h2v2h-2v-2H8v-3H5z'/%3e%3c/svg%3e") center/contain no-repeat;image-rendering:pixelated}#stats .stat:nth-child(2) .lbl:before{background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20shape-rendering='crispEdges'%3e%3cpath%20fill='%23202b28'%20d='M12%202h7v2h3v3h1v7h-3v3h-6v2h-3v3H8v-1H6v2H2v-4h2v-3h4v-3H7V7h2V4h3z'/%3e%3cpath%20fill='%23b27d43'%20d='M12%204h6v2h3v7h-3v3h-5v-2H9V8h2V6h1z'/%3e%3cpath%20fill='%23e4b766'%20d='M12%205h6v2h2v4h-3v3h-4v-2h-3V8h2z'/%3e%3cpath%20fill='%23f4d7a0'%20d='M13%205h4v2h-3v3h-3V8h2z'/%3e%3cpath%20fill='%23e1d8b9'%20d='M9%2014h3v3H9v3H7v-1H5v3H3v-2h2v-3h3v-1h1z'/%3e%3cpath%20fill='%239b9985'%20d='M9%2016h2v1H9v3H7v-1H6v-1h2z'/%3e%3c/svg%3e")}#stats .stat:nth-child(3) .lbl:before{background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20shape-rendering='crispEdges'%3e%3cpath%20fill='%23202b28'%20d='M7%202h4v1h2V2h4v2h3v3h2v10h-3v3h-5v2h-4v-2H5v-3H2V7h2V4h3z'/%3e%3cpath%20fill='%2377729e'%20d='M7%204h4v2h2V4h4v2h2v3h2v7h-3v3h-5v2h-2v-2H6v-3H3V8h2V6h2z'/%3e%3cpath%20fill='%23aaa5d2'%20d='M7%204h3v3h4V4h3v3h2v3h1v4h-3v3h-3v1h-4v-1H6v-3H4V9h2V6h1z'/%3e%3cpath%20fill='%23d7cde8'%20d='M7%205h3v2H8v3H5V8h2zM14%205h3v2h-3z'/%3e%3cpath%20fill='%23605d84'%20d='M11%207h2v12h-2zM7%2010h2v3H6v-2h1zM15%208h2v3h2v2h-4zM6%2015h4v2H6zM14%2015h3v2h-3z'/%3e%3c/svg%3e")}#stats .stat:nth-child(4) .lbl:before{background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20shape-rendering='crispEdges'%3e%3cpath%20fill='%23202b28'%20d='M9%201h6v2h2v11h2v7h-3v2H8v-2H5v-7h2V3h2z'/%3e%3cpath%20fill='%2363958d'%20d='M9%203h6v12h2v5h-2v1H9v-1H7v-5h2z'/%3e%3cpath%20fill='%23b6d9c3'%20d='M10%203h4v13h2v3h-2v2h-4v-2H8v-3h2z'/%3e%3cpath%20fill='%233c6e68'%20d='M11%205h2v11h2v3h-2v1h-2v-1H9v-3h2z'/%3e%3cpath%20fill='%2378c9c2'%20d='M11%2010h2v6h2v3h-4v-1H9v-2h2z'/%3e%3cpath%20fill='%23e5edd0'%20d='M10%204h1v6h-1zM9%2016h2v2H9z'/%3e%3cpath%20fill='%2363958d'%20d='M18%204h3v1h-3zM18%208h2v1h-2zM18%2012h3v1h-3z'/%3e%3c/svg%3e")}#stats .bar{position:static;width:48px;height:48px;background:#17211feb;border:0;border-radius:50%;overflow:visible;box-shadow:0 2px 5px #0008}#stats .bar .fill{width:48px;height:48px;border-radius:50%;background:conic-gradient(var(--stat-color) var(--progress,100%),#45544d var(--progress,100%));-webkit-mask:radial-gradient(closest-side,transparent calc(100% - 4px),#000 calc(100% - 3px));mask:radial-gradient(closest-side,transparent calc(100% - 4px),#000 calc(100% - 3px));transition:none}#stats .val{inset:51px 0 auto;font-size:10px;line-height:15px;color:#f3f3e8;font-variant-numeric:tabular-nums;text-align:center;text-shadow:0 1px 3px #000;white-space:nowrap}#stats .stat.low .val{color:#ff9c8c}#stats .stat.low .lbl:after{content:"!";position:absolute;z-index:1;top:0;right:0;width:14px;height:14px;border-radius:50%;background:#351d1b;color:#ff9c8c;font-size:11px;line-height:14px;text-align:center;font-weight:700}#stats .stat.cold{--stat-color:#84bdf4}#stats .stat.hot{--stat-color:#f38b65}.bar{flex:1;height:13px;background:#0a0c10;border:1px solid var(--line);border-radius:2px;overflow:hidden;position:relative}.bar .fill{height:100%;width:100%;transition:width .12s linear}.fill.hp{background:linear-gradient(180deg,#f06050,#c03020)}.fill.hunger{background:linear-gradient(180deg,#f0b050,#c88020)}.fill.sanity{background:linear-gradient(180deg,#8898e0,#5060b0)}.fill.temp{background:linear-gradient(180deg,#58c0d0,#3a8a9a)}.bar .val{position:absolute;inset:0;font-size:10px;line-height:13px;text-align:center;color:#fff;text-shadow:0 1px 1px #000}.item-icon{display:inline-block;width:24px;height:24px;object-fit:contain;image-rendering:pixelated;vertical-align:middle}#hotbar .item-icon{width:20px;height:20px}#quiver-icon .item-icon{width:18px;height:18px;vertical-align:top}#bag .item-icon{width:32px;height:32px}#sheet .item-icon{width:20px;height:20px}#craft .rcost .item-icon,#tech-cost .item-icon{width:16px;height:16px;vertical-align:top}#quickbar{position:absolute;left:calc(50% + 25px);bottom:14px;transform:translate(-50%);width:400px;max-width:calc(100% - 70px);display:flex;flex-direction:column;gap:6px;pointer-events:auto}#quiver{position:absolute;right:calc(100% + 6px);top:0;width:44px;height:44px;padding:1px 2px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--panel);color:var(--gold);border:1px solid var(--gold);border-radius:3px;font-family:inherit;cursor:pointer}#quiver .label{font-size:8px;line-height:10px;letter-spacing:0}#quiver-icon{font-size:16px;line-height:18px}#quiver.empty{opacity:.55}#quiver-count{max-width:100%;font-size:10px;line-height:12px;font-variant-numeric:tabular-nums}#quiver-menu{position:fixed;inset:auto;margin:0;width:220px;max-width:calc(100% - 20px);padding:6px;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:4px;box-shadow:0 4px 16px #0008}#quiver-menu button{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:8px;width:100%;min-height:40px;padding:6px 8px;background:transparent;color:var(--text);border:1px solid transparent;border-radius:3px;font-family:inherit;font-size:12px;text-align:left;cursor:pointer}#quiver-menu button[aria-pressed=true]{border-color:var(--gold);background:var(--panel2)}#quiver-menu button:hover:not(:disabled){background:var(--panel2)}#quiver-menu button:disabled{opacity:.4;cursor:default}#quiver-menu .count{color:var(--gold);font-variant-numeric:tabular-nums}#hotbar{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:5px}#weps{position:absolute;top:50%;left:16px;transform:translateY(-50%);display:flex;flex-direction:column;gap:6px;max-width:calc(100% - 32px);max-height:max(56px,calc(100% - 400px));overflow-y:auto;pointer-events:auto;scrollbar-width:thin}#weps .wep{--quality:#cfd4da;position:relative;display:flex;flex:0 0 56px;align-items:center;justify-content:center;width:56px;height:56px;padding:0;background:#2a2e30;border:1px solid #46574b;border-top:2px solid var(--quality);border-radius:3px;box-shadow:inset 0 1px #ffffff08,0 2px #101713;cursor:pointer}#weps .wep:hover{background:#353a3c;border-color:var(--quality)}#weps .wep.cur{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}#weps .wep .ic{font-size:24px;line-height:28px;filter:drop-shadow(0 3px 1px #0005)}#weps .wep .wdu{position:absolute;bottom:4px;left:4px;right:4px;height:2px;background:#101716}#weps .wep .wdu span{display:block;height:100%;background:var(--quality)}#hotbar .slot{width:100%;height:44px;background:var(--panel);border:1px solid var(--line);border-radius:4px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:grab}#hotbar .slot .ic{font-size:16px;line-height:18px}#hotbar .slot .ct{font-size:10px;color:var(--gold);line-height:12px}#hotbar .slot .key{position:absolute;top:1px;left:3px;font-size:8px;color:var(--dim)}#hotbar .slot.empty{opacity:.35;cursor:default}#hotbar .slot.ghost{opacity:.4}#hotbar .slot.food{cursor:pointer}#hotbar .slot.food:hover{border-color:var(--gold)}#hotbar .slot.drag-over{border-color:var(--gold);background:var(--panel2);box-shadow:0 0 0 1px var(--gold) inset}.drag-ghost{position:fixed;z-index:50;pointer-events:none;display:flex;flex-direction:column;align-items:center;background:var(--panel);border:1px solid var(--gold);border-radius:4px;padding:4px 8px;opacity:0;transition:opacity .12s;transform:translate(-50%,-50%)}.drag-ghost.on{opacity:1}.drag-ghost .ic{font-size:16px;line-height:18px}.drag-ghost .ct{font-size:10px;color:var(--gold)}#bag,#sheet{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:20;background:var(--panel);border:2px solid var(--line);border-radius:8px;padding:18px;width:min(480px,92vw);display:none;box-shadow:0 10px 40px #0009}#bag h2,#sheet h2{font-size:15px;letter-spacing:3px;color:var(--gold);margin-bottom:14px;text-align:center}.bag-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.bag-head h2{margin-bottom:0}.sort-btn{pointer-events:auto;background:var(--panel2);color:var(--text);border:1px solid var(--line);border-radius:4px;font-family:inherit;font-size:11px;padding:5px 14px;cursor:pointer;letter-spacing:2px}.sort-btn:hover{color:var(--gold);border-color:var(--gold)}#bag .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}#bag .cell,#sheet .cell{background:var(--panel2);border:1px solid var(--line);border-radius:6px;padding:8px 6px;text-align:center}#bag .cell.draggable{cursor:grab}#bag .grid{grid-template-columns:repeat(4,minmax(0,1fr))}#bag .cell{min-height:80px;box-sizing:border-box;overflow-wrap:anywhere}#bag .cell.drag-over{border-color:var(--gold)}#bag .cell.zero{opacity:.35}#bag .cell .ic,#sheet .cell .ic{font-size:18px}#bag .cell .nm,#sheet .cell .nm{font-size:10px;color:var(--dim);margin-top:2px}#bag .cell .ct,#sheet .cell .ct{font-size:12px;color:var(--gold)}#bag .gear,#sheet .gear{border-top:1px solid var(--line);padding-top:10px;font-size:11px;color:var(--dim);line-height:2}#bag .gear b,#sheet .gear b{color:var(--text)}#bag .gear .on,#sheet .gear .on{color:var(--green)}#bag .close,#sheet .close{margin-top:12px;width:100%;text-align:center;font-size:11px;color:var(--dim);letter-spacing:2px}#sheet .rows{display:grid;grid-template-columns:1fr 1fr;gap:4px 18px;margin-bottom:14px}#sheet .row{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:12px;color:var(--dim);border-bottom:1px dashed var(--line);padding:5px 2px}#sheet .row span,#sheet .row b{white-space:nowrap}#sheet .row b{color:var(--text);text-align:right}#sheet .eq-tip{margin:6px 0;text-align:center;font-size:11px;color:var(--dim);letter-spacing:2px}#sheet .eqgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}#sheet .eq{background:var(--panel2);border:1px solid var(--line);border-radius:6px;padding:6px 2px;text-align:center;position:relative}#sheet .eq.cur{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold) inset}#sheet .eq.empty{opacity:.38}#sheet .eq .ic{font-size:15px;line-height:17px}#sheet .eq .nm{font-size:9px;color:var(--dim);margin-top:1px;white-space:nowrap;overflow:hidden}#sheet .eq.cur .nm{color:var(--gold)}#sheet .eq .sub{font-size:8px;color:#7a8290;line-height:10px;white-space:nowrap}#sheet .eq .tag{position:absolute;top:1px;left:2px;font-size:7px;color:var(--dim);letter-spacing:0}#sheet{max-height:88vh;overflow-y:auto}#hint{align-self:center;width:max-content;white-space:nowrap;font-size:11px;color:var(--dim);text-align:center;line-height:1.8;text-shadow:0 1px 2px #000;pointer-events:none}#hint b{color:var(--gold)}#craft{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:20;background:var(--panel);border:2px solid var(--line);border-radius:8px;padding:18px;width:min(470px,92vw);height:min(560px,86vh);display:none;flex-direction:column;box-shadow:0 10px 40px #0009}#craft h2{font-size:15px;letter-spacing:3px;color:var(--gold);margin-bottom:10px;text-align:center;flex-shrink:0}.tabs{display:flex;gap:6px;justify-content:center;margin-bottom:14px;flex-shrink:0}.tab{font-size:11px;padding:4px 12px;color:var(--dim);background:var(--panel2);border:1px solid var(--line);border-radius:12px;cursor:pointer;pointer-events:auto;letter-spacing:1px}.tab:hover{color:var(--text)}.tab.on{color:#1a1408;background:var(--gold);border-color:var(--gold);font-weight:700}.recipes{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-content:start;flex:1;min-height:0;overflow-y:auto;padding-right:4px}.recipes::-webkit-scrollbar{width:6px}.recipes::-webkit-scrollbar-track{background:transparent}.recipes::-webkit-scrollbar-thumb{background:var(--line);border-radius:3px}.recipes::-webkit-scrollbar-thumb:hover{background:var(--dim)}.recipes::-webkit-scrollbar-corner{background:transparent}.recipe{background:var(--panel2);border:1px solid var(--line);border-radius:6px;padding:12px;cursor:pointer;transition:transform .08s,border-color .08s}.recipe:hover{transform:translateY(-2px);border-color:var(--gold)}.recipe.disabled{opacity:.4;cursor:not-allowed}.recipe .rname{font-size:14px;color:var(--text);margin-bottom:4px}.recipe .rcost{font-size:11px;color:var(--dim);margin-bottom:6px;min-height:14px}.recipe .rcost .ok{color:var(--green)}.recipe .rcost .no{color:var(--red)}.recipe .rdesc{font-size:10px;color:var(--dim);line-height:1.5}#craft .close{margin-top:12px;width:100%;text-align:center;font-size:11px;color:var(--dim);letter-spacing:2px;flex-shrink:0}#bossbar{position:absolute;top:64px;left:50%;transform:translate(-50%);width:min(360px,60vw);text-align:center;display:none}#bossbar .bname{font-size:13px;color:#ff7a6a;letter-spacing:2px;margin-bottom:4px;text-shadow:0 2px 4px #000}#bossbar .bbar{height:12px;background:#0a0c10;border:1px solid #5a2030;border-radius:2px;overflow:hidden}#bossbar .bfill{height:100%;width:100%;background:linear-gradient(180deg,#ff6a5a,#b02030);transition:width .1s}#toast{position:fixed;top:24%;left:50%;transform:translate(-50%);z-index:25;max-width:min(480px,88vw);text-align:center;opacity:0;pointer-events:none;transition:opacity .6s}#toast .ttag{font-size:11px;color:var(--gold);letter-spacing:3px;margin-bottom:8px}#toast .ttext{font-size:16px;line-height:1.8;color:var(--text);text-shadow:0 2px 8px #000}#toast.show{opacity:1}.overlay{position:fixed;inset:0;z-index:30;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 20%,#4c644c73,#091213f7 75%);text-align:center;padding:20px;overflow-y:auto}.overlay.hidden{display:none}.title{font-size:clamp(30px,5vw,48px);font-weight:700;letter-spacing:12px;color:#f5e7c5;text-shadow:0 3px 0 #172b27,0 4px 16px #172b27;margin-bottom:10px}.subtitle{font-size:10px;color:#dedfc6;letter-spacing:4px;text-shadow:0 2px 4px #122b26}.start-panel{width:min(920px,94vw);max-height:92vh;overflow-y:auto;background:linear-gradient(135deg,#1d2d26,#131f1c);border:1px solid #65705a;border-radius:6px;padding:0 28px 24px;box-shadow:0 24px 80px #0009,0 0 0 4px #0c1717,inset 0 0 0 3px #b7a16a0d;display:flex;flex-direction:column;scrollbar-color:var(--line) var(--bg);scrollbar-width:thin}.start-head{text-align:center;padding:44px 12px 48px;border-bottom:1px solid #65705a;margin:0 -28px 22px;background:linear-gradient(90deg,#10252122,#10252111),url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20960%20240'%20shape-rendering='crispEdges'%3e%3cdefs%3e%3clinearGradient%20id='sky'%20x2='0'%20y2='1'%3e%3cstop%20stop-color='%23122d35'/%3e%3cstop%20offset='1'%20stop-color='%23738076'/%3e%3c/linearGradient%3e%3cradialGradient%20id='glow'%3e%3cstop%20stop-color='%23eeb765'%20stop-opacity='.35'/%3e%3cstop%20offset='1'%20stop-color='%23eeb765'%20stop-opacity='0'/%3e%3c/radialGradient%3e%3cg%20id='pine'%3e%3cpath%20fill='%23162f2d'%20d='M-3%200h6v-22H-3zM-22-16h44v-7h-7v-9h-7v-10H3v-13h-6v13h-5v10h-7v9h-7z'/%3e%3cpath%20fill='%2329443b'%20d='M-3-48v10h-5v10h-7v7h10v-8h5v-19z'/%3e%3c/g%3e%3c/defs%3e%3cpath%20fill='url(%23sky)'%20d='M0%200h960v240H0z'/%3e%3cpath%20fill='%23d9ddbd'%20d='M751%2028h20v5h7v20h-7v5h-20v-5h-7V33h7z'/%3e%3cpath%20fill='%23b7c7b5'%20opacity='.65'%20d='M99%2030h2v2h-2zM200%2056h3v3h-3zM322%2019h2v2h-2zM618%2036h2v2h-2zM867%2028h3v3h-3zM690%2070h2v2h-2z'/%3e%3cpath%20fill='%23445d5c'%20d='M0%20123h40v-14h38V91h28V73h24v18h30v18h43v16h48v-22h35V81h25V63h28v21h22v21h35v22h79v-18h34V92h28V73h28v19h25v20h48v12h78V97h31V77h25V59h27v24h22v18h38v22h55V99h39V85h31v22h30v133H0z'/%3e%3cpath%20fill='%23304b46'%20d='M0%20150h75v-12h58v14h61v17h80v-17h54v-16h72v14h66v18h95v-19h78v-12h65v15h87v-18h65v16h104v90H0z'/%3e%3cpath%20fill='%23203b33'%20d='M0%20190h112v-12h114v9h140v-12h151v15h132v-9h136v-14h93v14h82v59H0z'/%3e%3cg%3e%3cuse%20href='%23pine'%20transform='translate(35%20206)%20scale(2.8)'/%3e%3cuse%20href='%23pine'%20transform='translate(128%20210)%20scale(1.8)'/%3e%3cuse%20href='%23pine'%20transform='translate(196%20203)%20scale(1.1)'/%3e%3cuse%20href='%23pine'%20transform='translate(817%20206)%20scale(1.8)'/%3e%3cuse%20href='%23pine'%20transform='translate(920%20218)%20scale(3.2)'/%3e%3cuse%20href='%23pine'%20transform='translate(739%20200)'/%3e%3c/g%3e%3cpath%20fill='%23142a26'%20d='M0%20218h156v-8h134v8h168v-7h117v-9h164v9h98v-7h123v36H0z'/%3e%3cellipse%20cx='647'%20cy='211'%20rx='90'%20ry='35'%20fill='url(%23glow)'/%3e%3cpath%20fill='%238d6944'%20d='M633%20216h29v4h-29z'/%3e%3cpath%20fill='%23cf703b'%20d='M637%20211v-10h5v-12h5v9h5v-7h4v10h4v13h-23z'/%3e%3cpath%20fill='%23f3bd67'%20d='M642%20211v-8h5v-7h4v10h4v8h-13z'/%3e%3cpath%20fill='%23ffebae'%20d='M647%20208h5v7h-5zM644%20181h3v3h-3zM655%20174h2v3h-2z'/%3e%3cpath%20fill='%23101f20'%20d='M606%20214v-12h-4v-9h13v9h4v12h-4v9h-4v-9h-1v9h-4z'/%3e%3cpath%20fill='%23b69b73'%20d='M605%20192h8v6h-8z'/%3e%3c/svg%3e") center/cover;flex-shrink:0}.start-body{display:flex;gap:20px;align-items:stretch;text-align:left;flex:1}.guide{flex:1;min-width:0;display:flex;flex-direction:column;gap:16px}.g-block{margin:0}.g-title{font-size:12px;color:var(--gold);letter-spacing:3px;margin-bottom:8px}.g-goal{font-size:13px;color:var(--text);line-height:1.7}.keys{display:grid;grid-template-columns:1fr 1fr;gap:7px 20px}.krow{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--dim)}.krow b{background:var(--panel2);border:1px solid var(--line);border-bottom-width:2px;border-radius:4px;padding:1px 7px;font-size:11px;color:var(--gold);min-width:46px;text-align:center;flex-shrink:0}.rules{list-style:none;font-size:12px;color:var(--dim);line-height:2}.rules b{color:var(--text)}.warn{font-size:12px;color:var(--gold);margin-top:auto;padding-top:10px;border-top:1px dashed var(--line);opacity:.85}.charbox{width:300px;flex-shrink:0;display:flex;flex-direction:column;gap:10px;align-items:stretch;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:14px 16px;text-align:left}.start-foot{margin-top:20px;padding-top:18px;border-top:1px solid var(--line);text-align:center}#difficulty-dialog{margin:auto;width:min(420px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow-y:auto;padding:24px;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--text);box-shadow:0 16px 60px #0009;letter-spacing:0}#difficulty-dialog::backdrop{background:#000a}.audio-entry{display:flex;align-items:center;justify-content:center;gap:8px;min-height:36px;padding:6px 12px;border:1px solid var(--line);border-radius:4px;background:var(--panel);color:var(--text);font:inherit;font-size:12px;letter-spacing:0;cursor:pointer;pointer-events:auto}.audio-entry img{flex:none}.audio-entry:hover{border-color:var(--gold)}.audio-menu{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:10px}#btn-audio-hud,#btn-controls-hud{width:100%}#audio-dialog{margin:auto;width:min(380px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow-y:auto;padding:24px;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--text);box-shadow:0 16px 60px #0009;letter-spacing:0}#audio-dialog::backdrop{background:#000a}.audio-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.audio-head h2{font-size:20px}.audio-head button{flex:none;width:36px;height:36px;border:1px solid var(--line);border-radius:4px;background:var(--panel2);color:var(--text);font-size:24px;cursor:pointer}.audio-toggle{display:flex;align-items:center;gap:8px;margin-bottom:16px;min-height:28px;font-size:14px;cursor:pointer}.audio-toggle input{width:16px;height:16px;accent-color:var(--gold)}.audio-field{display:grid;grid-template-columns:minmax(0,1fr) 5ch;gap:8px;margin-bottom:20px;font-size:14px}.audio-field output{text-align:right;color:var(--gold);font-variant-numeric:tabular-nums}.audio-field input{grid-column:1/-1;width:100%;min-width:0;height:24px;accent-color:var(--gold);cursor:pointer}.audio-actions{border-top:1px solid var(--line);padding-top:16px}.audio-actions .btn{font-size:14px;padding:10px 16px;letter-spacing:0}#audio-dialog :focus-visible,.audio-entry:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.difficulty-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px}.difficulty-head h2{font-size:20px}#btn-difficulty-close{width:36px;height:36px;border:1px solid var(--line);border-radius:4px;background:var(--panel2);color:var(--text);font-size:24px;cursor:pointer}.difficulty-field{display:grid;grid-template-columns:minmax(0,1fr) 6ch;gap:12px;margin-bottom:24px;font-size:14px}.difficulty-field output{text-align:right;color:var(--gold);font-variant-numeric:tabular-nums}.difficulty-field input{grid-column:1/-1;width:100%;min-width:0;accent-color:var(--gold);cursor:pointer}.difficulty-field input[type=number]{padding:10px 12px;border:1px solid var(--line);border-radius:4px;background:var(--panel2);color:var(--text);font:inherit;cursor:text}.difficulty-options{border:0;min-width:0;margin-bottom:24px;font-size:14px}.difficulty-options legend{margin-bottom:12px}.difficulty-tags{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.difficulty-tags label{position:relative;min-width:0;cursor:pointer}.difficulty-tags input{position:absolute;width:1px;height:1px;opacity:0}.difficulty-tags span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:44px;padding:10px 2px;border:1px solid var(--line);border-radius:4px;background:var(--panel2);color:var(--dim);font-size:13px}.difficulty-tags small{font-size:11px}.difficulty-tags label:hover span{border-color:var(--gold)}.difficulty-tags input:checked+span{background:#3b3e2c;border-color:var(--gold);color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}.difficulty-tags input:focus-visible+span{outline:2px solid var(--gold);outline-offset:3px}.difficulty-actions{display:flex;justify-content:space-between;gap:12px;padding-top:16px;border-top:1px solid var(--line)}.difficulty-actions .btn{padding:10px 16px;font-size:14px;letter-spacing:0}#controls-dialog{margin:auto;width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow-y:auto;padding:24px;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--text);box-shadow:0 16px 60px #0009;letter-spacing:0}#controls-dialog::backdrop{background:#000a}#controls-dialog :focus-visible{outline:2px solid var(--gold);outline-offset:3px}.controls-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.controls-head h2{font-size:20px}.controls-head button{flex:none;width:36px;height:36px;border:1px solid var(--line);border-radius:4px;background:var(--panel2);color:var(--text);font-size:24px;cursor:pointer}#controls-tabs{display:flex;gap:6px;margin-bottom:16px;border-bottom:1px solid var(--line)}#controls-tabs [role=tab]{margin-bottom:-1px;padding:8px 14px;border:1px solid var(--line);border-bottom:0;border-radius:4px 4px 0 0;background:var(--panel2);color:var(--dim);font:inherit;font-size:13px;letter-spacing:0;cursor:pointer}#controls-tabs [role=tab][aria-selected=true]{background:var(--panel);color:var(--gold);border-color:var(--gold)}.controls-hint{margin:0 0 14px;font-size:12px;line-height:1.7;color:var(--dim)}.controls-field{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;font-size:14px}.controls-field select{padding:8px 10px;border:1px solid var(--line);border-radius:4px;background:var(--panel2);color:var(--text);font:inherit;font-size:13px;cursor:pointer}.control-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;padding:4px 0;border-bottom:1px dashed var(--line);font-size:14px}.control-row:last-child{border-bottom:0}.control-name{color:var(--text)}.control-key{min-width:78px;padding:6px 10px;border:1px solid var(--line);border-bottom-width:2px;border-radius:4px;background:var(--panel2);color:var(--gold);font:inherit;font-size:12px;letter-spacing:0;text-align:center;cursor:pointer}.control-key:hover{border-color:var(--gold)}.control-row.capturing .control-key{border-color:var(--gold);background:#3c4a3f;color:#ffe9b0}#controls-touch-list .control-row input{width:18px;height:18px;accent-color:var(--gold);cursor:pointer}.controls-actions{display:flex;justify-content:space-between;gap:12px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.controls-actions .btn{padding:10px 16px;font-size:14px;letter-spacing:0}#difficulty-dialog button:focus-visible,#btn-difficulty:focus-visible{outline:2px solid var(--gold);outline-offset:3px}@media(max-width:840px){.start-body{flex-direction:column}.charbox{width:auto}.keys{grid-template-columns:1fr}}.cname{display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding-bottom:10px}.cname .clbl{width:34px;font-size:11px;color:var(--gold);letter-spacing:2px;flex-shrink:0}#char-name{flex:1;background:var(--panel2);border:1px solid var(--line);border-radius:4px;color:var(--text);font-family:inherit;font-size:14px;letter-spacing:1px;padding:6px 10px;outline:none;pointer-events:auto}#char-name:focus{border-color:var(--gold)}.char-row{display:flex;gap:20px;align-items:center}.char-prev{width:64px;height:72px;background:radial-gradient(ellipse at 50% 75%,#66724b55,transparent 65%),repeating-linear-gradient(0deg,#ffffff03 0 1px,transparent 1px 8px),#101f1b;border:1px solid #65705a;border-radius:3px;display:flex;align-items:center;justify-content:center;position:relative;flex-shrink:0}#char-preview{image-rendering:pixelated;image-rendering:crisp-edges}.char-opts{display:flex;flex-direction:column;gap:7px}.crow{display:flex;align-items:center;gap:8px}.crow .clbl{width:34px;font-size:11px;color:var(--dim);letter-spacing:1px;text-align:right}.swatches{display:flex;gap:5px;flex-wrap:wrap}.sw{width:18px;height:18px;border-radius:3px;border:2px solid rgba(255,255,255,.14);cursor:pointer;box-sizing:border-box}.sw:hover{border-color:#fff}.sw.on{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}.btn{pointer-events:auto;background:linear-gradient(#f0ce8f,#d3a25b);color:#29251a;border:1px solid #f3dba4;font-family:inherit;font-size:16px;letter-spacing:3px;padding:12px 40px;border-radius:3px;cursor:pointer;font-weight:700;box-shadow:0 4px #79603a,0 6px 18px #0004;transition:filter .15s,transform .15s}.btn:active{transform:translateY(2px);box-shadow:0 2px #8a6a20}#gameover{background:radial-gradient(ellipse at 50% 50%,#0e1a18e6,#050a0afb 72%)}#go-card{display:flex;flex-direction:column;align-items:center;width:min(420px,100%);padding:30px 28px 26px;border:1px solid #65705a;border-radius:6px;background:linear-gradient(135deg,#1d2d26f2,#131f1cf7);box-shadow:0 24px 70px #000a,0 0 0 4px #0c1717,inset 0 0 0 3px #b7a16a12}#go-result{font-size:20px;font-weight:700;letter-spacing:4px;color:#f5e7c5;text-shadow:0 2px 0 #172b27,0 4px 14px #172b27}#go-days{margin-top:10px;font-size:13px;line-height:1.9;color:var(--dim);letter-spacing:1px}#go-days b{color:var(--gold);font-size:22px;font-variant-numeric:tabular-nums}#go-stats{display:grid;grid-template-columns:repeat(4,1fr);width:100%;margin:22px 0 24px;padding:14px 0;border-top:1px solid #3b4a3d;border-bottom:1px solid #3b4a3d}.go-stat{display:flex;flex-direction:column;align-items:center;gap:7px;min-width:0;border-left:1px solid #2c3a2f}.go-stat:first-child{border-left:0}.go-stat span{font-size:11px;letter-spacing:2px;color:var(--dim)}.go-stat strong{font-size:19px;line-height:1;color:#f0dcae;font-variant-numeric:tabular-nums}#btn-restart{width:100%}#minimap{align-self:flex-end;flex-shrink:0;width:128px;height:128px;border:1px solid var(--line);border-radius:4px;background:#05070a;opacity:.88;pointer-events:none}#chestpanel{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:360px;background:var(--panel);border:2px solid var(--gold);border-radius:8px;padding:14px;z-index:30;pointer-events:auto;display:none}.cp-title{font-size:14px;color:var(--gold);letter-spacing:2px;margin-bottom:8px;display:flex;justify-content:space-between}#cp-close{cursor:pointer;color:var(--dim);font-size:12px}#cp-close:hover{color:var(--red)}.cp-sec{font-size:10px;color:var(--dim);letter-spacing:1px;margin:8px 0 4px}.cp-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;min-height:44px}.cp-cell{background:var(--panel2);border:1px solid var(--line);border-radius:4px;min-height:40px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;font-size:13px;position:relative}.cp-cell:hover{border-color:var(--gold)}.cp-cell.empty{cursor:default;opacity:.35}.cp-cell .ct{font-size:8px;color:var(--dim)}.cp-cell.dep:hover{background:#1d2a1a}.cp-empty{grid-column:1/-1;font-size:10px;color:var(--dim);text-align:center;padding:12px 0}#topbar{background:linear-gradient(135deg,#17271fef,#111e1bdd);border:1px solid var(--line);border-radius:4px;padding:10px 12px;box-shadow:0 3px 12px #0004,inset 0 1px #e6bb7515}#topbar{gap:8px}#day{font-size:18px}#hotbar .slot{background:linear-gradient(#2c3b30,#19271f);box-shadow:inset 0 1px #e6bb7522,0 3px #101b18;border-radius:3px}#hotbar .slot.empty{opacity:.65;border-style:dashed}#minimap{border:2px solid #a39164;border-radius:3px;box-shadow:0 0 0 3px #15231e,0 4px 20px #0006;opacity:.95}#bag,#sheet,#craft,#chestpanel{box-shadow:0 16px 60px #0009,inset 0 0 0 3px #e6bb750a;max-height:85vh;overflow-y:auto}.charbox{background:linear-gradient(145deg,#2b3b2c,#18271f);border-color:#59634b;border-radius:4px}.g-title{font-weight:700}.g-goal{color:#eee0bc}.warn{color:#dfb17a}.btn:hover{filter:brightness(1.1)}button:focus-visible,input:focus-visible{outline:2px solid #f4dca6;outline-offset:3px}@media(max-width:1000px){#weps{max-height:max(56px,calc(100% - 540px))}#stats{bottom:106px}#chat-log{bottom:286px}#chat-wrap{bottom:258px}}@media(min-width:601px)and (max-width:700px){#hint{font-size:10px;transform:translate(-25px)}}@media(max-width:600px){#bossbar{top:292px}#weps{left:10px;max-width:calc(100% - 20px);max-height:max(56px,calc(100% - 700px))}#hud-tools{top:126px;right:10px;max-width:calc(100% - 20px)}#stats{left:10px;bottom:164px;gap:6px}#chat-log{left:10px;bottom:350px;width:calc(100% - 20px)}#chat-wrap{left:10px;bottom:322px;width:calc(100% - 20px)}.overlay{padding:10px}#go-card{padding:22px 16px 20px}#go-result{font-size:17px;letter-spacing:2px}#go-stats{margin:16px 0 18px;padding:12px 0}.go-stat span{font-size:10px;letter-spacing:1px}.go-stat strong{font-size:16px}.start-panel{width:100%;max-height:95vh;padding:0 16px 20px}.start-head{margin:0 -16px 18px;padding:32px 8px 36px}.title{letter-spacing:6px}.subtitle{font-size:8px;letter-spacing:1px}.coop-row{flex-wrap:wrap}.char-row{gap:12px}#char-name{min-width:0}#hint{display:none}}@media(prefers-reduced-motion:reduce){.btn{transition:none}}@media(max-height:430px){#go-card{padding:16px 18px 14px}#go-result{font-size:16px;letter-spacing:2px}#go-days{margin-top:5px;font-size:12px}#go-days b{font-size:18px}#go-stats{margin:11px 0 13px;padding:9px 0;gap:0}.go-stat{gap:4px}.go-stat span{font-size:10px}.go-stat strong{font-size:15px}#btn-restart{padding:9px 24px;font-size:14px}}#bag{width:min(500px,calc(100vw - 24px));height:420px;max-height:calc(100dvh - 32px);overflow:hidden;padding:20px;background:#1c2322;border:1px solid #62695d;border-radius:6px;box-shadow:0 20px 70px #000b,inset 0 0 0 3px #111817;letter-spacing:0}#bag .bag-layout{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto}#bag .bag-head{margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid #3a4540;gap:12px}#bag .bag-title{display:flex;align-items:baseline;gap:12px}#bag h2{margin:0;font-size:20px;line-height:1.4;color:#f0e7cf;letter-spacing:0;text-align:left}#bag-count{font-size:11px;color:#9ba89f;white-space:nowrap}.bag-actions{display:flex;align-items:center;gap:6px}#bag .sort-btn,#btn-bag-close{height:32px;border:1px solid #48564d;border-radius:3px;background:#29332e;color:#ddd8c4;font-family:inherit;font-size:12px;cursor:pointer;letter-spacing:0}#bag .sort-btn{padding:0 12px}#btn-bag-close{width:32px;font-size:22px;line-height:1}#bag .sort-btn:hover,#btn-bag-close:hover{background:#354238;border-color:#d0b77c;color:#fff1ce}#bag .grid{grid-template-columns:repeat(8,minmax(0,1fr));align-content:start;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#697461 #171f1c;scrollbar-gutter:stable;gap:6px;margin-bottom:18px}#bag .cell{position:relative;height:56px;min-height:56px;padding:12px 3px 6px;border:1px solid #46574b;border-radius:3px;background:#29362e;box-shadow:inset 0 1px #ffffff08,0 2px #101713;overflow:hidden}#bag .cell.empty{background:#171f1c;border:1px solid #303b34;box-shadow:inset 0 2px 5px #0003}#bag .cell.empty:after{content:"";position:absolute;width:8px;height:8px;border:1px solid #3b473d;left:calc(50% - 4px);top:calc(50% - 4px);opacity:.45}#bag .cell.equipment{border-top:2px solid var(--quality);background:#2a2e30}#bag .cell.draggable:hover{background:#354139;border-color:#a0af94}#bag .cell.equipment:hover{border-color:var(--quality);background:#353a3c}#bag .cell.drag-over{border-color:#f2d08a;background:#414733;box-shadow:inset 0 0 0 1px #f2d08a}#bag .cell .ic{height:32px;font-size:27px;line-height:32px;filter:drop-shadow(0 3px 1px #0005)}#bag .cell .nm{margin-top:5px;font-size:11px;line-height:16px;color:#e5e5d7}#bag .quality{position:absolute;top:6px;left:7px;font-size:9px;line-height:12px;color:var(--quality)}#bag .equipped-mark{position:absolute;top:5px;right:6px;color:#a8cf9a;font-size:11px}#bag .stack-count{position:absolute;top:5px;right:7px;max-width:calc(100% - 14px);font-size:12px;line-height:16px;color:#f1d49e;overflow-wrap:anywhere}#bag .item-type{font-size:9px;line-height:16px;margin-top:4px;color:#91a394}#bag .durability{height:3px;margin:5px 8px 3px;background:#101716}#bag .durability span{display:block;height:100%;background:var(--quality)}#bag .cell .ct{font-size:9px;line-height:12px;color:#a9b4ad;font-variant-numeric:tabular-nums}#bag .gear{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-top:14px;border-color:#3a4540;line-height:1.5}#bag .gear>div{display:flex;flex-direction:column;gap:5px;padding-left:12px;border-left:1px solid #3a4540}#bag .gear>div:first-child{padding-left:0;border-left:0}#bag .gear span{font-size:10px;color:#9ba89f}#bag .gear b{font-size:18px;font-weight:400;color:#e6d6b0}#bag .gear small{font-size:10px;color:#9ba89f}#bag .cell .nm,#bag .cell .quality,#bag .cell .ct,#bag .cell .item-type{display:none}#bag .cell .ic{font-size:24px;height:28px;line-height:28px}#bag .stack-count{top:2px;right:3px;font-size:10px;line-height:12px;max-width:calc(100% - 6px);white-space:nowrap}#bag .durability{position:absolute;bottom:4px;left:4px;right:4px;margin:0;height:2px}#bag .equipped-mark{top:1px;right:3px;font-size:8px}#bag-tooltip{position:fixed;z-index:60;pointer-events:none;width:240px;max-width:calc(100vw - 16px);padding:12px 14px;background:#151d1b;border:1px solid #697461;border-radius:4px;box-shadow:0 6px 24px #0009;letter-spacing:0}#bag-tooltip strong{display:block;font-size:13px;line-height:20px;margin-bottom:6px}#bag-tooltip p{font-size:11px;line-height:1.8;color:#d0d8ce;white-space:pre-line;overflow-wrap:anywhere}#craft{width:min(560px,calc(100vw - 24px));height:720px;max-height:calc(100dvh - 32px);overflow:hidden;padding:20px;background:#1c2322;border:1px solid #62695d;border-radius:6px;box-shadow:0 20px 70px #000b,inset 0 0 0 3px #111817;letter-spacing:0}.craft-tech{flex-shrink:0;max-height:48%;overflow-y:auto;padding:0 0 12px;margin-bottom:10px;border-bottom:1px solid #46574b;font-size:11px;line-height:1.6}.tech-heading{display:flex;justify-content:space-between;gap:8px;margin-bottom:8px;color:#c3d5cd}#tech-current{color:#9dc7bc}#craft-station{flex-shrink:0;padding:0 0 10px;color:#a9c9bd;font-size:10px;line-height:1.6;overflow-wrap:anywhere}#tech-tree{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0}#tech-tree button{position:relative;height:34px;min-width:0;border:0;border-bottom:2px solid #576168;background:#252c2e;color:#aab4b9;font-size:12px;font-family:inherit;cursor:pointer}#tech-tree button+button{border-left:1px solid #465154}#tech-tree button.learned{color:#bce0c9;border-bottom-color:#8eae91}#tech-tree button[aria-pressed=true]{background:#3d4c49;color:#fff;border-bottom-color:#d9c590}#tech-recipes{margin:8px 0;color:#b6c6c0;overflow-wrap:anywhere}#tech-requirements,#tech-cost{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 12px}#tech-requirements>span,#tech-cost>span{display:flex;justify-content:space-between;gap:4px}.craft-tech b{font-weight:400;white-space:nowrap;font-variant-numeric:tabular-nums}.craft-tech .met{color:#a9d8b7}.craft-tech .missing{color:#dbaaa0}#tech-cost-label{margin-top:6px;color:#899b94;font-size:10px}#btn-research{display:block;width:100%;min-height:32px;margin-top:8px;border:1px solid #7da795;border-radius:3px;background:#344c43;color:#dbeddf;font-family:inherit;cursor:pointer}#btn-research:disabled{border-color:#46534e;background:#252e2b;color:#8e9f96;cursor:not-allowed}.craft-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:16px;flex-shrink:0}.craft-head>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px}#craft h2{font-size:20px;line-height:28px;color:#f0e7cf;letter-spacing:0;margin:0;text-align:left}#craft-count{font-size:10px;color:#9ba89f}#btn-craft-close{width:32px;height:32px;flex-shrink:0;border:1px solid #48564d;border-radius:3px;background:#29332e;color:#ddd8c4;font-family:inherit;font-size:22px;cursor:pointer}#btn-craft-close:hover{border-color:#d0b77c;color:#fff1ce}#craft .tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding:0;margin-bottom:14px;border-bottom:1px solid #46574b}#craft .tab{height:34px;padding:0 4px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:#a9b4ad;font-family:inherit;font-size:12px;letter-spacing:0}#craft .tab.on{color:#efd09a;background:#d0b77c0c;border-bottom-color:#d0b77c}#craft .tab:hover{background:#ffffff06;color:#f0e7cf}#craft .recipes{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 4px 3px 0;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#697461 #171f1c}#craft .recipe{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto 1fr auto;gap:7px 6px;min-height:132px;padding:12px;background:#252f29;border:1px solid #425648;border-radius:3px;transition:border-color .1s,background .1s}#craft .recipe:hover{transform:none;border-color:#a0af94;background:#303d33}#craft .recipe.disabled{opacity:1;background:#202725;border-color:#343f39}#craft .recipe.disabled:hover{border-color:#687064}#craft .recipe:after{content:attr(data-status);grid-column:2;grid-row:1;align-self:center;color:#abc99b;font-size:9px;white-space:nowrap}#craft .recipe.disabled:after{color:#b9a496}#craft .recipe .rname{grid-column:1;grid-row:1;margin:0;color:#eee8d5;font-size:13px;line-height:20px;overflow-wrap:anywhere}#craft .recipe .rdesc{grid-column:1 / -1;grid-row:2;margin:0;color:#a6b3a9;font-size:10px;line-height:1.7}#craft .recipe .rcost{grid-column:1 / -1;grid-row:3;display:flex;flex-direction:column;gap:3px;padding-top:7px;border-top:1px solid #3b473f;margin:0;font-size:10px;line-height:16px}#craft .rcost>span{display:flex;justify-content:space-between;gap:8px}#craft .rcost>span>span{color:#b6c0b6}#craft .rcost b{font-weight:400;font-variant-numeric:tabular-nums;white-space:nowrap}#craft .rcost .ok{color:#acd294}#craft .rcost .no{color:#e3947d}#craft :focus-visible{outline:2px solid #d0b77c;outline-offset:-2px}@media(max-width:480px){#craft{padding:14px}#craft .recipes{grid-template-columns:minmax(0,1fr)}#craft .recipe{min-height:122px}#bag{padding:14px;max-height:calc(100dvh - 32px)}#bag .bag-head{margin-bottom:12px;padding-bottom:12px}#bag .grid{gap:4px;margin-bottom:14px}#bag .cell{height:44px;min-height:44px;padding:11px 1px 5px}#bag .cell .ic{font-size:19px;height:22px;line-height:22px}}#touch-controls{display:none}#btn-sheet-close{min-height:44px;border:1px solid var(--line);border-radius:4px;background:var(--panel2);font-family:inherit;cursor:pointer}@media(any-pointer:coarse){#touch-controls{display:block;position:absolute;inset:0;pointer-events:none}#touch-stick{position:absolute;left:max(12px,env(safe-area-inset-left));bottom:calc(12px + env(safe-area-inset-bottom));width:calc(var(--touch-btn,48px)*2.3333);height:calc(var(--touch-btn,48px)*2.3333);border:2px solid #849b92;border-radius:50%;background:#182522b8;pointer-events:auto;touch-action:none;display:grid;place-items:center}#touch-stick span{width:calc(var(--touch-btn,48px)*.9167);height:calc(var(--touch-btn,48px)*.9167);border-radius:50%;background:#a2bbb1;border:2px solid #d2e2db;pointer-events:none}#touch-actions{position:absolute;right:max(12px,env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(2,var(--touch-btn,48px));gap:8px;pointer-events:auto;touch-action:none}#touch-controls button{width:var(--touch-btn,48px);height:var(--touch-btn,48px);padding:0;font-family:inherit;font-size:calc(var(--touch-btn,48px)*.25);letter-spacing:0;color:var(--text);background:#182522bb;border:1px solid #849b92;border-radius:4px;touch-action:none;pointer-events:auto}#touch-controls button[hidden]{display:none!important}#touch-controls[data-hand=left] #touch-stick{left:auto;right:max(12px,env(safe-area-inset-right))}#touch-controls[data-hand=left] #touch-actions{right:auto;left:max(12px,env(safe-area-inset-left))}#touch-controls[data-hand=left] #touch-more{right:auto;left:8px}#touch-actions button{border-radius:50%}#touch-actions button:first-child{border-color:#df7861;color:#ffaaa0}#touch-actions button:active{background:#4b6357}#hint,#map-seed,#lvbox{display:none}#topbar{top:8px;left:8px;right:64px;height:30px;padding:4px 6px;gap:6px;align-items:center;box-shadow:none}#day{font-size:12px;letter-spacing:0;white-space:nowrap}#season,#phase{font-size:11px;padding:2px 4px;white-space:nowrap}#gold{font-size:11px;white-space:nowrap}#stats{inset:44px 64px auto 8px;gap:4px;pointer-events:none}#stats .stat{flex:1;min-width:0;width:auto;height:28px;background:#13211dcc;border-radius:3px}#stats .lbl:before{left:3px;top:4px;width:16px;height:16px}#stats .bar{width:100%;height:28px;background:none;border-radius:0;box-shadow:none}#stats .bar .fill{position:absolute;bottom:0;width:100%;height:2px;border-radius:0;-webkit-mask:none;mask:none;background:linear-gradient(to right,var(--stat-color) var(--progress,100%),#45544d var(--progress,100%))}#stats .val{inset:5px 2px auto 19px;font-size:9px;line-height:16px}#touch-menu{position:absolute;top:8px;right:8px;font-size:22px!important}#blueprint-toggle{top:130px;left:8px;min-height:38px;padding:7px 10px}#blueprint-pack{top:174px;left:8px;width:224px;max-width:calc(100vw - 16px)}#touch-more{display:none;position:absolute;right:8px;top:66px;width:224px;grid-template-columns:repeat(4,1fr);gap:4px;padding:8px;background:#182522;pointer-events:auto}#touch-more button{width:100%}#hud-tools{display:none;top:130px;right:8px;width:224px;max-height:calc(100dvh - 150px);overflow-y:auto;padding:8px;background:#182522;pointer-events:auto;z-index:1}#hud.touch-menu-open #hud-tools{display:flex}#hud.touch-menu-open #touch-more{display:grid}#minimap,#clock{display:none}#hud-actions{gap:4px;width:100%}#btn-save,#btn-net,#build-toggle,#btn-audio-hud,#btn-controls-hud{min-height:44px}#guide-tracker{font-size:11px}#weps{left:8px;top:80px;bottom:auto;width:calc(100% - 16px);height:44px;flex-direction:row;transform:none;max-width:none;max-height:none;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;touch-action:pan-x}#weps .wep{width:44px;height:44px;flex:0 0 44px;background:#182522bb}#quickbar{left:58px;right:8px;bottom:calc(134px + env(safe-area-inset-bottom));width:auto;max-width:none;height:44px;transform:none}#hotbar{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;touch-action:pan-x}#hotbar .slot{flex:0 0 44px;width:44px;background:#182522bb}#hotbar .slot.empty,#hotbar .slot .key{display:none}#bossbar{top:132px;width:min(240px,70%)}#chat-wrap{left:10px;bottom:calc(186px + env(safe-area-inset-bottom));width:calc(100% - 20px)}#chat-log{left:10px;bottom:calc(218px + env(safe-area-inset-bottom));width:calc(100% - 20px)}#chestpanel{width:min(360px,calc(100vw - 24px))}}@media(any-pointer:coarse)and (max-height:500px){#topbar,#stats{right:auto;width:280px}#weps{top:8px;left:304px;width:calc(100% - 368px)}#quickbar{bottom:12px;left:184px;right:132px}#bossbar{top:80px}}@media(any-pointer:coarse)and (max-width:350px){#touch-stick{left:8px;width:calc(var(--touch-btn,48px)*2.0833);height:calc(var(--touch-btn,48px)*2.0833)}#touch-actions{right:8px}}#start{background:#142a26;padding:0;justify-content:flex-start;text-align:left;isolation:isolate}#start:before{content:"";position:fixed;inset:0;z-index:-1;background:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20960%20240'%20shape-rendering='crispEdges'%3e%3cdefs%3e%3clinearGradient%20id='sky'%20x2='0'%20y2='1'%3e%3cstop%20stop-color='%23122d35'/%3e%3cstop%20offset='1'%20stop-color='%23738076'/%3e%3c/linearGradient%3e%3cradialGradient%20id='glow'%3e%3cstop%20stop-color='%23eeb765'%20stop-opacity='.35'/%3e%3cstop%20offset='1'%20stop-color='%23eeb765'%20stop-opacity='0'/%3e%3c/radialGradient%3e%3cg%20id='pine'%3e%3cpath%20fill='%23162f2d'%20d='M-3%200h6v-22H-3zM-22-16h44v-7h-7v-9h-7v-10H3v-13h-6v13h-5v10h-7v9h-7z'/%3e%3cpath%20fill='%2329443b'%20d='M-3-48v10h-5v10h-7v7h10v-8h5v-19z'/%3e%3c/g%3e%3c/defs%3e%3cpath%20fill='url(%23sky)'%20d='M0%200h960v240H0z'/%3e%3cpath%20fill='%23d9ddbd'%20d='M751%2028h20v5h7v20h-7v5h-20v-5h-7V33h7z'/%3e%3cpath%20fill='%23b7c7b5'%20opacity='.65'%20d='M99%2030h2v2h-2zM200%2056h3v3h-3zM322%2019h2v2h-2zM618%2036h2v2h-2zM867%2028h3v3h-3zM690%2070h2v2h-2z'/%3e%3cpath%20fill='%23445d5c'%20d='M0%20123h40v-14h38V91h28V73h24v18h30v18h43v16h48v-22h35V81h25V63h28v21h22v21h35v22h79v-18h34V92h28V73h28v19h25v20h48v12h78V97h31V77h25V59h27v24h22v18h38v22h55V99h39V85h31v22h30v133H0z'/%3e%3cpath%20fill='%23304b46'%20d='M0%20150h75v-12h58v14h61v17h80v-17h54v-16h72v14h66v18h95v-19h78v-12h65v15h87v-18h65v16h104v90H0z'/%3e%3cpath%20fill='%23203b33'%20d='M0%20190h112v-12h114v9h140v-12h151v15h132v-9h136v-14h93v14h82v59H0z'/%3e%3cg%3e%3cuse%20href='%23pine'%20transform='translate(35%20206)%20scale(2.8)'/%3e%3cuse%20href='%23pine'%20transform='translate(128%20210)%20scale(1.8)'/%3e%3cuse%20href='%23pine'%20transform='translate(196%20203)%20scale(1.1)'/%3e%3cuse%20href='%23pine'%20transform='translate(817%20206)%20scale(1.8)'/%3e%3cuse%20href='%23pine'%20transform='translate(920%20218)%20scale(3.2)'/%3e%3cuse%20href='%23pine'%20transform='translate(739%20200)'/%3e%3c/g%3e%3cpath%20fill='%23142a26'%20d='M0%20218h156v-8h134v8h168v-7h117v-9h164v9h98v-7h123v36H0z'/%3e%3cellipse%20cx='647'%20cy='211'%20rx='90'%20ry='35'%20fill='url(%23glow)'/%3e%3cpath%20fill='%238d6944'%20d='M633%20216h29v4h-29z'/%3e%3cpath%20fill='%23cf703b'%20d='M637%20211v-10h5v-12h5v9h5v-7h4v10h4v13h-23z'/%3e%3cpath%20fill='%23f3bd67'%20d='M642%20211v-8h5v-7h4v10h4v8h-13z'/%3e%3cpath%20fill='%23ffebae'%20d='M647%20208h5v7h-5zM644%20181h3v3h-3zM655%20174h2v3h-2z'/%3e%3cpath%20fill='%23101f20'%20d='M606%20214v-12h-4v-9h13v9h4v12h-4v9h-4v-9h-1v9h-4z'/%3e%3cpath%20fill='%23b69b73'%20d='M605%20192h8v6h-8z'/%3e%3c/svg%3e") center top / auto max(340px,44vh) no-repeat;image-rendering:pixelated;pointer-events:none}#start:after{content:"";position:fixed;inset:0;border:12px solid #0b1d1966;pointer-events:none;z-index:-1}#start *{letter-spacing:0}#start .start-panel{width:min(920px,calc(100% - 80px));max-height:none;overflow:visible;margin:auto;padding:0 0 24px;border:0;border-radius:0;background:none;box-shadow:none;display:grid;grid-template-columns:1fr 1fr;column-gap:64px}#start .start-head{grid-column:1/-1;min-height:340px;height:44vh;max-height:500px;margin:0;padding:48px 0 100px;background:none;border:0;display:flex;flex-direction:column;align-items:center;justify-content:center}#start .subtitle{font-size:12px;color:#d8e4cf;margin-bottom:14px;font-weight:700}#start .title{font-family:Songti SC,STSong,SimSun,serif;font-size:72px;line-height:1.2;color:#fff2cc;margin:0;text-shadow:0 4px 0 #2b453c,0 7px 0 #0d2625,0 10px 20px #10252188}#start .start-tagline{font-size:13px;line-height:1.8;color:#e4e7d3;margin-top:20px;text-shadow:0 2px 3px #102521}#start .start-body{display:contents}#start .charbox,#start .start-foot{width:auto;min-width:0;padding:22px 0 0;margin:0;background:none;border:0;border-top:1px solid #79948680;border-radius:0;text-align:left}#start .charbox{gap:18px;grid-column:1;grid-row:2}#start .start-foot{grid-column:2;grid-row:2;display:flex;flex-direction:column;align-items:stretch;gap:14px}#start .g-title{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:14px;color:#e7dab4;margin:0}#start .section-index{font-size:9px;font-weight:400;color:#99b5a5;white-space:nowrap}#start .cname{border:0;padding:0;gap:16px}#start .clbl{font-size:12px;color:#b7c8b6;width:32px}#start input{background:#0b1d19b8;border:1px solid #597367;border-radius:2px;color:#f1ecd9;height:38px;min-width:0;font-family:inherit;font-size:13px}#start #char-name{width:100%;padding:8px 12px}#start .char-row{gap:22px}#start .char-prev{width:104px;height:116px;border:0;border-bottom:2px solid #688073;background:#203a30;border-radius:0;box-shadow:inset 0 -20px #2b4536}#start #char-preview{width:84px;height:96px}#start .char-opts{flex:1;min-width:0;gap:10px}#start .crow{gap:12px}#start .crow .clbl{text-align:left;flex-shrink:0}#start .swatches{gap:7px}#start .sw{width:21px;height:21px;border-radius:0;border:2px solid #ffffff25}#start .sw.on{border-color:#fff0c4;box-shadow:0 0 0 2px #102521,0 0 0 3px #d1b875}#start .btn{width:100%;min-height:44px;padding:10px 14px;border-radius:2px;font-size:13px;box-shadow:0 3px #071911;background:#203d32;border:1px solid #638371;color:#e1e9d5;transition:background .15s,transform .15s}#start .btn:hover{background:#304f3f;filter:none}#start #btn-start{display:flex;align-items:center;justify-content:space-between;min-height:54px;padding:12px 22px;font-size:18px;color:#19271e;background:#eac47d;border:1px solid #ffe4a9;box-shadow:0 4px #897042,inset 0 2px #fff0c5}#start #btn-start:hover{background:#f6d799}#start #btn-start span{font-size:24px;font-weight:400}#start .start-actions{display:flex;align-items:stretch;gap:8px;min-width:0}#start .start-actions #btn-start{flex:1;min-width:0;width:auto;white-space:nowrap;letter-spacing:0}#start #btn-difficulty{width:48px;flex:0 0 48px;padding:0;font-size:22px;letter-spacing:0}#start #btn-achievements{width:48px;flex:0 0 48px;padding:0;display:grid;place-items:center}#btn-achievements img{image-rendering:pixelated}#achievements-dialog{margin:auto;padding:0;width:min(720px,calc(100vw - 24px));max-height:calc(100dvh - 32px);overflow:auto;background:#182522;color:#eef0dd;border:3px solid #747b68;border-radius:4px;letter-spacing:0}#achievements-dialog::backdrop{background:#000b}.achievements-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0;padding:18px 20px;background:#182522;border-bottom:1px solid #526650}.achievements-head h2{margin:0;font-size:20px}.achievements-head p{margin:6px 0 0;color:#e4c778;font-size:12px}.achievements-head button{width:36px;height:36px;flex:0 0 36px;background:#253730;border:1px solid #747b68;color:#eef0dd;font-size:24px;cursor:pointer}#achievement-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;padding:0 20px 16px;margin:0}.achievement{display:grid;grid-template-columns:40px minmax(0,1fr);gap:6px 12px;align-items:center;padding:16px 8px;border-bottom:1px solid #394a40}.achievement img{grid-row:1/3;image-rendering:pixelated;filter:grayscale(1);opacity:.5}.achievement.earned img{filter:none;opacity:1}.achievement h3{margin:0 0 5px;font-size:14px;color:#c4cdc1}.achievement.earned h3{color:#f0d58c}.achievement p{margin:0;font-size:12px;line-height:1.6;color:#aab9ad;overflow-wrap:anywhere}.achievement-state{grid-column:2;font-size:11px;color:#aab9ad}.earned .achievement-state{color:#9bd2a0}#btn-achievements:focus-visible,.achievements-head button:focus-visible{outline:2px solid #e4c778;outline-offset:3px}@media(max-width:540px){#achievement-list{grid-template-columns:minmax(0,1fr);padding:0 12px 12px}}#start .coop-row{display:grid;grid-template-columns:1fr 1.3fr;gap:10px;margin:4px 0 0}#start .join-wrap{min-width:0;gap:0}#start #join-code{width:76px;height:44px;padding:8px;border-right:0;border-radius:2px 0 0 2px;text-align:center}#start #btn-join{flex:1;padding:8px;border-radius:0 2px 2px 0;white-space:nowrap}#start .cont-wrap{gap:6px;align-items:stretch}#start .cont-info{font-size:11px;text-align:center}#start .coop-tip{margin:0;font-size:11px;line-height:1.7;text-align:center;color:#a8beb0}#start .guide{display:block;grid-column:1/-1;grid-row:3;margin-top:28px;border-top:1px solid #79948640;padding-top:16px;color:#adc1b2}#start .guide summary{cursor:pointer;font-size:12px;width:fit-content;margin:0 auto;padding:6px 12px}#start .guide[open]{padding-bottom:16px}#start .g-block{margin-top:20px}#start .g-block .g-title{margin-bottom:10px}#start .keys{grid-template-columns:repeat(3,1fr)}#start .warn{margin-top:16px}#start :focus-visible{outline:2px solid #fff0bd;outline-offset:4px}#start #btn-donate{position:fixed;top:16px;right:16px;width:auto;z-index:1}#donate-dialog{margin:auto;width:min(380px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow-y:auto;padding:16px;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--text);box-shadow:0 16px 60px #0009;letter-spacing:0}#donate-dialog::backdrop{background:#000a}#donate-dialog .donate-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}#donate-dialog h2{font-size:18px;margin:0;letter-spacing:0}#donate-dialog button{width:36px;height:36px;padding:0;border:1px solid var(--line);border-radius:2px;background:transparent;color:var(--text);font-size:24px;cursor:pointer}#donate-dialog button:hover{background:var(--panel2)}#donate-dialog button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}#donate-dialog img{display:block;width:100%;max-height:calc(100dvh - 132px);object-fit:contain;image-rendering:auto}@media(min-aspect-ratio:4/1){#start:before{background-size:100% auto}}@media(max-width:760px){#start .start-panel{width:calc(100% - 40px);max-width:460px;grid-template-columns:1fr;margin:0 auto;padding-bottom:24px}#start .start-head{min-height:260px;height:34vh;padding:36px 0 52px}#start .title{font-size:52px}#start .subtitle{font-size:10px}#start .start-tagline{font-size:12px;margin-top:16px}#start:before{background-size:auto 290px;background-position:62% 0}#start .charbox{grid-column:1;grid-row:2;gap:14px;padding-top:18px}#start .start-foot{grid-column:1;grid-row:3;margin-top:24px;padding-top:18px}#start .guide{grid-row:4;margin-top:22px}#start .keys{grid-template-columns:1fr 1fr}}@media(max-width:380px){#start .start-panel{width:calc(100% - 32px)}#start .title{font-size:44px}#start .char-row{gap:14px}#start .char-prev{width:80px}#start #char-preview{width:70px;height:80px}#start .swatches{gap:6px}#start .sw{width:19px;height:19px}#start .section-index{font-size:8px}}@media(prefers-reduced-motion:reduce){#start .btn{transition:none}}
