/* ---------- Windows XP Minesweeper ---------- */
.window.ms-window { overflow: visible; }
.window-content.ms-root {
  padding: 0; margin: 0 3px 3px; width: auto; overflow: visible; flex: none;
  background: #c0c0c0; display: flex; flex-direction: column;
  font: 11px Tahoma, "Segoe UI", sans-serif; user-select: none;
}
.ms-menubar.np-menubar { background: #ece9d8; border-bottom: 0; }
.ms-frame {
  padding: 6px; background: #c0c0c0;
  border-top: 3px solid #fff; border-left: 3px solid #fff;
  display: flex; flex-direction: column; gap: 6px; align-items: stretch;
}
.ms-head {
  display: flex; align-items: center; justify-content: space-between;
  height: 33px; padding: 0 5px; box-sizing: border-box;
  border: 2px solid; border-color: #808080 #fff #fff #808080;
}
.ms-led { display: flex; border: 1px solid; border-color: #808080 #fff #fff #808080; background: #000; }
.ms-led i { width: 13px; height: 23px; background: no-repeat center / 13px 23px; image-rendering: pixelated; }
button.ms-face {
  width: 26px; height: 26px; min-width: 0; min-height: 0; padding: 0; margin: 0;
  border: 1px solid #808080 !important; border-radius: 0 !important; box-shadow: none !important;
  background-color: #c0c0c0 !important; background-repeat: no-repeat !important;
  background-position: center !important; background-size: 24px 24px !important;
  image-rendering: pixelated; outline: none;
}
.ms-board {
  display: grid; width: max-content; align-self: center;
  border: 3px solid; border-color: #808080 #fff #fff #808080;
}
.ms-cell { width: 16px; height: 16px; background: no-repeat center / 16px 16px; image-rendering: pixelated; }
.ms-root.ms-mono .ms-frame { filter: grayscale(1); }
.ms-window.ms-horror .ms-board, .ms-window.ms-horror .ms-led { filter: sepia(1) saturate(6) hue-rotate(-40deg) contrast(1.15); }

/* dialogs */
.ms-dialog .np-dialog-body { padding: 10px 12px; }
.ms-custom { display: flex; gap: 18px; align-items: center; }
.ms-custom-fields { display: flex; flex-direction: column; gap: 8px; }
.ms-custom-fields label { display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100px; }
.ms-custom-fields input { width: 42px; }
.ms-custom-btns { display: flex; flex-direction: column; gap: 8px; }
.ms-record { text-align: center; }
.ms-record .ms-notitle .title-bar-controls { display: none; }
.ms-record p { margin: 0 0 10px; line-height: 1.4; }
.ms-record input { width: 140px; margin-bottom: 10px; }
.ms-best { border-collapse: collapse; margin: 4px 4px 14px; }
.ms-best td { padding: 3px 12px 3px 0; white-space: nowrap; }
.ms-best-btns, .ms-about-btns { display: flex; justify-content: center; gap: 10px; }
.ms-about { display: flex; gap: 12px; margin-bottom: 14px; line-height: 1.45; }
.ms-about img { width: 32px; height: 32px; }
