/*
 * Prodigy Subscribe - styles for the [prodigy_subscribe] page.
 *
 * Palette and control treatment match the practitioner portal and the
 * training page: white cards, purple #4c255f headings, teal #00a38d buttons
 * with the #008976 hover. Every button sets text-transform:none explicitly
 * because the site theme force-uppercases clickable classes.
 */

.ps-app {margin:0;}
.ps-app .ps-panel {border:1px solid #ececec;border-radius:8px;background:#fff;padding:22px;box-sizing:border-box;margin:0 0 18px;}
.ps-app h3 {color:#4c255f;margin:0 0 10px;}
.ps-app .ps-sub {color:#66706f;font-size:.96em;line-height:1.55;margin:0 0 14px;}
.ps-app .ps-lede {margin:0 0 18px;}
.ps-app .ps-small {font-size:.92em;color:#555;}
.ps-app .ps-trial {color:#00806f;font-weight:700;font-size:.94em;margin:0 0 12px;}
.ps-app .ps-msg {display:none;border-left:4px solid #00a38d;background:#e5f3f3;padding:12px 14px;margin:0 0 18px;}
.ps-app .ps-msg.ps-show {display:block;}
.ps-app .ps-msg.ps-error {border-left-color:#b3443e;background:#fbeeed;}
.ps-app .ps-panel .ps-msg.ps-show {margin:0;}
.ps-app .ps-button {display:inline-flex;align-items:center;justify-content:center;height:36px;min-height:36px;background:#00a38d;color:#fff;border:0;border-radius:4px;padding:0 14px;font-weight:700;font-size:.94em;line-height:1;cursor:pointer;text-decoration:none;text-transform:none;letter-spacing:normal;box-sizing:border-box;}
.ps-app .ps-button:hover,
.ps-app .ps-button:focus {background:#008976;color:#ffffff;text-decoration:none;}
.ps-app .ps-button-secondary {background:#fff;color:#00a38d;border:1px solid #00a38d;}
.ps-app .ps-button-secondary:hover,
.ps-app .ps-button-secondary:focus {background:#f2faf9;color:#008976;border-color:#008976;}
.ps-app button[disabled] {opacity:.6;cursor:default;}
.ps-app .ps-actions {display:flex;gap:10px;flex-wrap:wrap;margin:0;}
.ps-app .ps-link-button {background:transparent;border:0;padding:0;color:#00a38d;font-weight:700;cursor:pointer;text-transform:none;letter-spacing:normal;}
.ps-app .ps-link-button:hover,
.ps-app .ps-link-button:focus {color:#008976;text-decoration:underline;}
.ps-app .ps-links {display:flex;gap:18px;flex-wrap:wrap;margin:0;}

/* Price tiles (the training buy screen's anatomy: the PRICE is the purple
   heading, one gray line under it, then the button). Every tile is the same
   three elements; the flex column with margin-top:auto pins each button to
   the tile's foot, so the buttons stay aligned even when a note wraps. */
.ps-app .ps-price-row {display:flex;gap:14px;flex-wrap:wrap;margin:0;align-items:stretch;}
.ps-app .ps-price-card {flex:1 1 220px;border:1px solid #d9eee9;background:#f7fcfb;border-radius:8px;padding:16px 18px;box-sizing:border-box;display:flex;flex-direction:column;}
.ps-app .ps-price-card strong {display:block;color:#4c255f;font-size:1.1em;margin:0 0 4px;}
.ps-app .ps-price-note {margin:0 0 12px;color:#66706f;font-size:.88em;}
.ps-app .ps-price-card .ps-button {margin-top:auto;align-self:flex-start;}
.ps-app .ps-not-on-sale {margin:12px 0 0;}
