/* Loaded after styles.css. Desktop resizing uses border-box dimensions. */
.window-resize-handle {
  position: absolute;
  z-index: 3;
  display: block;
  min-width: 0;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  touch-action: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}
.resize-n, .resize-s { left: 12px; right: 12px; height: 10px; cursor: ns-resize; }
.resize-n { top: -5px; }
.resize-s { bottom: -5px; }
.resize-e, .resize-w { top: 12px; bottom: 18px; width: 10px; cursor: ew-resize; }
.resize-e { right: -5px; }
.resize-w { left: -5px; }
.resize-ne, .resize-se, .resize-sw, .resize-nw { width: 16px; height: 16px; z-index: 4; }
.resize-ne, .resize-sw { cursor: nesw-resize; }
.resize-se, .resize-nw { cursor: nwse-resize; }
.resize-ne { top: -5px; right: -5px; }
.resize-nw { top: -5px; left: -5px; }
.resize-sw { bottom: -5px; left: -5px; }
.resize-se { bottom: -2px; right: -2px; width: 22px; height: 22px; }
.resize-se::after {
  content: "";
  position: absolute;
  right: 3px;
  bottom: 3px;
  width: 13px;
  height: 13px;
  background: repeating-linear-gradient(135deg, transparent 0 2px, #808080 2px 3px, #fff 3px 4px, transparent 4px 5px);
  clip-path: polygon(100% 0, 100% 100%, 0 100%);
  pointer-events: none;
}
.window-resize-handle:focus-visible { outline: 1px dotted #000; outline-offset: -3px; }
.window.is-resizing { user-select: none; }
.window.maximized > .window-resize-handle { display: none; }
@media (min-width: 561px) {
  .window.hw-resizable { min-width: 0; min-height: 0; max-width: none; max-height: none; }
  .window.hw-resizable.maximized { height: 100% !important; }
  .window.hw-resizable > .window-content { flex: 1 1 auto; }
  .window.hw-resizable > .window-status { padding-right: 23px; }
}
@media (max-width: 560px) {
  .window > .window-resize-handle { display: none; }
}
