.legal-docs .d-none{display:none!important}.legal-docs-field{margin-bottom:1rem}.legal-docs-consent{background:#fafafa}.legal-docs-admin-stats .card{min-height:90px}

/* v1.0.22: вспомогательные стили публичного сценария. */
.legal-docs-test-panel { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem; }
.legal-docs-document-select [data-legal-docs-select-submit][disabled] { cursor: not-allowed; opacity: .65; }

/* v1.0.23: современный экран ожидания генерации документа. */
.legal-docs-status-card{background:#fff;border-radius:.75rem;box-shadow:0 .25rem 1rem rgba(0,0,0,.06)}
.legal-docs-status-badge{font-size:.875rem;padding:.5rem .75rem;border-radius:999px}
.legal-docs-loader-wrap{min-height:64px}.legal-docs-loader-modern{width:52px;height:52px;border-radius:50%;border:4px solid #e9ecef;border-top-color:#17a2b8;border-right-color:#17a2b8;animation:legalDocsSpin .9s linear infinite;flex:0 0 52px}.legal-docs-loader-stopped{animation:none;border-color:#28a745}.legal-docs-status-final .legal-docs-loader-modern{animation:none}.legal-docs-status-final .legal-docs-loader-modern:after{content:'✓';display:block;text-align:center;line-height:44px;font-weight:700;color:#28a745;font-size:24px}.legal-docs-progress{background:#e9ecef;border-radius:999px;overflow:hidden}.legal-docs-progress-bar{transition:width .45s ease}.legal-docs-status-metrics .border{background:#fbfbfc}.legal-docs-status-help{background:#f8f9fa}.legal-docs-status-error:empty{display:none!important}@keyframes legalDocsSpin{to{transform:rotate(360deg)}}


/* v1.0.27: визуальный progress bar без зависимости от темы Bootstrap. */
.legal-docs-progress{height:26px!important;background:#e9ecef;border-radius:999px;overflow:hidden;box-shadow:inset 0 1px 2px rgba(0,0,0,.08)}
.legal-docs-progress-bar{min-width:2.4rem;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.35);transition:width .6s ease, background-color .25s ease;background-size:1rem 1rem}
.legal-docs-progress-bar-label{position:relative;z-index:2;white-space:nowrap}
.legal-docs-status .bg-warning{color:#212529;text-shadow:none}

/* v1.0.28: progress bar должен визуально заполняться даже в темах без bootstrap progress анимации. */
.legal-docs-progress-bar.progress-bar-animated{background-image:linear-gradient(45deg,rgba(255,255,255,.18) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.18) 50%,rgba(255,255,255,.18) 75%,transparent 75%,transparent);animation:legalDocsProgressStripes 1s linear infinite}.legal-docs-progress-bar.bg-warning{background-color:#ffc107!important}.legal-docs-progress-bar.bg-info{background-color:#17a2b8!important}.legal-docs-progress-bar.bg-success{background-color:#28a745!important}.legal-docs-progress-bar.bg-danger{background-color:#dc3545!important}@keyframes legalDocsProgressStripes{from{background-position:1rem 0}to{background-position:0 0}}

/* v1.0.31: юридическое предупреждение и действия после готовности документа. */
.legal-docs-legal-warning{border-left:4px solid #ffc107}
.legal-docs-status-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}
.legal-docs-new-document{margin-left:.25rem}

/* v1.0.49: админский просмотр юридически значимого снимка согласия. */
.legal-docs-consent-snapshot-html{padding:1rem;border:1px solid #dee2e6;background:#fff;border-radius:.25rem;margin-bottom:1rem}
.legal-docs-consent-snapshot-source{width:100%;font-family:monospace;font-size:.875rem;background:#f8f9fa;border:1px solid #ced4da;border-radius:.25rem;padding:.75rem}


/* v1.0.51: длинный текст публичного согласия раскрывается нативным spoiler/details без JS. */
.legal-docs-consent-details{background:#fff;border:1px solid #e9ecef;border-radius:.25rem;padding:.5rem .75rem}
.legal-docs-consent-summary{cursor:pointer;font-weight:600;outline:none}
.legal-docs-consent-summary::-webkit-details-marker{margin-right:.35rem}
.legal-docs-consent-body{line-height:1.45}
.legal-docs-consent-body p:last-child{margin-bottom:0}


/* v1.0.52: honeypot field for simple bot filtering. It must stay visually hidden, but not use type=hidden. */
.legal-docs-honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
