.builder{background:var(--bg);flex-direction:column;height:100%;display:flex}.builder-topbar{border-bottom:1px solid var(--border);align-items:center;gap:1.5rem;padding:.6rem .9rem;display:flex}.builder-brand{color:var(--accent);white-space:nowrap;margin:0;font-size:1rem}.builder-topbar-right{align-items:center;gap:1rem;margin-left:auto;display:flex}.builder-exit{white-space:nowrap;border-color:var(--accent);color:var(--accent)}.builder-exit:hover{background:var(--accent);color:#16110a}.follow-toggle{color:var(--dim);white-space:nowrap;cursor:pointer;align-items:center;gap:.4rem;margin:0;font-size:.85em;display:inline-flex}.follow-toggle code{text-overflow:ellipsis;max-width:16rem;overflow:hidden}.follow-toggle input[type=checkbox],.checkbox-row input[type=checkbox]{appearance:none;border:1px solid var(--border);cursor:pointer;background:#0b0e13;border-radius:3px;flex:none;place-content:center;width:1rem;height:1rem;margin:0;display:grid}.follow-toggle input[type=checkbox]:hover,.checkbox-row input[type=checkbox]:hover{border-color:var(--accent)}.follow-toggle input[type=checkbox]:checked,.checkbox-row input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}.follow-toggle input[type=checkbox]:checked:before,.checkbox-row input[type=checkbox]:checked:before{content:"";clip-path:polygon(41% 68%,79% 26%,88% 35%,41% 86%,12% 55%,21% 46%);background:#16110a;width:.62rem;height:.62rem}.follow-toggle input[type=checkbox]:focus-visible,.checkbox-row input[type=checkbox]:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.tab-dot{color:var(--accent);vertical-align:middle;margin-left:.3rem;font-size:.7em}.builder-columns{background:var(--border);flex:1;grid-template-columns:15rem 1fr 17rem;gap:1px;min-height:0;display:grid}.builder-columns-2{grid-template-columns:15rem 1fr}.builder-col{background:var(--bg);padding:.75rem;overflow-y:auto}.room-editor-head{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.room-editor-head h2{margin:0}.room-section{margin-top:.9rem}.section-body{flex-direction:column;gap:.9rem;display:flex}.prefixed-input{align-items:center;gap:.3rem;display:flex}.prefixed-input code{white-space:nowrap}.checkbox-row{align-items:center;gap:.45rem;font-size:.9em;display:flex}.template-list{max-height:24rem;margin:0;padding:0;list-style:none;overflow-y:auto}.template-editor{flex-direction:column;gap:.9rem;display:flex}.template-editor input,.template-editor textarea,.template-editor select{width:100%}.multiplier-set,.attack-list,.behavior-editor{border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:.6rem;padding:.75rem;display:flex}.attack-list .field-row,.behavior-editor .field-row{align-items:flex-end}.attack-card{border:1px solid var(--border);background:var(--panel);border-radius:6px;flex-direction:column;gap:.6rem;padding:.6rem .7rem;display:flex}.attack-card-head{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.attack-list>button,.emote-list>button{align-self:flex-start}.multiplier-set legend,.attack-list legend,.behavior-editor legend{color:var(--dim);text-transform:uppercase;letter-spacing:.08em;padding:0 .4rem;font-size:.72rem}.room-picker{border:1px solid var(--border);border-radius:6px;max-height:11rem;margin:0;padding:.4rem;list-style:none;overflow-y:auto}.room-picker li{padding:.1rem 0}.picker-unknown{border-color:var(--accent)}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.6rem;display:grid}.multiplier-grid{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.6rem;display:grid}.preview-table-wrap{max-height:22rem;overflow:auto}.preview-table{border-collapse:collapse;width:100%;font-size:.82rem}.preview-table th,.preview-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.25rem .5rem}.preview-table thead th{color:var(--dim);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}.preview-table .numeric{text-align:right;font-variant-numeric:tabular-nums}.preview-table .strong{color:var(--good,inherit);font-weight:600}.emote-list,.shop-stock{flex-direction:column;gap:.5rem;display:flex}.shop-stock .stock-row{flex:1;align-self:center}.field-check{align-items:center;gap:.5rem;display:flex}.field-check input[type=checkbox]{flex:none;width:auto}.spawner-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.spawner-list li{border:1px solid var(--border);border-radius:5px;justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem .5rem;display:flex}.spawner-info{flex-direction:column;gap:.15rem;display:flex}.spawner-actions{gap:.35rem;display:flex}.attack-effect{border-left:2px solid var(--border);flex-direction:column;gap:.5rem;margin-left:.15rem;padding-left:.7rem;display:flex}.chain-list{margin:0;padding:0;font-size:.85em;list-style:none}.chain-list li{padding:.15rem 0}.chain-list button.link{text-align:left;width:auto;padding:0;display:inline}.chain-list button.link.selected{color:var(--accent)}.chain-list button.link:disabled{color:var(--dim);cursor:default;text-decoration:none}.pan-pad{align-items:center;gap:.3rem;display:flex}.pan-pad button{padding:.2rem .5rem;line-height:1}.edge.one-way{stroke-dasharray:6 3;opacity:.75}.dlg-overlay{background:#0009;animation:.12s ease-out dlg-fade;position:fixed;inset:0}.dlg{background:var(--panel);border:1px solid var(--border);border-radius:8px;width:min(30rem,100vw - 2rem);max-height:calc(100vh - 4rem);padding:1.25rem;animation:.12s ease-out dlg-rise;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 10px 40px #00000080}.dlg:focus{outline:none}.dlg-title{color:var(--accent);margin:0 0 .35rem;font-size:1rem}.dlg-desc{color:var(--dim);margin:0 0 .9rem;font-size:.85em}.dlg-body{flex-direction:column;gap:.75rem;display:flex}.dlg-footer{justify-content:flex-end;gap:.5rem;margin-top:1.1rem;display:flex}.dlg-close{color:var(--dim);border:none;padding:0 .35rem;font-size:1.1rem;line-height:1;position:absolute;top:.6rem;right:.6rem}.dlg-close:hover{color:var(--text)}@keyframes dlg-fade{0%{opacity:0}}@keyframes dlg-rise{0%{opacity:0;transform:translate(-50%,-46%)}}.textarea{font:inherit;color:inherit;border:1px solid var(--border);resize:vertical;background:#0b0e13;border-radius:4px;width:100%;min-height:2.4rem;padding:.45rem .6rem;line-height:1.45}.textarea:focus{border-color:var(--accent);outline:none}.number-input{width:100%}input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}input[type=number]{appearance:textfield}.select-wrap{width:100%;display:block;position:relative}.select{appearance:none;font:inherit;color:inherit;border:1px solid var(--border);cursor:pointer;background:#0b0e13;border-radius:4px;width:100%;padding:.45rem 2rem .45rem .6rem}.select:hover{border-color:var(--accent)}.select:focus{border-color:var(--accent);outline:none}.select-chevron{color:var(--dim);pointer-events:none;font-size:.7rem;position:absolute;top:50%;right:.6rem;transform:translateY(-50%)}.select-wrap-disabled{opacity:.5}.select option{background:var(--panel);color:var(--text)}.field{flex-direction:column;gap:.3rem;display:flex}.field-label{text-transform:uppercase;letter-spacing:.08em;color:var(--dim);font-size:.72rem}.field-hint{color:var(--dim);font-size:.8em}.field-error{color:var(--bad);font-size:.8em}.tabbar{border-bottom:1px solid var(--border);gap:.25rem;display:flex}.tab{color:var(--dim);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;padding:.4rem .7rem}.tab:hover{color:var(--text);border-color:#0000}.tab[data-state=active]{color:var(--accent);border-bottom-color:var(--accent)}.tab-count{color:var(--bad);margin-left:.35rem;font-size:.8em}.toast-viewport{z-index:60;outline:none;flex-direction:column;gap:.5rem;width:min(22rem,100vw - 2rem);margin:0;padding:0;list-style:none;display:flex;position:fixed;bottom:1rem;right:1rem}.toast{background:var(--panel);border:1px solid var(--border);border-left-width:3px;border-radius:6px;padding:.6rem .8rem;animation:.14s ease-out toast-in;box-shadow:0 4px 16px #0006}.toast-good{border-left-color:var(--good)}.toast-bad{border-left-color:var(--bad)}.toast-title{font-size:.85em}.toast[data-state=closed]{animation:.12s ease-in toast-out}@keyframes toast-in{0%{opacity:0;transform:translate(.5rem)}}@keyframes toast-out{to{opacity:0}}.overflow-trigger{color:var(--dim);border:none;padding:.1rem .5rem;font-size:1.1rem;line-height:1}.overflow-trigger:hover{color:var(--text)}.menu{background:var(--panel);border:1px solid var(--border);z-index:60;border-radius:6px;min-width:9rem;padding:.25rem;box-shadow:0 6px 24px #00000073}.menu-item{color:var(--text);cursor:pointer;border-radius:4px;outline:none;padding:.35rem .55rem;font-size:.9em}.menu-item[data-highlighted]{background:var(--bg);color:var(--accent)}.menu-item-danger{color:var(--bad)}.menu-item-danger[data-highlighted]{background:var(--bg);color:var(--bad)}:root{--bg:#0e1116;--panel:#161b22;--border:#2a3038;--text:#c9d1d9;--dim:#6e7781;--good:#3fb950;--bad:#f85149;--accent:#d9a441;--speech:#79c0ff;--movement:#8b949e;--party:#56d4a0;--tell:#d2a8ff;--chat:#e3a663;--emote:#a3b1c2;--health:#f85149;--focus:#79c0ff;--stamina:#3fb950}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);margin:0;font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:14px}.shell{max-width:46rem;margin:0 auto;padding:3rem 1.5rem}h1{letter-spacing:.08em;color:var(--accent);margin:0;font-size:1.6rem}h2{text-transform:uppercase;letter-spacing:.12em;color:var(--dim);margin:0 0 .6rem;font-size:.72rem;font-weight:600}.tagline{color:var(--dim);margin:.25rem 0 2rem}.panel{border:1px solid var(--border);background:var(--panel);border-radius:6px;margin-bottom:1rem;padding:1rem 1.25rem}.dim{color:var(--dim)}.good{color:var(--good)}.bad{color:var(--bad)}button{font:inherit;color:inherit;border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:4px;padding:.4rem .8rem}button:hover{border-color:var(--accent)}button.primary{background:var(--accent);color:#16110a;border-color:var(--accent);font-weight:600}button.link{color:var(--dim);border:none;padding:0;text-decoration:underline}input{font:inherit;color:inherit;border:1px solid var(--border);background:#0b0e13;border-radius:4px;width:100%;padding:.45rem .6rem}input:focus{border-color:var(--accent);outline:none}.form>label{color:var(--dim);margin-bottom:.85rem;font-size:.8rem;display:block}.form>label input{margin-top:.3rem}.tabs{gap:.5rem;margin-bottom:1rem;display:flex}.tabs button.active{border-color:var(--accent);color:var(--accent)}.character-list,.contents,.legend{margin:0;padding:0;list-style:none}.character-list li{margin-bottom:.4rem}.character-list button{justify-content:space-between;align-items:baseline;gap:1rem;width:100%;display:flex}.paths{border:none;margin:0 0 1rem;padding:0}.paths legend{color:var(--dim);padding:0 0 .4rem;font-size:.8rem}.paths .path{cursor:pointer;color:inherit;border:1px solid #0000;border-radius:4px;grid-template-columns:auto 5.5rem 1fr;align-items:center;gap:.75rem;margin:0 0 .2rem;padding:.45rem .55rem;font-size:.8rem;display:grid}.paths .path:hover{border-color:var(--border)}.paths .path.selected{border-color:var(--accent);background:#0b0e13}.paths .path input{width:auto;margin:0}.paths .path.selected strong{color:var(--accent)}.game{background:var(--border);grid-template:"map room"minmax(11rem,auto)"scroll scroll"1fr"input input""vitals vitals"/minmax(16rem,22rem) 1fr;gap:1px;height:100vh;display:grid}.game>*{background:var(--bg);border:none;border-radius:0;margin:0}.map-panel{grid-area:map;padding:.75rem 1rem;overflow:auto}.room-panel{grid-area:room;padding:.75rem 1rem;overflow:auto}.map{letter-spacing:0;color:var(--dim);white-space:pre;margin:0 0 .6rem;line-height:1}.legend li,.contents li{padding:.1rem 0;font-size:.8rem}.contents button{text-align:left;border:none;width:100%;padding:.1rem 0}.contents button:hover{color:var(--accent)}.glyph{width:1.2em;color:var(--accent);display:inline-block}.room-title{color:var(--accent);letter-spacing:.02em;margin:0 0 .4rem;font-size:1.05rem}.room-description{margin:0 0 .6rem;line-height:1.5}.exits{color:var(--movement);margin:0 0 1rem}.scrollback{overflow-anchor:none;grid-area:scroll;padding:.75rem 1rem;line-height:1.5;overflow-y:auto}.line{white-space:pre-wrap;word-break:break-word}.jump-to-bottom{z-index:1;justify-content:center;padding-top:.5rem;display:flex;position:sticky;bottom:0}.jump-to-bottom button{border:1px solid var(--accent);color:var(--accent);background:var(--panel);cursor:pointer;border-radius:999px;padding:.2rem .9rem;font-size:.8rem}.jump-to-bottom button:hover{color:var(--text)}.line .echo{color:var(--dim)}.line .room-title{color:var(--accent);font-size:inherit}.line .exits{color:var(--movement)}.line .speech{color:var(--speech)}.line .movement{color:var(--movement)}.line .emote,.line .mob-action{color:var(--emote);font-style:italic}.line .party{color:var(--party)}.line .tell{color:var(--tell)}.line .chat{color:var(--chat)}.line .levelup{color:var(--accent);font-weight:600}.line .occupant{color:var(--text)}.line .heading{color:var(--accent)}.line .bad{color:var(--bad)}.line .sys-info{color:var(--good)}.line .sys-warning{color:var(--accent)}.line .sys-disconnect{color:var(--bad)}.line .span-link{font:inherit;color:var(--accent);text-underline-offset:2px;cursor:pointer;vertical-align:baseline;white-space:inherit;background:0 0;border:none;margin:0;padding:0;text-decoration:underline;display:inline}.line .span-link:hover,.line .span-link:focus-visible{color:var(--good)}.input-bar{grid-area:input;align-items:center;gap:.6rem;padding:.5rem 1rem;display:flex}.input-bar .prompt{color:var(--accent)}.input-bar input{background:0 0;border:none;padding:.2rem 0}.vitals-bar{flex-wrap:wrap;grid-area:vitals;align-items:center;gap:1.25rem;padding:.5rem 1rem;font-size:.8rem;display:flex}.meter{align-items:baseline;gap:.4rem;display:inline-flex}.meter-label{color:var(--dim)}.meter.health .meter-bar{color:var(--health)}.meter.focus .meter-bar{color:var(--focus)}.meter.stamina .meter-bar{color:var(--stamina)}.meter-value,.identity{color:var(--dim)}.gold{color:var(--warn,#d8a657)}.status{margin-left:auto}@media (width<=900px){.game{grid-template:"room""map""scroll"1fr"input""vitals"/1fr}.map-panel{max-height:12rem}}.workspace.hidden{display:none}.tree-section{margin-bottom:1.1rem}.tree-head{justify-content:space-between;align-items:baseline;display:flex}.tree-head h3,.editor-section h3{text-transform:uppercase;letter-spacing:.1em;color:var(--dim);margin:0 0 .35rem;font-size:.68rem}.tree ul{margin:0;padding:0;list-style:none}.tree li button{text-align:left;width:100%;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:3px;padding:.25rem .4rem;display:block}.tree li button:hover{background:var(--panel)}.tree li button.selected{background:var(--panel);color:var(--accent)}.tree-filter{width:100%;margin-bottom:.35rem}.room-list{max-height:16rem;overflow-y:auto}.zone-canvas-container{background:var(--panel);border-radius:8px;flex-direction:column;gap:.75rem;margin-bottom:1.5rem;display:flex;overflow:hidden;box-shadow:0 2px 8px #0000001a}.zone-canvas-header{border-bottom:1px solid var(--border);align-items:center;gap:1rem;min-height:2.5rem;padding:.75rem 1rem;display:flex}.error-msg{background-color:color-mix(in srgb, var(--bad) 12%, transparent);border:1px solid color-mix(in srgb, var(--bad) 35%, transparent);color:var(--bad);border-radius:4px;margin:0;padding:.5rem .75rem;font-size:.9rem}.link-status{background-color:color-mix(in srgb, var(--accent) 10%, transparent);border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);color:var(--text);border-radius:4px;align-items:center;gap:.5rem;margin:0;padding:.5rem .75rem;font-size:.9rem;display:flex}.link-icon{font-size:1.1rem}.cancel-link{background:color-mix(in srgb, var(--bad) 22%, transparent);border:1px solid color-mix(in srgb, var(--bad) 45%, transparent);color:var(--bad);cursor:pointer;border-radius:3px;margin-left:auto;padding:.25rem .5rem;font-size:.9rem;font-weight:700;transition:all .15s}.cancel-link:hover{background:color-mix(in srgb, var(--bad) 35%, transparent);border-color:var(--bad)}.zone-canvas-wrapper{background:linear-gradient(135deg, var(--bg) 0%, var(--panel) 100%);border-bottom:1px solid var(--border);-webkit-user-select:none;user-select:none;width:100%;height:28rem;position:relative;overflow:hidden}.zone-canvas{background:0 0;position:absolute;top:0;left:0}.zone-canvas .edges{pointer-events:none;position:absolute;inset:0}.edge{stroke:var(--border);stroke-width:2px;stroke-linecap:round;transition:stroke .15s}.edge:hover{stroke:var(--accent);stroke-width:2.5px}.edge.dangling{stroke:var(--bad);stroke-dasharray:4 4;opacity:.6}.edge.vertical-exit{stroke:var(--speech);stroke-dasharray:5 2;opacity:.8}.edge.vertical-stub{fill:none;stroke:var(--bad);stroke-width:1.5px;opacity:.6}.direction-label{fill:var(--text);pointer-events:none;-webkit-user-select:none;user-select:none;font-weight:700}.direction-indicator{fill:var(--panel);stroke:var(--accent);stroke-width:1.5px;opacity:.7}.room-box{border:2px solid var(--border);background:var(--bg);color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:6px;flex-direction:column;justify-content:center;gap:.15rem;padding:.4rem;font-size:.75em;transition:all .15s;display:flex;position:absolute;overflow:hidden;box-shadow:0 2px 4px #0000001a}.room-box:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 4px 12px #0003}.room-box.selected{border-color:var(--accent);color:var(--accent);background:linear-gradient(135deg, var(--bg) 0%, color-mix(in srgb, var(--accent) 6%, transparent) 100%);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 30%, transparent), 0 4px 12px #0003}.room-box.occupied{border-color:var(--speech);box-shadow:0 0 0 3px var(--speech), 0 4px 12px #0003}.room-box.occupied.selected{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 30%, transparent), 0 0 0 6px var(--speech), 0 4px 12px #0003}.room-box.unfinished{background:repeating-linear-gradient(45deg, var(--bg), var(--bg) 4px, color-mix(in srgb, var(--bad) 12%, transparent) 4px, color-mix(in srgb, var(--bad) 12%, transparent) 8px);opacity:.85}.room-box-title{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.room-box-key{color:var(--dim);letter-spacing:.02em;font-size:.8em}.vertical-indicator{opacity:.6;font-size:.9rem;position:absolute;top:2px;right:2px}.zone-canvas-controls{background:var(--panel);border-top:1px solid var(--border);justify-content:flex-start;align-items:center;padding:.75rem 1rem;display:flex}.canvas-help{color:var(--dim);align-items:center;gap:.5rem;margin:0 0 0 auto;font-size:.8rem;display:flex}.help-icon{background:var(--border);width:18px;height:18px;color:var(--text);border-radius:50%;justify-content:center;align-items:center;font-size:.7rem;font-weight:700;display:inline-flex}.room-editor header,.mob-editor header{align-items:baseline;gap:.6rem;margin-bottom:.6rem;display:flex}.room-editor header h2,.mob-editor header h2{color:var(--accent);text-transform:none;letter-spacing:0;margin:0;font-size:1rem}.room-key,code.dim{color:var(--dim);font-size:.85em}.room-editor label,.mob-editor label{margin-bottom:.6rem;display:block}.room-editor input,.room-editor textarea,.room-editor select,.mob-editor input,.mob-editor textarea,.mob-editor select,.tree-filter{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);font:inherit;border-radius:3px;margin-top:.2rem;padding:.35rem .5rem;display:block}.editor-section{border-top:1px solid var(--border);margin:1.1rem 0;padding-top:.8rem}.editor-section.danger{border-top-color:var(--bad)}.row{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.row input,.row select{flex:8rem;width:auto;margin-top:0}.detail{font-size:.85em}.danger-button{border:1px solid var(--bad);color:var(--bad);font:inherit;cursor:pointer;background:0 0;border-radius:3px;padding:.3rem .6rem}.flag-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.flag{border:1px solid var(--border);border-radius:3px;padding:.4rem .5rem}.flag.inherited{opacity:.72;border-style:dashed}.flag-head{align-items:baseline;gap:.4rem;display:flex}.flag-head strong{color:var(--text)}.flag p{margin:.2rem 0 .35rem}.flag-controls{gap:.25rem;display:flex}.flag-controls button{border:1px solid var(--border);color:var(--dim);font:inherit;cursor:pointer;background:0 0;border-radius:3px;padding:.15rem .5rem;font-size:.85em}.flag-controls button.selected{border-color:var(--accent);color:var(--accent)}.exit-list{margin:0 0 .6rem;padding:0;list-style:none}.exit-list li{align-items:center;gap:.5rem;padding:.15rem 0;display:flex}.exit-list strong{min-width:3.5rem;color:var(--movement)}.grid-painter .palette{flex-wrap:wrap;gap:.2rem;display:flex}.grid-painter .palette-groups{flex-direction:column;gap:.5rem;margin-bottom:.6rem;display:flex}.grid-painter .palette-group{flex-direction:column;gap:.2rem;display:flex}.grid-painter .palette-label{color:var(--dim);text-transform:uppercase;letter-spacing:.08em;font-size:.7rem}.grid-painter .swatch,.grid-painter .cell{letter-spacing:0}.swatch{border:1px solid var(--border);background:var(--bg);width:1.6rem;height:1.6rem;color:var(--text);font:inherit;cursor:pointer;border-radius:3px}.swatch.selected{border-color:var(--accent);color:var(--accent)}.grid-painter .canvas{border:1px solid var(--border);background:var(--panel);-webkit-user-select:none;user-select:none;border-radius:3px;padding:2px;display:inline-block}.grid-row{display:flex}.grid-painter .cell{width:1.05rem;height:1.05rem;color:var(--text);font:inherit;cursor:crosshair;background:0 0;border:0;padding:0;line-height:1}.grid-painter .cell:hover{background:var(--border)}.grid-size{color:var(--dim);align-items:center;gap:.6rem;margin-top:.4rem;display:flex}.grid-size input{width:3.5rem;margin-top:0}.legend-editor{color:var(--dim);margin-top:.5rem}.legend-editor ul{margin:.3rem 0 0;padding:0;list-style:none}.legend-editor li{align-items:center;gap:.4rem;margin-bottom:.2rem;display:flex}.legend-editor input{flex:1;width:auto;margin-top:0}.warning-list,.room-warnings{margin:0;padding:0;list-style:none}.warning-list li,.room-warnings li{border-bottom:1px solid var(--border);padding:.25rem 0;font-size:.85em}.room-warnings{margin-bottom:.8rem}.room-warnings li,.warning.dangling-exit,.warning.inherited-pvp{color:var(--accent)}@media (width<=1100px){.builder{grid-template-rows:auto 1fr auto;grid-template-columns:1fr;overflow-y:auto}}
