/**
 * File Type Icons CSS
 * 
 * This CSS provides fallback icons for file types when no thumbnail is available
 * These are based on FontAwesome classes with appropriate colors
 */

/* Base file type colors */
.file-type-document {
    color: #2196F3;
}

.file-type-image {
    color: #4CAF50;
}

.file-type-video {
    color: #E91E63;
}

.file-type-audio {
    color: #9C27B0;
}

.file-type-archive {
    color: #FF9800;
}

.file-type-code {
    color: #009688;
}

.file-type-file {
    color: #9E9E9E;
}

.file-type-database {
    color: #1565C0;
}

/* Specific file type colors */
.file-type-pdf {
    color: #F44336;
}

.file-type-word {
    color: #2196F3;
}

.file-type-excel {
    color: #4CAF50;
}

.file-type-powerpoint {
    color: #FF5722;
}

.file-type-text {
    color: #607D8B;
}

.file-type-psd {
    color: #03A9F4;
}

.file-type-ai {
    color: #FF9800;
}

.file-type-vector {
    color: #FF5722;
}

.file-type-sql {
    color: #1565C0;
}

.file-type-3d-model {
    color: #607D8B;
}

/* Background versions with lower opacity */
.file-type-bg-document {
    background-color: rgba(33, 150, 243, 0.1);
}

.file-type-bg-image {
    background-color: rgba(76, 175, 80, 0.1);
}

.file-type-bg-video {
    background-color: rgba(233, 30, 99, 0.1);
}

.file-type-bg-audio {
    background-color: rgba(156, 39, 176, 0.1);
}

.file-type-bg-archive {
    background-color: rgba(255, 152, 0, 0.1);
}

.file-type-bg-code {
    background-color: rgba(0, 150, 136, 0.1);
}

.file-type-bg-file {
    background-color: rgba(158, 158, 158, 0.1);
}

.file-type-bg-database {
    background-color: rgba(21, 101, 192, 0.1);
}

.file-type-bg-pdf {
    background-color: rgba(244, 67, 54, 0.1);
}

.file-type-bg-word {
    background-color: rgba(33, 150, 243, 0.1);
}

.file-type-bg-excel {
    background-color: rgba(76, 175, 80, 0.1);
}

.file-type-bg-powerpoint {
    background-color: rgba(255, 87, 34, 0.1);
}

.file-type-bg-text {
    background-color: rgba(96, 125, 139, 0.1);
}

.file-type-bg-psd {
    background-color: rgba(3, 169, 244, 0.1);
}

.file-type-bg-ai {
    background-color: rgba(255, 152, 0, 0.1);
}

.file-type-bg-vector {
    background-color: rgba(255, 87, 34, 0.1);
}

.file-type-bg-sql {
    background-color: rgba(21, 101, 192, 0.1);
}

.file-type-bg-3d-model {
    background-color: rgba(96, 125, 139, 0.1);
}

/* File extension mappings */
/* Documents */
.file-ext-doc,
.file-ext-docx {
    color: #2196F3;
}

.file-ext-txt,
.file-ext-rtf {
    color: #607D8B;
}

/* Spreadsheets */
.file-ext-xls,
.file-ext-xlsx,
.file-ext-csv {
    color: #4CAF50;
}

/* Presentations */
.file-ext-ppt,
.file-ext-pptx {
    color: #FF5722;
}

/* Code/Development */
.file-ext-html,
.file-ext-css {
    color: #009688;
}

.file-ext-js {
    color: #FFC107;
}

.file-ext-php {
    color: #673AB7;
}

.file-ext-json {
    color: #00BCD4;
}

.file-ext-xml {
    color: #3F51B5;
}

.file-ext-sql {
    color: #1565C0;
}

/* Archives */
.file-ext-zip,
.file-ext-rar,
.file-ext-tar,
.file-ext-gz,
.file-ext-7z {
    color: #FF9800;
}

/* Audio */
.file-ext-mp3,
.file-ext-wav,
.file-ext-ogg,
.file-ext-flac,
.file-ext-m4a {
    color: #9C27B0;
}

/* Video */
.file-ext-mp4,
.file-ext-avi,
.file-ext-mov,
.file-ext-wmv,
.file-ext-mkv {
    color: #E91E63;
}

/* Images */
.file-ext-jpg,
.file-ext-jpeg,
.file-ext-png,
.file-ext-gif,
.file-ext-bmp {
    color: #4CAF50;
}

.file-ext-svg {
    color: #FF5722;
}

/* Special formats */
.file-ext-pdf {
    color: #F44336;
}

.file-ext-psd {
    color: #03A9F4;
}

.file-ext-ai {
    color: #FF9800;
}

.file-ext-eps {
    color: #FF5722;
}

/* 3D Model formats */
.file-ext-stl,
.file-ext-obj,
.file-ext-3ds {
    color: #607D8B;
}

/* File type icon container */
.file-icon-container {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 8px;
    margin-right: 10px;
    font-size: 1.5rem;
}

/* Medium size */
.file-icon-md {
    width: 64px;
    height: 64px;
    font-size: 2rem;
}

/* Large size */
.file-icon-lg {
    width: 96px;
    height: 96px;
    font-size: 3rem;
}

/* Extra large size for previews */
.file-icon-xl {
    width: 128px;
    height: 128px;
    font-size: 4rem;
    border-radius: 16px;
}