/* style.css (Complete Final Version with SVG Arrow Fix) */

/* --- 1. 主题变量 (无变化) --- */
:root {
    --background-gradient: linear-gradient(135deg, #a8c0ff 0%, #fbc2eb 100%);
    --card-bg-color: rgba(255, 255, 255, 0.45);
    --card-border-color: rgba(255, 255, 255, 0.6);
    --text-color: #333;
    --text-color-secondary: #555;
    --primary-color: #5899e0;
    --primary-color-hover: #4a82be;
    --secondary-btn-bg: #f0f0f0;
    --secondary-btn-hover-bg: #e0e0e0;
    --secondary-btn-border: #ccc;
    --secondary-btn-text: #555;
    --danger-color: #e74c3c;
    --danger-color-hover: #c0392b;
    --danger-bg: #fbeae9;
    --danger-border: #f4c7c4;
    --success-color: #27ae60;
    --item-list-hover-bg: rgba(255, 255, 255, 0.8);
    --item-list-selected-bg: color-mix(in srgb, var(--primary-color) 20%, transparent);
    --input-bg: rgba(240, 240, 240, 0.8);
    --input-border: rgba(200, 200, 200, 0.5);
    --sidebar-bg: rgba(255, 255, 255, 0.2);
    --sidebar-border: rgba(255, 255, 255, 0.6);
}

/* --- 2. 深色主题 (Dark) 变量覆盖 (无变化) --- */
body.theme-dark {
    --background-gradient: linear-gradient(-45deg, #0d1a26, #1a2f4b, #0f3443, #24243e);
    --card-bg-color: rgba(26, 47, 75, 0.4);
    --card-border-color: rgba(0, 170, 255, 0.2);
    --text-color: #e0e0e0;
    --text-color-secondary: #a0b0c0;
    --primary-color: #00aaff;
    --primary-color-hover: #0095e0;
    --secondary-btn-bg: rgba(255, 255, 255, 0.1);
    --secondary-btn-hover-bg: rgba(255, 255, 255, 0.2);
    --secondary-btn-border: rgba(255, 255, 255, 0.3);
    --secondary-btn-text: #e0e0e0;
    --danger-color: #ff4757;
    --danger-color-hover: #e03141;
    --danger-bg: rgba(255, 71, 87, 0.2);
    --danger-border: rgba(255, 71, 87, 0.4);
    --success-color: #2ed573;
    --item-list-hover-bg: rgba(255, 255, 255, 0.1);
    --item-list-selected-bg: color-mix(in srgb, var(--primary-color) 20%, transparent);
    --input-bg: rgba(0,0,0,0.2);
    --input-border: rgba(0, 170, 255, 0.2);
    --sidebar-bg: rgba(26, 47, 75, 0.2);
    --sidebar-border: rgba(0, 170, 255, 0.2);
}

/* --- 3. 日落主题 (Sunset) 变量覆盖 (无变化) --- */
body.theme-sunset {
    --background-gradient: linear-gradient(45deg, #ff8c42, #ff4c69, #d64a91, #6b4a89);
    --card-bg-color: rgba(255, 255, 255, 0.25);
    --card-border-color: rgba(255, 255, 255, 0.4);
    --text-color: #fff;
    --text-color-secondary: #f0e6ff;
    --primary-color: #ff8c42;
    --primary-color-hover: #f07b3f;
    --secondary-btn-bg: rgba(255, 255, 255, 0.1);
    --secondary-btn-hover-bg: rgba(255, 255, 255, 0.2);
    --secondary-btn-border: rgba(255, 255, 255, 0.3);
    --secondary-btn-text: #fff;
    --danger-color: #ff4c69;
    --danger-color-hover: #e03c56;
    --success-color: #a5d6a7;
    --danger-bg: rgba(255, 76, 105, 0.5);
    --danger-border: rgba(255, 76, 105, 0.8);
    --item-list-hover-bg: rgba(255, 255, 255, 0.2);
    --item-list-selected-bg: color-mix(in srgb, var(--primary-color) 30%, transparent);
    --input-bg: rgba(0,0,0,0.1);
    --input-border: rgba(255, 255, 255, 0.3);
    --sidebar-bg: rgba(0, 0, 0, 0.1);
    --sidebar-border: rgba(255, 255, 255, 0.4);
}

/* --- 4. 森林主题 (Forest) 变量覆盖 (无变化) --- */
body.theme-forest {
    --background-gradient: linear-gradient(135deg, #5b8c5a, #3a6b35, #2c542a, #1a3a1b);
    --card-bg-color: rgba(255, 255, 255, 0.15);
    --card-border-color: rgba(200, 220, 200, 0.3);
    --text-color: #e8f5e9;
    --text-color-secondary: #c8e6c9;
    --primary-color: #a5d6a7;
    --primary-color-hover: #b7e0b9;
    --secondary-btn-bg: rgba(255, 255, 255, 0.1);
    --secondary-btn-hover-bg: rgba(255, 255, 255, 0.2);
    --secondary-btn-border: rgba(255, 255, 255, 0.3);
    --secondary-btn-text: #e8f5e9;
    --danger-color: #ef9a9a;
    --danger-color-hover: #e57373;
    --success-color: #a5d6a7;
    --danger-bg: rgba(239, 154, 154, 0.2);
    --danger-border: rgba(239, 154, 154, 0.4);
    --item-list-hover-bg: rgba(255, 255, 255, 0.1);
    --item-list-selected-bg: color-mix(in srgb, var(--primary-color) 30%, transparent);
    --input-bg: rgba(0,0,0,0.2);
    --input-border: rgba(200, 220, 200, 0.3);
    --sidebar-bg: rgba(0, 0, 0, 0.1);
    --sidebar-border: rgba(200, 220, 200, 0.3);
}

/* --- 5. 结构与通用样式 (使用变量) --- */
body, html { margin: 0; padding: 0; height: 100%; font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; }
body { position: relative; isolation: isolate; display: flex; justify-content: center; align-items: center; overflow: hidden; }
body::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: var(--background-gradient); background-size: 400% 400%; animation: gradientAnimation 18s ease infinite; z-index: -1; }
@keyframes gradientAnimation { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } }

.toast-container { position: fixed; top: 20px; right: 20px; z-index: 9999; display: flex; flex-direction: column; gap: 10px; }
.toast { padding: 15px 20px; border-radius: 8px; color: white; font-weight: 500; box-shadow: 0 4px 12px rgba(0,0,0,0.15); display: flex; align-items: center; gap: 10px; opacity: 0; transform: translateX(100%); animation: toast-in 0.5s forwards, toast-out 0.5s 3s forwards; }
.toast.success { background-color: var(--success-color, #27ae60); }
.toast.error { background-color: var(--danger-color); }
.toast.info { background-color: var(--primary-color); }
@keyframes toast-in { to { opacity: 1; transform: translateX(0); } }
@keyframes toast-out { from { opacity: 1; transform: translateX(0); } to { opacity: 0; transform: translateX(100%); } }

.auth-card { background: var(--card-bg-color); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border-radius: 20px; border: 1px solid var(--card-border-color); box-shadow: 0 8px 32px 0 rgba(100, 100, 100, 0.15); color: var(--text-color); padding: 40px 50px; text-align: center; max-width: 420px; width: 100%; }
.auth-card h2 { color: var(--text-color); margin-top: 0; margin-bottom: 30px; font-size: 2.2em; font-weight: 600; }
.auth-link { margin-top: 20px; color: var(--text-color-secondary); }
.auth-link a { color: var(--primary-color); text-decoration: none; font-weight: bold; }
.auth-card .input-group { margin-bottom: 25px; }
.auth-card .btn { margin-top: 10px; }
.profile-card { max-width: 500px; text-align: left; }
.profile-card h2 { text-align: center; }

.main-container { display: flex; width: 95%; max-width: 1400px; height: 90vh; max-height: 900px; background: var(--card-bg-color); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border-radius: 20px; border: 1px solid var(--card-border-color); box-shadow: 0 8px 32px 0 rgba(100, 100, 100, 0.15); overflow: hidden; }
.sidebar { flex: 0 0 280px; padding: 25px; border-right: 1px solid var(--sidebar-border); overflow-y: auto; background: var(--sidebar-bg); display: flex; flex-direction: column; }
.main-content { flex-grow: 1; padding: 0; display: flex; flex-direction: column; overflow: hidden; position: relative; }
.content-header { padding: 25px 35px 0; flex-shrink: 0; }
.item-list-container { padding: 0 35px 25px; flex-grow: 1; overflow: hidden; display: flex; flex-direction: column; }

.user-info { display: flex; justify-content: space-between; align-items: center; padding: 0 10px 15px; margin-bottom: 15px; border-bottom: 1px solid var(--sidebar-border); color: var(--text-color); flex-shrink: 0; }
.user-info a { color: var(--text-color-secondary); transition: color 0.2s; }
.user-info a:hover { color: var(--primary-color); }
.sidebar h2 { font-size: 1.5em; margin-bottom: 20px; color: var(--text-color); padding-left: 5px; flex-shrink: 0; }
.dir-tree { flex-grow: 1; overflow-y: auto; }
.dir-tree ul { list-style: none; padding-left: 15px; }
.dir-tree a { text-decoration: none; color: var(--text-color); font-weight: 500; display: flex; align-items: center; padding: 8px; border-radius: 6px; transition: all 0.2s ease; gap: 8px; word-break: break-all; }
.dir-tree a:hover { background-color: rgba(255, 255, 255, 0.1); }
.dir-tree a.active { background-color: var(--primary-color); color: #fff; }
.dir-tree svg { width: 18px; height: 18px; flex-shrink: 0; }

.disk-usage { margin-top: auto; padding-top: 20px; border-top: 1px solid var(--sidebar-border); flex-shrink: 0; }
.disk-usage h3 { font-size: 1em; font-weight: 600; margin-bottom: 10px; color: var(--text-color); }
.usage-bar-bg { width: 100%; height: 10px; background-color: rgba(0,0,0,0.1); border-radius: 5px; overflow: hidden; }
.usage-bar-fill { height: 100%; background-color: var(--primary-color); border-radius: 5px; }
.usage-details { display: flex; justify-content: space-between; font-size: 0.8em; margin-top: 5px; color: var(--text-color-secondary); }

.header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; }
.header h2 { font-size: 1.8em; margin: 0; color: var(--text-color); }
.header-actions { display: flex; gap: 10px; align-items: center; }
.actions-bar { display: flex; gap: 15px; margin-bottom: 20px; align-items: center; }
.actions-bar .btn, .upload-form .btn { padding: 8px 16px; font-size: 0.9em; }
.search-form { display: flex; align-items: center; background-color: var(--input-bg); border: 1px solid var(--input-border); border-radius: 8px; padding: 2px 8px; margin-left: auto; }
.search-form input { border: none; background: transparent; outline: none; padding: 8px; color: var(--text-color); width: 150px; transition: width 0.3s ease; }
.search-form input:focus { width: 200px; }
.search-form button { border: none; background: none; cursor: pointer; color: var(--text-color-secondary); padding: 5px; }
.search-form svg { width: 16px; height: 16px; }

.batch-actions-bar { position: sticky; top: 0; z-index: 10; display: flex; align-items: center; gap: 15px; background-color: color-mix(in srgb, var(--primary-color) 25%, var(--card-bg-color)); border: 1px solid color-mix(in srgb, var(--primary-color) 30%, transparent); border-radius: 12px; opacity: 0; visibility: hidden; height: 0; padding: 0 15px; margin-bottom: 0; overflow: hidden; transform: translateY(-20px); transition: all 0.3s ease-in-out; }
.batch-actions-bar.visible { opacity: 1; visibility: visible; height: auto; padding: 10px 15px; margin-bottom: 20px; transform: translateY(0); }
.batch-actions-bar .selection-count { font-weight: bold; color: var(--text-color); }
.select-all-container { display: flex; align-items: center; gap: 8px; font-size: 0.9em; color: var(--text-color-secondary); }
.select-all-container input[type="checkbox"] { accent-color: var(--primary-color); }

.upload-form { display: flex; gap: 15px; align-items: center; margin-bottom: 10px; }
.file-input-wrapper { position: relative; overflow: hidden; display: flex; align-items: center; flex-grow: 1; background-color: var(--secondary-btn-bg); border: 1px solid var(--secondary-btn-border); border-radius: 8px; }
.file-input-wrapper input[type=file] { position: absolute; left: 0; top: 0; opacity: 0; width: 100%; height: 100%; cursor: pointer; }
.file-input-text { padding-left: 15px; padding-right: 10px; color: var(--text-color-secondary); font-style: italic; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}

.item-list { list-style: none; padding: 0; flex-grow: 1; overflow-y: auto; margin-top: 20px; }
.item-list li { background: rgba(255, 255, 255, 0.05); padding: 10px 18px; border-radius: 8px; margin-bottom: 10px; display: flex; align-items: center; word-break: break-all; border: 1px solid rgba(255, 255, 255, 0.1); transition: background-color 0.2s; }
.item-list li:hover { background: var(--item-list-hover-bg); }
.item-list li.selected { background-color: var(--item-list-selected-bg); border-color: var(--primary-color); }
.item-checkbox { margin-right: 15px; flex-shrink: 0; width: 18px; height: 18px; accent-color: var(--primary-color); }
.item-name { flex-basis: 50%; flex-grow: 1; display: flex; align-items: center; gap: 10px; padding-right: 15px; overflow: hidden; }
.item-name svg { width: 24px; height: 24px; flex-shrink: 0; }
.item-name a, .item-name .item-name-text { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; text-decoration: none; color: var(--text-color); font-weight: 500; cursor: pointer; }
.item-name a:hover, .item-name .item-name-text:hover { color: var(--primary-color); }
.item-size, .item-date { flex-shrink: 0; text-align: right; color: var(--text-color-secondary); font-size: 0.9em; }
.item-date { flex-basis: 130px; padding-right: 5px; }
.item-size { flex-basis: 90px; padding-right: 5px; }
.item-actions { display: flex; gap: 5px; flex-shrink: 0; justify-content: flex-end; }
.item-actions .default-actions { display: flex; /*gap: 5px;*/ }

.rename-input { padding: 6px 10px; border: 1px solid var(--primary-color); box-shadow: 0 0 0 3px color-mix(in srgb, var(--primary-color) 40%, transparent); border-radius: 6px; font-size: 1em; flex-grow: 1; background-color: var(--input-bg); color: var(--text-color); }
.delete-confirm-buttons { display: none; }
.confirming-delete .default-actions { display: none; }
.confirming-delete .delete-confirm-buttons { display: flex; gap: 10px; }

.modal-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.4); display: none; justify-content: center; align-items: center; z-index: 1000; }
.modal-content { background: #fff; padding: 30px; border-radius: 15px; width: 90%; max-width: 400px; box-shadow: 0 5px 25px rgba(0,0,0,0.2); }
.modal-content h3 { margin-top: 0; font-size: 1.5em; color: var(--text-color); }
.modal-content .form-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 20px; }
#moveFolderTreeContainer { max-height: 250px; overflow-y: auto; border: 1px solid var(--input-border); border-radius: 8px; padding: 10px; margin-bottom: 20px; background-color: var(--input-bg); }
#moveFolderTreeContainer ul { list-style: none; padding-left: 15px; border-left: 1px solid var(--input-border); margin-left: 18px; /* 为竖线留出空间 */}
#moveFolderTreeContainer li { margin: 2px 0; }
#moveFolderTreeContainer label { display: flex; align-items: center; gap: 8px; padding: 8px; border-radius: 6px; cursor: pointer; color: var(--text-color); transition: background-color 0.2s; }
#moveFolderTreeContainer label:hover { background-color: rgba(0,0,0,0.05); }
#moveFolderTreeContainer label.disabled { opacity: 0.5; cursor: not-allowed; }
#moveFolderTreeContainer input[type="radio"] { accent-color: var(--primary-color); flex-shrink: 0; }
#moveFolderTreeContainer label svg { width: 18px; height: 18px; flex-shrink: 0; }
.delete-confirm-modal .modal-content { text-align: center; }
.delete-confirm-modal .modal-icon { font-size: 3em; color: var(--danger-color); margin-bottom: 15px; }
.delete-confirm-modal .modal-message { font-size: 1.1em; color: var(--text-color-secondary); margin-bottom: 25px; }
.delete-confirm-modal .btn-danger { background-color: var(--danger-color); }
.delete-confirm-modal .btn-danger:hover { background-color: var(--danger-color-hover); }

.admin-card { max-width: 800px; text-align: left; margin: auto; }
.setting-item { display: flex; justify-content: space-between; align-items: center; padding: 15px 0; border-bottom: 1px solid var(--input-border); }
.setting-item label { color: var(--text-color); }
.toggle-switch { position: relative; display: inline-block; width: 50px; height: 26px; }
.toggle-switch input { opacity: 0; width: 0; height: 0; }
.slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; transition: .4s; border-radius: 34px; }
.slider:before { position: absolute; content: ""; height: 18px; width: 18px; left: 4px; bottom: 4px; background-color: white; transition: .4s; border-radius: 50%; }
input:checked + .slider { background-color: var(--primary-color); }
input:checked + .slider:before { transform: translateX(24px); }

.btn { padding: 10px 18px; border: none; border-radius: 8px; background-color: var(--primary-color); color: white; font-size: 1em; font-weight: bold; cursor: pointer; transition: background-color 0.3s, transform 0.2s; white-space: nowrap;  text-decoration: none;}
.btn:hover { background-color: var(--primary-color-hover); transform: translateY(-2px); }
.btn-secondary { background-color: var(--secondary-btn-bg); color: var(--secondary-btn-text); border: 1px solid var(--secondary-btn-border); }
.btn-secondary:hover { background-color: var(--secondary-btn-hover-bg); }
.btn-danger { background-color: var(--danger-color); color: white; border: 1px solid transparent; }
.batch-actions-bar .btn-danger:hover, .btn-danger:hover { background-color: color-mix(in srgb, var(--danger-color), black 15%); }
.delete-confirm-buttons .btn-danger { background: var(--danger-bg); color: var(--danger-color); border: 1px solid var(--danger-border); }
.delete-confirm-buttons .btn-danger:hover { opacity: 0.8; }

.input-group input { width: 100%; padding: 14px 16px; background: var(--input-bg); border: 1px solid var(--input-border); border-radius: 10px; font-size: 1em; outline: none; box-sizing: border-box; color: var(--text-color); }
.message { padding: 12px; margin-bottom: 20px; border-radius: 8px; font-weight: bold; }
.message.success-message { color: var(--success-color, #27ae60); }
.message.error-message { color: var(--danger-color); }
.profile-card .error-message, .profile-card .success-message { padding: 12px; }

.progress-bar-container { display: none; width: 100%; background-color: #e0e0e0; border-radius: 8px; margin-bottom: 20px; overflow: hidden; }
.progress-bar { width: 0%; height: 20px; background-color: var(--primary-color); text-align: center; line-height: 20px; color: white; font-weight: bold; border-radius: 8px; transition: width 0.2s ease-in-out; }

.content-divider { display: flex; justify-content: space-between; align-items: center; margin: 15px 0 0 0; color: var(--text-color-secondary); gap: 1em; border-bottom: 1px solid var(--input-border); padding-bottom: 10px; }
.content-divider h4 { margin: 0; font-weight: 500; }
.sort-controls { display: flex; gap: 10px; }
.sort-controls a { display: flex; align-items: center; gap: 5px; text-decoration: none; padding: 4px 10px; border-radius: 6px; font-size: 0.9em; font-weight: 500; color: var(--text-color-secondary); border: 1px solid var(--input-border); transition: all 0.2s ease; }
.sort-controls a:hover { background-color: var(--secondary-btn-hover-bg); color: var(--text-color); }
.sort-controls a.active { color: var(--primary-color); background-color: color-mix(in srgb, var(--primary-color) 15%, transparent); border-color: var(--primary-color); }
.sort-arrow { display: inline-block; width: 0; height: 0; border-left: 4px solid transparent; border-right: 4px solid transparent; transition: transform 0.2s ease; }
.sort-arrow.asc { border-bottom: 5px solid; }
.sort-arrow.desc { border-top: 5px solid; }

.pagination-controls { display: flex; justify-content: space-between; align-items: center; padding: 20px 0 10px; color: var(--text-color-secondary); font-size: 0.9em; flex-shrink: 0; }
.pagination-links a, .pagination-links span { text-decoration: none; padding: 6px 12px; margin: 0 2px; border-radius: 6px; color: var(--text-color-secondary); border: 1px solid var(--input-border); }
.pagination-links a:hover { background-color: var(--secondary-btn-hover-bg); }
.pagination-links span.current { background-color: var(--primary-color); color: white; border-color: var(--primary-color); font-weight: bold; }
.pagination-links span.disabled { color: color-mix(in srgb, var(--text-color-secondary) 50%, transparent); background-color: transparent; cursor: not-allowed; }
.items-per-page-selector label { margin-right: 10px; }
.items-per-page-selector select { padding: 6px; border-radius: 6px; border: 1px solid var(--input-border); background-color: var(--input-bg); color: var(--text-color); }
.pagination-links select { -webkit-appearance: none; -moz-appearance: none; appearance: none; background-color: transparent; border: 1px solid var(--input-border); border-radius: 6px; padding: 5px 25px 5px 10px; margin: 0 5px; color: var(--text-color-secondary); font-size: 1em; cursor: pointer; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 8px center; background-size: 1.2em; }
body.theme-dark .pagination-links select { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23a0b0c0'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E"); }
body.theme-sunset .pagination-links select, body.theme-forest .pagination-links select { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23FFFFFF'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E"); }

.empty-list-item { justify-content: center; color: var(--text-color-secondary); background: transparent !important; border: none !important; padding: 40px 0; }
.item-actions .btn, .item-actions a.btn { padding: 6px 12px; font-size: 0.9em; text-decoration: none; }
.item-actions .delete-btn { /*background-color: var(--danger-bg);*/ color: var(--danger-color); border: 1px solid transparent;/*var(--danger-border);*/ }
.item-actions .delete-btn:hover { background-color: color-mix(in srgb, var(--danger-bg), black 5%); }
.item-actions a[href*="download.php"], .item-actions .move-btn { /*background-color: var(--primary-color);*/ color: #3775c5; border: 1px solid transparent; }
.item-actions a[href*="download.php"]:hover, .item-actions .move-btn:hover { background-color: var(--primary-color-hover); }

.icon-btn { display: flex; align-items: center; justify-content: center; background: none; border: none; padding: 6px; border-radius: 50%; cursor: pointer; color: var(--text-color-secondary); transition: background-color 0.2s, color 0.2s; }
.icon-btn:hover { background-color: var(--secondary-btn-hover-bg); color: var(--text-color); }
.icon-btn svg { width: 18px; height: 18px; }
.delete-btn.icon-btn:hover { color: var(--danger-color); }
.item-path {
    font-size: 0.8em;
    color: var(--text-color-secondary);
    margin-left: 10px;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    border: 1px solid var(--input-border);
    padding: 2px 6px;
    border-radius: 4px;
    background-color: var(--input-bg);
}
.item-path:hover {
    color: var(--primary-color);
    border-color: var(--primary-color);
}
/* 用户管理表格 */
.user-management-table { width: 100%; border-collapse: collapse; margin-top: 20px; }
.user-management-table th, .user-management-table td { padding: 12px; text-align: left; border-bottom: 1px solid var(--input-border); }
.user-management-table th { font-weight: 600; color: var(--text-color-secondary); }
.user-management-table td input[type="number"] { width: 80px; padding: 6px; border-radius: 6px; border: 1px solid var(--input-border); background-color: var(--input-bg); color: var(--text-color); }
/* admin.php 页面头部样式 */
.admin-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    border-bottom: 1px solid var(--input-border);
    padding-bottom: 20px;
}

.admin-header h2 {
    margin: 0;
    font-size: 2em;
}

.admin-header .header-actions {
    display: flex;
    gap: 10px;
}