#admin-happy-dwarf-editor{width:100%;margin-top:10px}
#happy-dwarf-editor{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:#1a1c25;color:#e6d8bd;font:13px/1.4 "Courier New",monospace;overflow:hidden}
#happy-dwarf-editor::backdrop{background:#070910}
#happy-dwarf-editor:not([open]){display:none}
#happy-dwarf-editor *{box-sizing:border-box}
.hde-shell{height:100%;display:flex;flex-direction:column;min-height:0;padding:max(8px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}
.hde-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:none;padding:6px 4px 12px;border-bottom:1px solid #6d5740}
.hde-head h1{margin:0;font-size:18px;line-height:1.3;font-weight:700}
#happy-dwarf-editor button,#happy-dwarf-editor input,#happy-dwarf-editor select{min-width:0;min-height:42px;border:1px solid #725e46;border-radius:5px;background:#2b2b36;color:inherit;font:inherit;padding:8px 10px}
#happy-dwarf-editor button{cursor:pointer;touch-action:manipulation}
#happy-dwarf-editor button:hover:not(:disabled){background:#3b3440;border-color:#b68c58}
#happy-dwarf-editor button:focus-visible,#happy-dwarf-editor input:focus-visible,#happy-dwarf-editor select:focus-visible,#hde-canvas:focus-visible{outline:2px solid #e0ba78;outline-offset:2px}
#happy-dwarf-editor button:disabled,#happy-dwarf-editor fieldset:disabled{opacity:.45;cursor:default}
#happy-dwarf-editor input:invalid{border-color:#d57878}
#happy-dwarf-editor #hde-close{font-size:27px;line-height:1;width:44px;height:44px;padding:0;flex:none}
.hde-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;flex:1;min-height:0;gap:12px;padding-top:12px}
.hde-preview{display:flex;flex-direction:column;min-width:0;min-height:0;gap:8px}
.hde-camera-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;flex:none}
.hde-direction-pad,.hde-camera-actions{display:flex;align-items:center;gap:5px}
#happy-dwarf-editor .hde-direction-pad button{width:42px;padding:5px;font-size:22px;line-height:1;touch-action:none;user-select:none}
.hde-camera-actions output{min-width:48px;font-size:11px;text-align:center;color:#c6b498}
#happy-dwarf-editor .hde-camera-actions button{padding:6px 10px}
.hde-canvas-wrap{flex:1;position:relative;min-height:100px;overflow:hidden;border:1px solid #68533d;border-radius:5px;background:#11141d}
#hde-canvas{display:block;width:100%;height:100%;touch-action:manipulation;cursor:crosshair;image-rendering:pixelated}
.hde-camera-position{font-size:11px;color:#b9aa91;flex:none;min-height:16px;padding:0 2px}
.hde-inspector{display:flex;flex-direction:column;gap:16px;overflow-y:auto;overscroll-behavior:contain;min-height:0;padding:2px 5px 8px 0;scrollbar-width:thin;scrollbar-color:#8c6c48 #20222c}
.hde-section{display:flex;flex-direction:column;gap:9px;min-width:0}
.hde-section-head{display:flex;align-items:center;justify-content:space-between}
.hde-section h2,.hde-properties legend{font-size:13px;font-weight:700;margin:0;color:#ddc09a}
.hde-section-head output{font-size:11px;color:#ac9b81}
.hde-field{display:flex;flex-direction:column;gap:4px;min-width:0}
.hde-field>span{font-size:11px;color:#bcae97}
.hde-field input,.hde-field select{width:100%}
.hde-field input[readonly]{color:#a99a86;background:#22242d!important;font-size:11px!important}
.hde-properties{border:0;border-top:1px solid #564a3d;padding:12px 0 0;margin:0}
.hde-properties legend{padding-right:8px}
.hde-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hde-object-actions{display:flex;gap:7px}
.hde-object-actions button{flex:1}
#happy-dwarf-editor .hde-danger{color:#e6a09e;border-color:#875755}
.hde-save-section{padding-top:12px;border-top:1px solid #564a3d;margin-top:auto}
#happy-dwarf-editor .hde-primary{background:#765537;border-color:#bd9459;color:#fff0d0;font-weight:700}
#hde-status{min-height:36px;margin:0;font-size:11px;line-height:1.45;color:#c4b497;overflow-wrap:anywhere}
#hde-status[data-error=true]{color:#f0a29b}
.hde-open #viewport{pointer-events:none}
.hde-open #quest-panel,.hde-open #chat-panel,.hde-open #admin-button,.hde-open #world-button{visibility:hidden}
@media(max-width:760px){
  .hde-head h1{font-size:15px}
  .hde-body{display:flex;flex-direction:column;gap:12px;overflow-y:auto;overscroll-behavior:contain;padding-top:9px;scrollbar-width:thin}
  .hde-preview{flex:none;min-height:290px;height:57dvh}
  .hde-inspector{display:grid;grid-template-columns:1fr 1fr;align-items:start;flex:none;overflow:visible;gap:14px;padding:0 0 12px}
  .hde-properties{border-top:0;padding-top:0;grid-column:2;grid-row:1 / span 2}
  .hde-save-section{grid-column:1;margin-top:0}
  #hde-status{min-height:0}
  .hde-field-grid{gap:8px}
  .hde-object-actions{flex-direction:column}
}
@media(max-width:480px){
  .hde-shell{padding-left:8px;padding-right:8px}
  .hde-head{padding-bottom:8px}
  .hde-head h1{font-size:13px}
  .hde-inspector{grid-template-columns:1fr}
  .hde-properties,.hde-save-section{grid-column:auto;grid-row:auto}
  .hde-properties{border-top:1px solid #564a3d;padding-top:10px}
  .hde-object-actions{flex-direction:row}
  .hde-preview{height:56dvh;min-height:300px}
  .hde-camera-toolbar{gap:6px}
  .hde-camera-actions{gap:4px}
  #happy-dwarf-editor .hde-camera-actions button{padding-left:9px;padding-right:9px}
}
@media(max-height:520px) and (min-width:761px){.hde-head{padding-bottom:6px}.hde-body{padding-top:7px}.hde-head h1{font-size:15px}.hde-inspector{gap:10px}.hde-save-section{margin-top:0}}
