/* A296: shared Contact-page button design. */
:root {
  --phd-button-blue: #0a60d1;
  --phd-button-blue-dark: #074ba4;
  --phd-button-navy: #001c55;
  --phd-button-line: #b8cbe1;
}
body .button:not([role="switch"]),
.viewer .button:not([role="switch"]) {
  box-sizing: border-box;
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 11px 17px;
  border: 1px solid var(--phd-button-line);
  border-radius: 10px;
  background: #fff;
  color: var(--phd-button-navy);
  font: 760 .83rem/1.25 "Segoe UI", Arial, Helvetica, sans-serif;
  letter-spacing: normal;
  text-align: center;
  text-transform: none;
  text-decoration: none;
  cursor: pointer;
  touch-action: manipulation;
  transition: background-color 120ms ease, border-color 120ms ease, box-shadow 120ms ease;
}
.button[hidden] { display: none !important; }
body .button:not(:disabled):hover {
  border-color: #8ca9ca;
  background: #f5f9ff;
  translate: none;
  transform: none;
}
body .button.button-primary,
.viewer .button.button-primary {
  border-color: var(--phd-button-blue);
  background: var(--phd-button-blue);
  color: #fff;
  box-shadow: 0 9px 24px rgba(10, 96, 209, .18);
}
body .button.button-primary:not(:disabled):hover {
  border-color: var(--phd-button-blue-dark);
  background: var(--phd-button-blue-dark);
}
body .button.button-danger {
  border-color: #e8a39e;
  color: #b42318;
  background: #fff;
}
body .button.button-danger:not(:disabled):hover { background: #fff0ee; }
body .button:disabled,
.viewer .button:disabled {
  cursor: default;
  opacity: .55;
  translate: none;
}
body .button:focus-visible {
  outline: 3px solid #0a60d1;
  outline-offset: 3px;
}
.viewer .button:focus-visible { outline-color: #65dfff; }
.viewer .button.button-icon,
body .button.verification-close {
  width: 46px;
  height: 46px;
  min-width: 46px;
  padding: 0;
  flex: none;
  font-size: 22px;
}
/* Keep the help control centered while sharing the button treatment. */
.viewer #viewerHelpButton,
.viewer #viewerHelpButton:not(:disabled):hover { transform: translateY(-50%); }
body .button.admin-tab { flex: none; white-space: nowrap; }
body .button.admin-tab.is-active {
  border-color: var(--phd-button-blue);
  background: var(--phd-button-blue);
  color: #fff;
}
@media (prefers-reduced-motion: reduce) {
  body .button { transition: none; }
  body .button:not(:disabled):hover { translate: none; }
}

/* A297: compact inspection buttons; keep the tissue switch large. */
.viewer .button.button-icon:not([role="switch"]){width:30px;height:30px;min-width:30px;min-height:30px;padding:0;border-radius:8px;font-size:18px;line-height:1;flex:none}
.viewer #viewerHelpButton.button{width:26px;height:26px;min-width:26px;min-height:26px;border-radius:50%;font-size:16px;line-height:1;background:#0a60d1;border-color:#4394e4;color:#fff;box-shadow:none}
.viewer #viewerHelpButton.button:not(:disabled):hover{background:#074ba4;border-color:#69b6ff}
html,body,body *{cursor:default!important}
body :is(a[href],button:not(:disabled),summary,select:not(:disabled),input[type="range"]:not(:disabled),input[type="checkbox"]:not(:disabled),input[type="radio"]:not(:disabled),input[type="submit"]:not(:disabled),input[type="button"]:not(:disabled),input[type="file"]:not(:disabled),[role="button"]:not([aria-disabled="true"]),[role="switch"]:not(:disabled):not([aria-disabled="true"]),label){cursor:pointer!important}
body :is(a[href],button:not(:disabled),summary,label,[role="button"]:not([aria-disabled="true"]),[role="switch"]:not(:disabled):not([aria-disabled="true"])) *{cursor:pointer!important}
body :is(button:disabled,[aria-disabled="true"],[inert]),body :is(button:disabled,[aria-disabled="true"],[inert]) *{cursor:default!important}
