/* /tools/log-file-analyzer/style.css
   Deliberately small: this tool is one form and a stack of result tables. */

.la-root { margin: 16px 0 32px; }

.la-hint { color: #475569; margin: 8px 0 16px; }

.la-note {
	background: #f1f5f9; border-radius: 8px; padding: 10px 14px;
	margin: 10px 0; color: #334155;
}
.la-note a { text-decoration: underline; }

/* ---- form -------------------------------------------------------------- */
#la-run { align-self: flex-start; }
#la-run[disabled] { opacity: .55; cursor: not-allowed; }

/* ---- results ----------------------------------------------------------- */
.la-totals { font-weight: 600; margin: 20px 0 6px; }
.la-block { margin: 22px 0; }
.la-block h3 { font-size: 16px; margin: 0 0 8px; }
.la-xr-title { margin-top: 30px; }

/* Log tables carry long URLs, so the table scrolls inside its own box rather
   than pushing the page sideways. */
.la-tablewrap { overflow-x: auto; border: 1px solid #e2e8f0; border-radius: 10px; }
.la-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.la-table th, .la-table td { padding: 8px 12px; border-bottom: 1px solid #eef2f7; text-align: left; }
.la-table th { background: #f8fafc; font-weight: 600; white-space: nowrap; }
.la-table tr:last-child td { border-bottom: 0; }
.la-cell-url {
	font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px;
	word-break: break-all; max-width: 640px;
}

/* ---- RTL ---------------------------------------------------------------
   Same two jobs as in Website Audit: mirror the directional bits, and keep
   URLs and other technical strings rendering left-to-right so the bidi
   algorithm does not reorder them inside an Arabic or Hebrew sentence. */
[dir="rtl"] .la-table th,
[dir="rtl"] .la-table td { text-align: right; }
[dir="rtl"] #la-run { align-self: flex-end; }
[dir="rtl"] .la-cell-url { direction: ltr; text-align: left; unicode-bidi: bidi-override; }
[dir="rtl"] .la-table code { unicode-bidi: isolate; }

/* ---- pro-grade result layout: tiers + progressive disclosure ------------ */
.la-kpis { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:12px; margin:14px 0 18px; }
.la-kpi { background:#f8fafc; border:1px solid #e2e8f0; border-radius:10px; padding:12px 14px; }
.la-kpi-value { font-size:20px; font-weight:700; line-height:1.2; word-break:break-word; }
.la-kpi-label { font-size:12px; color:#475569; margin-top:4px; text-transform:uppercase; letter-spacing:.03em; }
.la-kpi-sub { font-size:12px; color:#64748b; margin-top:2px; }
.la-findings { background:#fff; border:1px solid #e2e8f0; border-left:4px solid #0ea5e9; border-radius:10px; padding:12px 16px; margin:0 0 18px; }
.la-findings h3 { margin:0 0 8px; font-size:15px; }
.la-findings ol { margin:0; padding-left:20px; } .la-findings li { margin:4px 0; line-height:1.45; }
details.la-block { border:1px solid #e2e8f0; border-radius:10px; margin:0 0 12px; background:#fff; }
details.la-block > summary { list-style:none; cursor:pointer; padding:10px 14px; display:flex; align-items:center; justify-content:space-between; gap:12px; }
details.la-block > summary::-webkit-details-marker { display:none; }
details.la-block > summary::after { content:'\25B8'; color:#94a3b8; font-size:12px; margin-left:auto; }
details.la-block[open] > summary::after { content:'\25BE'; }
details.la-block > summary h3 { margin:0; font-size:15px; }
details.la-block > summary .la-meta { font-size:12px; color:#64748b; }
details.la-block > *:not(summary) { padding:0 14px 12px; }
details.la-block details.la-block { margin-top:10px; }
.la-bars { display:grid; gap:6px; margin:6px 0 10px; }
.la-bar-row { display:grid; grid-template-columns:minmax(120px,190px) 1fr 52px; align-items:center; gap:10px; font-size:13px; }
.la-bar-track { height:10px; background:#f1f5f9; border-radius:5px; overflow:hidden; }
.la-bar-fill { height:100%; background:#94a3b8; }
.la-bar--success { background:#039669; } .la-bar--not_modified { background:#64748b; } .la-bar--redirect { background:#d97706; }
.la-bar--not_found { background:#dc2626; } .la-bar--rate_limited { background:#7c3aed; } .la-bar--server_error { background:#991b1b; }
.la-bar-val { text-align:right; font-variant-numeric:tabular-nums; }
.la-opp { background:#fffbeb; border:1px solid #fde68a; border-radius:8px; padding:10px 14px; font-size:13px;
  line-height:1.5; margin:10px 0 14px; }
.la-csv { margin-top:10px; }
.la-muted { color:#94a3b8; } .la-warn-text { color:#b45309; } .la-warn { background:#fffbeb; border-color:#fde68a; }
.la-cell-url { direction:ltr; unicode-bidi:isolate; word-break:break-all; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:12px; }
.la-table--compact td, .la-table--compact th { padding:4px 8px; }
.la-empty { color:#64748b; font-size:13px; margin:6px 0; }
@media (max-width: 720px) { .la-bar-row { grid-template-columns:1fr 44px; } .la-bar-label { grid-column:1 / -1; } }
ul.summary.la-usage { list-style:none; display:flex; gap:18px; flex-wrap:wrap; margin:0 0 14px; padding:0; font-size:13px; color:#475569; }
ul.summary.la-usage li { margin:0; } ul.summary.la-usage b { color:#0f172a; font-weight:600; }
