/* ADIR MODZ FileBrowser - Dark Glass + Neon */
*{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#070a12;
  --card:rgba(20,24,38,0.85);
  --card2:rgba(30,36,60,0.9);
  --border:rgba(255,255,255,0.08);
  --borderHover:rgba(90,140,255,0.4);
  --text:#eef1ff;
  --muted:#9aa3c0;
  --accent:#4a7cff;
  --accent2:#7c4dff;
  --success:#00e5a0;
  --danger:#ff3b5c;
  --radius:14px;
}
body{
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,sans-serif;
  background:var(--bg);
  color:var(--text);
  min-height:100vh;
  overflow-x:hidden;
}
.bgVid{
  position:fixed;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3;filter:brightness(0.35) saturate(1.1);
}
.overlay{
  position:fixed;inset:0;background:radial-gradient(1200px 600px at 20% 10%, rgba(74,124,255,0.15), transparent 60%), radial-gradient(900px 500px at 90% 90%, rgba(124,77,255,0.12), transparent 60%), linear-gradient(180deg, rgba(7,10,18,0.9), rgba(7,10,18,0.92));z-index:-2;
}

/* TOPBAR */
.topbar{
  position:sticky;top:0;z-index:20;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:14px 18px;
  background:rgba(10,14,28,0.72);backdrop-filter:blur(14px) saturate(1.2);
  border-bottom:1px solid var(--border);
}
.brand{display:flex;align-items:center;gap:12px}
.logoBox{
  width:42px;height:42px;border-radius:10px;
  display:grid;place-items:center;
  background:linear-gradient(135deg, var(--accent), var(--accent2));
  font-size:20px;box-shadow:0 8px 24px rgba(74,124,255,0.4);
}
.brand h1{font-size:17px;font-weight:800;letter-spacing:0.4px;line-height:1}
.brand h1 span{color:var(--accent)}
.brand h1 em{font-style:normal;font-weight:600;color:var(--muted);font-size:13px;margin-left:6px;letter-spacing:0.6px}
.brand p{font-size:11px;color:var(--muted);letter-spacing:0.3px;margin-top:2px}
.topActions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.btnPrimary{
  background:linear-gradient(135deg, var(--accent), var(--accent2));
  color:white;border:none;padding:9px 14px;border-radius:10px;font-weight:600;font-size:13px;cursor:pointer;
  box-shadow:0 6px 18px rgba(74,124,255,0.35);transition:.15s;
}
.btnPrimary:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(74,124,255,0.45)}
.btnPrimary.small{padding:7px 10px;font-size:12px}
.btnGhost{
  background:rgba(255,255,255,0.06);border:1px solid var(--border);color:var(--text);
  padding:9px 12px;border-radius:10px;font-weight:600;font-size:13px;cursor:pointer;transition:.15s;
}
.btnGhost:hover{background:rgba(255,255,255,0.1);border-color:var(--borderHover)}
.btnGhost.small{padding:7px 10px;font-size:12px}
.btnDanger:hover{background:rgba(255,59,92,0.2)}

.securityBadge{
  background:rgba(0,229,160,0.12);border:1px solid rgba(0,229,160,0.3);color:#00e5a0;
  padding:7px 12px;border-radius:20px;font-size:12px;font-weight:700;display:flex;align-items:center;gap:6px;letter-spacing:0.3px;
}

/* Container */
.container{max-width:1440px;margin:0 auto;padding:18px 14px 28px}

/* Toolbar */
.toolbar{
  display:flex;align-items:center;gap:12px;flex-wrap:wrap;
  background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;
  backdrop-filter:blur(10px);
}
.navBtns{display:flex;gap:6px}
.navBtns button{
  width:34px;height:34px;border-radius:9px;border:1px solid var(--border);background:rgba(255,255,255,0.05);color:var(--text);cursor:pointer;font-weight:700;
}
.navBtns button:hover{background:rgba(255,255,255,0.1)}
.breadcrumb{
  display:flex;align-items:center;gap:6px;flex-wrap:wrap;flex:1;min-width:200px;
  font-size:13px;
}
.breadcrumb a{
  color:var(--muted);text-decoration:none;padding:6px 8px;border-radius:8px;background:rgba(255,255,255,0.04);border:1px solid transparent;transition:.12s;cursor:pointer;
}
.breadcrumb a:hover{color:var(--text);background:rgba(255,255,255,0.08)}
.breadcrumb a.active{color:white;background:linear-gradient(135deg, rgba(74,124,255,0.25), rgba(124,77,255,0.25));border-color:rgba(74,124,255,0.3)}
.breadcrumb span.sep{color:var(--muted);opacity:0.5}
.toolbarRight{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.searchBox{
  display:flex;align-items:center;gap:8px;
  background:rgba(0,0,0,0.35);border:1px solid var(--border);border-radius:10px;padding:7px 10px;min-width:240px;
}
.searchBox input{
  background:transparent;border:none;outline:none;color:var(--text);font-size:13px;width:100%;
}
.searchBox span{opacity:0.6}
.viewToggle{display:flex;background:rgba(0,0,0,0.35);border:1px solid var(--border);border-radius:10px;overflow:hidden}
.viewToggle button{width:36px;height:32px;background:transparent;border:none;color:var(--muted);cursor:pointer;font-size:14px}
.viewToggle button.active{background:rgba(74,124,255,0.2);color:white}
.itemCount{font-size:12px;color:var(--muted);background:rgba(255,255,255,0.06);padding:6px 9px;border-radius:8px;border:1px solid var(--border)}

/* Layout */
.mainLayout{display:grid;grid-template-columns:320px 1fr;gap:16px;margin-top:16px}
@media(max-width:980px){.mainLayout{grid-template-columns:1fr} .sidebar{order:2}}

/* Sidebar */
.sidebar{display:flex;flex-direction:column;gap:14px}
.card{
  background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:14px;
  backdrop-filter:blur(10px);
}
.card h3{font-size:12px;letter-spacing:0.8px;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.statusInfo{font-size:13px;line-height:1.6;color:var(--text);font-family:'JetBrains Mono',monospace;background:rgba(0,0,0,0.3);padding:10px;border-radius:10px;border:1px solid var(--border);white-space:pre-wrap;word-break:break-all}
.sideBtn{
  width:100%;text-align:left;padding:9px 11px;border-radius:10px;border:1px solid var(--border);background:rgba(255,255,255,0.05);color:var(--text);cursor:pointer;font-size:13px;font-weight:600;margin-bottom:8px;transition:.12s;
}
.sideBtn:hover{background:rgba(255,255,255,0.09);border-color:var(--borderHover)}
.previewCard{position:sticky;top:76px}
.previewBox{
  background:rgba(0,0,0,0.35);border:1px solid var(--border);border-radius:12px;min-height:180px;display:grid;place-items:center;overflow:hidden;position:relative;
}
.previewEmpty{color:var(--muted);font-size:12px;padding:20px;text-align:center}
.previewBox img{max-width:100%;max-height:320px;object-fit:contain;display:block}
.previewBox video{max-width:100%;max-height:320px}
.previewBox pre{
  width:100%;max-height:320px;overflow:auto;padding:12px;font-family:'JetBrains Mono',monospace;font-size:11px;line-height:1.5;white-space:pre-wrap;word-break:break-all;color:#d6ddff;
}
.previewMeta{margin-top:10px;font-size:12px;color:var(--muted);line-height:1.5;font-family:'JetBrains Mono',monospace;word-break:break-all}
.previewActions{margin-top:10px;display:flex;gap:6px;flex-wrap:wrap}
.quickPaths{display:flex;flex-direction:column;gap:6px}
.quickPaths button{
  text-align:left;padding:8px 10px;border-radius:9px;border:1px solid var(--border);background:rgba(255,255,255,0.04);color:var(--text);cursor:pointer;font-size:13px;
}
.quickPaths button:hover{background:rgba(74,124,255,0.15);border-color:rgba(74,124,255,0.35)}

/* Files section */
.filesSection{
  background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:14px;min-height:520px;
  backdrop-filter:blur(10px);
}
.dropZone{
  display:none;border:2px dashed rgba(74,124,255,0.5);background:rgba(74,124,255,0.08);color:var(--accent);text-align:center;padding:18px;border-radius:12px;margin-bottom:12px;font-weight:600;
}
.dropZone.active{display:block}
.fileGrid{
  display:grid;grid-template-columns:repeat(auto-fill, minmax(155px, 1fr));gap:10px;
}
.fileGrid.list{
  grid-template-columns:1fr;
}
.fileItem{
  background:rgba(255,255,255,0.04);border:1px solid var(--border);border-radius:12px;padding:12px;cursor:pointer;transition:.14s;position:relative;overflow:hidden;
  display:flex;flex-direction:column;gap:8px;
}
.fileItem:hover{transform:translateY(-2px);background:rgba(255,255,255,0.07);border-color:var(--borderHover);box-shadow:0 8px 24px rgba(0,0,0,0.25)}
.fileItem.selected{border-color:var(--accent);background:rgba(74,124,255,0.12);box-shadow:0 0 0 2px rgba(74,124,255,0.25)}
.fileItem.dir{border-left:3px solid var(--accent)}
.fileItem .icon{font-size:28px;line-height:1;text-align:center}
.fileGrid.list .fileItem{flex-direction:row;align-items:center;gap:12px;padding:10px 12px}
.fileGrid.list .icon{font-size:20px}
.fileItem .name{
  font-size:13px;font-weight:600;word-break:break-all;line-height:1.3;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.fileGrid.list .name{-webkit-line-clamp:1;flex:1}
.fileItem .meta{font-size:11px;color:var(--muted);font-family:'JetBrains Mono',monospace;display:flex;gap:8px;flex-wrap:wrap}
.fileItem .extBadge{
  position:absolute;top:8px;right:8px;font-size:10px;font-weight:800;letter-spacing:0.5px;
  background:rgba(0,0,0,0.45);border:1px solid var(--border);padding:3px 6px;border-radius:6px;color:var(--muted);
}
.fileItem.dir .extBadge{background:linear-gradient(135deg, var(--accent), var(--accent2));color:white;border:none}

.emptyState{
  padding:48px;text-align:center;color:var(--muted);font-size:14px;background:rgba(0,0,0,0.25);border:1px dashed var(--border);border-radius:12px;
}

/* Context menu */
.ctxMenu{
  position:fixed;display:none;min-width:180px;background:#151a2c;border:1px solid var(--border);border-radius:10px;overflow:hidden;z-index:50;box-shadow:0 16px 40px rgba(0,0,0,0.5);
}
.ctxMenu button{
  width:100%;text-align:left;padding:10px 12px;background:transparent;border:none;color:var(--text);cursor:pointer;font-size:13px;display:flex;gap:8px;align-items:center;
}
.ctxMenu button:hover{background:rgba(255,255,255,0.08)}
.ctxMenu .sep{height:1px;background:var(--border)}

/* Toast */
.toast{
  position:fixed;bottom:18px;left:50%;transform:translateX(-50%) translateY(80px);
  background:#0f1322;border:1px solid var(--border);color:var(--text);padding:10px 14px;border-radius:10px;
  font-size:13px;font-weight:600;opacity:0;transition:.25s;z-index:60;pointer-events:none;max-width:90vw;
}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* Scrollbar */
::-webkit-scrollbar{width:8px;height:8px}
::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.15);border-radius:8px}
::-webkit-scrollbar-track{background:transparent}
