/* PlanetHeartbeat source detail. All 2D content in document flow,
 * never atop the approved blue-ocean WebGL planet or white heartbeat logo.
 */
.ph-source-readout{margin:0;padding:0 14px;background:#0b2431;border-bottom:1px solid #3c6770;color:#d8f4f1}
.ph-source-readout>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:46px;padding:10px 5px;cursor:pointer;list-style:none}
.ph-source-readout>summary::-webkit-details-marker{display:none}
.ph-sr-heading{display:grid;gap:3px;min-width:0}
.ph-sr-heading strong{color:#d2fff0;font:800 10px/1.3 system-ui,sans-serif;letter-spacing:.095em}
.ph-sr-heading small{color:#bbd7dc;font:600 10px/1.4 system-ui,sans-serif}
.ph-sr-chevron{font-size:19px;color:#9ddacb;transition:transform .15s}
.ph-source-readout[open] .ph-sr-chevron{transform:rotate(180deg)}
.ph-source-readout>summary:focus-visible{outline:3px solid #fff3a4;outline-offset:-2px;border-radius:7px}
.ph-sr-inner{padding:4px 0 15px}
.ph-sr-intro{margin:2px 4px 12px;font:550 11px/1.6 system-ui,sans-serif;color:#c8dfe3}
.ph-sr-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.ph-sr-card{display:grid;align-content:start;gap:5px;min-width:0;padding:12px;border:1px solid #456e77;border-radius:12px;background:linear-gradient(160deg,#163744,#102935)}
.ph-sr-card-head{display:flex;align-items:center;gap:7px;min-width:0}
.ph-sr-dot{width:9px;height:9px;flex:0 0 9px;border-radius:50%;background:#a5b5bd}
.ph-sr-card[data-status=connected] .ph-sr-dot{background:#76edb4;box-shadow:0 0 10px #65dba077}
.ph-sr-card[data-status=stale] .ph-sr-dot,.ph-sr-card[data-status=loading] .ph-sr-dot{background:#e2bd79}
.ph-sr-card[data-status=unavailable] .ph-sr-dot{background:#e1a7a7}
.ph-sr-card strong{font:800 11px/1.3 system-ui,sans-serif;color:#eafdf3}
.ph-sr-card [data-sr-state]{font:800 10px/1.4 system-ui,sans-serif;letter-spacing:.05em;color:#bdebd7}
.ph-sr-card[data-status=stale] [data-sr-state],.ph-sr-card[data-status=loading] [data-sr-state]{color:#ffe0a4}
.ph-sr-card[data-status=unavailable] [data-sr-state]{color:#ffd0cc}
.ph-sr-card[data-status=offline] [data-sr-state]{color:#cbd5e5}
.ph-sr-card [data-sr-detail]{overflow-wrap:anywhere;min-height:28px;color:#bbd2da;font:550 10px/1.55 system-ui,sans-serif}
.ph-sr-card a{justify-self:start;align-self:end;display:inline-flex;align-items:center;min-height:44px;margin-top:3px;padding:6px 0;font:750 10px/1.3 system-ui,sans-serif;color:#aff1db;text-decoration:underline;text-underline-offset:3px}
.ph-sr-card a:hover{color:#fff}
.ph-sr-card a:focus-visible{outline:3px solid #fff3a4;outline-offset:3px;border-radius:3px}
.ph-sr-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 4px 4px}
.ph-sr-actions button{min-height:44px;padding:9px 15px;border-radius:9px;border:1px solid #76d5b6;background:#245b50;color:#eefff8;font:800 10px/1.3 system-ui,sans-serif}
.ph-sr-actions button:disabled{opacity:.5;cursor:not-allowed}
.ph-sr-actions button:hover:not(:disabled){background:#327862}
.ph-sr-actions button:focus-visible{outline:3px solid #fff3a4;outline-offset:2px}
.ph-sr-actions a{min-height:44px;display:inline-flex;align-items:center;color:#beecdf;font:750 10px/1.3 system-ui,sans-serif}
.ph-sr-actions a:focus-visible{outline:3px solid #fff3a4;outline-offset:2px}
.ph-sr-feedback{min-height:16px;margin:0 4px;font:600 10px/1.55 system-ui,sans-serif;color:#d1ecd9}
.ph-source-readout[data-network=offline]{border-color:#5f7180}
@media(max-width:1180px){.ph-sr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.ph-source-readout{padding:0 11px}.ph-sr-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.ph-sr-card{padding:10px}}
@media(max-width:420px){.ph-sr-grid{grid-template-columns:minmax(0,1fr)}.ph-sr-card{gap:3px}.ph-sr-card [data-sr-detail]{min-height:0}.ph-sr-heading small{font-size:9px}}
@media(prefers-reduced-motion:reduce){.ph-sr-chevron{transition:none}}
body[data-ph-lite=on] .ph-sr-card{background:#102c39}
