@font-face {
    font-family: 'Horizon';
    src: url('path/to/horizon-font.woff2') format('woff2'),
         url('path/to/horizon-font.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

.font-horizon {
    font-family: 'Horizon', sans-serif;
}

body {
    font-family: 'Poppins', sans-serif;
}

.dark {
    color-scheme: dark;
}

::-webkit-scrollbar {
    width: 10px;
}

::-webkit-scrollbar-track {
    background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 5px;
}

::-webkit-scrollbar-thumb:hover {
    background: #555;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

.animate-fadeIn {
    animation: fadeIn 0.5s ease-in-out;
}

@keyframes slideInFromLeft {
    0% {
        transform: translateX(-100%);
        opacity: 0;
    }
    100% {
        transform: translateX(0);
        opacity: 1;
    }
}

.animate-slideIn {
    animation: slideInFromLeft 0.5s ease-in-out;
}

.hover-scale {
    transition: transform 0.3s ease-in-out;
}

.hover-scale:hover {
    transform: scale(1.05);
}

#file-preview img,
#file-preview video {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

#file-preview iframe {
    width: 100%;
    height: 100%;
    border: none;
}

.file-item, .folder-item {
    transition: all 0.3s ease-in-out;
}

.file-item:hover, .folder-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

#breadcrumb {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
}

#breadcrumb::-webkit-scrollbar {
    display: none;
}