/* Index Checker, Log Analyser, Uptime Monitor, SERP Similarity (v0.69.0). Theme tokens only. */
.ut-form { display: grid; gap: 12px; }
.ut-form textarea { width: 100%; font: inherit; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); color: var(--ink); resize: vertical; }
.ut-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.ut-actions .muted { flex: 1 1 260px; }
.ut-bar { height: 8px; border-radius: 99px; background: var(--surface-2); border: 1px solid var(--line); overflow: hidden; }
.ut-bar > i { display: block; height: 100%; width: 0; background: var(--grad); transition: width .25s ease; }
.ut-tiles { margin-top: 8px; }
.ut-tiles .tile[aria-pressed="true"] { outline: 2px solid var(--accent); }
.ut-tiles button.tile { cursor: pointer; text-align: left; font: inherit; color: inherit; }
.ut-hint { margin-top: 12px; }
.ut-hint p { margin: 0 0 6px; }
.ut-drop { display: grid; gap: 6px; justify-items: center; text-align: center; padding: 34px 16px; border: 2px dashed var(--line); border-radius: 16px; background: var(--surface-2); cursor: pointer; }
.ut-drop.over { border-color: var(--accent); background: var(--accent-soft); }
.ut-drop b { font-size: 1.1rem; }
.ut-find { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.ut-find li { display: grid; grid-template-columns: auto 1fr; gap: 10px; align-items: start; }
.ut-find .dot { width: 12px; height: 12px; border-radius: 50%; margin-top: 6px; background: var(--muted); }
.ut-find .dot.bad { background: var(--can-fg); } .ut-find .dot.warn { background: var(--gap-fg); } .ut-find .dot.good { background: var(--cov-fg); }
.ut-find p { margin: 2px 0 0; }
.ut-days { display: flex; align-items: flex-end; gap: 3px; height: 150px; overflow-x: auto; padding-bottom: 4px; }
.ut-day { flex: 1 0 14px; max-width: 40px; display: flex; flex-direction: column-reverse; min-height: 2px; }
.ut-day i { display: block; width: 100%; }
.ut-day i.k-search { background: var(--chart-1); } .ut-day i.k-ai { background: var(--spark); } .ut-day i.k-seo { background: var(--chart-3); } .ut-day i.k-social { background: var(--chart-4); } .ut-day i.k-other { background: var(--muted); }
.ut-legend { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 8px; font-size: .84rem; color: var(--muted); }
.ut-legend span::before { content: ""; display: inline-block; width: 10px; height: 10px; border-radius: 3px; margin-right: 6px; background: var(--c); }
.mon-list { display: grid; gap: 12px; margin-top: 16px; }
.mon { display: grid; gap: 10px; padding: 16px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); }
.mon-head { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.mon-dot { width: 14px; height: 14px; border-radius: 50%; background: var(--muted); flex: none; }
.mon-dot.up { background: var(--cov-fg); } .mon-dot.down { background: var(--can-fg); }
.mon-title { flex: 1 1 240px; min-width: 0; }
.mon-title b { display: block; }
.mon-title a, .mon-title span { overflow-wrap: anywhere; font-size: .86rem; }
.mon-stats { display: flex; flex-wrap: wrap; gap: 18px; font-size: .9rem; }
.mon-stats b { display: block; font-size: 1.05rem; }
.mon-hist { display: flex; align-items: flex-end; gap: 2px; height: 34px; }
.mon-hist i { flex: 1 1 3px; max-width: 8px; min-height: 4px; border-radius: 2px; background: var(--cov-fg); }
.mon-hist i.bad { background: var(--can-fg); height: 100%; }
.sim-pair { display: grid; gap: 8px; padding: 14px 16px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); }
.sim-pair h3 { margin: 0; font-size: 1.02rem; }
.sim-v { display: inline-block; padding: 3px 10px; border-radius: 99px; font-size: .82rem; font-weight: 700; border: 1px solid var(--line); }
.sim-v.same { background: var(--cov-bg); color: var(--cov-fg); border-color: var(--cov-bd); }
.sim-v.related { background: var(--gap-bg); color: var(--gap-fg); border-color: var(--gap-bd); }
.sim-v.separate { background: var(--gen-bg); color: var(--gen-fg); border-color: var(--gen-bd); }
.sim-v.unknown { background: var(--surface-2); color: var(--muted); }
.sim-groups { display: grid; gap: 8px; }
.sim-group { padding: 10px 14px; border-radius: 12px; background: var(--accent-soft); }
.cb-list { margin: 0; padding-left: 20px; display: grid; gap: 4px; } .cb-warn { color: var(--gap-fg); font-size: .86rem; }

.sample-row { display: flex; flex-wrap: wrap; gap: 10px 14px; align-items: center; }

/* Result tiles for pages that do not load audit.css (Keyword Clustering, Topical Map): the same look as the audit tiles. */
.ut-tiles { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); gap: 10px; }
.ut-tiles .tile { border: 1px solid var(--line); border-radius: 12px; padding: 10px 12px; background: var(--surface); }
.ut-tiles .tile b { display: block; font-size: 1.5rem; font-variant-numeric: tabular-nums; }
.ut-tiles .tile span { color: var(--muted); font-size: .84rem; }
