/* Shared public interface. Brand palettes remain owned by each central. */
@media screen {
  body[data-pluze-public] {font-family:Inter,"Segoe UI",Arial,sans-serif;color:#172033}
  body[data-pluze-public="central"],body[data-pluze-public="portal"] {background:#f5f6fb;--blue:#5548c8;--accent:#5548c8;--line:#e2e5ed;--ink:#172033;--muted:#687184}
  body[data-pluze-public] :is(.topbar,.state-card,.panel,.module) {border-color:#e2e5ed;box-shadow:0 1px 2px rgb(24 33 52 / 3%);border-radius:8px}
  body[data-pluze-public] :is(h1,h2,h3) {font-family:Inter,"Segoe UI",Arial,sans-serif;letter-spacing:-.025em}
  body[data-pluze-public] :is(input,select,textarea,.button,button) {font-family:inherit;border-radius:6px}
  body[data-pluze-public] :is(a,button,input,select,textarea,summary):focus-visible {outline:2px solid var(--green,#5548c8);outline-offset:3px}
  body[data-pluze-public="central"] :is(.button:not(.secondary),.action-card:hover) {background:#5548c8;color:#fff;border-color:#5548c8}
  body[data-pluze-public="central"] .hero {background:transparent;color:#172033}
  body[data-pluze-public="central"] .hero p {color:#687184}
  body[data-pluze-public="portal"] .module {background:#fff;box-shadow:none}
  body[data-pluze-public="portal"] .module:hover {border-color:#b8b0e9;box-shadow:0 3px 12px rgb(24 33 52 / 7%)}
  body[data-pluze-public="portal"] :is(.module h3,.module .arrow) {color:#5142b7}
  body[data-pluze-public="portal"] .module-icon {background:#eeeafa;color:#5142b7}
  body[data-pluze-public="segunda-via"] .card {border-radius:8px;box-shadow:0 2px 14px rgb(24 33 52 / 7%)}
  body[data-pluze-public="segunda-via"] :is(.ticket-title,.detail-value,.card h2) {font-family:Inter,"Segoe UI",Arial,sans-serif}
  body[data-pluze-public="segunda-via"] .ticket {border-radius:6px}
  body[data-pluze-public="segunda-via"] .intro h1 {font-size:clamp(36px,5vw,60px);line-height:1.12}
  body[data-pluze-public="segunda-via"][data-brand="pluze"] {background:#f5f6fb;--green:#5548c8;--green-dark:#4438ad;--paper:#f5f6fb;--ink:#172033;--muted:#687184;--line:#e2e5ed}
  @media(max-width:600px) {
    body[data-pluze-public] :is(.shell,.container) {max-width:100%;padding-left:16px;padding-right:16px}
    body[data-pluze-public] :is(.topbar,.panel-head,.actions,footer) {flex-wrap:wrap;min-width:0;gap:10px}
    body[data-pluze-public="segunda-via"] .intro h1 {font-size:34px}
    body[data-pluze-public="segunda-via"] .card {padding:24px 18px}
  }
  @media(prefers-reduced-motion:reduce) {body[data-pluze-public] .module {transition:none;transform:none}}
}
