body.chooser-page {
    background: radial-gradient(ellipse at top left, #e6efff 0%, transparent 48%), radial-gradient(ellipse at top right, #f7eaf4 0%, transparent 42%), radial-gradient(ellipse at bottom left, #edf5f0 0%, transparent 38%), #f5f6f8;
    color: #17243b;
    font-family: Inter, Arial, sans-serif;
}
.choose-wrap { width: 100%; }
.choose-shell { display: flex; flex-direction: column; width: 100%; max-width: 1156px; min-height: 100dvh; margin: auto; padding: 48px 28px 0; }
.choose-brand { align-self: flex-start; display: inline-flex; max-width: 100%; margin-bottom: 60px; }
.choose-brand img { width: 252px; max-width: 100%; height: auto; }
.choose-heading { text-align: center; margin-bottom: 36px; }
.choose-eyebrow { display: block; color: #52739c; font-size: 11px; font-weight: 600; letter-spacing: 1.8px; margin-bottom: 16px; }
.choose-heading h1 { font-size: clamp(30px, 3.6vw, 44px); font-weight: 800; letter-spacing: -1.4px; line-height: 1.2; margin: 0 0 16px; }
.choose-heading .sub { max-width: 530px; margin: auto; color: #5c6b80; font-size: 15px; line-height: 1.8; }
.choose-wrap .apps-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.choose-wrap .app-card { min-width: 0; position: relative; display: flex; flex-direction: column; padding: 32px 24px 24px; background: #fff; border: 1px solid #e2e7ef; border-radius: 20px; box-shadow: 0 16px 48px #26395808; }
.choose-wrap .choose-card-header { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; margin-bottom: 18px; background: transparent; box-shadow: none; }
.choose-wrap .icon-badge { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 14px; }
.choose-wrap .icon-badge svg { width: 26px; height: 26px; }
.choose-wrap .hr-bg { background: #edf3ff; color: #2864ef; }
.choose-wrap .qa-bg { background: #f3edfc; color: #8263b0; }
.choose-wrap .lms-bg { background: #fbeef4; color: #ae678a; }
.choose-wrap .app-title { font-size: 26px; font-weight: 600; margin: 0 0 6px; letter-spacing: -.5px; }
.choose-wrap .small { color: #65748a !important; font-size: 12px; line-height: 1.6; }
.choose-wrap .app-blurb { color: #65748a; font-size: 14px; line-height: 1.8; margin-bottom: 28px; }
.choose-wrap .app-cta { margin-top: auto; }
.choose-wrap .app-card:not(.is-disabled):not([aria-disabled="true"]) { transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.choose-wrap .app-card:not(.is-disabled):not([aria-disabled="true"]):focus-within { border-color: #9bb8fa; box-shadow: 0 18px 40px #2864ef14; }
@media (hover: hover) {
    .choose-wrap .app-card:not(.is-disabled):not([aria-disabled="true"]):hover { transform: translateY(-4px); box-shadow: 0 20px 48px rgba(23, 36, 59, .14); }
}
@media (prefers-reduced-motion: reduce) {
    .choose-wrap .app-card:not(.is-disabled):not([aria-disabled="true"]) { transition: none; }
    .choose-wrap .app-card:not(.is-disabled):not([aria-disabled="true"]):hover { transform: none; }
}
.choose-wrap .btn { display: grid; place-items: center; min-height: 46px; border-radius: 9px; font-size: 14px; font-weight: 600; }
.choose-wrap .btn-primary { background: #2864ef; border-color: #2864ef; }
.choose-wrap .btn-primary:hover { background: #2054d3; border-color: #2054d3; }
.choose-wrap .is-disabled { background: #ffffffb8; }
.choose-wrap .coming-chip { position: absolute; top: 24px; right: 20px; padding: 5px 10px; border: 1px solid #e2e7ef; border-radius: 99px; background: #f5f6f8; color: #65748a; font-size: 11px; }
.choose-wrap .btn:disabled { opacity: 1; background: #f5f6f8; border-color: #e2e7ef; color: #738097; cursor: not-allowed; }
.choose-note { flex: 1; display: grid; align-content: center; margin: 0; padding: 40px 0; text-align: center; color: #738097; font-size: 12px; line-height: 1.8; }
.choose-brand:focus-visible, .choose-wrap .btn:focus-visible { outline: 3px solid #7199fa; outline-offset: 4px; }
@media (max-width: 767px) {
    .choose-shell { max-width: 540px; padding: 28px 20px 0; }
    .choose-brand { align-self: center; margin-bottom: 36px; }
    .choose-wrap .apps-grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
    .choose-heading { margin-bottom: 28px; }
    .choose-note { padding: 28px 0; }
}
