/* Shared presentation language, derived from the homepage's existing tokens. */
.software-page {
  --software-paper: var(--paper-bright);
  --software-surface: var(--paper-bright);
  --software-muted: var(--ink-soft);
  --software-line: var(--line);
  --software-radius: 8px;
  --software-control-radius: 5px;
  background: var(--paper-bright);
}
.software-page .software-hero h1 span:last-child { color: var(--coral-deep); }
.software-page .software-eyebrow { padding: 0; background: none; border: 0; border-radius: 0; color: var(--wine); font-weight: 850; }
.software-page .software-button { border-radius: 5px; border-color: var(--ink); background: var(--ink); color: white; box-shadow: none; }
.software-page .software-button:hover { border-color: var(--wine); background: var(--wine); }
.software-page .care-story { --care-green: var(--wine); --care-soft: #f9e6e8; --care-muted: var(--ink-soft); }
.software-page .care-intro h2 em { color: var(--coral-deep); }
.software-page .care-link, .software-page .care-bridge .care-link { color: var(--wine); }
.software-page .care-action { background: var(--ink); border-color: var(--ink); border-radius: 5px; }
.software-page .care-action:hover { background: var(--wine); border-color: var(--wine); }
.software-page .care-action:disabled { opacity: .55; }
.software-page .care-learning { border-radius: 8px; border-color: var(--line); background: var(--paper-bright); box-shadow: none; }
.software-page .care-day-comparison, .software-page .care-hardware { background: #f9e6e8; border-radius: 8px; }
.software-page .care-dose-preview { background: var(--paper-bright); border: 1px solid var(--line); border-radius: 8px; }
.software-page .care-plot-grid path { stroke: var(--line); }
.software-page .care-fit-points circle { stroke: var(--wine); fill: var(--paper-bright); }
.software-page .care-fit-initial { stroke: #a6999e; }
.software-page .care-plot-key i { border-color: var(--wine); }
.software-page .care-plot-key span:nth-child(2) i { border-color: var(--wine); }
.software-page .care-plot-key span:nth-child(3) i { border-color: #a6999e; }
.software-page .care-learning-controls { background: var(--paper); border-radius: 5px; }
.software-page .care-learning-controls button, .software-page .care-day-switch button { border-radius: 4px; }
.software-page .care-day-switch button { border-color: #b998a0; }
.software-page .care-gradient span { border-color: var(--line); border-radius: 4px; }
.software-page .care-gradient span.is-active { border-color: var(--wine); }
.software-page .care-role-tabs { border-color: var(--line); border-radius: 5px; }
.software-page .care-role-tabs button { border-radius: 4px; }
.software-page .care-phone { border-color: #30282d; box-shadow: 0 2px 0 #62565d, 0 20px 45px rgba(53,24,33,.1); }
.software-page .care-role.is-selected .care-phone { border-color: #30282d; box-shadow: 0 2px 0 #62565d, 0 20px 45px rgba(53,24,33,.1); }
.software-page .care-receipt-symbol { color: var(--wine); border-color: #b998a0; border-radius: 5px; }
.software-page .care-story :is(a,button,select,summary):focus-visible, .software-page .care-bridge a:focus-visible { outline-color: var(--coral-deep); }
.software-page .care-note { color: var(--ink-soft); }
.software-page .care-evidence details { border-color: var(--line); }

.hardware-page {
  --hardware-cream: var(--ink);
  --hardware-muted: var(--ink-soft);
  --hardware-faint: var(--line);
  --hardware-dark: var(--paper-bright);
  --hardware-orange: var(--wine);
  --hardware-coral: var(--coral-deep);
  --hardware-canvas: #fffdf9;
  background: var(--paper-bright);
}
.hardware-page .site-header { background: rgba(255,253,249,.96); }
.hardware-page .hardware-copy__phase,
.hardware-page .hardware-viewer__loading,
.hardware-page .hardware-viewer__error,
.hardware-page .hardware-mobile-intro,
.hardware-page .hardware-mobile-step { border-color: var(--line); }
.hardware-page .hardware-copy__kicker,
.hardware-page .hardware-copy__phase,
.hardware-page .hardware-viewer__meta,
.hardware-page .hardware-viewer__loading > span,
.hardware-page .hardware-viewer__loading strong,
.hardware-page .hardware-outro > p,
.hardware-page .hardware-mobile-intro p,
.hardware-page .hardware-mobile-step p { font-family: inherit; letter-spacing: 0; font-size: 12px; }
.hardware-page .hardware-copy__kicker { color: var(--wine); }
.hardware-page .hardware-copy h2 { font-weight: 850; }
.hardware-page .hardware-viewer__gesture,
.hardware-page .hardware-stage__scroll-cue { color: var(--ink-soft); }
.hardware-page .hardware-copy__part-progress span,
.hardware-page .hardware-viewer__loading-track,
.hardware-page .hardware-stage__meter { background: var(--paper-warm); }
.hardware-page .hardware-copy__part-progress span.is-active { background: var(--coral-deep); }
.hardware-page .hardware-copy__part-progress span.is-complete { background: var(--wine); }
.hardware-page .hardware-outro { background: #f9e6e8; }
.hardware-page .hardware-viewer__loading, .hardware-page .hardware-viewer__error { border-radius: 8px; }

.software-page .care-demo-controls .care-action--secondary { background: var(--paper-bright); color: var(--wine); border-color: #bc8e98; }
