/* Reset et styles de base */
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

/* Thème Sombre (Défaut) */
body {
	font-family: 'Consolas', 'Monaco', 'Courier New', monospace;
	background: #1e1e1e;
	color: #d4d4d4;
	overflow: hidden;
	height: 100vh;
	--bg-color: #1e1e1e;
	--text-color: #d4d4d4;
	--header-bg: #2d2d30;
	--header-border: #3e3e42;
	--sidebar-bg: #252526;
	--sidebar-border: #3e3e42;
	--sidebar-header-bg: #2d2d30;
	--input-bg: #3c3c3c;
	--input-border: #555;
	--input-focus-border: #007acc;
	--btn-bg: #007acc;
	--btn-text: white;
	--btn-hover-bg: #005a9e;
	--btn-danger-bg: #e74c3c;
	--btn-danger-hover-bg: #c0392b;
	--btn-success-bg: #27ae60;
	--btn-success-hover-bg: #219a52;
	--tab-bg: #252526;
	--tab-active-bg: #1e1e1e;
	--tab-border: #3e3e42;
	--tab-active-border-bottom: #007acc;
	--breadcrumb-bg: #252526;
	--breadcrumb-text: #9cdcfe;
	--breadcrumb-separator: #6c6c6c;
	--welcome-text: #6c6c6c;
	--welcome-heading: #d4d4d4;
	--status-bar-bg: #007acc;
	--status-bar-text: white;
	--context-menu-bg: #2d2d30;
	--context-menu-border: #3e3e42;
	--context-menu-hover-bg: #3c3c3c;
	--modal-overlay-bg: rgba(0, 0, 0, 0.7);
	--modal-content-bg: #2d2d30;
	--scrollbar-track-bg: #2d2d30;
	--scrollbar-thumb-bg: #555;
	--scrollbar-thumb-hover-bg: #777;
	--file-item-hover-bg: #2a2d2e;
	--folder-toggle-color: #9cdcfe;
	--no-files-text-color: #6c6c6c;
}

/* Thème Clair */
body.light-theme {
	--bg-color: #f8f9fa;
	--text-color: #212529;
	--header-bg: #e9ecef;
	--header-border: #ced4da;
	--sidebar-bg: #f1f3f5;
	--sidebar-border: #dee2e6;
	--sidebar-header-bg: #e9ecef;
	--input-bg: #ffffff;
	--input-border: #ced4da;
	--input-focus-border: #007acc;
	--btn-bg: #007acc;
	--btn-text: white;
	--btn-hover-bg: #005a9e;
	--btn-danger-bg: #dc3545;
	--btn-danger-hover-bg: #c82333;
	--btn-success-bg: #28a745;
	--btn-success-hover-bg: #218838;
	--tab-bg: #f1f3f5;
	--tab-active-bg: #ffffff;
	--tab-border: #dee2e6;
	--tab-active-border-bottom: #007acc;
	--breadcrumb-bg: #f1f3f5;
	--breadcrumb-text: #007acc;
	--breadcrumb-separator: #6c757d;
	--welcome-text: #495057;
	--welcome-heading: #212529;
	--status-bar-bg: #007acc;
	--status-bar-text: white;
	--context-menu-bg: #ffffff;
	--context-menu-border: #ced4da;
	--context-menu-hover-bg: #e9ecef;
	--modal-overlay-bg: rgba(0, 0, 0, 0.5);
	--modal-content-bg: #ffffff;
	--scrollbar-track-bg: #e9ecef;
	--scrollbar-thumb-bg: #adb5bd;
	--scrollbar-thumb-hover-bg: #868e96;
	--file-item-hover-bg: #e9ecef;
	--folder-toggle-color: #007acc;
	--no-files-text-color: #6c757d;
}

body {
	background: var(--bg-color);
	color: var(--text-color);
}

/* Layout principal */
.header {
	background: var(--header-bg);
	border-bottom: 1px solid var(--header-border);
	padding: 10px 15px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 50px;
	flex-shrink: 0;
}

.container {
	display: flex;
	height: calc(100vh - 90px);
}

.sidebar {
	width: 300px;
	background: var(--sidebar-bg);
	border-right: 1px solid var(--sidebar-border);
	display: flex;
	flex-direction: column;
	flex-shrink: 0;
}

.main-content {
	flex: 1;
	display: flex;
	flex-direction: column;
	min-width: 0;
}

/* Modal */
.modal {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: var(--modal-overlay-bg);
	display: none;
	align-items: center;
	justify-content: center;
	z-index: 10001;
}

.modal.active {
	display: flex;
}

.modal-content {
	background: var(--modal-content-bg);
	padding: 25px;
	border-radius: 8px;
	min-width: 350px;
	max-width: 500px;
	box-shadow: 0 5px 15px rgba(0,0,0,0.2);
	color: var(--text-color);
}

.modal-header {
	font-size: 20px;
	margin-bottom: 20px;
	color: var(--text-color);
	font-weight: 500;
}

.modal-input {
	width: 100%;
	padding: 10px;
	background: var(--input-bg);
	border: 1px solid var(--input-border);
	color: var(--text-color);
	border-radius: 4px;
	margin-bottom: 20px;
	font-size: 14px;
}
.modal-input:focus {
	outline: none;
	border-color: var(--input-focus-border);
}
body.light-theme .modal-input:focus {
	box-shadow: 0 0 0 0.2rem rgba(0,122,204,.25);
}

.modal-buttons {
	display: flex;
	gap: 10px;
	justify-content: flex-end;
}

/* Drag & Drop */
.drop-zone {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 122, 204, 0.1);
	border: 3px dashed #007acc;
	display: none;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	color: #007acc;
	z-index: 9999;
	pointer-events: none;
}

.drop-zone.active {
	display: flex;
	pointer-events: all;
}
body.light-theme .drop-zone {
	background: rgba(0, 122, 204, 0.05);
	border-color: #005a9e;
	color: #005a9e;
}

/* Scrollbars */
::-webkit-scrollbar {
	width: 10px;
	height: 10px;
}

::-webkit-scrollbar-track {
	background: var(--scrollbar-track-bg);
}

::-webkit-scrollbar-thumb {
	background: var(--scrollbar-thumb-bg);
	border-radius: 5px;
	border: 2px solid var(--scrollbar-track-bg);
}

::-webkit-scrollbar-thumb:hover {
	background: var(--scrollbar-thumb-hover-bg);
}