.asw{--asw-panel:#10161ef0;--asw-panel-border:#bed2e629;--asw-panel-glass:#0c121ac7;--asw-slot:#242e3ae6;--asw-slot-glass:#1c24309e;--asw-slot-active:#5eb8d8;--asw-text:#e8eef2;--asw-muted:#8a9aa8;--asw-warn:#e08a40;--asw-accent:#6dca9a;--asw-btn:#ffffff14;width:100%;height:100dvh;color:var(--asw-text);font-family:var(--font-source), system-ui, sans-serif;-webkit-user-select:none;user-select:none;touch-action:none;background:#03060c;position:relative;overflow:hidden}.asw-canvas-wrap{position:absolute;inset:0}.asw-canvas-wrap canvas{width:100%;height:100%;display:block}.asw-hud{pointer-events:none;z-index:2;position:absolute;inset:0}.asw-hud *{pointer-events:none}.asw-hud button,.asw-hud [data-slot],.asw-hud [data-action],.asw-interactive,.asw-interactive *{pointer-events:auto}.asw-top{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex;position:absolute;top:1rem;left:1rem;right:1rem}.asw-ship-compass{background:var(--asw-panel);border:1px solid var(--asw-panel-border);color:var(--asw-accent);pointer-events:none;flex-direction:column;flex-shrink:0;align-items:center;gap:.15rem;min-width:2.75rem;padding:.4rem .45rem .35rem;display:flex}.asw-ship-compass-arrow{transform-origin:50% 55%;will-change:transform;place-items:center;width:1.6rem;height:1.6rem;display:grid}.asw-ship-compass-label{letter-spacing:.04em;text-transform:uppercase;color:var(--asw-muted);font-size:.58rem;line-height:1}.asw-time-scale{background:var(--asw-panel);border:1px solid var(--asw-panel-border);flex-direction:column;flex-shrink:0;align-items:stretch;gap:.25rem;min-width:6.5rem;padding:.35rem .4rem .4rem;display:flex}.asw-time-scale-label{letter-spacing:.04em;text-transform:uppercase;color:var(--asw-muted);text-align:center;font-size:.58rem;line-height:1}.asw-time-scale-options{gap:.15rem;display:flex}.asw-time-scale-btn{color:var(--asw-muted);font-variant-numeric:tabular-nums;cursor:pointer;background:#00000040;border:1px solid #ffffff1f;flex:1;padding:.22rem .15rem;font-size:.68rem;line-height:1.1}.asw-time-scale-btn:hover{color:var(--asw-text,#e8eef2);border-color:#ffffff38}.asw-time-scale-btn.is-active{color:var(--asw-accent);border-color:var(--asw-accent);background:#50a08c2e}.asw-top-left{align-items:flex-start;gap:.55rem;min-width:0;display:flex}.asw-top-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:.55rem;display:flex}.asw-settings{z-index:6;position:relative}.asw-settings-btn{border:1px solid var(--asw-panel-border);background:var(--asw-panel);width:2.35rem;height:2.35rem;color:var(--asw-muted);cursor:pointer;place-items:center;padding:0;display:grid}.asw-settings-btn:hover,.asw-settings-btn[aria-expanded=true]{color:var(--asw-text);border-color:var(--asw-accent)}.asw-settings-menu{background:var(--asw-panel);border:1px solid var(--asw-panel-border);flex-direction:column;gap:.15rem;width:18.5rem;padding:.45rem;display:flex;position:absolute;top:calc(100% + .35rem);right:0;box-shadow:0 10px 28px #00000073}.asw-settings-about{color:var(--asw-text);padding:.45rem .55rem .55rem;font-size:.8rem;line-height:1.35}.asw-settings-about strong{font-family:var(--font-space), system-ui, sans-serif;color:var(--asw-accent);margin-bottom:.25rem;font-size:.95rem;display:block}.asw-settings-controls{border-top:1px solid var(--asw-panel-border);border-bottom:1px solid var(--asw-panel-border);margin-bottom:.2rem;padding:.35rem .55rem .5rem}.asw-settings-section{letter-spacing:.04em;text-transform:uppercase;color:var(--asw-muted);margin-bottom:.3rem;font-size:.58rem;display:block}.asw-settings-controls ul{color:var(--asw-text);flex-direction:column;gap:.2rem;margin:0;padding:0;font-size:.75rem;line-height:1.35;list-style:none;display:flex}.asw-settings-controls kbd{border:1px solid var(--asw-panel-border);background:var(--asw-btn);font:inherit;font-variant-numeric:tabular-nums;color:var(--asw-text);padding:0 .22rem;font-size:.68rem;display:inline-block}.asw-settings-item{width:100%;color:var(--asw-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.45rem .55rem;font-size:.82rem;display:flex}.asw-settings-item:hover{background:#6dca9a1f;border-color:#6dca9a52}.asw-settings-item-hint{color:var(--asw-muted);font-size:.65rem;line-height:1.2}.asw-bottom{flex-direction:column;align-items:stretch;gap:.35rem;width:max-content;display:flex;position:absolute;bottom:1.25rem;left:50%;transform:translate(-50%)}.asw-health{background:var(--asw-panel);border:1px solid var(--asw-panel-border);color:var(--asw-muted);grid-template-columns:auto 1fr auto;align-items:center;gap:.45rem;padding:.3rem .45rem;font-size:.72rem;display:grid}.asw-health-label{letter-spacing:.04em;text-transform:uppercase}.asw-health-track{background:#00000059;border:1px solid #ffffff14;min-width:10rem;height:.55rem;overflow:hidden}.asw-health-fill{background:linear-gradient(90deg,#2a8f55,#5fd88a);height:100%;transition:width .12s linear;display:block}.asw-health.is-mid .asw-health-fill{background:linear-gradient(90deg,#8a6a20,#d4b04a)}.asw-health.is-low .asw-health-fill{background:linear-gradient(90deg,#8a2a2a,#d45a4a)}.asw-health.is-hurt{color:#ffb0a8;border-color:#e04040;animation:.32s ease-in-out infinite asw-health-flash}.asw-health.is-hurt .asw-health-fill{background:linear-gradient(90deg,#c02020,#ff5a4a)!important}.asw-health.is-hurt .asw-health-pct{color:#ffd0cc}@keyframes asw-health-flash{0%,to{background:#5a0c0c8c;box-shadow:0 0 #ff3c2800}50%{background:#a01414d9;box-shadow:0 0 10px 1px #ff463273}}.asw-health-pct{font-variant-numeric:tabular-nums;color:var(--asw-text,#e8eef2);min-width:2.4rem}.asw-xp{background:var(--asw-panel);border:1px solid var(--asw-panel-border);color:var(--asw-muted);grid-template-columns:auto 1fr auto;align-items:center;gap:.45rem;padding:.3rem .45rem;font-size:.72rem;display:grid}.asw-xp-label{letter-spacing:.04em;text-transform:uppercase}.asw-xp-track{background:#00000059;border:1px solid #ffffff14;min-width:10rem;height:.55rem;overflow:hidden}.asw-xp-fill{background:linear-gradient(90deg,#2a6a8f,#5ad0ff);height:100%;transition:width .12s linear;display:block}.asw-xp-pct{font-variant-numeric:tabular-nums;color:var(--asw-text,#e8eef2);text-align:right;min-width:2.4rem}.asw-inv{background:var(--asw-panel-glass);border:1px solid var(--asw-panel-border);gap:.15rem;padding:.12rem;display:flex}.asw-inv .asw-slot{background:var(--asw-slot-glass);border-width:1px;width:3.75rem;height:3.75rem}.asw-inv .asw-icon{opacity:1;width:3.35rem;height:3.35rem}.asw-inv .asw-slot-key{font-size:.68rem;top:1px;left:2px}.asw-inv .asw-slot-count{opacity:1;font-size:.75rem;bottom:0;right:0}.asw-slot{background:var(--asw-slot);cursor:grab;border:2px solid #0000;place-items:center;width:3rem;height:3rem;display:grid;position:relative}.asw-slot.is-active{border-color:var(--asw-slot-active);box-shadow:inset 0 0 0 1px var(--asw-slot-active)}.asw-slot.is-drop-reject:hover:before{content:"✕";color:#ff6b6b;z-index:6;pointer-events:none;background:#a01c1c6b;place-items:center;font-size:1.45rem;font-weight:700;line-height:1;display:grid;position:absolute;inset:0}.asw-slot.is-drop-reject:hover:after{opacity:0;visibility:hidden}.asw-slot-key{color:var(--asw-muted);font-size:.65rem;position:absolute;top:2px;left:4px}.asw-slot-count{color:var(--asw-text);font-size:.7rem;font-weight:600;position:absolute;bottom:0;right:1px}.asw-slot[data-tip]:after,.asw-tip[data-tip]:after{content:attr(data-tip);color:#e8f0f4;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;z-index:40;background:#141c22f0;border:1px solid #ffffff1f;padding:.2rem .45rem;font-size:.68rem;line-height:1.2;position:absolute;bottom:calc(100% + .3rem);left:50%;transform:translate(-50%)}.asw-slot[data-tip]:hover:after,.asw-tip[data-tip]:hover:after{opacity:1;visibility:visible}.asw-tip{position:relative}.asw-panel{background:var(--asw-panel);border:1px solid var(--asw-panel-border);min-width:16rem;padding:.85rem;position:absolute;top:18%;left:50%;transform:translate(-50%)}.asw-panel h2{font-family:var(--font-space), system-ui, sans-serif;margin:0 0 .65rem;font-size:1rem}.asw-grid-5{grid-template-columns:repeat(5,3rem);gap:.3rem;display:grid}.asw-side-panels{z-index:3;flex-flow:wrap;align-items:flex-start;gap:.45rem;max-width:min(44rem,100% - 12rem);display:flex;position:absolute;top:50%;left:1rem;transform:translateY(-50%)}.asw-side-panel{background:var(--asw-panel-glass);min-width:0;padding:.2rem .22rem .22rem;position:relative;top:auto;left:auto;right:auto;transform:none}.asw-side-panel h2{margin:0 0 .18rem;font-size:.82rem;line-height:1.15}.asw-storage .asw-grid-5{grid-template-columns:repeat(5,2.15rem);gap:.1rem}.asw-storage .asw-slot{background:var(--asw-slot-glass);width:2.15rem;height:2.15rem}.asw-storage .asw-slot-count{opacity:1;font-size:.65rem;bottom:-1px;right:-1px}.asw-storage .asw-slot-key{font-size:.58rem;top:0;left:1px}.asw-storage .asw-icon{opacity:1;width:1.75rem;height:1.75rem}.asw-smelt.asw-side-panel p{margin:0 0 .18rem;font-size:.7rem;line-height:1.2}.asw-fire-meta{opacity:.75;margin:.2rem 0 .1rem!important}.asw-smelt .asw-smelt-row{justify-content:flex-start;gap:.28rem}.asw-smelt .asw-smelt-col{gap:.06rem;font-size:.65rem;line-height:1.1}.asw-smelt .asw-slot{background:var(--asw-slot-glass);width:2.15rem;height:2.15rem}.asw-smelt .asw-slot-count{opacity:1;font-size:.65rem;bottom:-1px;right:-1px}.asw-smelt .asw-icon{opacity:1;width:1.75rem;height:1.75rem}.asw-smelt .asw-progress{height:.22rem;margin-top:.22rem}.asw-smelt-row{justify-content:center;align-items:center;gap:.75rem;display:flex}.asw-smelt-col{color:var(--asw-muted);flex-direction:column;align-items:center;gap:.25rem;font-size:.7rem;display:flex}.asw-progress{background:#ffffff1a;width:100%;height:.4rem;margin-top:.65rem;overflow:hidden}.asw-progress>span{background:var(--asw-accent);height:100%;display:block}.asw-craft-dock{pointer-events:none;flex-direction:row;align-items:center;max-width:calc(100vw - .5rem);display:flex;position:absolute;top:5.25rem;bottom:5.25rem;right:0}.asw-craft-dock>*{pointer-events:auto}.asw-craft-cats{border:1px solid var(--asw-panel-border);border-right:none;flex-direction:column;flex-shrink:0;width:3.7rem;display:flex;overflow:hidden}.asw-craft-cat{box-sizing:border-box;text-align:center;background:var(--asw-panel);border:none;border-bottom:1px solid var(--asw-panel-border);width:3.7rem;height:3.7rem;color:var(--asw-text);font-size:.85rem;font-family:var(--font-space), system-ui, sans-serif;letter-spacing:.01em;cursor:pointer;justify-content:center;align-items:center;margin:0;padding:.2rem;line-height:1.05;display:flex}.asw-craft-cat-icon .asw-icon{width:2.35rem;height:2.35rem}.asw-craft-cat:last-child{border-bottom:none}.asw-craft-cat:hover{color:var(--asw-accent)}.asw-craft-cat-active{color:var(--asw-accent);background:#1c3d32}.asw-craft{background:var(--asw-panel);border:1px solid var(--asw-panel-border);border-right:none;flex-direction:column;gap:.25rem;width:min(22rem,100vw - 4.2rem);min-height:0;max-height:100%;padding:.4rem .5rem .45rem;display:flex;overflow:hidden}.asw-craft-head{flex-shrink:0;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.asw-craft-head h2{font-family:var(--font-space), system-ui, sans-serif;margin:0;font-size:.95rem;line-height:1.1}.asw-craft-head button{border:1px solid var(--asw-panel-border);background:var(--asw-btn);cursor:pointer;color:var(--asw-text);padding:.12rem .4rem;font-size:.75rem;line-height:1.2}.asw-craft-list{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;align-content:start;gap:0;min-height:0;display:flex;overflow:hidden auto}.asw-craft-item{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:.35rem;min-width:0;padding:.18rem 0;font-size:.8rem;line-height:1.15;display:flex}.asw-craft-info{flex:1;align-items:center;gap:.35rem;min-width:0;display:flex}.asw-craft-out{flex-shrink:0;place-items:center;width:1.35rem;height:1.35rem;display:grid}.asw-craft-out .asw-icon{width:1.35rem;height:1.35rem}.asw-craft-text{flex-direction:column;gap:.08rem;min-width:0;display:flex}.asw-craft-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.asw-craft-needs{color:var(--asw-muted);flex-wrap:wrap;align-items:center;gap:.25rem;font-size:.7rem;display:flex}.asw-craft-need{align-items:center;gap:.1rem;display:inline-flex}.asw-craft-need .asw-icon{width:.85rem;height:.85rem}.asw-craft-item button{border:1px solid var(--asw-panel-border);background:var(--asw-btn);cursor:pointer;color:var(--asw-text);flex-shrink:0;padding:.28rem .65rem;font-size:.82rem;line-height:1.15}.asw-craft-btn-wrap{flex-shrink:0;display:inline-flex}.asw-craft-btn-wrap.asw-tip[data-tip]:after{bottom:50%;left:auto;right:calc(100% + .35rem);transform:translateY(50%)}.asw-craft-item button:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.asw-craft-btn-wrap:has(button:disabled){cursor:not-allowed}@media (max-width:520px){.asw-craft{width:min(18rem,100vw - 4.2rem)}}.asw-status-stack{pointer-events:none;z-index:3;flex-direction:column;align-items:center;gap:.35rem;max-width:min(28rem,100vw - 2rem);display:flex;position:absolute;bottom:7.2rem;left:50%;transform:translate(-50%)}.asw-toast{background:var(--asw-panel);border:1px solid var(--asw-panel-border);text-align:center;padding:.45rem .85rem;font-size:.85rem}.asw-ghost{z-index:50;pointer-events:none;background:var(--asw-slot);border:1px solid var(--asw-panel-border);opacity:.9;place-items:center;width:2.75rem;height:2.75rem;display:grid;position:fixed}.asw-win{pointer-events:none;position:absolute;top:30%;left:50%;transform:translate(-50%)}.asw-win.asw-gameover,.asw-win.asw-title,.asw-win.asw-howto{pointer-events:auto;z-index:20}.asw-howto{top:26%}.asw-howto-card{max-width:22rem}.asw-howto-icons{justify-content:center;align-items:center;gap:.55rem;min-height:2rem;margin:.35rem 0 .75rem;display:flex}.asw-howto-icons .asw-icon{width:2rem;height:2rem}.asw-how-kbd{border:1px solid var(--asw-panel-border);background:var(--asw-btn);min-width:1.55rem;height:1.55rem;font:inherit;font-variant-numeric:tabular-nums;color:var(--asw-text);place-items:center;padding:0 .28rem;font-size:.72rem;display:inline-grid}.asw-howto-body{margin:0 0 .9rem;font-size:.92rem;line-height:1.45}.asw-howto-dots{justify-content:center;gap:.35rem;margin-bottom:.85rem;display:flex}.asw-howto-dot{background:var(--asw-panel-border);border-radius:50%;width:.42rem;height:.42rem}.asw-howto-dot-on{background:var(--asw-accent)}.asw-howto-nav{justify-content:space-between;gap:.6rem;display:flex}.asw-howto-nav .asw-btn{flex:1}.asw-howto-skip{cursor:pointer;font:inherit;color:var(--asw-text);opacity:.7;background:0 0;border:none;margin-top:.65rem;padding:0;font-size:.78rem;text-decoration:underline}.asw-title{top:28%}.asw-title-card{max-width:24rem}.asw-title-name{font-family:var(--font-space), system-ui, sans-serif;color:var(--asw-accent);letter-spacing:.04em;margin:0 0 .4rem;font-size:1.85rem}.asw-title-blurb{opacity:.9;margin:0 0 1.1rem;font-size:.92rem;line-height:1.45}.asw-title-actions{flex-direction:column;align-items:stretch;gap:.55rem;display:flex}.asw-title-actions .asw-btn{width:100%}.asw-scores{text-align:left;margin:0 0 1rem;padding:0;list-style:none}.asw-scores li{border-bottom:1px solid var(--asw-panel-border);justify-content:space-between;gap:1rem;padding:.35rem 0;font-size:.9rem;display:flex}.asw-run-stats{margin-bottom:1rem}.asw-restart-btn,.asw-btn{border:1px solid var(--asw-panel-border);background:var(--asw-btn);cursor:pointer;font:inherit;color:var(--asw-text);padding:.45rem 1.1rem}.asw-btn:disabled{opacity:.45;cursor:not-allowed}.asw-win-card{background:var(--asw-panel);border:1px solid var(--asw-panel-border);text-align:center;max-width:22rem;padding:1.5rem 2rem}.asw-win-card h2{font-family:var(--font-space), system-ui, sans-serif;color:var(--asw-accent);margin:0 0 .5rem}.asw-hint{color:#e8f1fa;text-shadow:0 1px 3px #000000bf;text-align:center;font-size:.75rem}.asw-icon{width:1.6rem;height:1.6rem;display:block}
