/* Grundläggande stilar och CSS-variabler för teman */
:root {
    --font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    --border-radius: 5px;
    --transition-speed: 0.2s;
}

/* 1. Mörkt tema (Standard) */
body[data-theme="dark"] {
    --bg-color: #1a1a1a;
    --text-color: #e0e0e0;
    --header-bg: #2c2c2c;
    --container-bg: #252525;
    --border-color: #444;
    --link-color: #61dafb;
    --link-hover: #ffffff;
    --button-bg: #61dafb;
    --button-text: #1a1a1a;
    --button-hover-bg: #88eaff;
    --danger-bg: #c73232;
    --danger-hover: #e04444;
    --input-bg: #333;
    --input-border: #555;
    --table-header: #3a3a3a;
    --global-message-bg: #61dafb;
    --global-message-text: #1a1a1a;
}

/* 2. Ljust tema */
body[data-theme="light"] {
    --bg-color: #f4f4f4;
    --text-color: #222;
    --header-bg: #ffffff;
    --container-bg: #ffffff;
    --border-color: #ddd;
    --link-color: #007bff;
    --link-hover: #0056b3;
    --button-bg: #007bff;
    --button-text: #ffffff;
    --button-hover-bg: #0056b3;
    --danger-bg: #dc3545;
    --danger-hover: #c82333;
    --input-bg: #fff;
    --input-border: #ccc;
    --table-header: #e9ecef;
    --global-message-bg: #007bff;
    --global-message-text: #fff;
}

/* 3. Synthwave-tema */
body[data-theme="synthwave"] {
    --bg-color: #261c3e;
    --text-color: #f0f0f0;
    --header-bg: linear-gradient(to right, #f92a7f, #3e2653);
    --container-bg: #2d204a;
    --border-color: #ff3c88;
    --link-color: #00e8f5;
    --link-hover: #9effff;
    --button-bg: #00e8f5;
    --button-text: #261c3e;
    --button-hover-bg: #9effff;
    --danger-bg: #f92a7f;
    --danger-hover: #ff509e;
    --input-bg: #3a2a5f;
    --input-border: #f92a7f;
    --table-header: #3a2a5f;
    --global-message-bg: #00e8f5;
    --global-message-text: #261c3e;
}

/* 4. Dracula-tema */
body[data-theme="dracula"] {
    --bg-color: #282a36;
    --text-color: #f8f8f2;
    --header-bg: #44475a;
    --container-bg: #343746;
    --border-color: #6272a4;
    --link-color: #bd93f9;
    --link-hover: #ff79c6;
    --button-bg: #50fa7b;
    --button-text: #282a36;
    --button-hover-bg: #82ffa1;
    --danger-bg: #ff5555;
    --danger-hover: #ff8080;
    --input-bg: #44475a;
    --input-border: #6272a4;
    --table-header: #44475a;
    --global-message-bg: #ff79c6;
    --global-message-text: #282a36;
}

/* 5. Matrix-tema */
body[data-theme="matrix"] {
    --bg-color: #000000;
    --text-color: #00ff41;
    --header-bg: #0d0d0d;
    --container-bg: rgba(0, 20, 0, 0.8);
    --border-color: #00ff41;
    --link-color: #00ff41;
    --link-hover: #5aff84;
    --button-bg: #00ff41;
    --button-text: #000;
    --button-hover-bg: #5aff84;
    --danger-bg: #af0000;
    --danger-hover: #d40000;
    --input-bg: #000;
    --input-border: #008a23;
    --table-header: #003b0e;
    --global-message-bg: #00ff41;
    --global-message-text: #000;
}

/* Allmänna stilar som använder variablerna */
body {
    background-color: var(--bg-color);
    color: var(--text-color);
    font-family: var(--font-family);
    margin: 0;
    padding: 0;
    line-height: 1.6;
}
.container {
    width: 90%;
    max-width: 1200px;
    margin: 20px auto;
    background-color: var(--container-bg);
    padding: 20px;
    border-radius: var(--border-radius);
    border: 1px solid var(--border-color);
}
a {
    color: var(--link-color);
    text-decoration: none;
    transition: color var(--transition-speed);
}
a:hover {
    color: var(--link-hover);
    text-decoration: underline;
}
header {
    background-color: var(--header-bg);
    padding: 15px 0;
    border-bottom: 2px solid var(--border-color);
}
header .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0;
    border: none;
    background: none;
}
.logo {
    font-size: 1.8em;
    font-weight: bold;
}
nav a {
    margin: 0 15px;
}
table.torrent-list {
    width: 100%;
    border-collapse: collapse;
    margin-top: 20px;
}
table.torrent-list th, table.torrent-list td {
    padding: 12px;
    border: 1px solid var(--border-color);
    text-align: left;
}
table.torrent-list th {
    background-color: var(--table-header);
}
table.torrent-list th a {
    color: inherit;
    text-decoration: none;
}
table.torrent-list tbody tr:hover {
    background-color: rgba(255, 255, 255, 0.05);
}
.pagination {
    margin-top: 20px;
}
.pagination a {
    padding: 8px 12px;
    border: 1px solid var(--border-color);
    margin: 0 3px;
    border-radius: var(--border-radius);
}
.pagination a.active {
    background-color: var(--button-bg);
    color: var(--button-text);
    font-weight: bold;
}
form {
    display: flex;
    flex-direction: column;
    gap: 15px;
}
input[type="text"], input[type="password"], input[type="email"], input[type="search"], input[type="number"], textarea, select {
    width: 100%;
    padding: 10px;
    background-color: var(--input-bg);
    border: 1px solid var(--input-border);
    color: var(--text-color);
    border-radius: var(--border-radius);
    box-sizing: border-box;
}
button, .button {
    padding: 10px 20px;
    border: none;
    background-color: var(--button-bg);
    color: var(--button-text);
    font-weight: bold;
    cursor: pointer;
    border-radius: var(--border-radius);
    transition: background-color var(--transition-speed);
    text-align: center;
    display: inline-block;
}
button:hover, .button:hover {
    background-color: var(--button-hover-bg);
    text-decoration: none;
}
button.danger, .button.danger {
    background-color: var(--danger-bg);
    color: #fff;
}
button.danger:hover, .button.danger:hover {
    background-color: var(--danger-hover);
}
.dashboard-section {
    border-top: 2px solid var(--border-color);
    margin-top: 30px;
    padding-top: 20px;
}
.global-message {
    background-color: var(--global-message-bg);
    color: var(--global-message-text);
    text-align: center;
    padding: 15px;
    font-weight: bold;
}
.theme-switcher {
    position: relative;
}
.theme-switcher label {
    margin-right: 10px;
}
.theme-switcher select {
    padding: 5px;
    width: auto;
}


