/* FYCOM 3D Viewer v1.0.3 — interface refinement. Scoped, no server changes. */
.fy-files{margin-top:18px;padding:18px;border:1px solid var(--line,#444);border-radius:14px;background:var(--panel,#17191f);min-width:0}
.fy-files-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px}
.fy-files-heading{font-size:13px;font-weight:800;display:block;color:var(--ink)}
.fy-files-heading small{display:block;color:var(--muted);font-size:11px;font-weight:500;margin-top:5px}
.fy-model-row,.fy-attachment-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:12px 14px;background:var(--panel2);border:1px solid var(--line);border-radius:10px;min-width:0}
.fy-file-label{flex:1;min-width:120px;font-size:12px;font-weight:700}
.fy-download,.fy-upload-button,.fy-pick{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:9px 13px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--ink);font-size:11px;font-weight:700;line-height:1.3;font-family:inherit;text-decoration:none;cursor:pointer;white-space:nowrap}
.fy-download:hover,.fy-pick:hover{border-color:var(--accent);color:var(--accent)}
.fy-files-subtitle{margin:19px 0 10px;font-size:12px;font-weight:800;color:var(--ink)}
.fy-files-list{display:grid;gap:8px}
.fy-attachment-link{flex:1;min-width:120px;overflow-wrap:anywhere;font-size:12px;font-weight:700;color:var(--ink)}
.fy-attachment-row small{font-size:11px;color:var(--muted);white-space:nowrap}
.fy-download-small{min-height:32px;padding:7px 11px}
.fy-files-empty{margin:0;padding:12px 4px;color:var(--muted);font-size:11px}
.fy-files-upload{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:13px;padding:12px;border-radius:10px;border:1px dashed var(--line)}
.fy-files-upload .fy-file-input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;overflow:hidden!important;pointer-events:none!important}
.fy-selected-file{color:var(--muted);font-size:11px;flex:1;min-width:120px;overflow-wrap:anywhere}
.fy-upload-button{background:var(--accent);color:#12151a;border-color:transparent;font-weight:800}
.fy-upload-button:hover{filter:brightness(1.06)}
.fy-upload-button:disabled{opacity:.5;cursor:wait}
.fy-files-status{min-height:1em;margin:10px 0 0;font-size:11px;color:var(--muted)}
.fy-external{padding:17px 19px;border:1px solid var(--line);border-radius:13px;margin-bottom:16px;background:var(--panel2)}
.fy-external input{width:min(570px,100%);margin:8px 8px 8px 0;padding:10px;border-radius:9px;border:1px solid var(--line);background:var(--panel);color:var(--ink)}
/* Sidebar selection: consistent in gallery, private library and administration */
.sidebar .nav.active{box-shadow:inset 3px 0 0 var(--accent);background:var(--panel2);color:var(--ink)}
:root[data-theme="light"] .sidebar .nav.active{background:#eaf4d9;color:#355b0d}
/* Center the SVG/icon regardless of light/dark theme. */
#ui-theme.fy-theme-centered{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;line-height:1!important;vertical-align:middle!important}
#ui-theme.fy-theme-centered .fy-icon,#ui-theme.fy-theme-centered img,#ui-theme.fy-theme-centered svg{display:block!important;flex:0 0 auto!important;margin:0!important;object-fit:contain!important;object-position:center!important;vertical-align:middle!important}
#ui-theme.fy-theme-centered .fy-icon{width:22px!important;height:22px!important;min-width:22px!important}
@media(max-width:650px){.fy-attachment-row,.fy-model-row{gap:8px}.fy-files{padding:12px}.fy-selected-file{flex-basis:100%}.fy-download-small{margin-left:auto}}
