:root { --bg: #0f1113; --side: #141718; --acc: #3062fe; --txt: #efeff1; --brd: #272b30; }
body { background: var(--bg); color: var(--txt); font-family: sans-serif; display: flex; height: 100vh; margin:0; }
.sidebar { width: 260px; background: var(--side); border-right: 1px solid var(--brd); padding: 20px; }
.main { flex: 1; overflow-y: auto; padding: 40px; }
.nav-item { display: block; padding: 12px; color: #9a9fa5; text-decoration: none; border-radius: 8px; }
.nav-item:hover, .active { background: #272b30; color: white; }
table { width: 100%; border-collapse: collapse; background: #1a1d1f; border-radius: 12px; overflow: hidden; }
th, td { padding: 16px; text-align: left; border-bottom: 1px solid var(--brd); }
.badge { background: var(--brd); color: var(--acc); padding: 4px 8px; border-radius: 6px; font-size: 11px; }
.btn { background: var(--acc); color: white; padding: 10px 20px; border-radius: 8px; text-decoration: none; border:none; cursor:pointer; }
input { background: #1a1d1f; border: 1px solid var(--brd); color: white; padding: 10px; border-radius: 8px; width: 100%; }
.main-wrapper {
    flex-grow: 1; /* Nimmt den restlichen Platz ein */
    display: flex;
    flex-direction: column;
    height: 100vh;
    overflow-y: auto;
    background: var(--bg);
}
.content-container {
    padding: 40px;
    width: 100%;
    max-width: 1600px; /* Verhindert, dass es auf Ultrawide-Monitoren zu leer aussieht */
    margin: 0 auto; /* Zentriert den Inhalt bei sehr breiten Bildschirmen */
    box-sizing: border-box;
}
header {
    height: 70px;
    min-height: 70px;
    display: flex;
    align-items: center;
    padding: 0 40px;
    border-bottom: 1px solid var(--brd);
    justify-content: space-between;
}
file-list th a {
    display: block;
    width: 100%;
    transition: color 0.2s;
}
.file-list th a:hover {
    color: var(--acc);
}
.file-list {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    background: var(--card);
    border-radius: 12px;
    border: 1px solid var(--brd);
}
