.doc-html-page [hidden], .doc-job [hidden] { display: none !important; }
.doc-html-modes { border: 0; padding: 0; margin: 0; min-width: 0; }
.doc-html-modes legend { margin-bottom: 8px; }
.doc-html-modes__options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; max-width: 640px; }
.doc-html-modes__options label { position: relative; min-width: 0; cursor: pointer; }
.doc-html-modes__options input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.doc-html-modes__options span { display: flex; align-items: center; justify-content: center; height: 100%; min-height: 48px; padding: 8px; box-sizing: border-box; border: 1px solid var(--border); border-radius: 8px; background: var(--surface, #fff); text-align: center; font-size: 14px; font-weight: 600; }
.doc-html-modes__options input:checked + span { color: var(--primary, #4f46e5); border-color: currentColor; background: #eef0ff; }
.doc-html-modes__options input:focus-visible + span { outline: 2px solid var(--primary, #4f46e5); outline-offset: 3px; }
.doc-html-modes:disabled { opacity: .65; }
.doc-html-page .doc-html-inputs:not([data-source-mode="both"]) { grid-template-columns: minmax(0, 1fr); max-width: 800px; }
.doc-html-page .doc-html-inputs:not([data-source-mode="both"]) .doc-html-field__head { min-height: 0; }
.doc-html-page .doc-html-field { min-width: 0; }
.doc-html-page .doc-html-field__head { display: grid; align-content: start; gap: 6px; min-height: 86px; margin-bottom: 12px; }
.doc-html-page .doc-html-field__head .label, .doc-html-page p { margin-top: 0; }
.doc-html-page .doc-html-field__actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.doc-html-page .doc-html-field__foot { margin-top: 8px; }
.doc-html-page .doc-html-field__foot p { margin-bottom: 0; }
.doc-html-page .doc-html-textarea { min-height: 180px; width: 100%; }
.doc-html-page .ui-upload { min-height: 180px; }
.doc-html-page .doc-html-run { display: flex; gap: 16px; align-items: center; flex-wrap: wrap; border-top: 1px solid var(--border); padding-top: 16px; }
.doc-html-run__state { display: grid; gap: 4px; min-width: 0; flex: 1 1 220px; }
.doc-html-page .doc-html-private-note { margin: 4px 0 0; }
.doc-html-page .doc-html-counter { font-size: 13px; color: var(--text-muted); overflow-wrap: anywhere; }
.doc-html-page .doc-html-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin: 24px 0; }
.doc-html-fact { display: grid; gap: 6px; align-content: start; }
.doc-html-details__body { display: grid; gap: 12px; padding: 16px; }
.doc-html-details__body p { margin: 0; }
.doc-html-page { padding-bottom: 100px; }
.doc-html-floating { display: flex; align-items: center; justify-content: space-between; gap: 16px; position: fixed; bottom: 16px; left: var(--doc-launch-left, 16px); right: var(--doc-launch-right, 16px); padding: 12px 16px; background: var(--surface, #fff); border: 1px solid var(--border); border-radius: 8px; box-shadow: 0 4px 20px rgb(0 0 0 / 10%); z-index: 25; }
.doc-html-floating__state { display: grid; gap: 4px; min-width: 0; font-size: 14px; overflow-wrap: anywhere; }
.doc-html-floating__state .helper { font-size: 12px; }
.doc-html-floating .btn { flex: 0 0 auto; }
#docHtmlError { white-space: pre-line; overflow-wrap: anywhere; scroll-margin: 20px; }
.doc-job .doc-job__hero { display: flex; justify-content: space-between; gap: 20px; align-items: start; }
.doc-job .doc-job__hero > div:first-child { min-width: 0; }
.doc-job .doc-job__actions { margin: 0; flex: 0 0 auto; }
.doc-job .doc-job__top { display: flex; gap: 16px; align-items: center; }
.doc-job .doc-job__percent { min-width: 80px; font-size: 28px; }
.doc-job .doc-job__meta { display: flex; flex-wrap: wrap; gap: 12px 24px; padding: 12px 0; border-bottom: 1px solid var(--border); }
.doc-job .doc-job__stat { display: flex; align-items: baseline; gap: 8px; }
.doc-job .doc-job__stat strong { font-size: 18px; }
.doc-job .doc-job__items { list-style: none; margin: 12px 0; padding: 0; gap: 0; }
.doc-job .doc-job__item { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px 16px; padding: 16px 0; }
.doc-job .doc-job__document { display: grid; gap: 4px; min-width: 0; }
.doc-job .doc-job__source, .doc-job .doc-job__detail { overflow-wrap: anywhere; }
.doc-job .doc-job__source { font-size: 14px; }
.doc-job .doc-job__state { font-size: 13px; font-weight: 700; align-self: start; }
.doc-job .doc-job__state.is-error { color: var(--danger); }
.doc-job .doc-job__state.is-success { color: var(--success); }
.doc-job .doc-job__state.is-warning { color: #805600; }
.doc-job .doc-job__detail { grid-column: 1 / -1; font-size: 14px; margin: 0; color: var(--text-muted); }
.doc-job .doc-job__code { grid-column: 1 / -1; min-width: 0; }
.doc-job .doc-job__code-body { display: grid; gap: 12px; padding: 16px; min-width: 0; }
.doc-job .doc-job__code-input { display: block; width: 100%; min-width: 0; height: 300px; box-sizing: border-box; resize: vertical; font: 14px/1.6 ui-monospace, monospace; overflow-wrap: anywhere; }
.doc-job .doc-job__code-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.doc-job .doc-job__code-actions .btn { min-width: 0; white-space: normal; }
.doc-job .doc-job__original { font-size: 13px; border: 0; }
.doc-job .doc-job__original summary { padding: 4px 0; }
.doc-job .doc-job__code-body .helper { margin: 0; }
.doc-job .doc-job__notice { line-height: 1.55; overflow-wrap: anywhere; }
.doc-job .alert-warning { color: #674700; background: #fff8df; border: 1px solid #d9bb70; }
.doc-job .alert-info { color: var(--text); background: var(--surface-muted); border: 1px solid var(--border); }
@media (max-width: 767px) {
  .doc-html-modes__options { gap: 6px; }
  .doc-html-modes__options span { padding: 6px; font-size: 12px; line-height: 1.4; }
  .doc-html-page .doc-html-field__head { min-height: 0; }
  .doc-html-page .doc-html-inputs, .doc-html-page .doc-html-facts { grid-template-columns: minmax(0, 1fr); }
  .doc-html-page .doc-html-facts { gap: 16px; }
  .doc-html-page .doc-html-textarea { min-height: 132px; }
  .doc-html-page .ui-upload { min-height: 0; }
  .doc-html-page .doc-html-run { flex-direction: column-reverse; align-items: stretch; }
  .doc-html-run__state { flex-basis: auto; }
  .doc-html-page { padding-bottom: 80px; }
  .doc-html-floating { gap: 12px; bottom: 0; left: 0; right: 0; padding: 12px 16px calc(12px + env(safe-area-inset-bottom)); border-width: 1px 0 0; border-radius: 0; }
  .doc-html-floating__state { font-size: 12px; }
  .doc-job .doc-job__hero { display: grid; gap: 12px; margin-bottom: 20px; }
  .doc-job .doc-job__actions .btn { flex: 1 1 auto; }
  .doc-job .doc-job__item { grid-template-columns: minmax(0, 1fr); gap: 6px; }
  .doc-job .doc-job__downloads .btn { flex: 1 1 100%; }
}
@media (prefers-reduced-motion: reduce) { .doc-html-page *, .doc-job * { scroll-behavior: auto !important; transition: none !important; } }
