:root{--sky:#9cc3e6;--panel:#1b1b1b;--well:#3a3a3a;--text:#f2f2f2;--error:#a82b24;--band:#528919;--edge:12px;--pad:2px;--gap:2px;--spread:16px;--button:44px;--icon:32px;--minimap:176px;--rail:calc(var(--button) / 2);--short:grayscale(1) brightness(.7);--sunk:#2b2b2b;--sunk-edge:#5a5a5a;--hover:#8b8b8b;--bevel-light:#8b8b8b;--bevel-dark:#262626;--stone-hover:#474747;--chosen:#f6d65a;--frame:#0e0e0e;--frame-lit:#6b6b6b;--frame-shade:#2a2a2a}html{-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;touch-action:none}[data-text],input,textarea{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}html,body{background:var(--sky);height:100%;color:var(--text);margin:0;font:14px/1.3 system-ui,sans-serif;overflow:hidden}#view{width:100vw;height:100vh;image-rendering:pixelated;display:block}#status{top:var(--edge);left:var(--edge);right:var(--edge);background:var(--panel);color:var(--error);white-space:pre-wrap;padding:8px 12px;position:fixed}#navigator{right:var(--edge);bottom:var(--edge);transform:scale(var(--map-scale,1));transform-origin:100% 100%;gap:var(--gap);padding:var(--pad);background:var(--panel);display:flex;position:fixed}#layers{align-items:center;gap:var(--gap);flex-direction:column;display:flex}#layers[hidden],#minimap[hidden]{display:none}#layers button{width:var(--rail);height:var(--button);background:var(--well);color:var(--text);border:0;place-items:center;display:grid}#layer-track{width:var(--rail);background:var(--well);cursor:ns-resize;flex:1;position:relative}#layer-band{background:var(--band);position:absolute;left:30%;right:30%}#layer-thumb{left:var(--pad);right:var(--pad);background:var(--text);height:6px;margin-bottom:-3px;position:absolute}#layer-label{padding-bottom:var(--pad);text-align:center;font-variant-numeric:tabular-nums;font-size:11px}#notice{top:var(--edge);background:var(--panel);max-width:min(90vw,560px);padding:8px 12px;position:fixed;left:50%;transform:translate(-50%)}#bar{left:var(--bar-x,50%);bottom:var(--edge);transform:translateX(-50%) scale(var(--bar-scale,1));transform-origin:bottom;align-items:center;gap:var(--gap);flex-direction:column;width:max-content;display:flex;position:fixed}#bar-main,#bar .strip,#bar .group{gap:var(--gap);display:flex}#bar-main,#bar .row{padding:4px}#bar-main{gap:var(--spread)}#bar .row{align-self:flex-start;min-width:0;min-height:0;display:flex;position:relative}#bar .strip{scrollbar-width:none;min-width:0;min-height:0;overflow:auto}#bar .strip::-webkit-scrollbar{display:none}#bar .strip>button{flex:none}:is(#bar .row:has(.strip:empty),#bar [hidden]){display:none}#bar .row .more{min-width:0;width:calc(var(--button) / 3);background:var(--panel);border:none;height:auto;position:absolute;inset:0 auto 0 0}#bar .row .more.after{inset:0 0 0 auto}#bar .row .more:before{content:"";border:6px solid #0000;border-right-color:var(--text);margin-right:6px}#bar .row .more.after:before{transform:scaleX(-1)}#minimap{width:var(--minimap);height:var(--minimap);background:var(--well);image-rendering:pixelated;cursor:crosshair}#debug{top:var(--edge);left:var(--edge);background:var(--panel);pointer-events:none;margin:0;padding:6px 8px;font:12px/1.35 ui-monospace,monospace;position:fixed}#debug[hidden]{display:none}#bar button,.card .choice{min-width:var(--button);height:var(--button);background:var(--well);border:2px solid;border-color:var(--bevel-light) var(--bevel-dark) var(--bevel-dark) var(--bevel-light);color:var(--text);font:inherit;place-items:center;padding:0;display:grid}#bar button img,.card .choice img{width:var(--icon);height:var(--icon);image-rendering:pixelated}#bar button:hover,.card .choice:hover{background:var(--stone-hover)}#bar button:active,.card .choice:active,#resources header button:active,#resources .card .details .keeper button:active{background:var(--sunk);border-color:var(--bevel-dark) var(--bevel-light) var(--bevel-light) var(--bevel-dark)}#bar button.active,#bar button.short.active,.card .choice.active{background:var(--sunk);border-style:solid;border-color:var(--bevel-dark) var(--bevel-light) var(--bevel-light) var(--bevel-dark);box-shadow:inset 0 0 0 1px var(--chosen)}#bar button{position:relative}#bar-alerts{margin-right:12px;position:relative}#bar-alerts button.warning{background:#6b4a2a}#bar-alerts .alert-list{background:var(--panel);gap:4px;padding:4px;display:flex;position:absolute;bottom:calc(100% + 8px);left:0}#bar-alerts .alert-list[hidden]{display:none}#bar-alerts button.unused .count{opacity:.6}#bar-alerts .count{background:var(--text);min-width:14px;color:var(--well);text-align:center;padding:2px 3px;font:700 12px/1 system-ui,sans-serif;position:absolute;bottom:0;right:0}#bar button svg.turning{width:var(--icon);height:var(--icon);pointer-events:none;margin:auto;position:absolute;inset:0}svg.turning polygon{stroke:var(--text);stroke-width:.03px;stroke-linejoin:round;fill:none}svg.turning polygon.back{stroke-opacity:.35}svg.turning polygon.can{fill:var(--text);fill-opacity:.12}svg.turning polygon.on{fill:#e0922f;fill-opacity:.75;stroke-width:.05px}svg.turning polygon.on.solid{fill:none;stroke:#e0922f;stroke-width:.07px;stroke-opacity:1}#bar button img.mark.badge{width:16px;height:16px;position:absolute;bottom:2px;right:2px}.info,.tip,#status,#notice,#navigator,#bar-main,#bar .row,#bar-alerts .alert-list{background:var(--panel);border:2px solid var(--frame);box-shadow:inset 2px 2px 0 var(--frame-lit), inset -2px -2px 0 var(--frame-shade)}.info{left:var(--edge);bottom:var(--edge);width:188px;color:var(--text);font-variant-numeric:tabular-nums;flex-direction:column;gap:4px;padding:6px;font:700 12px/1 system-ui,sans-serif;display:flex;position:fixed}.info[hidden],.tip[hidden]{display:none}.info img,.tip img{image-rendering:pixelated;display:block}.tip .lines{flex-direction:column;gap:4px;display:flex}.tip .line{align-items:center;gap:6px;display:flex}.tip .line.short{opacity:.6}.hit{cursor:pointer;position:relative}.hit:after{content:"";pointer-events:none;border:4px solid #0000;position:absolute;inset:0}.hit:hover:after{border-color:var(--hover)}.hit.on:after{border-color:var(--text)}.hit.dim{cursor:not-allowed;opacity:.4}.creature .tabs{grid-template-columns:repeat(3,1fr);gap:2px;display:grid}.creature .tab{background:var(--sunk);border:0;place-items:center;height:36px;padding:0;display:grid}.creature .tab.on{background:var(--well)}.creature .body{flex-direction:column;gap:4px;height:172px;display:flex}.info .rowc{flex-wrap:wrap;justify-content:center;align-items:center;gap:2px;display:flex}.info .cell{background:var(--well);width:36px;height:36px;color:var(--text);font:inherit;border:0;place-items:center;padding:0;display:grid}.info .cell.empty,.info .cell.short{background:var(--sunk)}.info .progress{background:var(--sunk);flex:1;height:12px}.info .progress .fill{background:#4f8fe6;height:100%}.info .cell.blank{background:0 0}.creature .grid5{background:var(--well);grid-template-columns:repeat(5,36px);justify-content:center;gap:2px;padding:2px;display:grid}.creature .grid5 .cell{background:var(--panel)}.creature .grid5 .cell.tier{background:var(--sunk)}.creature .grid5 .cell.tier.on,.creature .grid5 .cell.blank{background:0 0}.info .mark{position:absolute}.info .mark.tl{top:2px;left:2px}.info .mark.tr{top:2px;right:2px}.info .mark.br{bottom:2px;right:2px}.info .count{font-size:11px;position:absolute;bottom:2px;right:3px}.info .ghost{opacity:.45}.creature .who{gap:4px;display:flex}.creature .portrait{box-sizing:border-box;background:var(--well);width:64px;height:64px;box-shadow:inset 0 0 0 4px var(--hover);flex:none}.creature .portrait img{width:64px;height:64px;display:block}.creature .id{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.creature .named,.creature .rename,.creature .line{box-sizing:border-box;background:var(--well);height:20px;color:var(--text);font:inherit;text-align:center;white-space:nowrap;text-overflow:ellipsis;border:0;padding:0 6px;overflow:hidden}.creature .named{cursor:text}.creature .rename{-webkit-user-select:text;user-select:text;width:100%}.creature .line{justify-content:space-between;align-items:center;font-weight:400;display:flex}.creature .gen{align-items:center;gap:4px;font-weight:700;display:flex}.creature .stats{grid-template-columns:repeat(2,1fr);gap:2px;display:grid}.creature .stat{background:var(--well);justify-content:space-between;align-items:center;height:20px;padding:0 4px;display:flex}.creature .stat.dim{opacity:.45}.creature .traits{grid-template-columns:repeat(4,36px);justify-content:center;gap:2px;display:grid}.creature .traits .cell{cursor:default}.creature .meals{grid-template-columns:repeat(6,28px);justify-content:center;gap:2px;display:grid}.creature .meals .meal{background:var(--well);justify-content:center;align-items:center;height:28px;display:flex}.creature .meals .meal.empty{opacity:.45}.tip{z-index:20;pointer-events:none;color:var(--text);font-variant-numeric:tabular-nums;align-items:center;gap:6px;padding:6px 8px;font:700 12px/1 system-ui,sans-serif;display:flex;position:fixed}.card{z-index:15}.nameplates{z-index:12;pointer-events:none;position:fixed;inset:0}.nameplates[hidden],.nameplate[hidden]{display:none}.nameplate{pointer-events:auto;cursor:pointer;white-space:nowrap;background:var(--panel);border:2px solid var(--frame);box-shadow:inset 2px 2px 0 var(--frame-lit), inset -2px -2px 0 var(--frame-shade);color:var(--text);align-items:center;gap:4px;padding:3px 6px;font:700 12px/1 system-ui,sans-serif;display:flex;position:absolute;top:0;left:0}.nameplate:hover{background:var(--stone-hover)}.nameplate img{image-rendering:pixelated}.card .section{flex-direction:column;gap:4px;display:flex}.card .section+.section{border-top:1px solid var(--sunk-edge);padding-top:6px}.card .line{align-items:center;gap:6px;display:flex}.card .choices{flex-wrap:wrap;gap:2px;display:flex}.card .line .choice{min-width:24px;height:24px;margin-left:auto}.card .line .choice img,.card .swatch{width:16px;height:16px}.card .named,.card .rename{box-sizing:border-box;background:var(--well);min-width:0;height:20px;color:var(--text);font:inherit;text-align:left;border:0;flex:1;padding:0 6px}.card .named{cursor:text}.card .rename{-webkit-user-select:text;user-select:text}.card .person{background:var(--well);width:100%;color:var(--text);font:inherit;text-align:left;border:0;padding:2px 4px}.card .person .who{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.card .person .doing{opacity:.8}.card .stock{justify-content:flex-start}#bar button.unused img{opacity:.3}#bar button.short{background:var(--sunk);border-style:dashed;border-color:var(--sunk-edge)}#bar button.short img{filter:var(--short);opacity:.45}.info .cell.short img{opacity:.45}.info .cell.short .count{color:var(--error)}.info .times,.info .or{font-size:14px}@media (orientation:portrait){#bar-alerts .alert-list{flex-direction:column;top:0;bottom:auto;left:calc(100% + 8px)}#price{bottom:auto;left:auto;right:var(--edge);top:var(--edge)}#bar{left:var(--edge);bottom:auto;top:var(--bar-y,50%);transform:translateY(-50%) scale(var(--bar-scale,1));transform-origin:0;flex-direction:row-reverse}#bar-main,#bar .strip,#bar .group{flex-direction:column;align-items:center}#bar-alerts{margin-bottom:12px;margin-right:0}#bar .row .more{width:auto;height:calc(var(--button) / 3);inset:0 0 auto}#bar .row .more.after{inset:auto 0 0}#bar .row .more:before{transform:rotate(90deg)}#bar .row .more.after:before{transform:rotate(-90deg)}}#resources{background-color:#1b1b1b;background-image:radial-gradient(ellipse at center, #0000008c, #000000e6), linear-gradient(#0c0c0eb3, #0c0c0eb3), var(--backdrop);image-rendering:pixelated;color:#f2f2f2;z-index:10;background-size:auto,auto,192px 192px;border:3px solid #0e0e0e;flex-direction:column;font:13px/1.2 system-ui,sans-serif;display:flex;position:fixed;inset:4vh 4vw;box-shadow:inset 2px 2px #6b6b6b,inset -2px -2px #2a2a2a,0 8px 32px #0009}#resources[hidden]{display:none}#resources header{background:#00000073;border-bottom:2px solid #0e0e0e;align-items:center;gap:12px;padding:10px 14px;display:flex}#resources h2{margin:0;font-size:16px;font-weight:600}#resources header .place{color:#bdbdbd;margin-right:auto}#resources header input,#resources header button{font:inherit;color:inherit;background:#2b2b2b;border:2px solid #1a1a1a;border-color:#6b6b6b #1a1a1a #1a1a1a #6b6b6b;padding:4px 8px}#resources .viewport{flex:1;overflow:auto}#resources .canvas{position:relative}#resources .card{box-sizing:border-box;z-index:1;cursor:default;background:#3a3a3a;border:2px solid #262626;border-color:#8b8b8b #262626 #262626 #8b8b8b;width:150px;min-height:44px;transition:opacity .12s;position:absolute}#resources .card[hidden]{display:none}#resources .card .row{box-sizing:border-box;align-items:center;gap:8px;height:40px;padding:2px 8px 2px 5px;display:flex}#resources .card img{image-rendering:pixelated;flex:none}#resources .card .row img{width:32px;height:32px}#resources .card.expanded{z-index:4;width:260px}#resources .card .details{cursor:default;border-top:1px solid #555;flex-direction:column;gap:6px;padding:6px 8px 8px;font-size:12px;display:flex}#resources .card .details[hidden]{display:none}#resources .card .details .about{color:#b8b8b8;margin:0;font-style:italic;line-height:1.35}#resources .card .details img{width:16px;height:16px}#resources .card .details .line,#resources .card .details .used{color:#d8d8d8;flex-wrap:wrap;align-items:center;gap:4px;display:flex}#resources .card .details .used img{cursor:pointer}#resources .card .details .used img:hover{outline:2px solid var(--hover)}#resources .card .details .arrow{clip-path:polygon(0 35%,55% 35%,55% 0,100% 50%,55% 100%,55% 65%,0 65%);background:#d8d8d8;width:9px;height:8px}#resources .card .details .variant{background:#00000040;align-items:center;gap:6px;padding:2px 4px;display:flex}#resources .card .details .variant.chosen{outline:1px solid #f6d65a}#resources .card .details .variant .label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}#resources .card .details .held,#resources .card .details .kept{font-variant-numeric:tabular-nums;font-weight:700}#resources .card .details .kept{text-align:center;min-width:24px}#resources .card .details .keeper{align-items:center;gap:2px;display:flex}#resources .card .details .keeper button{width:20px;height:20px;font:inherit;color:inherit;background:#2b2b2b;border:1px solid #1a1a1a;border-color:#6b6b6b #1a1a1a #1a1a1a #6b6b6b;padding:0}#resources .card .words{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}#resources .card .name,#resources .card .showing{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}#resources .card .showing{color:#a8a8a8;font-size:11px}#resources .card .showing[hidden]{display:none}#resources .card .count{font-variant-numeric:tabular-nums;font-weight:700}#resources .card.wild{background:#2f3a2b;border-color:#8fae6f #1d2618 #1d2618 #8fae6f}#resources .card.block{background:#33383f;border-color:#8c9aa8 #20252b #20252b #8c9aa8}#resources .bands{pointer-events:none;position:absolute;inset:0}#resources .band{color:#f0c05a;white-space:nowrap;border-left:2px dashed #f0c05a59;align-items:flex-start;gap:6px;padding:6px 0 0 8px;font-size:12px;font-weight:600;display:flex;position:absolute;top:0;bottom:0}#resources .band:first-child{border-left-color:#0000}#resources .band img{width:22px;height:22px;image-rendering:pixelated}#resources .card.gate{border-color:#f0c05a #7a5412 #7a5412 #f0c05a;box-shadow:0 0 0 2px #f0c05a59}#resources .card.gate:before{content:"";background:#f0c05a;width:6px;height:6px;position:absolute;top:3px;left:3px}#resources .card.structure{background:#3d3029;border-color:#b98a6c #2a1d16 #2a1d16 #b98a6c}#resources .card.found{background:#2f3a2b;border-color:#8fae6f #1d2618 #1d2618 #8fae6f}#resources .card.short{color:#9a9a9a;background:#2a2a2a}#resources .card.short .row img{filter:var(--short)}#resources .card.short.focused .row img,#resources .card.short.lit .row img,#resources .card.short.station .row img{filter:none}#resources .card.lit{border-color:#f6d65a #8a6f14 #8a6f14 #f6d65a}#resources .card.station{border-style:dashed;border-color:#6fd2c8 #1f5c56 #1f5c56 #6fd2c8}#resources .card.faded{opacity:.3}#resources svg.edges{pointer-events:none;position:absolute;inset:0;overflow:visible}#resources svg.edges .edge{fill:none;stroke:#a8a8a8;stroke-opacity:.45;stroke-width:1.5px}#resources svg.edges marker path{fill:#a8a8a8}#resources svg.edges.lit{z-index:2}#resources svg.edges.labels{z-index:3}#resources svg.edges.lit .edge{stroke:#f6d65a;stroke-opacity:1;stroke-width:2.5px}#resources svg.edges.lit marker path{fill:#f6d65a}#resources svg.labels .lit .label rect{fill:#141414;fill-opacity:.92;stroke:#f6d65a;stroke-width:1px}#resources svg.edges .label text{fill:#fff;font:600 12px system-ui,sans-serif}#resources svg.edges .label .arrow{fill:#d8d8d8}#resources svg.edges .label image{image-rendering:pixelated}#resources svg.edges .label rect{fill:#141414;fill-opacity:.92;stroke:#6b6b6b;stroke-width:1px}@media (max-width:700px){#resources{border:0;inset:0}#resources header{flex-wrap:wrap;padding:8px 10px}#resources header input{flex:1;min-width:0}#resources .viewport{touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}}.levels{gap:1px;display:flex}.levels .level{background:var(--sunk);width:6px;height:12px}.levels .level.on.l1{background:#c8503c}.levels .level.on.l2{background:#e0b43c}.levels .level.on.l3{background:#9cc850}.levels .level.on.l4{background:#4fa83a}.creature .needs{grid-template-columns:repeat(2,1fr);gap:2px;display:grid}.creature .need{background:var(--well);justify-content:space-between;align-items:center;height:20px;padding:0 4px;display:flex}.creature .need.dim{opacity:.45}
