/* --- Header Section --- */
header { 
    text-align: center; margin-bottom: 0; border-bottom: none; 
    padding-bottom: 20px; position: relative; z-index: 101; 
}

h1 { 
    margin: 0; color: #2c3e50; font-size: 2.5em; letter-spacing: -0.5px; 
    display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 10px; 
}

.subtitle-badge { 
    display: inline-flex; align-items: center; gap: 8px; 
    background-color: #000; padding: 6px 12px; border-radius: 6px; 
    transform: translateY(-10px); vertical-align: middle; box-shadow: 0 2px 4px rgba(0,0,0,0.1); 
}

.subtitle-badge span { color: #fff; font-size: 0.35em; text-transform: uppercase; letter-spacing: 1.5px; font-weight: 300; opacity: 0.9; }
.badge-logo { height: 16px; width: auto; display: block; filter: brightness(0) invert(1); }
.author-line { font-size: 1em; color: #7f8c8d; margin-top: 5px; font-weight: 500; }
.app-description { margin-top: 5px; color: #95a5a6; font-size: 0.9em; font-style: italic; }

/* --- Header Import Guide --- */
.header-import-guide {
    display: flex; justify-content: flex-start; align-items: flex-end; gap: 10px;
    margin-top: 5px; padding-left: 45px; opacity: 0.7; transition: opacity 0.3s;
}
.header-import-guide:hover { opacity: 1; }
.header-arrow-svg { width: 35px; height: auto; color: #95a5a6; transform: rotate(0deg); margin-bottom: -5px; }
.header-guide-text {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    font-size: 0.9em; line-height: 1.2; text-align: left; color: #7f8c8d; font-style: italic; font-weight: 500; margin: 0;
}

/* --- Detailed Info Header (Editor) --- */
.file-info-container {
    background: #fff; border-radius: 8px; margin-bottom: 20px;
    border: 1px solid #dcdde1; overflow: hidden; display: none; box-shadow: 0 2px 5px rgba(0,0,0,0.02);
}
.file-info-header { 
    padding: 15px 20px; display: flex; align-items: center; gap: 15px;
    background: #fff; border-bottom: 1px solid transparent; transition: border-color 0.3s;
}
.file-info-container.expanded .file-info-header { border-bottom: 1px solid #eee; }
.header-text-group { display: flex; flex-direction: column; gap: 4px; flex-grow: 1; overflow: hidden; }
.header-profile-title { font-size: 1.2em; font-weight: 700; color: #2c3e50; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: 1.2; }
.header-meta-line { font-size: 0.9em; color: #7f8c8d; display: flex; align-items: center; gap: 8px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.meta-separator { color: #bdc3c7; font-size: 0.8em; }
.header-actions { display: flex; gap: 10px; margin-left: auto; flex-shrink: 0; }
.extended-info { display: none; background: #fff; padding: 20px; animation: slideDown 0.2s ease-out; }
@keyframes slideDown { from { opacity: 0; transform: translateY(-5px); } to { opacity: 1; transform: translateY(0); } }