/* Shared theme comes from research_api.ui; these rules are specific to independent public hosting. */
body{font-family:Arial,Helvetica,sans-serif}code,pre{font-family:Consolas,'Liberation Mono',monospace}
.hosting-notice{padding:15px 18px;border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:8px;font-size:14px;margin:0 0 26px;background:var(--card-elevated)}
.hosting-notice p{margin:0}.hosting-notice p+p{margin-top:6px}.hosting-notice .fine-print{margin-top:7px}
.server-status-link{display:inline-flex;text-decoration:none}.server-status-link:hover .server-status{border-color:var(--primary)}
.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:26px 0}
.service-card{padding:22px;border:1px solid var(--border);border-radius:12px;background:var(--card-elevated);min-width:0}.service-card h2{margin:0 0 13px;font-size:19px}
.service-state{font-size:19px;font-weight:600;display:flex;gap:10px;align-items:center}.service-state .status-dot{width:9px;height:9px}.service-card p{margin:8px 0;font-size:14px}.service-card .availability{font-weight:600}
[data-state=online]>.service-state .status-dot{background:var(--success)}[data-state=busy]>.service-state .status-dot,[data-state=maintenance]>.service-state .status-dot,[data-state=degraded]>.service-state .status-dot{background:var(--warning)}[data-state=offline]>.service-state .status-dot{background:var(--danger)}
.server-status[data-state=maintenance] .status-dot,.server-status[data-state=degraded] .status-dot{background:var(--warning)}
.status-summary{padding:22px;border:1px solid var(--border);border-radius:12px;background:var(--card-elevated)}.status-summary h1{margin:0 0 12px;font-size:28px}.status-summary p{margin:0}.status-summary[data-state=maintenance],.status-summary[data-state=degraded]{border-color:var(--warning)}
.incident{padding:19px 22px;margin-top:22px;border:1px solid var(--warning);border-radius:12px;background:var(--card-elevated)}.incident[hidden]{display:none}.incident h2{margin:0 0 10px;font-size:19px}.incident p{margin:0;white-space:pre-line}
.reference-operation{border:1px solid var(--border);border-radius:9px;padding:16px;margin:14px 0;background:var(--card-elevated)}.reference-operation summary{cursor:pointer;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.reference-operation summary::marker{color:var(--primary)}.http-method{font-size:12px;font-weight:700;color:var(--primary)}.reference-operation pre{background:var(--code-bg)}.reference-note{font-size:14px}.snapshot-time{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
@media(max-width:700px){.service-grid{grid-template-columns:minmax(0,1fr)}.service-card{padding:18px}.status-summary{padding:18px}.status-summary h1{font-size:24px}}
