/* PDFlyHQ — tools/pdf-to-jpg/options.css
   File card + quality level-selector + actions. Matches _Options.cshtml.
   JS contract: #file-name, #file-size, #page-count, #btn-remove-file,
   .level-btn[data-level] in #level-selector, #btn-convert, #btn-back. */

.options-wrap { display: flex; flex-direction: column; gap: var(--space-6); }

.file-card {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4);
  background: color-mix(in srgb, var(--color-primary-500) 6%, var(--color-surface-alt));
  border: 1px solid color-mix(in srgb, var(--color-primary-500) 18%, var(--color-border));
  border-radius: var(--radius-md);
  font-size: var(--text-sm);
}
.file-card__icon { flex: none; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; background: var(--color-surface); border-radius: var(--radius-sm); color: var(--color-primary-600); }
.file-card__icon svg { width: 20px; height: 20px; }
.file-card__meta { display: flex; flex-direction: column; min-width: 0; margin-right: auto; }
.file-card__meta #file-name { font-weight: var(--font-semibold); color: var(--color-text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.file-card__meta #file-size { font-size: var(--text-xs); color: var(--color-text-muted); }
.file-card__meta #page-count { color: var(--color-text-secondary); }

#btn-remove-file {
  flex: none;
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-sm);
  color: var(--color-text-muted);
  transition: color var(--duration-base) var(--ease-default), background-color var(--duration-base) var(--ease-default);
}
#btn-remove-file:hover { color: var(--color-danger-500); background: var(--color-danger-50); }
#btn-remove-file:focus-visible { outline: none; box-shadow: var(--shadow-focus); }
#btn-remove-file svg { width: 14px; height: 14px; }

.options-group { display: flex; flex-direction: column; gap: var(--space-3); }
.options-group__label { font-size: var(--text-xs); font-weight: var(--font-semibold); text-transform: uppercase; letter-spacing: 0.06em; color: var(--color-text-muted); }

/* ── Quality level — segmented control with descriptions ── */
.level-selector { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-2); }
.level-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-1);
  padding: var(--space-3) var(--space-2);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface);
  color: var(--color-text-secondary);
  transition: border-color var(--duration-base) var(--ease-default),
              background-color var(--duration-base) var(--ease-default),
              color var(--duration-base) var(--ease-default);
}
.level-btn:hover { border-color: var(--color-primary-400); }
.level-btn:focus-visible { outline: none; border-color: var(--color-primary-500); box-shadow: var(--shadow-focus); }
.level-btn__row { display: inline-flex; align-items: center; gap: var(--space-2); font-weight: var(--font-semibold); font-size: var(--text-sm); }
.level-btn__desc { font-size: var(--text-xs); color: var(--color-text-muted); }

.level-btn.active {
  border-color: var(--color-primary-500);
  background: color-mix(in srgb, var(--color-primary-500) 8%, transparent);
  color: var(--color-primary-700);
}
:root[data-theme="dark"] .level-btn.active { color: var(--color-primary-400); }
.level-btn.active .level-btn__desc { color: var(--color-primary-600); }

.level-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--color-neutral-400); }
.level-btn[data-level="low"] .level-dot { background: var(--color-success-500); }
.level-btn[data-level="medium"] .level-dot { background: var(--color-warning-500); }
.level-btn[data-level="high"] .level-dot { background: var(--color-danger-500); }

.options-note {
  display: flex;
  align-items: flex-start;
  gap: var(--space-2);
  font-size: var(--text-xs);
  color: var(--color-text-muted);
  background: var(--color-surface-alt);
  border-radius: var(--radius-md);
  padding: var(--space-3);
}
.options-note svg { flex: none; width: 14px; height: 14px; margin-top: 1px; color: var(--color-text-muted); }

.options-actions { display: flex; gap: var(--space-3); padding-top: var(--space-4); border-top: 1px solid var(--color-border); }
.options-actions .btn--primary { flex: 1; }
