/* ============================================================
   VENTANAS — estilo macOS, translúcidas
   ============================================================ */
.windows{position:fixed;inset:0;z-index:30;pointer-events:none}
.win{
  position:absolute;display:flex;flex-direction:column;min-width:0;pointer-events:auto;
  border-radius:14px;overflow:hidden;
  background:var(--glass2);border:1px solid rgba(255,255,255,.14);
  box-shadow:0 0 0 .5px rgba(0,0,0,.7),0 24px 56px -12px rgba(0,0,0,.7),0 8px 20px rgba(0,0,0,.3);
  transition:box-shadow .25s;
}
.win.moving{will-change:translate;transition:none}
.win[hidden]{display:none!important}
.win:not(.active){box-shadow:0 0 0 .5px rgba(0,0,0,.6),0 14px 40px rgba(0,0,0,.45)}
.win.sizing{transition:left .35s cubic-bezier(.2,.8,.2,1),top .35s cubic-bezier(.2,.8,.2,1),width .35s cubic-bezier(.2,.8,.2,1),height .35s cubic-bezier(.2,.8,.2,1)}

.win.opening{animation:winIn .42s cubic-bezier(.2,.9,.25,1.02) both}
.win.closing{animation:winOut .22s ease-in both}
@keyframes winIn{from{opacity:0;transform:scale(.3)}to{opacity:1;transform:none}}
@keyframes winOut{to{opacity:0;transform:scale(.9)}}

.win-bar{display:flex;align-items:center;height:46px;padding:0 14px;flex:none;cursor:default;user-select:none;-webkit-user-select:none;touch-action:none;
  background:rgba(255,255,255,.03);border-bottom:1px solid var(--line)}
.lights{display:flex;gap:8px;width:64px;flex:none}
.light{position:relative;width:12px;height:12px;padding:0;border:0;border-radius:50%;cursor:pointer;background:#53515f}
.win.active .light.close{background:#ff5f57}
.win.active .light.min{background:#febc2e}
.win.active .light.zoom{background:#28c840}
.light svg{position:absolute;inset:2px;width:8px;height:8px;fill:none;stroke:rgba(0,0,0,.6);stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;opacity:0;transition:opacity .15s}
.light.zoom svg{fill:rgba(0,0,0,.55);stroke:none}
.lights:hover .light svg{opacity:1}
.win-title{flex:1;text-align:center;font-size:13px;font-weight:600;color:var(--ink2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.win-spacer{width:64px;flex:none}
.win-body{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain}
.win-body::-webkit-scrollbar{width:10px}
.win-body::-webkit-scrollbar-thumb{background:rgba(255,255,255,.16);border-radius:10px;border:3px solid transparent;background-clip:content-box}
