/* ===========================================================
   NebulaOS X — minimal windows
=========================================================== */

.window{

position:absolute;
display:none;
flex-direction:column;
width:720px;
height:520px;
top:56px;
left:160px;
overflow:hidden;
border-radius:0;
background:var(--surface);
border:1px solid var(--line);
box-shadow:none;
z-index:100;

}

.window.active{

border-color:var(--text);

}

.window.minimized{

opacity:0;
pointer-events:none;

}

.window.maximized{

width:calc(100vw - 16px) !important;
height:calc(100vh - 90px) !important;
top:44px !important;
left:8px !important;
border-radius:0;

}

.titlebar{

height:34px;
display:flex;
align-items:center;
justify-content:space-between;
flex-direction:row-reverse;
padding:0 8px 0 10px;
cursor:grab;
user-select:none;
background:var(--surface);
border-bottom:1px solid var(--line);

}

.titlebar:active{

cursor:grabbing;

}

.titlebar span{

font-weight:500;
font-size:13px;
color:var(--text);
letter-spacing:0;

}

.window-controls{

display:flex;
gap:2px;
order:-1;

}

.control{

width:auto;
height:22px;
min-width:22px;
border-radius:0;
cursor:pointer;
background:transparent;
color:var(--muted);
display:inline-flex;
align-items:center;
justify-content:center;
font-size:14px;
line-height:1;
border:none;

}

.control:hover{

color:var(--text);
background:var(--line);
transform:none;

}

.close::before{ content:"×"; }
.minimize::before{ content:"–"; }
.maximize::before{ content:"+"; }

.close,
.minimize,
.maximize{

background:transparent;

}

.window-content{

flex:1;
padding:14px;
overflow:auto;
display:flex;
flex-direction:column;
gap:10px;
min-height:0;

}

.card{

padding:0;
background:transparent;
border:none;
border-radius:0;

}

.card:hover{

background:transparent;

}

.card h2{

font-size:16px;
margin-bottom:8px;

}

.card p{

margin-bottom:2px;
font-size:13px;

}

.status{

padding:8px 10px;
border-radius:0;
border:1px solid var(--line);
background:transparent;

}

table{

width:100%;
border-collapse:collapse;

}

th,td{

text-align:left;
padding:8px 4px;
font-size:13px;
border-bottom:1px solid var(--line);

}

th{

font-weight:500;

}

.terminal{

background:var(--bg);
color:var(--text);
font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
padding:10px;
border-radius:0;
border:1px solid var(--line);
height:100%;
overflow:auto;
font-size:12px;

}

.terminal input{

margin-top:8px;
background:var(--bg);
color:var(--text);
font-family:inherit;
border-radius:0;

}

.notes textarea{

height:100%;
background:var(--bg);

}

.file-grid{

display:flex;
flex-direction:column;
gap:2px;

}

.file{

display:flex;
flex-direction:row;
align-items:center;
padding:6px 8px;
border-radius:0;
cursor:pointer;

}

.file:hover{

background:var(--line);
transform:none;

}

.file img{

width:16px;
margin:0 8px 0 0;

}

@keyframes windowOpen{

from{ opacity:0; }
to{ opacity:1; }

}

@keyframes windowClose{

from{ opacity:1; }
to{ opacity:0; }

}

@media(max-width:900px){

.window{

width:92vw;
height:75vh;
left:4vw;
top:56px;

}

}
