:root {
  --plum: #432a46;
  --ink: #392b40;
  --body: #665970;
  --accent: #bd7296;
  --accent-strong: #963b69;
  --line: #e8dce7;
  --good: #35735f;
  --bad: #a54e65;
  --copy-navy: var(--ink);
  --copy-orange: var(--accent-strong);
  --glass-shadow: 0 16px 44px #70406b0b, 0 2px 5px #70406b04;
}

body.medicglp-glass {
  background: radial-gradient(ellipse at 5% 2%, #f5deea 0, transparent 33%),
    radial-gradient(ellipse at 100% 38%, #ece3f6 0, transparent 36%),
    linear-gradient(140deg, #fff9fb, #faf6fc 55%, #fff8f4);
  color: var(--body);
}

body.medicglp-glass a { color: var(--accent-strong); }
body.medicglp-glass :focus-visible { outline: 3px solid #78469b; outline-offset: 5px; }
body.medicglp-glass .a-b-cont .a-b-o-cont { background: transparent !important; }
body.medicglp-glass #top1 { border: 0 !important; }

/* The same white borders, restrained blur and opaque fallback as the Osanix page. */
body.medicglp-glass .a-b-cont .theme-glass,
body.medicglp-glass .atomicat-container-eb953d1 > .a-o-cont > .a-cont,
body.medicglp-glass .copy-opening .copy-prose,
body.medicglp-glass .copy-bridge > .copy-wrap,
body.medicglp-glass .atomicat-container-614449f > .a-o-cont > .a-cont {
  background: rgba(255, 255, 255, .94) !important;
  border: 1px solid #fff !important;
  border-radius: 26px;
  box-shadow: var(--glass-shadow), inset 0 1px 0 #ffffffbf;
}

body.medicglp-glass .a-b-cont .atomicat-container-ed8322d.theme-glass {
  background: linear-gradient(125deg, #fff9fcef, #f8edf8ee) !important;
  border: 1px solid #dfb9d4 !important;
  border-top: 3px solid #b77c9d !important;
  box-shadow: 0 18px 48px #93547813, inset 0 1px 0 #fff;
}

body.medicglp-glass .atomicat-container-eb953d1 > .a-o-cont > .a-cont {
  padding: 34px 36px 28px;
  border-radius: 32px;
}

body.medicglp-glass .copy-opening .copy-prose,
body.medicglp-glass .copy-bridge > .copy-wrap { padding: 32px 36px; }
body.medicglp-glass .copy-section { color: var(--body); }
body.medicglp-glass .copy-bridge { background: transparent; }
body.medicglp-glass .copy-section h2 { color: var(--ink); }
body.medicglp-glass .copy-lineup { border-radius: 24px; box-shadow: var(--glass-shadow); }

body.medicglp-glass .copy-pull,
body.medicglp-glass .copy-table-verdict,
body.medicglp-glass .atomicat-heading-title-656f457 {
  background: linear-gradient(110deg, #f5e5efcf, #eee7f5cf) !important;
  border-left: 3px solid #bc83a7 !important;
  border-radius: 0 18px 18px 0;
  color: var(--body);
}

body.medicglp-glass .copy-eyebrow,
body.medicglp-glass .copy-quote-label { color: var(--accent-strong); }
body.medicglp-glass .copy-secondary { color: #76557b; }

body.medicglp-glass .copy-primary,
body.medicglp-glass .atomicat-button > a.a-b-b {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 56px;
  background: linear-gradient(115deg, #98416e, #79508f) !important;
  color: #fff !important;
  border: 1px solid #ffffff3d !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 20px #873c6b24 !important;
  transition: box-shadow .22s ease, transform .22s ease, background .22s ease;
  text-decoration: none;
}

body.medicglp-glass .atomicat-button > a.a-b-b span { color: #fff !important; }
body.medicglp-glass .atomicat-button > a.a-b-b span { position: relative; z-index: 2; }

/* Static glass reflection plus a single light sweep on interaction. */
body.medicglp-glass .copy-primary::before,
body.medicglp-glass .atomicat-button > a.a-b-b::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(180deg, #ffffff24, #ffffff00 58%, #432a460c);
  box-shadow: inset 0 1px 0 #ffffff66, inset 0 -1px 0 #432a461a;
  pointer-events: none;
}
body.medicglp-glass .copy-primary::after,
body.medicglp-glass .atomicat-button > a.a-b-b::after {
  content: "";
  position: absolute;
  inset: -50% auto -50% 0;
  width: 36%;
  background: linear-gradient(90deg, #ffffff00, #ffffff50, #ffffff00);
  transform: translateX(-200%) skewX(-20deg);
  opacity: 0;
  pointer-events: none;
}

body.medicglp-glass .copy-secondary,
body.medicglp-glass .copy-table-note a,
body.medicglp-glass .atomicat-container-f94e484 a {
  text-underline-offset: 4px;
  transition: color .18s ease, text-decoration-color .18s ease;
}
body.medicglp-glass .copy-secondary:hover,
body.medicglp-glass .copy-table-note a:hover,
body.medicglp-glass .atomicat-container-f94e484 a:hover {
  color: #85375f !important;
  text-decoration: underline;
  text-decoration-thickness: 2px;
}

body.medicglp-glass .theme-glass {
  transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}

@keyframes button-reflection {
  from { transform: translateX(-200%) skewX(-20deg); opacity: 0; }
  20% { opacity: .85; }
  80% { opacity: .85; }
  to { transform: translateX(400%) skewX(-20deg); opacity: 0; }
}

@media (hover: hover) and (pointer: fine) {
  body.medicglp-glass .copy-primary:hover,
  body.medicglp-glass .atomicat-button > a.a-b-b:hover { transform: translateY(-2px); }
  body.medicglp-glass .copy-primary:hover::after,
  body.medicglp-glass .atomicat-button > a.a-b-b:hover::after {
    animation: button-reflection .8s ease-out both;
  }
  body.medicglp-glass .a-b-cont .theme-glass:hover {
    transform: translateY(-3px);
    border-color: #e3bfd8 !important;
    box-shadow: 0 22px 48px #70406b19, inset 0 1px 0 #ffffffbf;
  }
  body.medicglp-glass .copy-comparison tbody tr:hover > * { background: #f3e7f0b8; }
}

body.medicglp-glass .copy-primary:focus-visible::after,
body.medicglp-glass .atomicat-button > a.a-b-b:focus-visible::after {
  animation: button-reflection .8s ease-out both;
}
body.medicglp-glass .copy-primary:hover,
body.medicglp-glass .atomicat-button > a.a-b-b:hover {
  background: linear-gradient(115deg, #85375f, #67427e) !important;
  box-shadow: 0 10px 24px #873c6b32 !important;
}

body.medicglp-glass .a-b-cont .atomicat-container-d390932 {
  background: linear-gradient(110deg, #643b60, #77506e) !important;
  border-bottom: 1px solid #ffffff70;
}
body.medicglp-glass .atomicat-container-d390932 h3 { color: #f5e8f2 !important; }

body.medicglp-glass .a-b-cont .atomicat-container-2cd1e86 {
  background: linear-gradient(115deg, #f1e3efbd, #f6e6ecbd) !important;
  border-block: 1px solid #fff;
  box-shadow: 0 12px 38px #70406b08;
}

body.medicglp-glass .copy-table-scroll {
  background: rgba(255, 255, 255, .94);
  border: 1px solid #fff;
  border-radius: 20px;
  box-shadow: var(--glass-shadow);
}
body.medicglp-glass .copy-comparison thead { background: #f3e8f2; color: var(--ink); }
body.medicglp-glass .copy-comparison thead th:nth-child(2) {
  background: linear-gradient(115deg, #98416e, #79508f); color: #fff;
}
body.medicglp-glass .copy-comparison tbody td:nth-child(2) { background: #f9eaf3a6; }
body.medicglp-glass .copy-comparison th,
body.medicglp-glass .copy-comparison td { border-bottom-color: var(--line); }
body.medicglp-glass .copy-table-note { color: #796a80; }

body.medicglp-glass .atomicat-container-614449f > .a-o-cont > .a-cont {
  padding: 32px;
  background: linear-gradient(120deg, #fcf2f8ef, #f1eaf7ee) !important;
  border-color: #e7cfe2 !important;
}
body.medicglp-glass .atomicat-container-614449f h3,
body.medicglp-glass .atomicat-container-614449f p { color: var(--body) !important; }
body.medicglp-glass .atomicat-heading-title-ca04d2f h3,
body.medicglp-glass .atomicat-heading-title-ed764a1 h3 { color: var(--ink) !important; }
body.medicglp-glass .atomicat-heading-title-50256df h3 { color: var(--accent-strong) !important; }

body.medicglp-glass .a-b-cont .atomicat-container-f94e484 {
  background: linear-gradient(115deg, #f1e5f0d9, #f5e9f0d9) !important;
  border-top: 1px solid #fff;
}
body.medicglp-glass .atomicat-container-f94e484 h3,
body.medicglp-glass .atomicat-container-f94e484 p,
body.medicglp-glass .atomicat-container-f94e484 a { color: #725a78 !important; }

@supports ((backdrop-filter: blur(18px)) or (-webkit-backdrop-filter: blur(18px))) {
  body.medicglp-glass .a-b-cont .theme-glass,
  body.medicglp-glass .atomicat-container-eb953d1 > .a-o-cont > .a-cont,
  body.medicglp-glass .copy-opening .copy-prose,
  body.medicglp-glass .copy-bridge > .copy-wrap {
    background: rgba(255, 255, 255, .75) !important;
    -webkit-backdrop-filter: blur(18px);
    backdrop-filter: blur(18px);
  }
  body.medicglp-glass .a-b-cont .atomicat-container-ed8322d.theme-glass {
    background: linear-gradient(125deg, #fff9fcd9, #f8edf8c9) !important;
  }
  body.medicglp-glass .atomicat-container-614449f > .a-o-cont > .a-cont {
    background: linear-gradient(120deg, #fcf2f8d9, #f1eaf7c9) !important;
    -webkit-backdrop-filter: blur(18px);
    backdrop-filter: blur(18px);
  }
  body.medicglp-glass .copy-table-scroll {
    background: #ffffffbf;
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
  }
}

@media (max-width: 760px) {
  body.medicglp-glass .atomicat-container-eb953d1 > .a-o-cont > .a-cont {
    padding: 26px 20px 22px;
    border-radius: 24px;
  }
  body.medicglp-glass .atomicat-heading-title-b033962 h1 { font-size: clamp(28px, 7.5vw, 38px); }
  body.medicglp-glass .copy-opening .copy-prose,
  body.medicglp-glass .copy-bridge > .copy-wrap { padding: 25px 23px; border-radius: 22px; }
  body.medicglp-glass .theme-glass { border-radius: 22px; }
  body.medicglp-glass .atomicat-container-614449f > .a-o-cont > .a-cont { padding: 25px 20px; border-radius: 22px; }
  body.medicglp-glass .copy-lineup { border-radius: 20px; }
}

@media (prefers-reduced-motion: reduce) {
  body.medicglp-glass *, body.medicglp-glass *::before, body.medicglp-glass *::after {
    transition: none !important;
    animation: none !important;
  }
  body.medicglp-glass .copy-primary,
  body.medicglp-glass .atomicat-button > a.a-b-b,
  body.medicglp-glass .a-b-cont .theme-glass { transform: none !important; }
  body.medicglp-glass .copy-primary::after,
  body.medicglp-glass .atomicat-button > a.a-b-b::after { opacity: 0; }
}
