/* Moldura de janela Luna: FrameCaption.bmp (margens 28,35,9,17),
   FrameLeft/Right (5 px), FrameBottom (margens 5,5,2,2), botões 21x21. */
.xpui-frame {
  display: inline-flex;
  flex-direction: column;
  position: relative;
  filter: drop-shadow(1px 2px 3px rgba(0, 0, 0, 0.25));
}
.xpui-frame-caption {
  height: 30px;
  border-style: solid;
  border-width: 9px 35px 17px 28px;
  border-image: url(/xp-ui/caption-0.png) 9 35 17 28 fill stretch;
  position: relative;
  margin-bottom: -1px;
}
.xpui-frame.is-inactive .xpui-frame-caption {
  border-image-source: url(/xp-ui/caption-1.png);
}
.xpui-frame-title {
  position: absolute;
  left: -22px;
  right: -26px;
  top: -4px;
  height: 18px;
  display: flex;
  align-items: center;
  gap: 4px;
  color: #fff;
  font: bold 13px 'Trebuchet MS', Tahoma, sans-serif;
  text-shadow: 1px 1px #0a1883;
  white-space: nowrap;
  pointer-events: none;
}
.xpui-frame-title img {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
}
.xpui-frame-title span {
  overflow: hidden;
  text-overflow: ellipsis;
}
.xpui-frame.is-inactive .xpui-frame-title {
  color: #d8e4f8;
  text-shadow: none;
}
.xpui-frame-buttons {
  position: absolute;
  right: -30px;
  top: -4px;
  display: flex;
  gap: 2px;
}
.xpui-frame-buttons button {
  width: 21px;
  height: 21px;
  padding: 0;
  border: 0;
  background: url(/xp-ui/caption-btn-0.png);
  position: relative;
}
.xpui-frame-buttons button:hover {
  background-image: url(/xp-ui/caption-btn-1.png);
}
.xpui-frame-buttons button:active {
  background-image: url(/xp-ui/caption-btn-2.png);
}
.xpui-frame-buttons button.is-close {
  background-image: url(/xp-ui/close-btn-0.png);
}
.xpui-frame-buttons button.is-close:hover {
  background-image: url(/xp-ui/close-btn-1.png);
}
.xpui-frame-buttons button.is-close:active {
  background-image: url(/xp-ui/close-btn-2.png);
}
.xpui-frame-buttons button:after {
  content: '';
  position: absolute;
  left: 4px;
  top: 4px;
  width: 13px;
  height: 13px;
  background: var(--glyph) 0 0;
}
.xpui-frame-buttons button:disabled:after {
  background-position: 0 -39px;
}
.xpui-frame-body {
  display: flex;
  flex: 1;
  min-height: 0;
}
.xpui-frame-left,
.xpui-frame-right {
  width: 4px;
  flex: 0 0 4px;
  background: url(/xp-ui/frame-left-0.png) repeat-y left top / 4px 100%;
}
.xpui-frame-right {
  background-image: url(/xp-ui/frame-right-0.png);
}
.xpui-frame-content {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  background: #ece9d8;
  position: relative;
}
.xpui-frame-bottom {
  height: 4px;
  border-style: solid;
  border-width: 0 5px;
  border-image: url(/xp-ui/frame-bottom-0.png) 0 5 0 5 fill stretch;
}
.xpui-frame.is-inactive .xpui-frame-left {
  background-image: url(/xp-ui/frame-left-1.png);
}
.xpui-frame.is-inactive .xpui-frame-right {
  background-image: url(/xp-ui/frame-right-1.png);
}
.xpui-frame.is-inactive .xpui-frame-bottom {
  border-image-source: url(/xp-ui/frame-bottom-1.png);
}
