/* Scheduled sources (Data and connections), the USDOT review queue and the company
 * record's public-record panels. Semantic tokens only (tokens.css), so Day, Dark and
 * Road all work; status is always carried by text as well as color. */

/* ---------------------------------------------------------------- shared */
.idq .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.idq kbd,.src-banner kbd{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border:1px solid var(--rule2);border-bottom-width:2px;border-radius:4px;background:var(--card);color:var(--ink2);font:600 11px/1 var(--font-ui)}

/* status pill: text and tone together */
.src-pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:3px 8px;border-radius:5px;white-space:nowrap;border:1px solid transparent}
.src-pill::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}
.src-pill-ok{color:var(--positive);background:color-mix(in srgb,var(--positive) 10%,var(--card))}
.src-pill-warn{color:var(--warning);background:color-mix(in srgb,var(--warning) 12%,var(--card))}
.src-pill-bad{color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,var(--card));border-color:color-mix(in srgb,var(--danger) 30%,var(--card))}
.src-pill-off{color:var(--ink-muted);background:var(--surf2);border-color:var(--line)}
.src-pill-run{color:var(--accent);background:var(--bluetint)}

/* ------------------------------------------------------- Sources screen */
.src-banner{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:10px;margin:0 0 14px;font-size:13.5px;line-height:1.5}
.src-banner svg{width:18px;height:18px;flex:none;margin-top:2px}
.src-banner b{display:block;font-size:14.5px;color:var(--ink)}
.src-banner span{color:var(--ink2)}
.src-banner ul{margin:8px 0 0;padding-left:18px;color:var(--ink2)}
.src-banner li{margin:3px 0}
.src-banner-ok{background:color-mix(in srgb,var(--positive) 8%,var(--card));border:1px solid color-mix(in srgb,var(--positive) 30%,var(--card));color:var(--positive)}
.src-banner-bad{background:color-mix(in srgb,var(--danger) 7%,var(--card));border:1px solid color-mix(in srgb,var(--danger) 35%,var(--card));border-left-width:4px}
.src-jump{border:0;background:none;padding:0;font:inherit;font-weight:700;color:var(--accent);cursor:pointer;text-decoration:underline;text-underline-offset:2px}
.src-jump:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.src-counts{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13px;color:var(--ink-muted);margin:0 0 16px}
.src-counts b{font-size:17px;color:var(--ink);font-variant-numeric:tabular-nums;margin-right:3px}
.src-identity{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;justify-content:space-between;padding:12px 16px;border:1px solid var(--found-line);background:var(--found-tint);border-radius:10px;margin:0 0 18px;font-size:13px;color:var(--ink2);line-height:1.5}
.src-identity b{display:block;color:var(--ink);font-size:14px}
.src-identity>div{flex:1 1 320px;min-width:0}
.src-identity .btn.go{flex:0 0 auto;min-width:0;text-decoration:none}
.src-family{margin:0 0 22px}
.src-fhead{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:flex-end;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:12px}
.src-fhead h3{font-size:16px;margin:0;color:var(--ink)}
.src-fhead p{font-size:12.5px;color:var(--ink-muted);margin:2px 0 0;max-width:70ch;line-height:1.5}
.src-fhead>div:first-child{flex:1 1 320px;min-width:0}
.src-fmeta{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;font-size:12px;color:var(--ink-muted)}
.src-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
.src-row{border:1px solid var(--line);border-radius:10px;background:var(--card);padding:14px 16px;min-width:0;transition:box-shadow var(--dur-2) var(--ease)}
.src-row.src-bad{border-left:4px solid var(--danger)}
.src-row.src-warn{border-left:4px solid var(--warning)}
.src-row.src-off{background:var(--surf2)}
.src-row.src-flash{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 45%,transparent)}
.src-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:6px}
.src-top h4{font-size:14.5px;font-weight:650;margin:0;color:var(--ink);min-width:0;overflow-wrap:anywhere}
.src-why{font-size:12.5px;line-height:1.5;color:var(--ink2);margin:0 0 8px}
.src-facts{margin:0;display:grid;gap:4px}
.src-facts>div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:8px;font-size:12.5px;line-height:1.45}
.src-facts dt{color:var(--ink-muted)}
.src-facts dd{margin:0;color:var(--ink2);overflow-wrap:anywhere}
.src-desc{font-size:12px;line-height:1.5;color:var(--ink-muted);margin:10px 0 0;padding-top:8px;border-top:1px solid var(--line2)}
.src-stored-head{margin-top:30px}
.src-samples{margin-top:18px}
.src-samples>summary{cursor:pointer;font-size:12px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--ink-muted);margin-bottom:12px;min-height:32px;display:flex;align-items:center}
@media (max-width:700px){
  .src-grid{grid-template-columns:1fr}
  .src-facts>div{grid-template-columns:1fr;gap:0}
}
@media (prefers-reduced-motion:reduce){.src-row{transition:none}}

/* ----------------------------------------------------- identity badge */
.idb{display:inline-flex;align-items:center;gap:6px;font:650 12px/1.2 var(--font-ui);padding:3px 8px;border-radius:12px;border:1px solid var(--line);background:var(--card);color:var(--ink2);white-space:nowrap;vertical-align:1px}
button.idb{cursor:pointer;min-height:26px}
button.idb:hover{border-color:var(--rule2)}
button.idb:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.idb i{width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}
.idb-ok{color:var(--positive);border-color:color-mix(in srgb,var(--positive) 35%,var(--card))}
.idb-warn{color:var(--warning);border-color:color-mix(in srgb,var(--warning) 40%,var(--card))}
.idb-none{color:var(--ink-muted)}
.idb-muted{color:var(--ink-faint)}
.sg-idslot{display:inline-block;margin-left:4px}
.sg-idslot[hidden]{display:none}
.w6sub h4 .idb{font-family:var(--font-ui)}

/* ----------------------------------------------------- review queue */
.idq{max-width:1180px}
.idq-note{font-size:13px;line-height:1.55;color:var(--ink-muted);margin:0 0 14px;max-width:90ch}
.idq-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;margin:0 0 16px}
.idq-tile{border:1px solid var(--line);border-radius:10px;background:var(--card);padding:10px 12px;min-width:0}
.idq-tile b{display:block;font-family:var(--font-num);font-size:26px;line-height:1.05;color:var(--ink);font-variant-numeric:tabular-nums}
.idq-tile span{display:block;font-size:12.5px;font-weight:650;color:var(--ink2)}
.idq-tile small{display:block;font-size:11.5px;color:var(--ink-muted);margin-top:2px;line-height:1.35}
.idq-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin:0 0 10px}
.idq-filters label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600;color:var(--ink-muted);min-width:0}
.idq-filters select,.idq-filters input{min-height:36px;border:1px solid var(--rule2);border-radius:6px;background:var(--card);color:var(--ink);font:inherit;font-size:13.5px;font-weight:500;padding:0 10px;max-width:100%}
.idq-filters .idq-q{flex:1 1 200px}
.idq-filters .btn.go{flex:0 0 auto;min-width:0;height:36px}
.idq-keys{font-size:12px;color:var(--ink-muted);margin:0 0 12px;display:flex;flex-wrap:wrap;gap:4px;align-items:center}
.idq-status{font-size:13px;color:var(--ink2);min-height:1.2em;margin:0 0 8px}
.idq-item{border:1px solid var(--line);border-radius:10px;background:var(--card);padding:14px 16px;margin:0 0 12px;min-width:0;outline:none;transition:box-shadow var(--dur-1) var(--ease)}
.idq-item.sel{box-shadow:0 0 0 2px var(--accent);border-color:var(--accent)}
.idq-item.busy{opacity:.6;pointer-events:none}
.idq-item.done{padding:10px 16px;background:var(--surf2)}
.idq-done{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;justify-content:space-between;font-size:13px;color:var(--ink2)}
.idq-head{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:flex-start;justify-content:space-between}
.idq-title{min-width:0;flex:1 1 260px}
.idq-title a{font-size:16px;font-weight:700;color:var(--ink);text-decoration:none;overflow-wrap:anywhere}
.idq-title a:hover{text-decoration:underline}
.idq-title small{display:block;font-size:12.5px;color:var(--ink-muted);margin-top:2px}
.idq-reason{font-size:12px;font-weight:700;color:var(--warning);background:color-mix(in srgb,var(--warning) 10%,var(--card));border-radius:5px;padding:3px 8px}
.idq-whyline{font-size:13px;color:var(--ink2);margin:6px 0 10px;line-height:1.5}
.idq-picks{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}
.idq-pick{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:40px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surf2);color:var(--ink2);font:600 13px/1.2 var(--font-ui);cursor:pointer;text-align:left;max-width:100%}
.idq-pick small{font-weight:500;font-size:11.5px;color:var(--ink-muted);overflow-wrap:anywhere}
.idq-pick.on{border-color:var(--accent);background:var(--bluetint);color:var(--accent)}
.idq-pick:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.idq-table-wrap{overflow-x:auto}
.idq-table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.45}
.idq-table th,.idq-table td{text-align:left;vertical-align:top;padding:7px 10px;border-top:1px solid var(--line2);overflow-wrap:anywhere}
.idq-table thead th{border-top:0;font-size:12px;color:var(--ink-muted);font-weight:650}
.idq-table tbody th{width:130px;color:var(--ink-muted);font-weight:600}
.idq-table td{width:calc((100% - 130px)/2);color:var(--ink)}
.idq-table tr.agree td,.idq-table tr.agree th{background:color-mix(in srgb,var(--positive) 7%,var(--card))}
.idq-agree{display:block;font-size:11px;font-weight:700;color:var(--positive);margin-top:2px}
.idq-none{color:var(--ink-faint);font-style:italic}
.idq-why-list{margin:10px 0 0;font-size:13px;color:var(--ink2)}
.idq-why-list ul{margin:4px 0 6px;padding-left:18px}
.idq-why-list li{margin:2px 0;overflow-wrap:anywhere}
.idq-why-list small{color:var(--ink-muted)}
.idq-ev{font-weight:600;color:var(--ink)}
.idq-score{font-size:12px;color:var(--ink-muted);margin:0}
.idq-warn{margin:8px 0 0!important;padding:8px 12px 8px 26px!important;border-radius:8px;background:var(--guard-tint);border:1px solid var(--guard-line);color:var(--ink)}
.idq-acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.idq-acts .btn{flex:0 0 auto;min-width:0;text-decoration:none}
.idq-acts .btn kbd{margin-right:2px}
.idq-pager{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:13px;color:var(--ink-muted);margin:6px 0 20px}
.idq-pager .btn{text-decoration:none}
@media (max-width:640px){
  .idq-table thead{display:none}
  .idq-table tr{display:block;border-top:1px solid var(--line2);padding:6px 0}
  .idq-table th,.idq-table td{display:block;width:auto;border-top:0;padding:2px 4px}
  .idq-table tbody th{width:auto}
  .idq-table td::before{content:attr(data-label) ": ";color:var(--ink-muted);font-weight:600}
  .idq-keys{display:none}
  .idq-acts .btn kbd{display:none}
}
@media (hover:none){.idq-keys,.idq-acts .btn kbd,.idq-pick kbd{display:none}}
@media (prefers-reduced-motion:reduce){.idq-item{transition:none}}

/* ------------------------------------------------ public-record panels */
.pr-line{font-size:13px;line-height:1.55;color:var(--ink2);margin:0 0 6px}
.pr-srcline{color:var(--ink-muted)}
.pr-acts{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.pr-acts .btn{flex:0 0 auto;min-width:0;text-decoration:none}
.pr-src{display:block;font-size:11px;color:var(--ink-muted);font-weight:500;line-height:1.35}
.pr-address .pr-src{display:inline}
.pr-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:6px 0 10px}
.pr-tile{border:1px solid var(--line2);border-radius:8px;padding:8px 10px;min-width:0;background:var(--surf2)}
.pr-tile b{display:block;font-family:var(--font-num);font-size:22px;line-height:1.05;color:var(--ink);font-variant-numeric:tabular-nums}
.pr-tile span{display:block;font-size:12px;color:var(--ink2)}
.pr-lease{width:100%;border-collapse:collapse;font-size:12.5px;margin:0 0 10px}
.pr-lease caption{text-align:left;font-size:12.5px;font-weight:650;color:var(--ink2);padding-bottom:4px}
.pr-lease th,.pr-lease td{padding:5px 8px;border-top:1px solid var(--line2);text-align:right;font-variant-numeric:tabular-nums}
.pr-lease th[scope="row"],.pr-lease thead th:first-child{text-align:left;color:var(--ink-muted);font-weight:600}
.pr-lease thead th{color:var(--ink-muted);font-weight:600;border-top:0}
.pr-none{color:var(--ink-faint);font-size:11.5px}
.pr-grid .eq b{text-align:right;overflow-wrap:anywhere}
.w6sub h5{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted);margin:12px 0 4px;display:flex;gap:8px;align-items:baseline}
.pr-roll{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:flex-start;margin:4px 0 6px}
.pr-roll .pr-tile{flex:0 0 auto;min-width:150px}
.pr-rolllist{margin:0;padding-left:18px;font-size:12.5px;color:var(--ink2);flex:1 1 220px}
.pr-ents{list-style:none;margin:0;padding:0}
.pr-ent{padding:7px 0;border-top:1px solid var(--line2);font-size:13px;color:var(--ink);line-height:1.45;overflow-wrap:anywhere}
.pr-ent small{color:var(--ink-muted);font-size:12px}
.pr-sub{font-size:12.5px;color:var(--ink2)}
.pr-conf{font-size:12px;font-weight:600;color:var(--ink-muted)}
.pr-conf-confirmed,.pr-conf-likely{color:var(--positive)}
.pr-conf-possible{color:var(--warning)}
.pr-conf-review{color:var(--danger)}
.pr-caveats{margin:8px 0 0;padding-left:18px;font-size:12px;color:var(--ink-muted);line-height:1.5}
.pr-more{font-size:12px;color:var(--ink-muted);margin:4px 0 0}
@media (max-width:640px){
  .pr-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
}
