/* Win95 developer tools: dense, readable, and isolated from gameplay UI. */
.devwin .wbody { min-height:0; overflow:hidden; background:#c0c0c0; }
.diagwin .wbody { display:flex; flex-direction:column; }
.diag-toolbar { display:flex; flex-wrap:wrap; gap:4px; align-items:center; padding:4px; border-bottom:2px groove #fff; }
.diag-toolbar label { display:flex; align-items:center; gap:3px; white-space:nowrap; }
.diag-toolbar input[type="search"] { width:190px; }
.diag-toolbar select { min-width:92px; }
.diag-summary { margin-left:auto; white-space:nowrap; }
.diag-main { display:grid; grid-template-columns:minmax(440px,3fr) minmax(260px,2fr); flex:1; min-height:0; }
.diag-list { overflow:auto; background:#fff; border:2px inset #fff; font:11px/1.35 "Courier New",monospace; }
.diag-head,.diag-row { display:grid; grid-template-columns:72px 45px 68px minmax(170px,1fr) 108px; gap:5px; align-items:start; padding:2px 4px; }
.diag-head { position:sticky; top:0; z-index:1; background:#c0c0c0; border-bottom:1px solid #808080; font-weight:bold; }
.diag-row { border-bottom:1px dotted #d0d0d0; cursor:default; white-space:pre-line; }
.diag-row:hover,.diag-row.sel { color:#fff; background:#000080; }
.diag-row .diag-level { text-transform:uppercase; }
.diag-row[data-level="error"] .diag-level { font-weight:bold; }
.diag-row[data-level="warn"] .diag-level { text-decoration:underline; }
.diag-detail,.dev-json { margin:0; overflow:auto; padding:6px; color:#e8e8e8; background:#101010; border:2px inset #fff; font:11px/1.4 "Courier New",monospace; white-space:pre-wrap; word-break:break-word; user-select:text; -webkit-user-select:text; cursor:text; }
.diag-detail { min-width:0; }
.dev-json { height:calc(100% - 36px); box-sizing:border-box; }
.diag-empty { padding:12px; color:#606060; }
.tile-preview { display:flex; align-items:center; gap:12px; padding:8px; border-bottom:2px groove #fff; }
.tile-preview canvas { width:72px; height:72px; image-rendering:pixelated; background:#000; border:2px inset #fff; }
.tile-inspector-grid { display:grid; grid-template-columns:112px minmax(190px,1fr); gap:4px 8px; margin:0; padding:8px; max-height:180px; overflow:auto; }
.tile-inspector-grid dt { font-weight:bold; }
.tile-inspector-grid dd { margin:0; font-family:"Courier New",monospace; word-break:break-word; }
.tile-json { height:125px; border-left:0; border-right:0; }
.tile-hint { padding:5px 8px; border-top:2px groove #fff; font-style:italic; }
@media (max-width:760px) {
  .diag-main { grid-template-columns:1fr; grid-template-rows:minmax(220px,3fr) minmax(150px,2fr); }
  .diag-summary { width:100%; margin-left:0; }
  .diag-head,.diag-row { grid-template-columns:66px 42px 60px minmax(130px,1fr); }
  .diag-head span:last-child,.diag-row span:last-child { display:none; }
}
