:root {
  color-scheme: light;
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: #f3f6f3;
}

* { box-sizing: border-box; }
html, body, .pulso-host { width: 100%; min-height: 100%; margin: 0; }
body { overflow: hidden; background: #f3f6f3; }
.pulso-host { position: fixed; inset: 0; }
iframe { width: 100%; height: 100%; border: 0; background: #f3f6f3; opacity: 0; transition: opacity 180ms ease; }
iframe.ready { opacity: 1; }
.loading { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; gap: 13px; color: #0d3b35; background: #f3f6f3; }
.loading.hidden { display: none; }
.loading div { display: grid; gap: 2px; }
.loading strong { font-size: 15px; }
.loading small { color: #667773; font-size: 11px; }
.pulse { width: 14px; height: 14px; border-radius: 50%; background: #117a6a; box-shadow: 0 0 0 0 rgba(17,122,106,.35); animation: pulse 1.2s infinite; }
@keyframes pulse { 70% { box-shadow: 0 0 0 12px rgba(17,122,106,0); } }
noscript { position: fixed; inset: 0; display: grid; place-items: center; padding: 24px; color: #0d3b35; background: #f3f6f3; text-align: center; }
