/*
 * EMV unified rectilinear frame
 *
 * This file is deliberately loaded after every page-specific stylesheet.
 * Page styles may choose colors, spacing, and layout, but they must not
 * reintroduce rounded application surfaces into the shared EMV frame.
 */

:root {
  --radius: 0px;
  --emv-frame-radius: 0px;
}

body *,
body *::before,
body *::after {
  border-radius: 0 !important;
}

/* Semantic activity indicators remain circular; they are not containers. */
body :is(
  [class*="dot"],
  [class*="pulse"],
  [class*="spinner"],
  [class*="orbit"],
  input[type="radio"]
),
body :is(
  [class*="dot"],
  [class*="pulse"],
  [class*="spinner"],
  [class*="orbit"]
)::before,
body :is(
  [class*="dot"],
  [class*="pulse"],
  [class*="spinner"],
  [class*="orbit"]
)::after {
  border-radius: 50% !important;
}
