/* ── Window Chrome ─────────────────────────────────────────────── */
.win {
  position: absolute;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 12px;
  overflow: hidden;
  display: none;
  flex-direction: column;
  box-shadow: 0 24px 64px rgba(0, 0, 0, .7);
  min-width: 300px;
  transition: top .2s, left .2s, width .2s, height .2s, border-radius .2s;
}
.win.open { display: flex; }
.win.maximized {
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: calc(100vh - var(--taskbar)) !important;
  border-radius: 0;
  z-index: 999 !important;
}

.win-header {
  display: flex;
  align-items: center;
  padding: 10px 14px;
  background: var(--surface2);
  border-bottom: 1px solid var(--border);
  gap: 8px;
  cursor: move;
  flex-shrink: 0;
}
.win-title {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .06em;
  color: var(--text2);
  flex: 1;
}
.win-close {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #ff5f57;
  border: none;
  cursor: pointer;
  color: transparent;
  transition: color .15s;
  font-size: 7px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.win-close:hover { color: #7a1a1a; }

.win-maximize {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #28c840;
  border: none;
  cursor: pointer;
  color: transparent;
  transition: color .15s;
  font-size: 7px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.win-maximize:hover { color: #0a5a12; }
.maximized .win-header { cursor: default; }

.win-body {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
}
.win-body::-webkit-scrollbar       { width: 4px; }
.win-body::-webkit-scrollbar-thumb { background: var(--border2); border-radius: 2px; }
