/* 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;flex:none;min-height:22px;padding:0 8px;border-radius:5px;font:600 12px/1.2 var(--font-ui);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:12px 16px;border-radius:8px;margin:0 0 12px;font-size:13px;line-height:1.5}
.src-banner svg{width:16px;height:16px;flex:none;margin-top:2px}
.src-banner b{display:block;font-size:14px;font-weight:650;color:var(--ink)}
.src-banner span{color:var(--ink2)}
.src-banner ul{margin:8px 0 0;padding-left:16px;color:var(--ink2)}
.src-banner li{margin:2px 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:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:0 0 12px}
.src-counts>span{display:flex;flex-direction:column;justify-content:flex-start;gap:4px;min-width:0;min-height:64px;padding:12px 16px;border:1px solid var(--line);border-radius:8px;background:var(--card);font-size:12px;line-height:1.35;color:var(--mute)}
.src-counts b{font:700 22px/1.1 var(--font-ui);letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums}
.src-identity{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center;justify-content:space-between;padding:12px 16px;border:1px solid var(--found-line);background:var(--found-tint);border-radius:8px;margin:0 0 16px;font-size:13px;color:var(--ink2);line-height:1.5}
.src-identity b{display:block;color:var(--ink);font-size:14px;font-weight:650}
.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 16px}
.src-fhead{display:flex;flex-wrap:wrap;gap:4px 16px;align-items:flex-start;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:12px}
.src-fhead h3{font:650 15px/1.35 var(--font-ui);margin:0;color:var(--ink)}
.src-fhead p{font-size:12px;color:var(--mute);margin:2px 0 0;line-height:1.45}
.src-fhead>div:first-child{flex:1 1 320px;min-width:0}
.src-fmeta{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center;min-height:20px;font-size:12px;line-height:1.45;color:var(--mute);font-variant-numeric:tabular-nums}
.src-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:12px}
.src-row{border:1px solid var(--line);border-radius:8px;background:var(--card);padding: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:8px 12px;margin-bottom:8px}
.src-top h4{font-size:14px;line-height:22px;font-weight:650;margin:0;color:var(--ink);min-width:0;overflow-wrap:anywhere}
.src-why{font-size:13px;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:144px minmax(0,1fr);gap:12px;font-size:12px;line-height:1.5}
.src-facts dt{color:var(--mute)}
.src-facts dd{margin:0;color:var(--ink2);overflow-wrap:anywhere}
.src-desc{font-size:12px;line-height:1.5;color:var(--mute);margin:12px 0 0;padding-top:12px;border-top:1px solid var(--line2)}
.src-stored-head{margin-top:8px}
.src-samples{margin-top:16px}
.src-samples>summary{cursor:pointer;display:flex;align-items:center;min-height:32px;margin-bottom:8px;font:650 10px/1.4 var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--ink2)}
@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-note{font-size:13px;line-height:1.45;color:var(--mute);margin:0 0 16px}
.idq-tiles{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:0 0 16px}
.idq-tile{display:flex;flex-direction:column;justify-content:flex-start;gap:4px;min-width:0;min-height:64px;padding:12px 16px;border:1px solid var(--line);border-radius:8px;background:var(--card)}
.idq-tile b{display:block;font:700 22px/1.1 var(--font-ui);letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums}
.idq-tile span{display:block;font-size:12px;line-height:1.35;color:var(--mute)}
.idq-tile small{display:block;font-size:11px;line-height:1.4;color:var(--mute)}
.idq-keys{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:-4px 0 12px;font-size:12px;line-height:1.5;color:var(--mute)}
.idq-status{font-size:13px;line-height:1.5;color:var(--ink2);margin:0 0 12px}
.idq-status:empty{margin:0}
.idq-item{border:1px solid var(--line);border-radius:8px;background:var(--card);padding: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:12px 16px;background:var(--surf2)}
.idq-done{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;justify-content:space-between;min-height:32px;font-size:13px;color:var(--ink2)}
.idq-head{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;justify-content:space-between}
.idq-title{min-width:0;flex:1 1 260px}
.idq-title a{font:650 15px/1.35 var(--font-ui);color:var(--ink);text-decoration:none;overflow-wrap:anywhere}
.idq-title a:hover{text-decoration:underline}
.idq-title small{display:block;font-size:12px;line-height:1.45;color:var(--mute);margin-top:2px}
.idq-reason{display:inline-flex;align-items:center;flex:none;min-height:22px;padding:0 8px;border-radius:5px;background:color-mix(in srgb,var(--warning) 10%,var(--card));font:600 12px/1.2 var(--font-ui);color:var(--warning);white-space:nowrap}
.idq-whyline{font-size:13px;color:var(--ink2);margin:12px 0;line-height:1.5}
.idq-picks{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}
.idq-pick{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:40px;padding:6px 12px;border:1px solid var(--line);border-radius:6px;background:var(--surf2);color:var(--ink2);font:600 13px/1.3 var(--font-ui);cursor:pointer;text-align:left;max-width:100%}
.idq-pick small{font-weight:500;font-size:11px;line-height:1.35;color:var(--mute);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:10px 12px;border-top:1px solid var(--line2);overflow-wrap:anywhere}
.idq-table thead th{border-top:0;padding-top:0;padding-bottom:8px;font:650 10px/1.4 var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--blue)}
.idq-table tbody th{width:130px;color:var(--mute);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:12px 0 0;font-size:13px;line-height:1.5;color:var(--ink2)}
.idq-why-list>b{display:block;font:650 10px/1.4 var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--ink2)}
.idq-why-list ul{margin:4px 0 8px;padding-left:16px}
.idq-why-list li{margin:2px 0;overflow-wrap:anywhere}
.idq-why-list small{color:var(--mute)}
.idq-ev{font-weight:600;color:var(--ink)}
.idq-score{font-size:12px;line-height:1.45;color:var(--mute);margin:0}
.idq-warn{margin:8px 0 0!important;padding:8px 12px 8px 28px!important;border-radius:6px;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;padding-top:12px;border-top:1px solid var(--line2)}
.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:8px 12px;align-items:center;font-size:13px;color:var(--mute);margin:12px 0 0;font-variant-numeric:tabular-nums}
.idq-pager .btn{text-decoration:none}
@media (max-width:1180px){.idq-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:540px){.idq-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){
  .idq-table thead{display:none}
  .idq-table tr{display:block;border-top:1px solid var(--line2);padding:8px 12px}
  .idq-table th,.idq-table td{display:block;width:auto;border-top:0;padding:2px 0}
  .idq-table tr.agree{background:color-mix(in srgb,var(--positive) 7%,var(--card))}
  .idq-table tr.agree :is(th,td){background:none}
  .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:12px;margin:12px 0}
.pr-tile{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:64px;border:1px solid var(--line);border-radius:8px;padding:12px 16px;min-width:0;background:var(--surf2)}
.pr-tile b{display:block;font:700 22px/1.1 var(--font-ui);letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums}
.pr-tile>span{display:block;font-size:12px;line-height:1.35;color:var(--mute)}
.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))}
}
