/* === File Analyzer === */
.fa-drop{
  border:2px dashed var(--border-strong);border-radius:var(--radius);padding:28px 20px;
  text-align:center;background:var(--bg-soft);cursor:pointer;transition:all 0.15s;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;
  min-height:140px;
}
.fa-drop:hover,.fa-drop.dragover{background:var(--accent-bg);border-color:var(--primary)}
.fa-drop .icon{font-size:32px;line-height:1;margin-bottom:4px}
.fa-drop .title{font-size:14px;font-weight:600;color:var(--text)}
.fa-drop .sub{font-size:11.5px;color:var(--text-muted)}
.fa-drop input{display:none}

.fa-status{
  display:none;padding:10px 12px;background:#EFF6FF;border:1px solid #DBEAFE;
  border-radius:5px;font-size:12px;color:var(--primary);margin-top:10px;
}
.fa-status.show{display:block}
.fa-status .spinner{display:inline-block;width:12px;height:12px;border:2px solid #DBEAFE;border-top-color:var(--primary);border-radius:50%;animation:fa-spin 0.8s linear infinite;margin-right:6px;vertical-align:middle}
@keyframes fa-spin{to{transform:rotate(360deg)}}
.fa-status.error{background:var(--warn-bg);border-color:#FECACA;color:var(--warn)}
.fa-status.ok{background:var(--success-bg);border-color:#BBF7D0;color:var(--success)}

.fa-files{margin-top:12px;display:none}
.fa-files.show{display:block}
.fa-files .fa-file{
  background:var(--bg-soft);border:1px solid var(--border);border-radius:6px;
  padding:10px 12px;margin-bottom:8px;
}
.fa-files .fa-file .fa-fhead{
  display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12.5px;
  font-weight:600;color:var(--text);margin-bottom:6px;
}
.fa-files .fa-file .fa-fhead .fa-fname{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fa-files .fa-file .fa-fhead .fa-fsize{color:var(--text-muted);font-size:11px;font-family:"SF Mono",Consolas,monospace}

.fa-section{margin-top:8px}
.fa-section .fa-shead{
  font-size:11px;font-weight:700;color:var(--text-sub);text-transform:uppercase;letter-spacing:0.3px;
  margin-bottom:5px;display:flex;align-items:center;gap:5px;
}
.fa-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:6px}
.fa-card{
  background:#fff;border:1px solid var(--border);border-radius:5px;padding:7px 9px;
  cursor:pointer;font-size:11px;text-align:left;transition:all 0.15s;
  font-family:inherit;
}
.fa-card:hover{border-color:var(--primary);background:var(--accent-bg);transform:translateY(-1px)}
.fa-card .fa-c-size{font-family:"SF Mono",Consolas,monospace;font-weight:700;color:var(--primary);font-size:12px}
.fa-card .fa-c-meta{color:var(--text-muted);font-size:10px;margin-top:2px}
.fa-card .fa-c-count{
  display:inline-block;background:var(--primary);color:#fff;font-size:9px;font-weight:700;
  padding:1px 5px;border-radius:6px;margin-left:4px;font-family:inherit;
}
.fa-fmt-chips{display:flex;flex-wrap:wrap;gap:4px}
.fa-fmt-chips .fa-fmt{
  background:#F5F3FF;color:#6B21A8;font-size:10.5px;font-weight:600;
  padding:2px 8px;border-radius:9px;border:1px solid #DDD6FE;
}
.fa-context{
  background:#fff;border:1px solid var(--border);border-radius:4px;padding:6px 8px;
  font-size:10.5px;color:var(--text-sub);font-family:"SF Mono",Consolas,monospace;
  max-height:80px;overflow-y:auto;line-height:1.5;
}
.fa-prefill-btn{
  margin-top:6px;padding:6px 12px;font-size:11.5px;border:1px solid var(--primary);
  background:var(--accent-bg);color:var(--primary);border-radius:4px;cursor:pointer;
  font-weight:600;font-family:inherit;
}
.fa-prefill-btn:hover{background:var(--primary);color:#fff}
.fa-prefill-btn.batch{background:var(--primary);color:#fff}
.fa-prefill-btn.batch:hover{background:var(--primary-hover)}

.fa-batch-bar{
  display:flex;justify-content:space-between;align-items:center;gap:10px;
  padding:10px 12px;background:var(--bg-tint);border:1px solid var(--border);border-radius:5px;
  margin-top:10px;font-size:12px;
}
.fa-batch-bar .fa-count{font-weight:700;color:var(--primary)}
.fa-batch-bar .fa-batch-actions{display:flex;gap:6px}

