:root {
  --physio-ink: #173d37;
  --physio-green: #19735f;
  --physio-mint: #dff4ec;
}

.physio-launcher {
  align-items: center;
  background:
    radial-gradient(circle at 80% 10%, rgba(92, 194, 157, .16), transparent 32rem),
    #f4f7f5;
  display: flex;
  justify-content: center;
  min-height: calc(100vh - 68px);
  padding: 40px;
}

.physio-launcher-card {
  background: #fff;
  border: 1px solid #dce8e3;
  border-radius: 22px;
  box-shadow: 0 24px 60px rgba(29, 63, 54, .09);
  color: var(--physio-ink);
  max-width: 720px;
  padding: 44px;
}

.physio-launcher-kicker {
  color: var(--physio-green);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.physio-launcher h1 { font-size: clamp(2rem, 5vw, 3.35rem); letter-spacing: -.04em; line-height: 1.03; margin: 16px 0; }
.physio-launcher p { color: #537069; font-size: 1.05rem; line-height: 1.7; }
.physio-launcher code { background: #eff5f2; border-radius: 7px; color: #31584f; padding: .16em .38em; }
.physio-launcher-status { align-items: center; background: #f5f8f6; border-radius: 12px; display: flex; gap: 10px; margin: 26px 0; padding: 14px 16px; }
.physio-launcher-dot { background: #df9b2f; border-radius: 50%; height: 10px; width: 10px; }
.physio-launcher-status.is-online .physio-launcher-dot { background: #24986f; box-shadow: 0 0 0 5px rgba(36, 152, 111, .12); }
.physio-launcher-status.is-offline .physio-launcher-dot { background: #c94d42; }
.physio-launcher-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.physio-launcher-button { background: #fff; border: 1px solid #b9d2ca; border-radius: 10px; color: var(--physio-ink); cursor: pointer; font: inherit; font-weight: 700; padding: 12px 18px; text-decoration: none; }
.physio-launcher-button.primary { background: var(--physio-green); border-color: var(--physio-green); color: #fff; }
.physio-launcher details { border-top: 1px solid #e4ece8; margin-top: 30px; padding-top: 22px; }
.physio-launcher summary { cursor: pointer; font-weight: 700; }

@media (max-width: 680px) {
  .physio-launcher { padding: 18px; }
  .physio-launcher-card { padding: 28px; }
}
