.map-editor{--me-bg:var(--panel,#171e29);--me-edge:var(--line,#394454);--me-accent:var(--accent,#8daecb);--me-muted:var(--muted);color:var(--ink);min-width:0}
.map-editor #me-export-form label{display:grid;gap:.4rem}.map-editor #me-export-format{width:100%;min-width:0;max-width:100%}
.map-editor *{box-sizing:border-box}.map-editor [hidden]{display:none!important}.map-editor h1{margin:0;font-size:1.35rem;line-height:1.2}.map-editor h2{margin:0 0 .65rem;font-size:1.12rem}.map-editor p{margin:.35rem 0;color:var(--me-muted)}
.me-heading,.me-filebar,.me-library-controls,.me-file-actions,.me-row,.me-status,.me-viewbar,.me-palette-head,.me-dialog-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.me-heading,.me-palette-head{justify-content:space-between}.me-heading{margin-bottom:.75rem;gap:1rem}.me-heading p{font-size:.88rem}.me-heading>div{min-width:0;flex:1}.me-back,.me-mobile-only{display:none!important}.map-editor button{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.4rem}.map-editor button[aria-pressed=true]{background:var(--hi);border-color:#5a7084;color:var(--ink)}.map-editor label{display:flex;align-items:center;gap:.4rem;min-width:0}.map-editor input[type=number]{width:6rem}.map-editor input[type=checkbox]{min-height:0;width:17px;height:17px;margin:0;accent-color:#8daecb}.me-icon{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.me-notice{padding:.75rem;border:1px solid #a78056;border-radius:6px}.me-filebar{justify-content:space-between;padding:.5rem;background:var(--me-bg);border:1px solid var(--me-edge);border-radius:8px}.me-library-controls,.me-file-actions{gap:.4rem}.me-status{min-height:2.4rem;padding:.3rem .15rem;font-size:.85rem;color:var(--me-muted);overflow-wrap:anywhere}.me-status strong{color:#edf3f9}#me-dirty{color:#e8c48e}
.me-workspace{display:grid;grid-template-columns:minmax(0,1fr) 286px;grid-template-areas:'stage panel';gap:.65rem;min-width:0}.me-panel,.me-stage{background:var(--me-bg);border:1px solid var(--me-edge);border-radius:8px;min-width:0}.me-panel{grid-area:panel;padding:.65rem;display:flex;flex-direction:column;gap:.7rem}.me-stage{grid-area:stage;display:flex;flex-direction:column;overflow:hidden;position:relative}.me-stage:focus-within{border-color:#7894ab}
.me-workspace>.me-panel{height:var(--me-workspace-height,max(420px,calc(100svh - 360px)));min-height:0;overflow:hidden}
.me-displaybar,.me-view-switches{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem}.me-displaybar{justify-content:space-between;padding:.35rem .5rem;border-bottom:1px solid var(--me-edge)}.map-editor .me-view-toggle{cursor:pointer;gap:.35rem;min-height:40px;padding:.35rem .5rem;border:1px solid var(--me-edge);border-radius:6px;background:#202a38;font-size:.8rem;position:relative}.me-view-toggle:has(input:checked){border-color:#7896ae;background:#2a3c4d}.me-view-toggle:focus-within{outline:2px solid #a9c9e6;outline-offset:2px}.me-toggle-state{font-size:.73rem;color:var(--me-muted);min-width:1.6rem}
.me-editbar{display:flex;align-items:center;flex-wrap:wrap;gap:4px;padding:.3rem .5rem;border-bottom:1px solid var(--me-edge);position:relative;z-index:3}.me-editbar button,.me-selection-options>summary{min-height:40px;padding:.3rem .5rem;font-size:.78rem}.me-editbar button:disabled{opacity:.4;cursor:default}.me-selection-status{margin-left:auto;color:var(--me-muted);font-size:.75rem;font-variant-numeric:tabular-nums;white-space:nowrap}.me-selection-options{position:relative}.me-selection-options>summary{display:flex;align-items:center;justify-content:center;gap:.35rem;list-style:none;border:1px solid var(--me-edge);border-radius:6px;cursor:pointer;background:#202a38;color:var(--ink)}.me-selection-options>summary::-webkit-details-marker{display:none}.me-selection-options[open]>summary{background:#2a3c4d;border-color:#7896ae}.me-selection-menu{position:absolute;right:0;top:calc(100% + 6px);width:240px;max-width:calc(100vw - 40px);padding:.75rem;display:grid;gap:.65rem;border:1px solid #566a7e;border-radius:8px;background:#1a2431;box-shadow:0 8px 24px #0007;z-index:5}.map-editor .me-selection-menu label{display:grid;gap:.4rem;font-size:.8rem}.me-selection-menu select{min-width:0;width:100%}.me-selection-menu p{font-size:.77rem;line-height:1.45}.me-selection-menu button{justify-content:flex-start}.me-selection-options>summary:focus-visible,.map-editor button:focus-visible,.me-viewport>canvas:focus-visible{outline:2px solid #a9c9e6;outline-offset:2px}.map-editor[data-preview=true] .me-editbar{display:none}
.me-stage{height:var(--me-workspace-height,max(420px,calc(100svh - 360px)))}.me-viewport{min-height:250px;flex:1;position:relative;overflow:hidden;background:#10151d}.me-viewport>canvas{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair}.me-viewport>canvas[data-tool=pan]{cursor:grab}.me-view-hint{position:absolute;top:10px;left:10px;padding:.35rem .5rem;border-radius:5px;background:#151e29e8;color:#c5d5e2;font-size:.75rem;pointer-events:none}.me-tools{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;gap:4px;padding:4px;border:1px solid var(--me-edge);border-radius:9px;background:#171e29f5;max-width:calc(100% - 12px)}.me-tools button{min-width:52px;min-height:50px;padding:.35rem .5rem;flex-direction:column;font-size:.72rem;gap:.2rem}.me-tools .me-icon{width:19px;height:19px}
.me-canvas-notices{position:absolute;bottom:80px;left:12px;right:12px;display:flex;align-items:center;flex-direction:column;gap:6px;pointer-events:none}.me-canvas-notices span:not(:empty){background:#1a2635f5;border:1px solid #4b647c;border-radius:6px;padding:.5rem .7rem;max-width:100%;font-size:.82rem;line-height:1.35;color:#d5e3ee;overflow-wrap:anywhere}#me-message:empty{display:none}
.me-layer-row{align-items:end;flex-wrap:nowrap}.me-layer-row label,.me-size-fields label,.me-library-search,.me-palette-filter{flex:1;flex-direction:column;align-items:stretch!important;gap:.3rem;font-size:.8rem;font-weight:650;color:#cbd6e2}.me-layer-row label:first-child{flex:1.5}.me-layer-row select,.me-layer-row input,.me-size-fields input,.me-library-search input,.me-palette-filter input{width:100%;min-width:0}.map-editor .me-check{min-height:40px;padding:0 .3rem;font-size:.8rem}.me-palette-empty{grid-column:1/-1;font-size:.85rem;padding:.5rem}
.me-palette-head{gap:.35rem}.me-palette-head strong{display:block;font-size:.88rem}.me-palette-hint{display:block;margin-top:.2rem;color:var(--me-muted);font-size:.73rem}.me-pagination{display:flex;align-items:center;gap:.25rem;white-space:nowrap;font-size:.78rem;color:var(--me-muted)}.me-pagination button{min-width:36px;min-height:40px;padding:.2rem;font-size:1.2rem;line-height:1}.me-palette{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.3rem;max-height:min(48vh,480px);overflow:auto;overscroll-behavior:contain;align-content:start}.me-tile{min-width:0;padding:.15rem!important;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:.7rem!important;overflow:hidden}.me-tile canvas{width:42px;height:38px;max-width:100%;object-fit:contain;image-rendering:pixelated}
.me-panel>.me-palette-filter{flex:none}.me-palette{height:0;min-height:0;flex:1;max-height:none}.map-editor .me-tile{height:66px;min-height:66px;gap:2px}.me-tile canvas,.me-tile span{flex:none}.me-tile span{line-height:1.4;min-height:1.4em}
.me-viewbar{padding:.35rem .5rem;gap:.3rem;font-size:.82rem;border-top:1px solid var(--me-edge)}.me-view-label{color:var(--me-muted);margin-left:auto}.me-viewbar button{min-width:40px;min-height:40px;padding:.25rem .4rem}#me-actual{min-width:56px}#me-zoom{font-variant-numeric:tabular-nums}#me-position{color:var(--me-muted);font-variant-numeric:tabular-nums}#me-selected{color:var(--me-muted)}.me-readouts{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.4rem;width:100%;border-top:1px solid var(--me-edge);padding-top:.4rem;font-size:.75rem}
.map-editor[data-preview=true] .me-workspace{grid-template-columns:minmax(0,1fr);grid-template-areas:'stage'}.map-editor[data-preview=true] .me-stage{height:var(--me-workspace-height,max(420px,calc(100svh - 280px)))}.map-editor[data-preview=true] .me-tools{display:none}
.map-editor dialog{color:#e6edf5;background:#1a2431;border:1px solid #566a7e;border-radius:10px;padding:1.1rem;width:min(92vw,430px);max-width:100%;max-height:calc(100svh - 2rem);overflow:auto;overscroll-behavior:contain}.map-editor dialog::backdrop{background:#000b}.map-editor dialog p{line-height:1.5}.me-size-fields{margin-top:1rem}.me-dialog-actions{justify-content:flex-end;margin-top:1rem}.me-error{color:#ffadad!important;min-height:1.3em}.me-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
#me-library-dialog{width:min(92vw,620px)}.me-library-dialog-content{display:flex;flex-direction:column;gap:.6rem}.me-library-dialog-content h2{margin:0}.me-library-count{font-size:.8rem;color:var(--me-muted)}#me-library{width:100%;min-height:13rem;padding:.25rem}#me-library option{padding:.35rem}.me-library-preview{display:flex;align-items:center;gap:.75rem;min-height:0}.me-library-preview img{max-width:120px;max-height:90px;object-fit:contain;image-rendering:pixelated}.me-library-preview p{font-size:.85rem}.me-library-dialog-content .me-dialog-actions{margin-top:.25rem}.me-inspector-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--me-edge)}.me-inspector-header h2{margin:0}.me-inspector-header button{width:44px;min-height:44px;padding:0}
/* Phones keep the map in the first screen. The inspector is mounted in a modal sheet. */
@media(max-width:800px){
  .map-editor-page #public-main{padding:8px 10px 16px}.map-editor-page #public-main>.site-breadcrumbs{display:none}
  .me-heading{flex-wrap:nowrap;gap:6px;margin-bottom:4px}.me-heading h1{font-size:1.1rem}.me-heading p,.me-title-game{display:none}.me-back{display:inline-flex!important;width:44px;height:44px;flex:none;align-items:center;justify-content:center;color:#c5d5e2;border:1px solid var(--me-edge);border-radius:7px;text-decoration:none}
  .me-filebar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;padding:0;border:0;background:transparent}.me-library-controls,.me-file-actions{display:contents}.me-filebar button{width:100%;min-height:44px;padding:0}.map-editor .me-button-label{display:none}.me-filebar .me-icon{width:21px;height:21px}
  .me-status{flex-wrap:nowrap;gap:6px;min-height:26px;padding:3px 0;font-size:.73rem;overflow:hidden;white-space:nowrap}.me-status strong{min-width:0;overflow:hidden;text-overflow:ellipsis}.me-status #me-dimensions{flex:none;margin-left:auto}#me-dirty{font-size:0}#me-dirty:not(:empty)::before{content:'●';font-size:.75rem}
  .me-workspace{display:block}.me-workspace>.me-panel{display:none}.me-stage{height:max(300px,calc(100svh - 207px))}.me-viewport,.map-editor[data-preview=true] .me-viewport{height:auto;min-height:0;flex:1}
  .me-editbar{padding:3px 4px;gap:3px;flex-wrap:nowrap;z-index:4}.me-editbar button,.me-selection-options>summary{width:40px;min-width:40px;min-height:44px;padding:0;flex:none}.me-selection-status{font-size:.68rem;min-width:0;white-space:normal;text-align:right;line-height:1.25}.me-selection-menu{left:auto;right:-40px;width:230px}.me-selection-menu button{width:100%;padding:0 .5rem}.me-selection-menu select{width:100%}
  .me-displaybar{position:absolute;z-index:2;top:59px;right:7px;border:0;padding:0;gap:4px;flex-wrap:nowrap}.me-view-switches{gap:4px;flex-wrap:nowrap}.map-editor .me-view-toggle,#me-preview{width:44px;min-height:44px;padding:0;justify-content:center;background:#202a38f5}.me-view-toggle input{position:absolute;opacity:0;width:1px!important;height:1px!important}.me-view-toggle:has(input:checked){background:#344e65;border-color:#8eacc7}.me-view-toggle:has(input:checked)::after{content:'';position:absolute;right:5px;bottom:5px;width:5px;height:5px;background:#c4e1f7;border-radius:50%}.me-toggle-state{display:none}.me-view-hint{top:12px;left:8px;max-width:calc(100% - 160px);padding:5px 6px;font-size:.7rem;line-height:1.3}
  .me-tools{bottom:8px;gap:3px;padding:4px;max-width:calc(100% - 12px)}.me-tools button{min-width:40px;width:40px;min-height:44px;padding:0;flex:none}.me-tools .me-icon{width:20px;height:20px}.me-mobile-only{display:inline-flex!important}.me-inspect-button{border-color:#8eacc7!important;color:#bcdaf2!important}.me-canvas-notices{bottom:70px;left:8px;right:8px}
  .me-viewbar{padding:3px 4px;gap:3px;flex-wrap:wrap;justify-content:center;flex:none}.me-viewbar button{min-width:40px;min-height:44px}.me-view-label{display:none}#me-undo{margin-right:0}#me-redo{margin-right:auto}#me-actual{min-width:50px}#me-fit{margin-left:auto}.me-readouts{font-size:.68rem;gap:3px;padding-top:3px}
  .map-editor input,.map-editor select{font-size:1rem;min-height:44px}.map-editor input[type=checkbox]{min-height:0}.map-editor dialog button{min-height:44px}.me-palette{grid-template-columns:repeat(6,minmax(0,1fr));max-height:44svh;height:auto;flex:initial}.me-pagination button{min-width:40px;min-height:44px}.me-palette-head{flex-wrap:nowrap}.me-pagination{gap:3px}
  #me-inspector-dialog{position:fixed;inset:auto 0 0;margin:0;width:100%;max-width:100%;max-height:min(82svh,680px);border-radius:16px 16px 0 0;padding:0;padding-bottom:env(safe-area-inset-bottom,0px)}#me-inspector-dialog[open]{display:flex;flex-direction:column}#me-inspector-body{overflow:auto;min-height:0}#me-inspector-body>.me-panel{display:flex;padding:12px;border:0;border-radius:0;background:transparent}.me-inspector-header{flex:none}
  .map-editor[data-preview=true] .me-filebar,.map-editor[data-preview=true] .me-status{display:none}.map-editor[data-preview=true] .me-stage{height:max(300px,calc(100svh - 130px))}
  .map-editor[data-preview=true] .me-displaybar{top:7px}
}
@media(max-width:360px){.me-tools{gap:0;padding:2px}.me-tools button{min-width:40px;width:40px}.me-editbar{gap:2px}.me-selection-status{font-size:.65rem}}
