/* Colours, fonts and radii come from --fs-* custom properties so each site can
   theme the widget from its own stylesheet. The fallbacks are the neutral defaults. */
.fs-box{position:relative;margin:.6rem 0;padding:.9rem 1rem;font-family:var(--fs-font,inherit);
  background:var(--fs-card-bg,#f9fafb);border:1px solid var(--fs-line,#d1d5db);
  border-radius:var(--fs-radius-card,.5rem)}
.fs-prompt{display:block;margin-bottom:.5rem;font-size:.95rem;font-weight:600;color:var(--fs-ink,#111827)}
.fs-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.fs-code{display:inline-flex;align-items:center;min-height:var(--fs-control-h,2.6rem);
  font-family:ui-monospace,Menlo,Consolas,monospace;font-size:1.25rem;font-weight:700;letter-spacing:.25em;
  background:var(--fs-code-bg,#fff);color:var(--fs-ink,#111827);border:2px solid var(--fs-code-border,#374151);
  border-radius:var(--fs-radius,.375rem);padding:0 .35em 0 .6em;line-height:1.2;white-space:nowrap}
.fs-input{box-sizing:border-box;width:8rem;min-height:var(--fs-control-h,2.6rem);padding:0 .6rem;
  font-family:ui-monospace,Menlo,Consolas,monospace;font-size:1rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--fs-ink,#111827);background:var(--fs-field-bg,#fff);border:1px solid var(--fs-line,#6b7280);
  border-radius:var(--fs-radius,.375rem)}
.fs-input:focus{outline:2px solid var(--fs-accent,#111827);outline-offset:1px}
.fs-refresh{display:inline-flex;align-items:center;justify-content:center;min-width:var(--fs-control-h,2.6rem);
  min-height:var(--fs-control-h,2.6rem);padding:0 .5rem;font-size:1.1rem;line-height:1;cursor:pointer;
  color:var(--fs-ink,#374151);background:var(--fs-field-bg,#fff);border:1px solid var(--fs-line,#6b7280);
  border-radius:var(--fs-radius,.375rem)}
.fs-refresh:hover,.fs-refresh:focus{background:var(--fs-code-bg,#f3f4f6);
  outline:2px solid var(--fs-accent,#111827);outline-offset:1px}
.fs-status{margin:.55rem 0 0;min-height:1.2em;font-size:.8125rem;color:var(--fs-muted,#374151)}
.fs-error{margin:.25rem 0;font-size:.875rem;color:var(--fs-error,#b91c1c)}
.fs-hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}