/*
 Theme Name:   Hello Elementor Child
 Theme URI:    https://your-site.com
 Description:  Child theme for Hello Elementor — preserves custom code through parent theme updates.
 Author:       Your Name
 Author URI:   https://your-site.com
 Template:     hello-elementor
 Version:      1.0.0
 Text Domain:  hello-elementor-child
*/

/* =============================================
   FileBird Tree Shortcode Styles
   ============================================= */

.fbt-file-tree {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    font-size: 14px;
    line-height: 1.6;
    max-width: 700px;
    color: #333;
}

.fbt-file-tree ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.fbt-file-tree ul ul {
    padding-left: 20px;
    border-left: 1px solid #e0e0e0;
    margin-left: 8px;
}

/* Folder row */
.fbt-file-tree .fbt-folder > .fbt-folder-label {
    display: flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    padding: 4px 6px;
    border-radius: 4px;
    font-weight: 600;
    user-select: none;
    transition: background 0.15s ease;
}

.fbt-file-tree .fbt-folder > .fbt-folder-label:hover {
    background: #f0f4f8;
}

/* Hide children when folder is collapsed */
.fbt-file-tree .fbt-folder > .fbt-children {
    display: none;
}

.fbt-file-tree .fbt-folder.open > .fbt-children {
    display: block;
}

/* Toggle arrow */
.fbt-file-tree .fbt-toggle {
    display: inline-block;
    width: 16px;
    text-align: center;
    font-size: 10px;
    transition: transform 0.2s ease;
    color: #888;
    flex-shrink: 0;
}

.fbt-file-tree .fbt-folder.open > .fbt-folder-label .fbt-toggle {
    transform: rotate(90deg);
}

/* Folder icon */
.fbt-file-tree .fbt-icon-folder::before {
    content: "\1F4C1";
    font-size: 15px;
}

.fbt-file-tree .fbt-folder.open > .fbt-folder-label .fbt-icon-folder::before {
    content: "\1F4C2";
}

/* File row */
.fbt-file-tree .fbt-file {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 3px 6px 3px 28px;
    border-radius: 4px;
    transition: background 0.15s ease;
}

.fbt-file-tree .fbt-file:hover {
    background: #f0f4f8;
}

.fbt-file-tree .fbt-file a {
    color: #2271b1;
    text-decoration: none;
}

.fbt-file-tree .fbt-file a:hover {
    text-decoration: underline;
    color: #135e96;
}

/* File type icons */
.fbt-file-tree .fbt-icon-file::before {
    content: "\1F4C4";
    font-size: 14px;
}

.fbt-file-tree .fbt-icon-image::before {
    content: "\1F5BC";
    font-size: 14px;
}

.fbt-file-tree .fbt-icon-pdf::before {
    content: "\1F4D5";
    font-size: 14px;
}

.fbt-file-tree .fbt-icon-video::before {
    content: "\1F3AC";
    font-size: 14px;
}

.fbt-file-tree .fbt-icon-audio::before {
    content: "\1F3B5";
    font-size: 14px;
}

/* Empty folder message */
.fbt-file-tree .fbt-empty {
    padding: 3px 6px 3px 28px;
    color: #999;
    font-style: italic;
    font-size: 13px;
}
