/* Content Analyzer page. External stylesheet: the admin UI runs under a strict
   CSP, so the page uses no inline <style> or style attributes. */
.az-page { display: flex; flex-direction: column; gap: 14px; }
.az-header { display: flex; align-items: baseline; gap: 12px; }
.az-header h2 { margin: 0; }
.az-muted { color: #6b7280; font-size: 0.9em; }

button {
color: blue;
}
.az-banner { padding: 10px 14px; border-radius: 6px; border: 1px solid #d1d5db; background: #f9fafb; }
.az-banner.az-ok { border-color: #86efac; background: #f0fdf4; }
.az-banner.az-warn { border-color: #fcd34d; background: #fffbeb; }
.az-banner.az-bad { border-color: #fca5a5; background: #fef2f2; }

.az-tabs { display: flex; flex-wrap: wrap; gap: 4px; border-bottom: 1px solid #d1d5db; background: #e1e1e1;}
.az-tab { border: 1px solid transparent; border-bottom: none; background: none; padding: 8px 14px;
          cursor: pointer; border-radius: 6px 6px 0 0; font: inherit; }
.az-tab:hover { background: #f3f4f6; }
.az-tab-active { border-color: #d1d5db; background: #fff; font-weight: 600; margin-bottom: -1px; }

.az-panel { display: flex; flex-direction: column; gap: 14px; }
.az-panel[hidden] { display: none; }
.az-card { border: 1px solid #e5e7eb; border-radius: 8px; padding: 14px 16px; background: #fff; }
.az-card h3 { margin: 0 0 10px; font-size: 1.05em; }

.az-kpis { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 10px; }
.az-kpi { border: 1px solid #e5e7eb; border-radius: 8px; padding: 10px 12px; background: #fff; }
.az-kpi-label { color: #6b7280; font-size: 0.85em; }
.az-kpi-value { font-size: 1.4em; font-weight: 600; margin-top: 2px; }

.az-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 8px 0; }
.az-row label { font-weight: 500; }
.az-row input[type="text"] { min-width: 260px; flex: 1; }
.az-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.az-msg { margin-top: 8px; min-height: 1.2em; white-space: pre-wrap; }
.az-msg.az-msg-ok { color: #188038; }
.az-msg.az-msg-err { color: #d93025; }

.az-modes { display: grid; gap: 8px; }
.az-mode { display: flex; gap: 10px; align-items: flex-start; padding: 8px 10px; border: 1px solid #e5e7eb; border-radius: 6px; cursor: pointer; }
.az-mode.az-mode-current { border-color: #60a5fa; background: #eff6ff; }
.az-mode-name { font-weight: 600; text-transform: uppercase; font-size: 0.9em; }

.az-table-wrap { overflow-x: auto; }
.az-table { border-collapse: collapse; width: 100%; font-size: 0.92em; }
.az-table th, .az-table td { text-align: left; padding: 5px 8px; border-bottom: 1px solid #f1f5f9; vertical-align: top; }
.az-table th { color: #374151; background: #f9fafb; font-weight: 600; }
.az-table td.az-num { text-align: right; font-variant-numeric: tabular-nums; }
.az-url { max-width: 460px; overflow-wrap: anywhere; }

.az-kv { display: grid; grid-template-columns: minmax(180px, max-content) 1fr; gap: 3px 16px; }
.az-kv-key { color: #4b5563; }
.az-kv-sub { grid-column: 1 / -1; margin: 8px 0 2px; font-weight: 600; color: #374151; }

.az-flag { display: inline-block; padding: 1px 7px; border-radius: 10px; font-size: 0.82em; border: 1px solid #d1d5db; }
.az-flag-bad { border-color: #fca5a5; background: #fef2f2; color: #b91c1c; }
.az-flag-warn { border-color: #fcd34d; background: #fffbeb; color: #92400e; }
.az-flag-ok { border-color: #86efac; background: #f0fdf4; color: #166534; }

.az-cfg-section { border-left: 3px solid #e5e7eb; padding-left: 10px; margin: 8px 0; }
.az-cfg-title { font-weight: 600; margin: 6px 0; }
.az-cfg-row { display: grid; grid-template-columns: minmax(220px, max-content) minmax(160px, 320px) 1fr; gap: 8px; align-items: center; margin: 4px 0; }
.az-cfg-row textarea { width: 100%; min-height: 60px; }
.az-cfg-changed input, .az-cfg-changed textarea { outline: 2px solid #f59e0b; }
.az-cfg-error { color: #d93025; font-size: 0.88em; }
.az-cfg-ro { color: #6b7280; font-size: 0.85em; }

#az-t-html { width: 100%; font-family: monospace; font-size: 0.9em; }
.az-pre { background: #f9fafb; border: 1px solid #e5e7eb; border-radius: 6px; padding: 10px; max-height: 480px; overflow: auto; font-size: 0.85em; white-space: pre-wrap; }
.az-pre:empty { display: none; }
