/* PG Prep System — Premium frontend UI (scoped to .pgp-app) */
.pgp-app{
  --pgp-bg:#f5f7fb;
  --pgp-surface:#ffffff;
  --pgp-surface-soft:#f8faff;
  --pgp-ink:#111827;
  --pgp-muted:#667085;
  --pgp-border:#e4e7ec;
  --pgp-primary:#4f46e5;
  --pgp-primary-strong:#3730a3;
  --pgp-primary-soft:#eef2ff;
  --pgp-violet:#7c3aed;
  --pgp-success:#059669;
  --pgp-success-soft:#ecfdf3;
  --pgp-warning:#d97706;
  --pgp-warning-soft:#fffbeb;
  --pgp-danger:#dc2626;
  --pgp-danger-soft:#fef2f2;
  --pgp-shadow-sm:0 1px 2px rgba(16,24,40,.04),0 1px 3px rgba(16,24,40,.08);
  --pgp-shadow:0 12px 32px rgba(15,23,42,.08);
  --pgp-shadow-lg:0 28px 70px rgba(30,41,59,.14);
  --pgp-radius-sm:10px;
  --pgp-radius:16px;
  --pgp-radius-lg:24px;
  box-sizing:border-box;
  width:100%;
  max-width:1180px;
  min-width:0;
  margin:28px auto;
  margin-inline:auto!important;
  float:none!important;
  clear:both;
  justify-self:center;
  color:var(--pgp-ink);
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  font-size:15px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
.pgp-app *{box-sizing:border-box}
.pgp-app h1,.pgp-app h2,.pgp-app h3,.pgp-app h4,.pgp-app p,.pgp-app dl,.pgp-app dd,.pgp-app ul{margin-top:0}
.pgp-app h1,.pgp-app h2,.pgp-app h3,.pgp-app h4{color:var(--pgp-ink);letter-spacing:-.025em;line-height:1.2}
.pgp-app a{color:var(--pgp-primary);text-underline-offset:3px}
.pgp-app a:hover{color:var(--pgp-primary-strong)}
.pgp-app :focus-visible{outline:3px solid rgba(79,70,229,.24);outline-offset:2px}
.pgp-icon{display:inline-block;width:20px;height:20px;flex:0 0 auto;vertical-align:middle}
.pgp-kicker{display:block;margin-bottom:8px;color:var(--pgp-primary);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}

/* Shared buttons and feedback */
.pgp-button,.pgp-app button,.pgp-login-form #wp-submit{
  appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:11px 20px;border:1px solid transparent;border-radius:12px;background:linear-gradient(135deg,var(--pgp-primary),var(--pgp-violet));box-shadow:0 8px 18px rgba(79,70,229,.22);color:#fff!important;font:inherit;font-weight:750;line-height:1;text-decoration:none!important;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease,opacity .18s ease
}
.pgp-button:hover,.pgp-app button:hover,.pgp-login-form #wp-submit:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(79,70,229,.28);filter:saturate(1.08)}
.pgp-button:active,.pgp-app button:active{transform:translateY(0)}
.pgp-button[disabled],.pgp-app button[disabled]{opacity:.58;cursor:not-allowed;transform:none;box-shadow:none}
.pgp-button-wide{width:100%}
.pgp-button-secondary{background:var(--pgp-surface);border-color:var(--pgp-border);box-shadow:none;color:var(--pgp-ink)!important}
.pgp-button-secondary:hover{background:var(--pgp-surface-soft);box-shadow:var(--pgp-shadow-sm)}
.pgp-button-danger{background:linear-gradient(135deg,#ef4444,#b91c1c)}
.pgp-notice{display:flex;align-items:flex-start;gap:11px;margin:16px 0;padding:14px 16px;border:1px solid #c7d7fe;border-radius:13px;background:#f3f6ff;color:#293056;box-shadow:var(--pgp-shadow-sm)}
.pgp-notice .pgp-icon{margin-top:2px;color:var(--pgp-primary)}
.pgp-notice-error,.pgp-error{border-color:#fecaca;background:var(--pgp-danger-soft);color:#991b1b}
.pgp-notice-error .pgp-icon,.pgp-error .pgp-icon{color:var(--pgp-danger)}
.pgp-notice-success{border-color:#a7f3d0;background:var(--pgp-success-soft);color:#065f46}

/* Authentication */
.pgp-auth-shell{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(390px,.95fr);min-height:650px;overflow:hidden;border:1px solid rgba(255,255,255,.55);border-radius:28px;background:var(--pgp-surface);box-shadow:var(--pgp-shadow-lg)}
.pgp-auth-visual{position:relative;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding:64px;background:
 radial-gradient(circle at 20% 10%,rgba(255,255,255,.22),transparent 34%),
 radial-gradient(circle at 90% 85%,rgba(167,139,250,.35),transparent 35%),
 linear-gradient(145deg,#312e81 0%,#4f46e5 47%,#7c3aed 100%);color:#fff}
.pgp-auth-visual:before,.pgp-auth-visual:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.16);border-radius:50%}
.pgp-auth-visual:before{width:320px;height:320px;right:-120px;top:-90px}
.pgp-auth-visual:after{width:210px;height:210px;left:-90px;bottom:-70px}
.pgp-auth-visual>*{position:relative;z-index:1}
.pgp-brand-mark{display:grid;place-items:center;width:54px;height:54px;margin-bottom:46px;border:1px solid rgba(255,255,255,.32);border-radius:17px;background:rgba(255,255,255,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.22);font-size:20px;font-weight:900;letter-spacing:-.04em;backdrop-filter:blur(10px)}
.pgp-auth-visual .pgp-kicker{color:#ddd6fe}
.pgp-auth-visual h2{max-width:560px;margin-bottom:20px;color:#fff;font-size:clamp(35px,4vw,58px);font-weight:820;letter-spacing:-.045em}
.pgp-auth-visual p{max-width:530px;margin-bottom:34px;color:rgba(255,255,255,.8);font-size:17px}
.pgp-auth-benefits{display:grid;gap:14px}
.pgp-auth-benefits span{display:flex;align-items:center;gap:12px;color:rgba(255,255,255,.9);font-weight:650}
.pgp-auth-benefits .pgp-icon{padding:6px;width:32px;height:32px;border-radius:10px;background:rgba(255,255,255,.13)}
.pgp-auth-card{display:flex;flex-direction:column;justify-content:center;padding:56px 58px;background:linear-gradient(180deg,#fff,#fbfcff)}
.pgp-auth-heading{margin-bottom:28px}
.pgp-auth-heading h2{margin-bottom:10px;font-size:34px}
.pgp-auth-heading p{margin-bottom:0;color:var(--pgp-muted)}
.pgp-form{display:grid;gap:18px}
.pgp-form label,.pgp-login-form label{display:block;margin:0;color:#344054;font-size:13px;font-weight:700}
.pgp-input-wrap{display:flex;align-items:center;gap:11px;margin-top:7px;padding:0 14px;border:1px solid var(--pgp-border);border-radius:12px;background:#fff;transition:border-color .18s ease,box-shadow .18s ease}
.pgp-input-wrap:focus-within{border-color:#a5b4fc;box-shadow:0 0 0 4px rgba(79,70,229,.1)}
.pgp-input-wrap .pgp-icon{width:18px;color:#98a2b3}
.pgp-input-wrap input{width:100%;height:48px;padding:0;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;color:var(--pgp-ink);font:inherit}
.pgp-login-form form{display:grid;gap:17px}
.pgp-login-form p{margin:0}
.pgp-login-form .login-username label,.pgp-login-form .login-password label{display:block;margin-bottom:7px}
.pgp-login-form input[type="text"],.pgp-login-form input[type="password"]{width:100%;height:50px;padding:0 14px;border:1px solid var(--pgp-border);border-radius:12px;background:#fff;box-shadow:none;font:inherit;transition:border-color .18s ease,box-shadow .18s ease}
.pgp-login-form input[type="text"]:focus,.pgp-login-form input[type="password"]:focus{border-color:#a5b4fc;outline:0;box-shadow:0 0 0 4px rgba(79,70,229,.1)}
.pgp-login-form .login-remember label{display:flex;align-items:center;gap:9px;font-weight:600}
.pgp-login-form input[type="checkbox"]{width:17px;height:17px;accent-color:var(--pgp-primary)}
.pgp-login-form .login-submit{margin-top:4px}
.pgp-login-form #wp-submit{width:100%;border:0}
.pgp-auth-orbit{position:relative;width:220px;height:120px;margin-top:18px}
.pgp-auth-orbit:before{content:"";position:absolute;inset:15px 0;border:1px solid rgba(255,255,255,.22);border-radius:50%;transform:rotate(-10deg)}
.pgp-auth-orbit span{position:absolute;width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 0 24px rgba(255,255,255,.8)}
.pgp-auth-orbit span:nth-child(1){left:15px;top:58px}.pgp-auth-orbit span:nth-child(2){left:110px;top:13px}.pgp-auth-orbit span:nth-child(3){right:9px;bottom:25px}

/* Dashboard */
.pgp-dashboard{display:grid;gap:28px}
.pgp-dashboard-hero{position:relative;display:flex;align-items:center;justify-content:space-between;gap:28px;overflow:hidden;padding:34px 36px;border-radius:var(--pgp-radius-lg);background:
 radial-gradient(circle at 85% 10%,rgba(196,181,253,.48),transparent 34%),
 linear-gradient(135deg,#eef2ff 0%,#ffffff 46%,#faf5ff 100%);border:1px solid #e0e7ff;box-shadow:var(--pgp-shadow)}
.pgp-dashboard-hero:after{content:"";position:absolute;width:190px;height:190px;right:-90px;bottom:-130px;border:36px solid rgba(79,70,229,.07);border-radius:50%}
.pgp-dashboard-profile{position:relative;z-index:1;display:flex;align-items:center;gap:20px}
.pgp-avatar{flex:0 0 auto;padding:4px;border-radius:22px;background:linear-gradient(135deg,#818cf8,#c084fc);box-shadow:0 10px 24px rgba(79,70,229,.18)}
.pgp-avatar img{display:block;width:72px;height:72px;border:3px solid #fff;border-radius:18px}
.pgp-dashboard-profile h1{margin-bottom:9px;font-size:clamp(28px,3vw,40px)}
.pgp-dashboard-profile p{margin-bottom:0;color:var(--pgp-muted)}
.pgp-membership-card{position:relative;z-index:1;display:flex;flex-direction:column;min-width:220px;padding:20px 22px;border:1px solid rgba(255,255,255,.8);border-radius:18px;background:rgba(255,255,255,.78);box-shadow:var(--pgp-shadow-sm);backdrop-filter:blur(14px)}
.pgp-membership-card>span{display:flex;align-items:center;gap:7px;margin-bottom:8px;color:var(--pgp-muted);font-size:12px;font-weight:750;text-transform:uppercase;letter-spacing:.08em}
.pgp-membership-card strong{font-size:19px}.pgp-membership-card small{margin-top:4px;color:var(--pgp-muted)}.pgp-membership-card .pgp-membership-priority{margin-top:8px;padding-top:8px;border-top:1px solid rgba(109,40,217,.12);color:#5b21b6;font-weight:700;line-height:1.45}.pgp-next-action-focus{margin:4px 0 0;color:var(--pgp-muted);font-size:12px;font-weight:650}
.pgp-membership-card.is-premium{border-color:#c4b5fd;background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(245,243,255,.95))}
.pgp-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.pgp-stat-card{display:flex;align-items:center;gap:15px;min-height:132px;padding:20px;border:1px solid var(--pgp-border);border-radius:17px;background:var(--pgp-surface);box-shadow:var(--pgp-shadow-sm);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.pgp-stat-card:hover{transform:translateY(-2px);border-color:#c7d2fe;box-shadow:var(--pgp-shadow)}
.pgp-stat-icon{display:grid;place-items:center;width:47px;height:47px;border-radius:14px;background:var(--pgp-primary-soft);color:var(--pgp-primary)}
.pgp-stat-icon .pgp-icon{width:23px;height:23px}
.pgp-stat-card>div{display:flex;flex-direction:column}.pgp-stat-card>div>span{color:var(--pgp-muted);font-size:13px;font-weight:650}.pgp-stat-card strong{margin:2px 0;font-size:26px;line-height:1.1}.pgp-stat-card small{color:#98a2b3;font-size:11px}
.pgp-tone-violet .pgp-stat-icon{background:#f5f3ff;color:#7c3aed}.pgp-tone-emerald .pgp-stat-icon{background:#ecfdf3;color:#059669}.pgp-tone-amber .pgp-stat-icon{background:#fffbeb;color:#d97706}
.pgp-section{display:grid;gap:16px}
.pgp-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.pgp-section-head h2{margin-bottom:0;font-size:27px}.pgp-section-count{padding:7px 11px;border:1px solid var(--pgp-border);border-radius:999px;background:#fff;color:var(--pgp-muted);font-size:12px;font-weight:700}
.pgp-exam-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.pgp-exam-card{position:relative;display:flex;flex-direction:column;min-height:330px;overflow:hidden;padding:22px;border:1px solid var(--pgp-border);border-radius:19px;background:var(--pgp-surface);box-shadow:var(--pgp-shadow-sm);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.pgp-exam-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--pgp-primary),var(--pgp-violet));opacity:.8}
.pgp-exam-card:hover{transform:translateY(-4px);border-color:#c7d2fe;box-shadow:var(--pgp-shadow)}
.pgp-exam-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.pgp-tag,.pgp-state-dot{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:var(--pgp-primary-soft);color:var(--pgp-primary-strong);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.pgp-tag{max-width:100%;white-space:normal;line-height:1.2;text-align:center;text-transform:none;letter-spacing:.02em}.pgp-tag-live{background:#fef2f2;color:#b91c1c}.pgp-tag-daily{background:#fffbeb;color:#b45309}.pgp-state-dot{background:#f2f4f7;color:#475467;text-transform:none;letter-spacing:0}.pgp-state-running .pgp-state-dot{background:#ecfdf3;color:#047857}.pgp-state-scheduled .pgp-state-dot{background:#eff6ff;color:#1d4ed8}
.pgp-exam-icon{display:grid;place-items:center;width:50px;height:50px;margin:26px 0 18px;border-radius:15px;background:linear-gradient(145deg,#eef2ff,#f5f3ff);color:var(--pgp-primary)}
.pgp-exam-icon .pgp-icon{width:25px;height:25px}.pgp-exam-card h3{margin-bottom:15px;font-size:20px}.pgp-exam-meta{display:flex;flex-wrap:wrap;gap:14px;color:var(--pgp-muted);font-size:13px}.pgp-exam-meta span,.pgp-exam-date{display:flex;align-items:center;gap:6px}.pgp-exam-meta .pgp-icon,.pgp-exam-date .pgp-icon{width:16px;height:16px}.pgp-exam-date{margin:12px 0 0;color:var(--pgp-muted);font-size:12px}.pgp-exam-card-footer{display:flex;align-items:flex-end;margin-top:auto;padding-top:22px}.pgp-locked{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;padding:10px 13px;border-radius:11px;background:#f2f4f7;color:#667085;font-size:13px;font-weight:700}.pgp-locked .pgp-icon{width:17px}.pgp-scheduled{background:#eff6ff;color:#1d4ed8}
.pgp-table-card{overflow:hidden;border:1px solid var(--pgp-border);border-radius:18px;background:#fff;box-shadow:var(--pgp-shadow-sm)}
.pgp-table-wrap{overflow:auto}.pgp-table{width:100%;min-width:720px;border-collapse:separate;border-spacing:0;background:#fff}.pgp-table th{padding:14px 18px;border-bottom:1px solid var(--pgp-border);background:#f9fafb;color:#667085;font-size:11px;font-weight:800;letter-spacing:.07em;text-align:left;text-transform:uppercase}.pgp-table td{padding:16px 18px;border-bottom:1px solid #f0f2f5;vertical-align:middle}.pgp-table tbody tr:last-child td{border-bottom:0}.pgp-table tbody tr:hover{background:#fcfcfd}.pgp-result-title{display:flex;align-items:center;gap:12px}.pgp-result-title a,.pgp-result-title strong{display:block;color:var(--pgp-ink);font-weight:750;text-decoration:none}.pgp-result-title small{display:block;color:#98a2b3}.pgp-mini-icon{display:grid;place-items:center;width:37px;height:37px;border-radius:11px;background:var(--pgp-primary-soft);color:var(--pgp-primary)}.pgp-mini-icon .pgp-icon{width:18px}.pgp-score-cell{display:flex;align-items:center;gap:10px}.pgp-score-cell>span{min-width:45px;font-weight:750}.pgp-mini-progress{width:90px;height:6px;overflow:hidden;border-radius:999px;background:#eef0f4}.pgp-mini-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--pgp-primary),#8b5cf6)}.pgp-status-pill{display:inline-flex;padding:6px 9px;border-radius:999px;font-size:11px;font-weight:800}.pgp-status-pill.is-published{background:var(--pgp-success-soft);color:#047857}.pgp-status-pill.is-pending{background:var(--pgp-warning-soft);color:#b45309}
.pgp-empty-state{display:flex;grid-column:1/-1;flex-direction:column;align-items:center;justify-content:center;min-height:210px;padding:34px;text-align:center}.pgp-empty-icon{display:grid;place-items:center;width:55px;height:55px;margin-bottom:14px;border-radius:17px;background:var(--pgp-primary-soft);color:var(--pgp-primary)}.pgp-empty-state strong{font-size:17px}.pgp-empty-state p{max-width:420px;margin:5px 0 0;color:var(--pgp-muted)}

/* Plans */
.pgp-plans-shell{display:grid;gap:30px}.pgp-plans-head{max-width:720px;margin:0 auto;text-align:center}.pgp-plans-head h2{margin-bottom:12px;font-size:clamp(30px,4vw,46px)}.pgp-plans-head p{color:var(--pgp-muted);font-size:16px}.pgp-plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));align-items:stretch;gap:20px}.pgp-plan-card{position:relative;display:flex;flex-direction:column;overflow:hidden;padding:28px;border:1px solid var(--pgp-border);border-radius:22px;background:#fff;box-shadow:var(--pgp-shadow-sm);transition:transform .2s ease,box-shadow .2s ease}.pgp-plan-card:hover{transform:translateY(-4px);box-shadow:var(--pgp-shadow)}.pgp-plan-card.is-featured{border-color:#a5b4fc;background:linear-gradient(180deg,#fafaff,#fff);box-shadow:0 20px 50px rgba(79,70,229,.14)}.pgp-popular-badge{position:absolute;top:17px;right:-34px;width:130px;padding:7px;background:linear-gradient(90deg,var(--pgp-primary),var(--pgp-violet));color:#fff;font-size:10px;font-weight:850;letter-spacing:.08em;text-align:center;text-transform:uppercase;transform:rotate(35deg)}.pgp-plan-icon{display:grid;place-items:center;width:49px;height:49px;margin-bottom:19px;border-radius:15px;background:var(--pgp-primary-soft);color:var(--pgp-primary)}.pgp-plan-card h3{margin-bottom:9px;font-size:23px}.pgp-plan-description{min-height:48px;color:var(--pgp-muted)}.pgp-price{display:flex;align-items:flex-end;gap:7px;margin:18px 0 8px}.pgp-price strong{font-size:39px;letter-spacing:-.05em;line-height:1}.pgp-price span{margin-bottom:4px;color:var(--pgp-muted);font-size:12px;font-weight:750}.pgp-plan-duration{display:flex;align-items:center;gap:7px;color:var(--pgp-muted);font-size:13px}.pgp-plan-duration .pgp-icon{width:16px}.pgp-plan-card ul{display:grid;gap:11px;margin:23px 0;padding:0;list-style:none}.pgp-plan-card li{display:flex;align-items:flex-start;gap:9px;color:#344054}.pgp-plan-card li .pgp-icon{width:18px;color:var(--pgp-success)}.pgp-plan-footer{margin-top:auto;padding-top:18px;border-top:1px solid #f0f2f5}.pgp-current-plan{display:flex;align-items:center;justify-content:center;gap:8px;padding:11px;border-radius:11px;background:var(--pgp-success-soft);color:#047857;font-weight:750}.pgp-current-plan .pgp-icon{width:17px}.pgp-plan-note{display:block;color:var(--pgp-muted);font-size:12px;text-align:center}

/* Loading */
.pgp-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:360px;padding:48px;border:1px solid var(--pgp-border);border-radius:22px;background:#fff;box-shadow:var(--pgp-shadow);text-align:center}.pgp-loading strong{margin-top:17px;font-size:18px}.pgp-loading small{margin-top:5px;color:var(--pgp-muted)}.pgp-spinner{width:44px;height:44px;border:4px solid #e0e7ff;border-top-color:var(--pgp-primary);border-radius:50%;animation:pgp-spin .8s linear infinite}@keyframes pgp-spin{to{transform:rotate(360deg)}}

/* Exam introduction */
.pgp-exam-intro{position:relative;overflow:hidden;max-width:860px;margin:36px auto;padding:38px;border:1px solid #ddd6fe;border-radius:24px;background:
 radial-gradient(circle at 95% 0,rgba(196,181,253,.42),transparent 33%),linear-gradient(145deg,#fff,#faf9ff);box-shadow:var(--pgp-shadow-lg)}
.pgp-exam-intro:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,var(--pgp-primary),var(--pgp-violet),#ec4899)}.pgp-intro-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:26px}.pgp-exam-intro h2{margin:12px 0 10px;font-size:clamp(30px,4vw,44px)}.pgp-exam-intro .pgp-instructions{margin:0 0 26px;padding:18px;border:1px solid #e9e7ff;border-radius:14px;background:rgba(255,255,255,.75);color:#475467}.pgp-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:26px}.pgp-meta div{padding:16px;border:1px solid var(--pgp-border);border-radius:14px;background:#fff}.pgp-meta dt{color:var(--pgp-muted);font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.pgp-meta dd{margin:3px 0 0;font-size:16px;font-weight:800}.pgp-intro-note{display:flex;align-items:flex-start;gap:10px;margin-bottom:22px;padding:14px;border-radius:13px;background:#fffbeb;color:#92400e;font-size:13px}.pgp-intro-note .pgp-icon{width:18px;margin-top:1px}.pgp-intro-note-active{background:#eef2ff;color:#3730a3}.pgp-start-wrap{display:flex;align-items:center;justify-content:space-between;gap:18px}.pgp-start-wrap small{max-width:390px;color:var(--pgp-muted)}

/* Premium exam runner */
.pgp-exam-runner{max-width:1320px}
.pgp-runner-shell{overflow:hidden;border:1px solid var(--pgp-border);border-radius:22px;background:#f7f8fc;box-shadow:var(--pgp-shadow-lg)}
.pgp-exam-toolbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.13);background:linear-gradient(135deg,#111827,#312e81);color:#fff}
body.admin-bar .pgp-exam-toolbar{top:32px}
.pgp-toolbar-title{display:flex;align-items:center;min-width:0;gap:12px}.pgp-toolbar-logo{display:grid;place-items:center;width:39px;height:39px;flex:0 0 auto;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:rgba(255,255,255,.1);font-size:12px;font-weight:900}.pgp-toolbar-title div{min-width:0}.pgp-toolbar-title strong{display:block;overflow:hidden;color:#fff;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.pgp-toolbar-title small{color:rgba(255,255,255,.65)}.pgp-toolbar-stats{display:flex;align-items:center;gap:10px}.pgp-toolbar-chip{display:flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid rgba(255,255,255,.13);border-radius:11px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.86);font-size:12px;font-weight:700}.pgp-toolbar-chip .pgp-icon{width:16px}.pgp-timer-wrap{display:flex;align-items:center;gap:9px;min-width:128px;padding:8px 12px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:rgba(255,255,255,.1)}.pgp-timer-wrap .pgp-icon{width:18px}.pgp-timer{font-variant-numeric:tabular-nums;font-size:18px;font-weight:850;letter-spacing:.035em}.pgp-timer-wrap.is-warning{border-color:rgba(251,191,36,.5);background:rgba(217,119,6,.22);color:#fef3c7}.pgp-timer-wrap.is-danger{border-color:rgba(248,113,113,.6);background:rgba(185,28,28,.34);color:#fee2e2;animation:pgp-pulse 1.2s ease-in-out infinite}@keyframes pgp-pulse{50%{box-shadow:0 0 0 5px rgba(239,68,68,.1)}}
.pgp-runner-progress{height:5px;background:#e9ebf2}.pgp-runner-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--pgp-primary),#8b5cf6);transition:width .25s ease}
.pgp-global-state{min-height:0;margin:0}.pgp-global-state:not(:empty){margin:14px 18px 0}
.pgp-runner-body{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:650px}
.pgp-question-sidebar{padding:22px;border-right:1px solid var(--pgp-border);background:#fff}.pgp-sidebar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.pgp-sidebar-head strong{font-size:14px}.pgp-sidebar-head span{color:var(--pgp-muted);font-size:12px}.pgp-palette{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.pgp-palette-button{display:grid!important;place-items:center!important;min-height:39px!important;padding:0!important;border:1px solid var(--pgp-border)!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important;color:#475467!important;font-size:12px!important;font-weight:800!important}.pgp-palette-button:hover{border-color:#a5b4fc!important;background:#f5f3ff!important;transform:none!important}.pgp-palette-button.is-current{border-color:var(--pgp-primary)!important;background:var(--pgp-primary)!important;color:#fff!important}.pgp-palette-button.is-answered:not(.is-current){border-color:#a7f3d0!important;background:var(--pgp-success-soft)!important;color:#047857!important}.pgp-palette-legend{display:grid;gap:8px;margin-top:18px;padding-top:17px;border-top:1px solid #f0f2f5;color:var(--pgp-muted);font-size:11px}.pgp-palette-legend span{display:flex;align-items:center;gap:8px}.pgp-legend-dot{width:9px;height:9px;border-radius:3px;background:#fff;border:1px solid var(--pgp-border)}.pgp-legend-dot.is-current{border-color:var(--pgp-primary);background:var(--pgp-primary)}.pgp-legend-dot.is-answered{border-color:#6ee7b7;background:#d1fae5}
.pgp-question-stage{display:flex;flex-direction:column;min-width:0;padding:30px clamp(20px,4vw,52px)}.pgp-question-list{flex:1}.pgp-question{display:none;animation:pgp-question-in .22s ease}.pgp-question.is-active{display:block}@keyframes pgp-question-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}.pgp-question-card{padding:30px;border:1px solid var(--pgp-border);border-radius:20px;background:#fff;box-shadow:var(--pgp-shadow-sm)}.pgp-question header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.pgp-question-number{display:flex;align-items:center;gap:9px;color:var(--pgp-primary);font-size:12px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.pgp-question-number i{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:var(--pgp-primary-soft);font-style:normal}.pgp-question-marks{display:flex;align-items:center;gap:5px;padding:6px 9px;border-radius:999px;background:#f2f4f7;color:#667085;font-size:11px;font-weight:750}.pgp-question-text{margin-bottom:25px;color:#1d2939;font-size:clamp(18px,2.2vw,23px);font-weight:650;line-height:1.58}.pgp-question-text p:last-child{margin-bottom:0}.pgp-options{display:grid;gap:12px}.pgp-option{position:relative;display:flex;align-items:flex-start;gap:13px;padding:15px 16px;border:1px solid var(--pgp-border);border-radius:14px;background:#fff;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease,box-shadow .16s ease}.pgp-option:hover{border-color:#c7d2fe;background:#fafaff;transform:translateY(-1px)}.pgp-option.is-selected{border-color:#818cf8;background:#f5f3ff;box-shadow:0 0 0 3px rgba(79,70,229,.08)}.pgp-option input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}.pgp-option-key{display:grid;place-items:center;width:31px;height:31px;flex:0 0 auto;border:1px solid #d0d5dd;border-radius:10px;background:#f9fafb;color:#475467;font-size:12px;font-weight:850;transition:all .16s ease}.pgp-option.is-selected .pgp-option-key{border-color:var(--pgp-primary);background:var(--pgp-primary);color:#fff}.pgp-option-text{padding-top:3px;color:#344054}.pgp-option-check{display:grid;place-items:center;width:21px;height:21px;margin-left:auto;border:1px solid var(--pgp-border);border-radius:50%;color:transparent}.pgp-option-check .pgp-icon{width:14px}.pgp-option.is-selected .pgp-option-check{border-color:var(--pgp-primary);background:var(--pgp-primary);color:#fff}.pgp-question-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.pgp-clear-answer{min-height:auto!important;padding:6px 0!important;border:0!important;background:transparent!important;box-shadow:none!important;color:var(--pgp-muted)!important;font-size:12px!important;text-decoration:underline!important}.pgp-clear-answer:hover{color:var(--pgp-danger)!important;transform:none!important}.pgp-save-state{display:flex;align-items:center;min-height:25px;color:var(--pgp-success);font-size:12px;font-weight:650}.pgp-question.has-error .pgp-save-state{color:var(--pgp-danger)}.pgp-question.is-saving .pgp-save-state:before{content:"";width:12px;height:12px;margin-right:7px;border:2px solid #c7d2fe;border-top-color:var(--pgp-primary);border-radius:50%;animation:pgp-spin .7s linear infinite}
.pgp-runner-nav{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:19px}.pgp-nav-group{display:flex;align-items:center;gap:10px}.pgp-nav-button{min-width:120px}.pgp-nav-position{color:var(--pgp-muted);font-size:12px;font-weight:700}.pgp-submit-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px;padding:18px 20px;border:1px solid #ddd6fe;border-radius:16px;background:linear-gradient(135deg,#f5f3ff,#fff)}.pgp-submit-panel div{display:flex;flex-direction:column}.pgp-submit-panel strong{font-size:14px}.pgp-submit-panel small{color:var(--pgp-muted)}.pgp-submit{min-width:165px}

/* Dialog */
.pgp-dialog-backdrop{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:18px;background:rgba(15,23,42,.58);backdrop-filter:blur(5px)}.pgp-dialog{width:min(460px,100%);padding:26px;border:1px solid rgba(255,255,255,.5);border-radius:22px;background:#fff;box-shadow:0 30px 90px rgba(15,23,42,.3);animation:pgp-dialog-in .18s ease}@keyframes pgp-dialog-in{from{opacity:0;transform:scale(.97) translateY(6px)}to{opacity:1;transform:none}}.pgp-dialog-icon{display:grid;place-items:center;width:50px;height:50px;margin-bottom:18px;border-radius:15px;background:var(--pgp-warning-soft);color:var(--pgp-warning)}.pgp-dialog h3{margin-bottom:9px;font-size:23px}.pgp-dialog p{color:var(--pgp-muted)}.pgp-dialog-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:18px 0}.pgp-dialog-summary div{padding:13px;border-radius:12px;background:#f8fafc}.pgp-dialog-summary strong{display:block;font-size:21px}.pgp-dialog-summary span{color:var(--pgp-muted);font-size:11px}.pgp-dialog-actions{display:flex;justify-content:flex-end;gap:10px}

/* Result */
.pgp-result-app{max-width:1180px}.pgp-result-shell{display:grid;gap:24px}.pgp-result-hero{position:relative;display:grid;grid-template-columns:220px minmax(0,1fr);align-items:center;gap:34px;overflow:hidden;padding:35px;border:1px solid #ddd6fe;border-radius:24px;background:radial-gradient(circle at 90% 10%,rgba(196,181,253,.42),transparent 30%),linear-gradient(145deg,#fff,#faf9ff);box-shadow:var(--pgp-shadow-lg)}.pgp-score-ring{--score:0;position:relative;display:grid;place-items:center;width:180px;height:180px;margin:auto;border-radius:50%;background:conic-gradient(var(--pgp-primary) calc(var(--score)*1%),#e8eaf2 0);box-shadow:0 18px 40px rgba(79,70,229,.15)}.pgp-score-ring:before{content:"";position:absolute;width:142px;height:142px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px #eef0f4}.pgp-score-ring>div{position:relative;z-index:1;text-align:center}.pgp-score-ring strong{display:block;font-size:38px;letter-spacing:-.05em;line-height:1}.pgp-score-ring span{color:var(--pgp-muted);font-size:12px;font-weight:700}.pgp-result-copy .pgp-kicker{margin-bottom:6px}.pgp-result-copy h2{margin-bottom:10px;font-size:clamp(28px,4vw,42px)}.pgp-result-copy>p{color:var(--pgp-muted)}.pgp-result-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px}.pgp-result-stat{padding:14px;border:1px solid var(--pgp-border);border-radius:13px;background:rgba(255,255,255,.83)}.pgp-result-stat span{display:block;color:var(--pgp-muted);font-size:11px;font-weight:750;text-transform:uppercase}.pgp-result-stat strong{display:block;margin-top:3px;font-size:19px}.pgp-result-actions{display:flex;gap:10px;margin-top:21px}
.pgp-review{display:grid;gap:15px}.pgp-review-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.pgp-review-head h3{margin-bottom:0;font-size:26px}.pgp-review-head span{color:var(--pgp-muted);font-size:12px}.pgp-review-card{overflow:hidden;border:1px solid var(--pgp-border);border-radius:18px;background:#fff;box-shadow:var(--pgp-shadow-sm)}.pgp-review-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px;border-bottom:1px solid #f0f2f5}.pgp-review-card-header h4{margin:0;font-size:17px;line-height:1.5}.pgp-review-number{display:grid;place-items:center;width:32px;height:32px;flex:0 0 auto;border-radius:10px;background:var(--pgp-primary-soft);color:var(--pgp-primary);font-size:12px;font-weight:850}.pgp-review-status{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;font-size:11px;font-weight:800}.pgp-review-status.is-correct{background:var(--pgp-success-soft);color:#047857}.pgp-review-status.is-wrong{background:var(--pgp-danger-soft);color:#b91c1c}.pgp-review-status.is-skipped{background:#f2f4f7;color:#667085}.pgp-review-options{display:grid;gap:9px;padding:18px 20px}.pgp-review-option{display:flex;align-items:flex-start;gap:11px;padding:12px 13px;border:1px solid #eaecf0;border-radius:12px;color:#475467}.pgp-review-option.is-selected{border-color:#c7d2fe;background:#f5f3ff}.pgp-review-option.is-correct{border-color:#a7f3d0;background:#ecfdf3}.pgp-review-option.is-selected.is-wrong{border-color:#fecaca;background:#fef2f2}.pgp-review-option-key{display:grid;place-items:center;width:27px;height:27px;flex:0 0 auto;border-radius:8px;background:#f2f4f7;font-size:11px;font-weight:850}.pgp-review-option.is-correct .pgp-review-option-key{background:#10b981;color:#fff}.pgp-review-option.is-selected.is-wrong .pgp-review-option-key{background:#ef4444;color:#fff}.pgp-review-option em{margin-left:auto;color:var(--pgp-muted);font-size:10px;font-style:normal;font-weight:800;text-transform:uppercase}.pgp-review-explanation{padding:17px 20px;border-top:1px solid #f0f2f5;background:#fafafa;color:#475467}.pgp-review-explanation strong{display:block;margin-bottom:5px;color:var(--pgp-ink)}
.pgp-result-pending{max-width:650px;margin:auto;padding:48px;border:1px solid #fde68a;border-radius:22px;background:linear-gradient(145deg,#fffbeb,#fff);box-shadow:var(--pgp-shadow);text-align:center}.pgp-result-pending .pgp-empty-icon{margin-inline:auto;background:#fef3c7;color:#d97706}.pgp-result-pending h2{font-size:30px}.pgp-result-pending p{color:var(--pgp-muted)}

/* Responsive */
@media(max-width:1024px){
  .pgp-stat-grid{grid-template-columns:repeat(2,1fr)}
  .pgp-exam-grid{grid-template-columns:repeat(2,1fr)}
  .pgp-runner-body{grid-template-columns:220px minmax(0,1fr)}
  .pgp-question-stage{padding:25px}
}
@media(max-width:782px){body.admin-bar .pgp-exam-toolbar{top:46px}}
@media(max-width:760px){
  .pgp-app{margin:18px auto;font-size:14px}
  .pgp-auth-shell{grid-template-columns:1fr;min-height:0;border-radius:21px}
  .pgp-auth-visual{min-height:270px;padding:34px}.pgp-auth-visual h2{font-size:34px}.pgp-auth-visual p{margin-bottom:0}.pgp-auth-benefits,.pgp-auth-orbit{display:none}.pgp-brand-mark{margin-bottom:25px}
  .pgp-auth-card{padding:34px 26px}.pgp-auth-heading h2{font-size:29px}
  .pgp-dashboard-hero{align-items:flex-start;flex-direction:column;padding:27px}.pgp-dashboard-profile{align-items:flex-start}.pgp-membership-card{width:100%}
  .pgp-stat-grid{grid-template-columns:1fr 1fr}.pgp-stat-card{min-height:112px;padding:16px}.pgp-stat-card small{display:none}
  .pgp-exam-grid{grid-template-columns:1fr}.pgp-exam-card{min-height:300px}
  .pgp-section-head{align-items:flex-start}.pgp-section-count{display:none}
  .pgp-exam-intro{margin:20px auto;padding:27px 21px}.pgp-intro-head,.pgp-start-wrap{align-items:stretch;flex-direction:column}.pgp-meta{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pgp-exam-toolbar{position:sticky;align-items:flex-start;padding:13px 14px}.pgp-toolbar-chip{display:none}.pgp-timer-wrap{min-width:auto}.pgp-toolbar-title strong{max-width:170px}
  .pgp-runner-body{display:block}.pgp-question-sidebar{padding:14px;border-right:0;border-bottom:1px solid var(--pgp-border)}.pgp-sidebar-head{margin-bottom:10px}.pgp-palette{display:flex;overflow:auto;padding-bottom:5px;scrollbar-width:thin}.pgp-palette-button{min-width:39px!important;flex:0 0 39px}.pgp-palette-legend{display:none}
  .pgp-question-stage{padding:18px 13px 24px}.pgp-question-card{padding:21px 16px}.pgp-question-text{font-size:18px}.pgp-option{padding:13px 12px}.pgp-question-actions{align-items:flex-start;flex-direction:column}.pgp-runner-nav{align-items:stretch;flex-direction:column}.pgp-nav-group{display:grid;grid-template-columns:1fr 1fr}.pgp-nav-button{min-width:0;width:100%}.pgp-nav-position{text-align:center}.pgp-submit-panel{align-items:stretch;flex-direction:column}.pgp-submit{width:100%}
  .pgp-result-hero{grid-template-columns:1fr;padding:26px 18px}.pgp-score-ring{width:155px;height:155px}.pgp-score-ring:before{width:122px;height:122px}.pgp-result-stats{grid-template-columns:1fr 1fr}.pgp-result-actions{flex-direction:column}.pgp-result-actions .pgp-button{width:100%}
  .pgp-review-card-header{flex-wrap:wrap}.pgp-review-card-header h4{width:calc(100% - 50px)}
}
@media(max-width:460px){
  .pgp-attempt-meta{grid-template-columns:1fr}
  .pgp-stat-grid{grid-template-columns:1fr}.pgp-stat-card{min-height:auto}.pgp-stat-card small{display:block}
  .pgp-dashboard-profile{flex-direction:column}.pgp-dashboard-profile h1{font-size:29px}
  .pgp-toolbar-title small{display:none}.pgp-toolbar-title strong{max-width:130px}.pgp-timer{font-size:16px}
  .pgp-dialog-summary{grid-template-columns:1fr}.pgp-dialog-actions{flex-direction:column-reverse}.pgp-dialog-actions button{width:100%}
}
@media(prefers-reduced-motion:reduce){.pgp-app *{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Registration anti-bot field must stay outside the visible layout. */
.pgp-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}

/* v0.4.4 Embedded, container-safe dynamic homepage */
.pgp-homepage{
  --pgh-purple:#6d28d9;
  --pgh-purple-light:#8b5cf6;
  --pgh-purple-dark:#4c1d95;
  --pgh-navy:#0f172a;
  --pgh-navy-light:#1e293b;
  --pgh-bg:#f7f6fc;
  --pgh-muted:#667085;
  --pgh-border:#e9e7f2;
  --pgh-white:#fff;
  position:relative;
  display:block;
  width:100%;
  max-width:100%;
  min-width:0;
  margin:0;
  overflow:hidden;
  isolation:isolate;
  container-type:inline-size;
  container-name:pgp-home;
  border:1px solid var(--pgh-border);
  border-radius:20px;
  background:var(--pgh-bg);
  box-shadow:0 14px 40px rgba(15,23,42,.08);
  color:var(--pgh-navy);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  font-size:16px;
  line-height:1.6;
}
.pgp-homepage *{box-sizing:border-box;max-width:100%}
.pgp-homepage :where(nav,section,article,div){min-width:0}
.pgp-homepage a{text-decoration:none}
.pgp-homepage img,.pgp-homepage svg{max-width:100%}
.pgp-homepage h1,.pgp-homepage h2,.pgp-homepage h3,.pgp-homepage p{margin-top:0}
.pgp-homepage h1,.pgp-homepage h2,.pgp-homepage h3{color:inherit;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;letter-spacing:-.035em;line-height:1.15;overflow-wrap:anywhere}
.pgp-home-container{width:100%;max-width:1180px;margin-inline:auto;padding-inline:20px}
.pgp-home-icon{width:20px;height:20px;flex:0 0 auto}

.pgp-home-nav{position:relative;z-index:20;border-bottom:1px solid rgba(15,23,42,.06);background:rgba(255,255,255,.94);box-shadow:0 2px 16px rgba(15,23,42,.055);backdrop-filter:blur(16px)}
.pgp-home-nav-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:30px;min-height:76px}
.pgp-home-brand{display:flex;align-items:center;gap:11px;min-width:0;color:var(--pgh-navy)}
.pgp-home-brand-mark,.pgp-home-brand-image{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border-radius:12px;background:linear-gradient(135deg,var(--pgh-purple-light),var(--pgh-purple-dark));color:#fff;font-size:16px;font-weight:900;letter-spacing:-.04em;object-fit:contain}
.pgp-home-brand-image{padding:3px;background:#fff;border:1px solid var(--pgh-border)}
.pgp-home-brand>span:last-child{display:flex;flex-direction:column;line-height:1.1}
.pgp-home-brand strong{color:var(--pgh-navy);font-size:17px;font-weight:850;white-space:nowrap}
.pgp-home-brand small{margin-top:5px;color:#7c8497;font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.pgp-home-nav-links{display:flex;align-items:center;justify-content:center;gap:7px}
.pgp-home-nav-links a{padding:9px 13px;border-radius:9px;color:#344054;font-size:13px;font-weight:750;transition:.18s ease}
.pgp-home-nav-links a:hover{background:#f4f1ff;color:var(--pgh-purple)}
.pgp-home-nav-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}
.pgp-home-link-button{padding:9px 13px;color:var(--pgh-purple);font-size:13px;font-weight:800}
.pgp-home-link-button:hover{color:var(--pgh-purple-dark)}

.pgp-home-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:52px;padding:13px 23px;border:1px solid transparent;border-radius:12px;background:linear-gradient(135deg,var(--pgh-purple-light),var(--pgh-purple-dark));box-shadow:0 10px 26px rgba(76,29,149,.25);color:#fff!important;font-size:14px;font-weight:800;line-height:1.1;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
.pgp-home-button:hover{transform:translateY(-2px);box-shadow:0 15px 32px rgba(76,29,149,.3);filter:brightness(1.05)}
.pgp-home-button-small{min-height:40px;padding:10px 17px;border-radius:10px;font-size:12px}
.pgp-home-button-ghost{border-color:rgba(255,255,255,.55);background:rgba(255,255,255,.07);box-shadow:none;color:#fff!important;backdrop-filter:blur(8px)}
.pgp-home-button-ghost:hover{background:rgba(255,255,255,.16);box-shadow:none}
.pgp-home-button-light{background:#fff;box-shadow:0 12px 30px rgba(15,23,42,.2);color:var(--pgh-purple-dark)!important}

.pgp-home-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 75% 15%,rgba(139,92,246,.35),transparent 28%),linear-gradient(135deg,var(--pgh-navy) 0%,#251046 54%,var(--pgh-purple-dark) 100%);color:#fff}
.pgp-home-hero:before{content:"";position:absolute;inset:auto auto -220px -130px;width:480px;height:480px;border:85px solid rgba(255,255,255,.035);border-radius:50%}
.pgp-home-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(260px,.82fr);align-items:center;gap:60px;min-height:610px;padding-block:78px}
.pgp-home-hero-copy{max-width:760px}
.pgp-home-badge{display:inline-flex;align-items:center;margin-bottom:21px;padding:8px 14px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.1);color:#e9ddff;font-size:11px;font-weight:800;letter-spacing:.055em;backdrop-filter:blur(8px)}
.pgp-home-hero h1{max-width:760px;margin-bottom:20px;color:#fff;font-size:clamp(42px,5.4vw,70px);font-weight:880;letter-spacing:-.055em}
.pgp-home-hero-copy>p{max-width:700px;margin-bottom:30px;color:#d5d5e5;font-size:clamp(17px,2vw,20px);line-height:1.75}
.pgp-home-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:13px}
.pgp-home-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:48px;padding-top:28px;border-top:1px solid rgba(255,255,255,.13)}
.pgp-home-stats div{display:flex;flex-direction:column;min-width:0}
.pgp-home-stats strong{color:#fff;font-size:25px;font-weight:850;letter-spacing:-.04em}
.pgp-home-stats span{color:#bfc2d7;font-size:11px;font-weight:650}
.pgp-home-hero-art{position:relative;display:grid;place-items:center;min-height:430px}
.pgp-home-hero-logo{position:relative;z-index:3;display:grid;place-items:center;width:165px;height:165px;border:1px solid rgba(255,255,255,.28);border-radius:38px;background:linear-gradient(135deg,var(--pgh-purple-light),var(--pgh-purple-dark));box-shadow:0 32px 80px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.25);color:#fff;font-size:55px;font-weight:900;letter-spacing:-.07em;transform:rotate(-4deg)}
.pgp-home-orbit{position:absolute;border:1px solid rgba(255,255,255,.16);border-radius:50%}
.pgp-home-orbit-one{width:300px;height:300px}
.pgp-home-orbit-two{width:415px;height:415px;border-style:dashed;animation:pgh-spin 24s linear infinite}
@keyframes pgh-spin{to{transform:rotate(360deg)}}
.pgp-home-float-card{position:absolute;z-index:4;display:flex;align-items:center;gap:9px;padding:12px 15px;border:1px solid rgba(255,255,255,.28);border-radius:13px;background:rgba(255,255,255,.13);box-shadow:0 15px 38px rgba(0,0,0,.17);color:#fff;font-size:12px;backdrop-filter:blur(14px)}
.pgp-home-float-card strong{white-space:nowrap}.pgp-home-float-one{top:55px;right:0}.pgp-home-float-two{bottom:55px;left:0}

.pgp-home-section{padding:84px 0;background:#fff}
.pgp-home-section-soft{background:var(--pgh-bg)}
.pgp-home-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:32px}
.pgp-home-section-head>div>span,.pgp-home-centered-head>span,.pgp-home-cta-inner>div>span{display:block;margin-bottom:6px;color:var(--pgh-purple);font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.pgp-home-section-head h2,.pgp-home-centered-head h2{margin-bottom:0;font-size:clamp(29px,4vw,42px);font-weight:850}
.pgp-home-section-head>a{color:var(--pgh-purple);font-size:13px;font-weight:800;white-space:nowrap}
.pgp-home-section-head>a:hover{color:var(--pgh-purple-dark)}
.pgp-home-empty{grid-column:1/-1;padding:32px;border:1px dashed #d7d2e8;border-radius:16px;background:#faf9ff;color:var(--pgh-muted);text-align:center}

.pgp-home-category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:17px}
.pgp-home-category-card{position:relative;display:flex;flex-direction:column;min-height:270px;overflow:hidden;padding:25px;border:1px solid var(--pgh-border);border-radius:18px;background:#fff;box-shadow:0 4px 18px rgba(76,29,149,.055);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.pgp-home-category-card:after{content:"";position:absolute;right:-38px;bottom:-52px;width:135px;height:135px;border:26px solid currentColor;border-radius:50%;opacity:.035}
.pgp-home-category-card:hover{transform:translateY(-4px);border-color:#d8ccff;box-shadow:0 18px 38px rgba(76,29,149,.11)}
.pgp-home-category-icon{display:grid;place-items:center;width:50px;height:50px;margin-bottom:21px;border-radius:14px;background:#ede9fe;color:var(--pgh-purple-dark);font-size:14px;font-weight:900}
.pgp-home-category-card h3{margin-bottom:9px;font-size:19px;font-weight:830}
.pgp-home-category-card p{display:-webkit-box;overflow:hidden;margin-bottom:22px;color:var(--pgh-muted);font-size:13px;line-height:1.65;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.pgp-home-card-meta{display:flex;align-items:center;gap:8px;margin-top:auto}
.pgp-home-card-meta span{padding:5px 9px;border-radius:999px;background:#f5f3ff;color:#5b21b6;font-size:10px;font-weight:800}
.pgp-home-tone-0 .pgp-home-category-icon,.pgp-home-subject-icon.pgp-home-tone-0{background:#ede9fe;color:#6d28d9}
.pgp-home-tone-1 .pgp-home-category-icon,.pgp-home-subject-icon.pgp-home-tone-1{background:#e0f2fe;color:#0284c7}
.pgp-home-tone-2 .pgp-home-category-icon,.pgp-home-subject-icon.pgp-home-tone-2{background:#dcfce7;color:#16a34a}
.pgp-home-tone-3 .pgp-home-category-icon,.pgp-home-subject-icon.pgp-home-tone-3{background:#fee2e2;color:#dc2626}
.pgp-home-tone-4 .pgp-home-category-icon,.pgp-home-subject-icon.pgp-home-tone-4{background:#fef3c7;color:#d97706}
.pgp-home-tone-5 .pgp-home-category-icon,.pgp-home-subject-icon.pgp-home-tone-5{background:#e2e8f0;color:#334155}

.pgp-home-subject-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,205px),1fr));gap:14px}
.pgp-home-subject-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:13px;min-height:104px;padding:16px;border:1px solid var(--pgh-border);border-radius:16px;background:#fff;box-shadow:0 3px 14px rgba(15,23,42,.035);transition:.18s ease}
.pgp-home-subject-card:hover{transform:translateY(-3px);border-color:#d7ccfb;box-shadow:0 14px 28px rgba(76,29,149,.08)}
.pgp-home-subject-icon{display:grid;place-items:center;width:47px;height:47px;border-radius:13px;font-size:16px;font-weight:900}
.pgp-home-subject-card h3{margin:0 0 3px;font-size:14px;font-weight:820}
.pgp-home-subject-card p{overflow:hidden;margin:0;color:var(--pgh-muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.pgp-home-subject-count{grid-column:2;color:#7b8498;font-size:10px;font-weight:700}

.pgp-home-exam-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:17px}
.pgp-home-exam-card{display:flex;flex-direction:column;min-height:300px;padding:23px;border:1px solid var(--pgh-border);border-radius:18px;background:#fff;box-shadow:0 4px 18px rgba(76,29,149,.055);transition:.2s ease}
.pgp-home-exam-card:hover{transform:translateY(-4px);border-color:#d8ccff;box-shadow:0 18px 38px rgba(76,29,149,.11)}
.pgp-home-exam-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:23px}
.pgp-home-exam-type,.pgp-home-exam-state{display:inline-flex;padding:5px 9px;border-radius:999px;background:#ede9fe;color:#5b21b6;font-size:9px;font-weight:850;text-transform:uppercase}
.pgp-home-exam-state{background:#ecfdf3;color:#047857}.pgp-home-state-scheduled{background:#fff7ed;color:#c2410c}
.pgp-home-exam-category{display:block;margin-bottom:6px;color:var(--pgh-purple);font-size:10px;font-weight:800;text-transform:uppercase}
.pgp-home-exam-card h3{margin-bottom:18px;font-size:19px;font-weight:830}
.pgp-home-exam-meta{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:22px}
.pgp-home-exam-meta span{display:flex;align-items:center;gap:6px;color:#667085;font-size:11px;font-weight:650}.pgp-home-exam-meta .pgp-home-icon{width:15px;height:15px;color:#8b5cf6}
.pgp-home-exam-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:auto;padding-top:15px;border-top:1px solid #f0eef6}
.pgp-home-exam-footer>span{padding:5px 8px;border-radius:8px;background:#f5f3ff;color:#5b21b6;font-size:9px;font-weight:850;text-transform:uppercase}
.pgp-home-exam-footer>a{color:var(--pgh-purple);font-size:12px;font-weight:850}

.pgp-home-process-section{background:linear-gradient(180deg,#f8f7fc,#fff)}
.pgp-home-centered-head{max-width:690px;margin:0 auto 38px;text-align:center}.pgp-home-centered-head p{margin:12px 0 0;color:var(--pgh-muted)}
.pgp-home-process-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:18px}
.pgp-home-process-grid article{position:relative;padding:27px;border:1px solid var(--pgh-border);border-radius:18px;background:#fff;box-shadow:0 5px 20px rgba(15,23,42,.04)}
.pgp-home-process-grid article>span{position:absolute;top:20px;right:22px;color:#e3ddf5;font-size:32px;font-weight:900}
.pgp-home-process-grid .pgp-home-icon{width:39px;height:39px;margin-bottom:20px;padding:8px;border-radius:12px;background:#ede9fe;color:var(--pgh-purple)}
.pgp-home-process-grid h3{margin-bottom:8px;font-size:18px;font-weight:830}.pgp-home-process-grid p{margin-bottom:0;color:var(--pgh-muted);font-size:13px}

.pgp-home-cta{padding:66px 0;background:linear-gradient(135deg,var(--pgh-purple-dark),var(--pgh-purple));color:#fff}
.pgp-home-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:35px}
.pgp-home-cta-inner>div>span{color:#d8c7ff}.pgp-home-cta h2{max-width:700px;margin-bottom:0;color:#fff;font-size:clamp(29px,4vw,45px);font-weight:850}

@container pgp-home (max-width:1024px){
  .pgp-home-hero-grid{grid-template-columns:minmax(0,1fr) minmax(240px,.68fr);gap:30px}
  .pgp-home-category-grid,.pgp-home-exam-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pgp-home-subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@container pgp-home (max-width:760px){
  .pgp-home-nav-inner{grid-template-columns:auto 1fr;min-height:68px}
  .pgp-home-nav-links{display:none}
  .pgp-home-nav-actions{grid-column:2;grid-row:1}
  .pgp-home-hero-grid{grid-template-columns:1fr;min-height:auto;padding-block:58px}
  .pgp-home-hero-art{display:none}
  .pgp-home-hero-copy{max-width:100%}
  .pgp-home-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pgp-home-process-grid{grid-template-columns:1fr}
  .pgp-home-cta-inner{align-items:flex-start;flex-direction:column}
}
@container pgp-home (max-width:520px){
  .pgp-home-container{padding-inline:14px}
  .pgp-home-nav-inner{gap:10px}
  .pgp-home-brand strong{font-size:14px}
  .pgp-home-brand small{display:none}
  .pgp-home-link-button{display:none}
  .pgp-home-button-small{min-height:38px;padding:9px 12px}
  .pgp-home-hero-grid{padding-block:45px}
  .pgp-home-hero h1{font-size:clamp(34px,11cqi,42px)}
  .pgp-home-badge{font-size:9px;white-space:normal}
  .pgp-home-hero-copy>p{font-size:15px}
  .pgp-home-hero-actions{align-items:stretch;flex-direction:column}
  .pgp-home-button{width:100%}
  .pgp-home-stats{margin-top:34px}
  .pgp-home-stats strong{font-size:22px}
  .pgp-home-section{padding:56px 0}
  .pgp-home-section-head{align-items:flex-start;flex-direction:column;margin-bottom:24px}
  .pgp-home-section-head>a{align-self:flex-start}
  .pgp-home-category-grid,.pgp-home-subject-grid,.pgp-home-exam-grid{grid-template-columns:1fr}
  .pgp-home-category-card{min-height:235px}
  .pgp-home-subject-card{min-height:96px}
  .pgp-home-cta{padding:48px 0}
}
/* Viewport fallback for browsers without container-query support. */
@supports not (container-type:inline-size){
  @media(max-width:820px){
    .pgp-home-hero-grid{grid-template-columns:1fr}.pgp-home-hero-art{display:none}
    .pgp-home-nav-links{display:none}.pgp-home-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  }
  @media(max-width:620px){
    .pgp-home-category-grid,.pgp-home-subject-grid,.pgp-home-exam-grid,.pgp-home-process-grid{grid-template-columns:1fr}
  }
}
@media(prefers-reduced-motion:reduce){.pgp-homepage *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* v0.4.5 — embedded authentication gate for protected shortcodes */
.pgp-auth-gate{display:grid;gap:20px;width:100%;max-width:1120px;margin-inline:auto;padding:clamp(16px,3vw,28px);border:1px solid var(--pgp-border);border-radius:24px;background:linear-gradient(145deg,#fff,#fafaff);box-shadow:var(--pgp-shadow);container-type:inline-size}
.pgp-auth-gate-head{display:flex;align-items:center;gap:16px;padding:18px 20px;border:1px solid #ddd6fe;border-radius:18px;background:linear-gradient(135deg,#eef2ff,#faf5ff)}
.pgp-auth-gate-icon{display:grid;place-items:center;width:48px;height:48px;flex:0 0 auto;border-radius:15px;background:linear-gradient(135deg,var(--pgp-primary),var(--pgp-violet));color:#fff;box-shadow:0 10px 25px rgba(79,70,229,.22)}
.pgp-auth-gate-icon .pgp-icon{width:23px;height:23px}
.pgp-auth-gate-head h2{margin:2px 0 5px;font-size:clamp(24px,4vw,34px)}
.pgp-auth-gate-head p{margin:0;color:var(--pgp-muted)}
.pgp-auth-gate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.pgp-auth-gate-grid.is-login-only{grid-template-columns:minmax(0,580px);justify-content:center}
.pgp-auth-gate-card{min-width:0;padding:24px;border:1px solid var(--pgp-border);border-radius:19px;background:#fff;box-shadow:var(--pgp-shadow-sm)}
.pgp-auth-gate-card.is-register{background:linear-gradient(180deg,#fff,#fcfbff)}
.pgp-auth-gate-card-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #eef0f4}
.pgp-auth-gate-card-head h3{margin:0 0 4px;font-size:21px}
.pgp-auth-gate-card-head p{margin:0;color:var(--pgp-muted);font-size:13px;line-height:1.5}
.pgp-mini-auth-icon{display:grid;place-items:center;width:39px;height:39px;flex:0 0 auto;border-radius:12px;background:var(--pgp-primary-soft);color:var(--pgp-primary)}
.pgp-mini-auth-icon .pgp-icon{width:19px;height:19px}
.pgp-student-login-form{display:grid;gap:18px}
.pgp-login-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;color:var(--pgp-muted);font-size:12px}
.pgp-login-meta .pgp-remember{display:flex;align-items:center;gap:7px;font-weight:600}
.pgp-login-meta input[type="checkbox"]{width:17px;height:17px;margin:0;accent-color:var(--pgp-primary)}
.pgp-login-meta a{color:var(--pgp-primary);font-weight:700;text-decoration:none}
.pgp-login-meta a:hover{text-decoration:underline}
.pgp-auth-redirect-note{display:flex;align-items:center;justify-content:center;gap:8px;margin:0;color:var(--pgp-muted);font-size:12px;text-align:center}
.pgp-auth-redirect-note .pgp-icon{width:16px;height:16px;color:var(--pgp-primary)}
.pgp-auth-gate .pgp-notice{margin:0}
.pgp-auth-gate .pgp-input-wrap input{min-width:0}
@container (max-width:760px){.pgp-auth-gate-grid{grid-template-columns:1fr}.pgp-auth-gate-head{align-items:flex-start}.pgp-auth-gate-card{padding:20px}}
@media(max-width:760px){.pgp-auth-gate-grid{grid-template-columns:1fr}.pgp-auth-gate{padding:14px;border-radius:18px}.pgp-auth-gate-head{align-items:flex-start;padding:16px}.pgp-auth-gate-card{padding:18px}.pgp-login-meta{align-items:flex-start;flex-direction:column}}


/* v0.4.7 — tab contrast and compact access heading */
.pgp-auth-tabs{width:100%;max-width:680px;margin-inline:auto}
.pgp-auth-tablist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0 0 14px;padding:6px;border:1px solid #e4e7ec;border-radius:15px;background:#f5f7fb}
/* Higher specificity intentionally overrides the shared .pgp-app button style. */
.pgp-app .pgp-auth-tab{
  display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;
  min-height:48px!important;padding:9px 14px!important;border:1px solid transparent!important;border-radius:11px!important;
  background:#fff!important;box-shadow:none!important;color:#475467!important;filter:none!important;transform:none!important;
  font:inherit!important;font-weight:780!important;line-height:1.2!important;cursor:pointer!important;
  opacity:1!important;visibility:visible!important;
  transition:background .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease!important
}
.pgp-app .pgp-auth-tab span{display:inline!important;color:inherit!important;opacity:1!important;visibility:visible!important}
.pgp-app .pgp-auth-tab .pgp-icon{width:18px;height:18px;color:currentColor!important;opacity:1!important}
.pgp-app .pgp-auth-tab:hover{border-color:#c7d2fe!important;background:#eef2ff!important;color:#3730a3!important;box-shadow:none!important;filter:none!important;transform:none!important}
.pgp-app .pgp-auth-tab:focus-visible{outline:3px solid rgba(79,70,229,.22)!important;outline-offset:2px!important}
.pgp-app .pgp-auth-tab.is-active,
.pgp-app .pgp-auth-tab[aria-selected="true"]{
  border-color:transparent!important;background:linear-gradient(135deg,var(--pgp-primary),var(--pgp-violet))!important;
  color:#fff!important;box-shadow:0 7px 18px rgba(79,70,229,.24)!important;filter:none!important;transform:none!important
}
.pgp-app .pgp-auth-tab.is-active:hover,
.pgp-app .pgp-auth-tab[aria-selected="true"]:hover{color:#fff!important;filter:brightness(1.04)!important}
.pgp-auth-tabpanels{min-width:0}
.pgp-auth-tabpanel{width:100%;animation:pgp-auth-panel-in .2s ease}
.pgp-auth-tabpanel[hidden]{display:none!important}
.pgp-app.pgp-auth-gate .pgp-auth-gate-head h2{
  margin:1px 0 5px!important;font-size:clamp(22px,3vw,28px)!important;line-height:1.16!important;letter-spacing:-.025em!important
}
.pgp-app.pgp-auth-gate .pgp-auth-gate-head p{font-size:14px;line-height:1.5}
@keyframes pgp-auth-panel-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@container (max-width:480px){
  .pgp-app .pgp-auth-tab{min-height:44px!important;padding:8px 10px!important;font-size:13px!important}
  .pgp-auth-tablist{gap:4px;padding:5px}.pgp-auth-gate-card-head{align-items:flex-start}
  .pgp-app.pgp-auth-gate .pgp-auth-gate-head h2{font-size:21px!important}
}
@media(max-width:480px){
  .pgp-app .pgp-auth-tab{min-height:44px!important;padding:8px 10px!important;font-size:13px!important}
  .pgp-auth-tablist{gap:4px;padding:5px}
  .pgp-app.pgp-auth-gate .pgp-auth-gate-head h2{font-size:21px!important}
}


/* v0.4.8 password visibility controls */
.pgp-app .pgp-password-wrap{padding-right:7px}
.pgp-app .pgp-password-wrap input{padding-right:4px}
.pgp-app .pgp-password-toggle{
  appearance:none!important;display:grid!important;place-items:center!important;width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;flex:0 0 38px!important;margin:0!important;padding:0!important;border:0!important;border-radius:10px!important;background:transparent!important;box-shadow:none!important;color:#667085!important;line-height:1!important;cursor:pointer!important;transform:none!important;filter:none!important
}
.pgp-app .pgp-password-toggle:hover{background:#f2f4f7!important;color:var(--pgp-primary)!important;box-shadow:none!important;transform:none!important;filter:none!important}
.pgp-app .pgp-password-toggle:focus-visible{outline:3px solid rgba(79,70,229,.22)!important;outline-offset:1px!important}
.pgp-app .pgp-password-eye{display:block;width:20px;height:20px;color:currentColor}
.pgp-app .pgp-password-eye[hidden]{display:none!important}


/* v0.5.0 — conflict-resistant, container-responsive quiz runner */
.pgp-app.pgp-exam-runner{
  container-name:pgp-exam-runner;
  container-type:inline-size;
}
.pgp-exam-runner .pgp-runner-shell{
  isolation:isolate;
  background:linear-gradient(180deg,#f8f9fd 0%,#f4f6fb 100%);
}
.pgp-exam-runner .pgp-runner-progress{height:6px;background:#e8eaf2}
.pgp-exam-runner .pgp-question-sidebar{
  position:relative;
  z-index:2;
  background:linear-gradient(180deg,#fff 0%,#fbfcff 100%);
}
.pgp-exam-runner .pgp-sidebar-head{
  align-items:flex-start;
  flex-direction:column;
  gap:2px;
}
.pgp-exam-runner .pgp-sidebar-head strong{
  color:#1d2939!important;
  font-size:15px;
  line-height:1.3;
}
.pgp-exam-runner .pgp-sidebar-head span{
  color:#667085!important;
  line-height:1.4;
}
.pgp-exam-runner .pgp-palette-button,
.pgp-exam-runner .pgp-palette-button:visited{
  color:#344054!important;
  text-decoration:none!important;
}
.pgp-exam-runner .pgp-palette-button:hover,
.pgp-exam-runner .pgp-palette-button:focus-visible{
  border-color:#818cf8!important;
  background:#eef2ff!important;
  color:#3730a3!important;
  box-shadow:0 0 0 3px rgba(79,70,229,.10)!important;
  filter:none!important;
}
.pgp-exam-runner .pgp-palette-button.is-current,
.pgp-exam-runner .pgp-palette-button.is-current:hover,
.pgp-exam-runner .pgp-palette-button.is-current:focus-visible{
  border-color:#4f46e5!important;
  background:linear-gradient(135deg,#4f46e5,#6d28d9)!important;
  color:#fff!important;
  box-shadow:0 7px 16px rgba(79,70,229,.22)!important;
}
.pgp-exam-runner .pgp-palette-button.is-answered:not(.is-current),
.pgp-exam-runner .pgp-palette-button.is-answered:not(.is-current):hover{
  border-color:#6ee7b7!important;
  background:#ecfdf3!important;
  color:#047857!important;
}
.pgp-exam-runner .pgp-question-stage{
  background:
    radial-gradient(circle at 92% 4%,rgba(196,181,253,.16),transparent 30%),
    transparent;
}
.pgp-exam-runner .pgp-question-card{
  width:min(100%,820px);
  margin-inline:auto;
  padding:clamp(22px,3.4cqw,34px);
  border-color:#dfe3eb;
  box-shadow:0 10px 30px rgba(15,23,42,.055);
}
.pgp-exam-runner .pgp-question-text,
.pgp-exam-runner .pgp-question-text *{
  color:#172033!important;
}
.pgp-exam-runner .pgp-question-text{
  font-size:clamp(19px,2.2cqw,25px);
  font-weight:700;
  line-height:1.52;
  letter-spacing:-.018em;
}
.pgp-exam-runner .pgp-options{gap:11px}
.pgp-exam-runner label.pgp-option,
.pgp-exam-runner label.pgp-option:link,
.pgp-exam-runner label.pgp-option:visited{
  align-items:center;
  min-height:70px;
  border-color:#dfe3eb!important;
  background:#fff!important;
  color:#27364f!important;
  text-decoration:none!important;
  box-shadow:0 1px 2px rgba(16,24,40,.025);
}
.pgp-exam-runner label.pgp-option:hover,
.pgp-exam-runner label.pgp-option:focus-within{
  border-color:#818cf8!important;
  background:#f7f7ff!important;
  color:#27364f!important;
  box-shadow:0 8px 22px rgba(79,70,229,.09),0 0 0 3px rgba(79,70,229,.07)!important;
  filter:none!important;
}
.pgp-exam-runner label.pgp-option.is-selected,
.pgp-exam-runner label.pgp-option.is-selected:hover,
.pgp-exam-runner label.pgp-option.is-selected:focus-within{
  border-color:#6366f1!important;
  background:linear-gradient(135deg,#f0f1ff,#faf7ff)!important;
  color:#312e81!important;
  box-shadow:0 0 0 3px rgba(79,70,229,.11),0 10px 26px rgba(79,70,229,.08)!important;
}
.pgp-exam-runner .pgp-option-text,
.pgp-exam-runner label.pgp-option:hover .pgp-option-text,
.pgp-exam-runner label.pgp-option:focus-within .pgp-option-text{
  color:#344054!important;
  font-size:16px;
  font-weight:550;
  line-height:1.48;
  text-decoration:none!important;
}
.pgp-exam-runner label.pgp-option.is-selected .pgp-option-text,
.pgp-exam-runner label.pgp-option.is-selected:hover .pgp-option-text{
  color:#312e81!important;
  font-weight:650;
}
.pgp-exam-runner .pgp-option-key,
.pgp-exam-runner label.pgp-option:hover .pgp-option-key{
  width:36px;
  height:36px;
  border-color:#cfd5df!important;
  background:#f8fafc!important;
  color:#475467!important;
  border-radius:11px;
  font-size:13px;
}
.pgp-exam-runner label.pgp-option:hover .pgp-option-key,
.pgp-exam-runner label.pgp-option:focus-within .pgp-option-key{
  border-color:#a5b4fc!important;
  background:#eef2ff!important;
  color:#3730a3!important;
}
.pgp-exam-runner label.pgp-option.is-selected .pgp-option-key,
.pgp-exam-runner label.pgp-option.is-selected:hover .pgp-option-key{
  border-color:#4f46e5!important;
  background:linear-gradient(135deg,#4f46e5,#6d28d9)!important;
  color:#fff!important;
}
.pgp-exam-runner .pgp-option-check{
  flex:0 0 auto;
  background:#fff!important;
}
.pgp-exam-runner label.pgp-option.is-selected .pgp-option-check{
  border-color:#4f46e5!important;
  background:#4f46e5!important;
  color:#fff!important;
}
.pgp-exam-runner .pgp-question-actions{
  min-height:30px;
  padding-top:2px;
}
.pgp-exam-runner .pgp-answer-tools{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
}
.pgp-exam-runner .pgp-keyboard-hint{
  color:#98a2b3!important;
  font-size:11px;
  font-weight:650;
}
.pgp-exam-runner .pgp-nav-button,
.pgp-exam-runner .pgp-nav-button:hover,
.pgp-exam-runner .pgp-nav-button:focus-visible{
  border-color:#d0d5dd!important;
  background:#fff!important;
  color:#344054!important;
  filter:none!important;
  text-decoration:none!important;
}
.pgp-exam-runner .pgp-nav-button:hover,
.pgp-exam-runner .pgp-nav-button:focus-visible{
  border-color:#818cf8!important;
  background:#eef2ff!important;
  color:#3730a3!important;
  box-shadow:0 7px 16px rgba(79,70,229,.10)!important;
}
.pgp-exam-runner .pgp-nav-button[disabled],
.pgp-exam-runner .pgp-nav-button[disabled]:hover{
  border-color:#e4e7ec!important;
  background:#f9fafb!important;
  color:#98a2b3!important;
}
.pgp-exam-runner .pgp-submit,
.pgp-exam-runner .pgp-submit:hover,
.pgp-exam-runner .pgp-submit:focus-visible{
  background:linear-gradient(135deg,#4f46e5,#7c3aed)!important;
  color:#fff!important;
  filter:none!important;
}
.pgp-exam-runner .pgp-runner-nav{
  width:min(100%,820px);
  margin-inline:auto;
  padding:13px 15px;
  border:1px solid #e4e7ec;
  border-radius:15px;
  background:rgba(255,255,255,.86);
  box-shadow:0 5px 18px rgba(15,23,42,.04);
}
.pgp-exam-runner .pgp-submit-panel{
  width:min(100%,820px);
  margin-inline:auto;
}

@container pgp-exam-runner (max-width:900px){
  .pgp-exam-runner .pgp-runner-body{display:block;min-height:0}
  .pgp-exam-runner .pgp-question-sidebar{padding:15px 18px;border-right:0;border-bottom:1px solid var(--pgp-border)}
  .pgp-exam-runner .pgp-sidebar-head{align-items:center;flex-direction:row;margin-bottom:10px}
  .pgp-exam-runner .pgp-palette{display:flex;overflow-x:auto;gap:8px;padding:2px 1px 7px;scrollbar-width:thin}
  .pgp-exam-runner .pgp-palette-button{min-width:42px!important;flex:0 0 42px}
  .pgp-exam-runner .pgp-palette-legend{display:none}
  .pgp-exam-runner .pgp-question-stage{padding:24px 18px 30px}
}
@container pgp-exam-runner (max-width:620px){
  .pgp-exam-runner .pgp-exam-toolbar{align-items:flex-start;flex-direction:column;padding:14px 15px}
  .pgp-exam-runner .pgp-toolbar-stats{width:100%;justify-content:space-between}
  .pgp-exam-runner .pgp-toolbar-chip{min-width:0;flex:1}
  .pgp-exam-runner .pgp-timer-wrap{min-width:116px}
  .pgp-exam-runner .pgp-question-stage{padding:16px 10px 24px}
  .pgp-exam-runner .pgp-question-card{padding:20px 15px;border-radius:17px}
  .pgp-exam-runner .pgp-question header{align-items:flex-start;flex-direction:column;margin-bottom:16px}
  .pgp-exam-runner .pgp-question-text{font-size:19px;line-height:1.48}
  .pgp-exam-runner label.pgp-option{min-height:62px;padding:12px}
  .pgp-exam-runner .pgp-option-text{font-size:15px}
  .pgp-exam-runner .pgp-keyboard-hint{display:none}
  .pgp-exam-runner .pgp-question-actions{align-items:flex-start;flex-direction:column}
  .pgp-exam-runner .pgp-runner-nav{align-items:stretch;flex-direction:column;padding:12px}
  .pgp-exam-runner .pgp-nav-group{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .pgp-exam-runner .pgp-nav-button{min-width:0;width:100%}
  .pgp-exam-runner .pgp-nav-position{text-align:center}
  .pgp-exam-runner .pgp-submit-panel{align-items:stretch;flex-direction:column;padding:16px}
  .pgp-exam-runner .pgp-submit{width:100%}
}

/* v0.5.1 — isolated compact quiz workspace */
.pgp-app.pgp-exam-runner .pgp-quiz-shell{
  position:relative;
  overflow:visible;
  isolation:isolate;
  color:#172033!important;
  background:#f5f7fc;
}
.pgp-app.pgp-exam-runner .pgp-quiz-toolbar{
  position:sticky;
  top:0;
  z-index:50;
  min-height:64px;
  padding:10px 16px;
  color:#fff!important;
}
body.admin-bar .pgp-app.pgp-exam-runner .pgp-quiz-toolbar{top:32px}
.pgp-app.pgp-exam-runner .pgp-quiz-toolbar *,
.pgp-app.pgp-exam-runner .pgp-quiz-toolbar strong,
.pgp-app.pgp-exam-runner .pgp-quiz-toolbar small,
.pgp-app.pgp-exam-runner .pgp-quiz-toolbar span{
  color:inherit!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-toolbar-logo{width:36px;height:36px;border-radius:11px}
.pgp-app.pgp-exam-runner .pgp-quiz-toolbar-title{gap:10px}
.pgp-app.pgp-exam-runner .pgp-quiz-toolbar-title strong{font-size:14px!important;line-height:1.25}
.pgp-app.pgp-exam-runner .pgp-quiz-toolbar-title small{font-size:11px!important;color:rgba(255,255,255,.7)!important}
.pgp-app.pgp-exam-runner .pgp-quiz-toolbar-stats{gap:8px}
.pgp-app.pgp-exam-runner .pgp-quiz-answered-chip,
.pgp-app.pgp-exam-runner .pgp-quiz-timer-wrap{min-height:42px;padding:7px 10px}
.pgp-app.pgp-exam-runner .pgp-quiz-timer{font-size:17px!important}
.pgp-app.pgp-exam-runner .pgp-quiz-progress{height:4px}

.pgp-app.pgp-exam-runner .pgp-quiz-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 238px!important;
  align-items:start;
  min-height:0!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-stage{
  grid-column:1;
  min-width:0;
  padding:18px!important;
  background:radial-gradient(circle at 95% 0,rgba(196,181,253,.13),transparent 28%);
}
.pgp-app.pgp-exam-runner .pgp-quiz-palette-panel{
  grid-column:2;
  position:sticky!important;
  top:76px;
  align-self:start;
  z-index:12;
  max-height:calc(100vh - 94px);
  overflow:auto;
  padding:18px!important;
  border:0!important;
  border-left:1px solid #e4e7ec!important;
  background:#fff!important;
}
body.admin-bar .pgp-app.pgp-exam-runner .pgp-quiz-palette-panel{top:108px}
.pgp-app.pgp-exam-runner .pgp-quiz-palette-heading{
  display:flex!important;
  align-items:flex-start!important;
  flex-direction:column!important;
  gap:2px!important;
  margin:0 0 12px!important;
  padding:0!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-palette-heading strong{
  display:block!important;
  margin:0!important;
  color:#172033!important;
  font-size:14px!important;
  font-weight:800!important;
  line-height:1.3!important;
  opacity:1!important;
  visibility:visible!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-palette-heading span{
  display:block!important;
  color:#667085!important;
  font-size:11px!important;
  font-weight:500!important;
  line-height:1.35!important;
  opacity:1!important;
  visibility:visible!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-palette{grid-template-columns:repeat(5,minmax(34px,1fr));gap:7px}
.pgp-app.pgp-exam-runner button.pgp-quiz-palette-button,
.pgp-app.pgp-exam-runner button.pgp-quiz-palette-button:hover,
.pgp-app.pgp-exam-runner button.pgp-quiz-palette-button:focus-visible{
  min-width:0!important;
  min-height:38px!important;
  height:38px!important;
  padding:0!important;
  font-size:12px!important;
  line-height:1!important;
  opacity:1!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-palette-legend{margin-top:14px;padding-top:13px;gap:7px;font-size:10px!important}
.pgp-app.pgp-exam-runner .pgp-quiz-palette-legend,
.pgp-app.pgp-exam-runner .pgp-quiz-palette-legend span{color:#667085!important}

.pgp-app.pgp-exam-runner .pgp-quiz-question-card{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:20px 22px!important;
  border-radius:17px!important;
  box-shadow:0 7px 22px rgba(15,23,42,.045)!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-question-card header{margin-bottom:14px!important}
.pgp-app.pgp-exam-runner .pgp-quiz-question-number{font-size:11px!important;letter-spacing:.05em!important}
.pgp-app.pgp-exam-runner .pgp-quiz-question-number i{width:27px;height:27px}
.pgp-app.pgp-exam-runner .pgp-quiz-question-marks{padding:5px 9px!important;font-size:10px!important}
.pgp-app.pgp-exam-runner .pgp-quiz-question-text,
.pgp-app.pgp-exam-runner .pgp-quiz-question-text *{
  margin-top:0!important;
  color:#172033!important;
  font-size:clamp(18px,1.75cqw,22px)!important;
  font-weight:720!important;
  line-height:1.4!important;
  opacity:1!important;
  visibility:visible!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-question-text{margin-bottom:16px!important}
.pgp-app.pgp-exam-runner .pgp-quiz-options{gap:8px!important}
.pgp-app.pgp-exam-runner label.pgp-quiz-option{
  min-height:52px!important;
  gap:10px!important;
  padding:9px 11px!important;
  border-radius:12px!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-option-key{width:31px!important;height:31px!important;border-radius:9px!important;font-size:12px!important}
.pgp-app.pgp-exam-runner .pgp-quiz-option-text,
.pgp-app.pgp-exam-runner label.pgp-quiz-option:hover .pgp-quiz-option-text,
.pgp-app.pgp-exam-runner label.pgp-quiz-option:focus-within .pgp-quiz-option-text,
.pgp-app.pgp-exam-runner label.pgp-quiz-option.is-selected .pgp-quiz-option-text{
  padding-top:0!important;
  color:#344054!important;
  font-size:15px!important;
  font-weight:560!important;
  line-height:1.35!important;
  opacity:1!important;
  visibility:visible!important;
}
.pgp-app.pgp-exam-runner label.pgp-quiz-option.is-selected .pgp-quiz-option-text{color:#312e81!important;font-weight:680!important}
.pgp-app.pgp-exam-runner .pgp-quiz-option-check{width:20px!important;height:20px!important}
.pgp-app.pgp-exam-runner .pgp-quiz-question-meta{min-height:24px!important;margin-top:9px!important}
.pgp-app.pgp-exam-runner .pgp-answer-tools{gap:10px!important}
.pgp-app.pgp-exam-runner .pgp-clear-answer{font-size:11px!important}
.pgp-app.pgp-exam-runner .pgp-save-state{font-size:11px!important}

.pgp-app.pgp-exam-runner .pgp-quiz-actionbar{
  position:sticky;
  bottom:10px;
  z-index:25;
  display:grid;
  grid-template-columns:auto minmax(110px,1fr) auto auto;
  align-items:center;
  gap:8px;
  margin-top:12px;
  padding:9px;
  border:1px solid rgba(208,213,221,.92);
  border-radius:14px;
  background:rgba(255,255,255,.96);
  box-shadow:0 12px 34px rgba(15,23,42,.14);
  backdrop-filter:blur(12px);
}
.pgp-app.pgp-exam-runner .pgp-quiz-action-button,
.pgp-app.pgp-exam-runner .pgp-quiz-submit{
  min-width:0!important;
  min-height:40px!important;
  height:40px!important;
  padding:8px 13px!important;
  border-radius:10px!important;
  font-size:12px!important;
  white-space:nowrap;
}
.pgp-app.pgp-exam-runner .pgp-quiz-position{
  color:#667085!important;
  font-size:11px!important;
  font-weight:650!important;
  text-align:center;
}
.pgp-app.pgp-exam-runner .pgp-quiz-position strong{color:#344054!important}
.pgp-app.pgp-exam-runner .pgp-quiz-submit,
.pgp-app.pgp-exam-runner .pgp-quiz-submit:hover,
.pgp-app.pgp-exam-runner .pgp-quiz-submit:focus-visible,
.pgp-app.pgp-exam-runner .pgp-quiz-submit *{
  background:linear-gradient(135deg,#4f46e5,#7c3aed)!important;
  color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-submit .pgp-icon{background:transparent!important}

/* Modal is appended to body, so it needs its own fully isolated color rules. */
.pgp-quiz-dialog-backdrop{z-index:999999!important}
.pgp-quiz-dialog{
  width:min(430px,100%)!important;
  padding:22px!important;
  color:#172033!important;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;
}
.pgp-quiz-dialog,
.pgp-quiz-dialog h3,
.pgp-quiz-dialog p,
.pgp-quiz-dialog strong,
.pgp-quiz-dialog span{opacity:1!important;visibility:visible!important}
.pgp-quiz-dialog h3{margin:0 0 7px!important;color:#172033!important;font-size:21px!important;font-weight:800!important;line-height:1.25!important}
.pgp-quiz-dialog p{margin:0!important;color:#475467!important;font-size:13px!important;line-height:1.55!important}
.pgp-quiz-dialog-icon{width:42px!important;height:42px!important;margin-bottom:14px!important;color:#b45309!important}
.pgp-quiz-dialog-summary{gap:8px!important;margin:15px 0!important}
.pgp-quiz-dialog-summary div{padding:11px!important;background:#f8fafc!important}
.pgp-quiz-dialog-summary strong{color:#172033!important;font-size:19px!important}
.pgp-quiz-dialog-summary span{color:#667085!important;font-size:10px!important}
.pgp-quiz-dialog-actions{gap:8px!important}
.pgp-quiz-dialog .pgp-quiz-dialog-cancel,
.pgp-quiz-dialog .pgp-quiz-dialog-cancel:hover,
.pgp-quiz-dialog .pgp-quiz-dialog-cancel:focus-visible{
  min-height:42px!important;
  border:1px solid #d0d5dd!important;
  background:#fff!important;
  box-shadow:none!important;
  color:#344054!important;
  font-size:12px!important;
  font-weight:750!important;
  opacity:1!important;
  visibility:visible!important;
}
.pgp-quiz-dialog .pgp-quiz-dialog-confirm,
.pgp-quiz-dialog .pgp-quiz-dialog-confirm:hover,
.pgp-quiz-dialog .pgp-quiz-dialog-confirm:focus-visible,
.pgp-quiz-dialog .pgp-quiz-dialog-confirm *{
  min-height:42px!important;
  border-color:transparent!important;
  background:linear-gradient(135deg,#4f46e5,#7c3aed)!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:780!important;
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
}
.pgp-quiz-dialog .pgp-quiz-dialog-confirm .pgp-icon{min-height:0!important;background:transparent!important}

@container pgp-exam-runner (max-width:920px){
  .pgp-app.pgp-exam-runner .pgp-quiz-layout{display:flex!important;flex-direction:column!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-palette-panel{
    order:-1;
    position:static!important;
    width:100%;
    max-height:none;
    overflow:hidden;
    padding:12px 14px!important;
    border-left:0!important;
    border-bottom:1px solid #e4e7ec!important;
  }
  .pgp-app.pgp-exam-runner .pgp-quiz-palette-heading{align-items:center!important;flex-direction:row!important;justify-content:space-between!important;margin-bottom:8px!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-palette{display:flex!important;overflow-x:auto;gap:7px;padding:1px 0 5px;scrollbar-width:thin}
  .pgp-app.pgp-exam-runner button.pgp-quiz-palette-button{min-width:38px!important;flex:0 0 38px!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-palette-legend{display:none!important}
}
@container pgp-exam-runner (max-width:620px){
  .pgp-app.pgp-exam-runner .pgp-quiz-toolbar{position:relative!important;top:auto!important;min-height:0;padding:10px 12px!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-toolbar-stats{width:auto!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-answered-chip{display:none!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-stage{padding:10px!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-question-card{padding:15px!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-question-card header{align-items:center!important;flex-direction:row!important;margin-bottom:11px!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-question-text,
  .pgp-app.pgp-exam-runner .pgp-quiz-question-text *{font-size:17px!important;line-height:1.4!important}
  .pgp-app.pgp-exam-runner label.pgp-quiz-option{min-height:49px!important;padding:8px 9px!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-option-text{font-size:14px!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-actionbar{grid-template-columns:1fr 1fr;bottom:6px;margin-top:9px;padding:7px}
  .pgp-app.pgp-exam-runner .pgp-quiz-position{grid-column:1/-1;grid-row:1}
  .pgp-app.pgp-exam-runner .pgp-prev{grid-column:1;grid-row:2}
  .pgp-app.pgp-exam-runner .pgp-next{grid-column:2;grid-row:2}
  .pgp-app.pgp-exam-runner .pgp-quiz-submit{grid-column:1/-1;grid-row:3;width:100%!important}
  .pgp-quiz-dialog-actions{flex-direction:column-reverse!important}
  .pgp-quiz-dialog-actions button{width:100%!important}
}


/* v0.5.5 — force a stable full-width quiz workspace inside any theme content block. */
.pgp-app.pgp-exam-runner .pgp-quiz-layout,
.pgp-app.pgp-exam-runner .pgp-quiz-stage,
.pgp-app.pgp-exam-runner .pgp-quiz-question-list,
.pgp-app.pgp-exam-runner article.pgp-quiz-question,
.pgp-app.pgp-exam-runner article.pgp-quiz-question.is-active,
.pgp-app.pgp-exam-runner .pgp-quiz-question-card,
.pgp-app.pgp-exam-runner .pgp-quiz-actionbar{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-stage,
.pgp-app.pgp-exam-runner .pgp-quiz-question-list,
.pgp-app.pgp-exam-runner article.pgp-quiz-question.is-active{
  align-self:stretch!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-question-list{
  display:block!important;
  flex:1 1 auto!important;
}
.pgp-app.pgp-exam-runner article.pgp-quiz-question{
  margin:0!important;
  padding:0!important;
}
.pgp-app.pgp-exam-runner article.pgp-quiz-question:not(.is-active){
  display:none!important;
}
.pgp-app.pgp-exam-runner article.pgp-quiz-question.is-active{
  display:block!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-question-card{
  margin-inline:0!important;
}

/* v0.5.6 — Premium leaderboard, honor board and personal standing. */
.pgp-app.pgp-leaderboard-shell{
  --pgp-lb-ink:#172033;
  --pgp-lb-muted:#667085;
  --pgp-lb-border:#e4e7ec;
  --pgp-lb-purple:#5b44f2;
  --pgp-lb-violet:#7c3aed;
  width:100%!important;
  max-width:1180px!important;
  min-width:0!important;
  margin:28px auto!important;
  padding-inline:clamp(14px,2vw,24px)!important;
  box-sizing:border-box!important;
  color:var(--pgp-lb-ink)!important;
  container:pgp-leaderboard/inline-size;
}
.pgp-app.pgp-leaderboard-shell *{box-sizing:border-box}
.pgp-leaderboard-hero{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);
  gap:28px;
  overflow:hidden;
  padding:38px;
  border:1px solid rgba(196,181,253,.8);
  border-radius:26px;
  background:
    radial-gradient(circle at 88% 15%,rgba(236,72,153,.22),transparent 26%),
    radial-gradient(circle at 68% 90%,rgba(129,140,248,.25),transparent 32%),
    linear-gradient(135deg,#111936 0%,#30246f 56%,#5b21b6 100%);
  box-shadow:0 24px 55px rgba(30,41,59,.17);
  color:#fff!important;
}
.pgp-leaderboard-hero:after{content:"";position:absolute;right:-80px;bottom:-120px;width:300px;height:300px;border:1px solid rgba(255,255,255,.13);border-radius:50%;box-shadow:0 0 0 42px rgba(255,255,255,.035),0 0 0 88px rgba(255,255,255,.025)}
.pgp-leaderboard-hero-copy,.pgp-leaderboard-hero-stats{position:relative;z-index:1}
.pgp-leaderboard-kicker{display:flex;align-items:center;gap:9px;margin-bottom:12px;color:#ddd6fe!important;font-size:12px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.pgp-leaderboard-kicker .pgp-icon{width:18px;height:18px}
.pgp-leaderboard-hero h1{margin:0 0 10px!important;color:#fff!important;font-size:clamp(32px,5cqw,54px)!important;font-weight:850!important;line-height:1.04!important;letter-spacing:-.045em!important}
.pgp-leaderboard-hero p{max-width:650px;margin:0!important;color:#d8d9ef!important;font-size:15px!important;line-height:1.65!important}
.pgp-leaderboard-hero-stats{display:grid;gap:10px;align-content:center}
.pgp-leaderboard-hero-stats>div{display:grid;gap:4px;padding:14px 16px;border:1px solid rgba(255,255,255,.15);border-radius:14px;background:rgba(255,255,255,.09);backdrop-filter:blur(12px)}
.pgp-leaderboard-hero-stats span{color:#c7c9e6!important;font-size:10px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.pgp-leaderboard-hero-stats strong{overflow:hidden;color:#fff!important;font-size:15px!important;font-weight:760!important;text-overflow:ellipsis;white-space:nowrap}

.pgp-leaderboard-filter-card{margin-top:18px;padding:20px;border:1px solid var(--pgp-lb-border);border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(15,23,42,.06)}
.pgp-leaderboard-filter-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px}
.pgp-leaderboard-filter-head>div{display:flex;align-items:center;gap:11px}
.pgp-leaderboard-filter-head>div>span{display:grid;width:38px;height:38px;place-items:center;border-radius:11px;background:#eef2ff;color:#4f46e5}
.pgp-leaderboard-filter-head .pgp-icon{width:18px;height:18px}
.pgp-leaderboard-filter-head strong{display:block;color:var(--pgp-lb-ink)!important;font-size:14px!important}
.pgp-leaderboard-filter-head small{display:block;margin-top:2px;color:var(--pgp-lb-muted)!important;font-size:11px!important}
.pgp-leaderboard-filter-head>a{color:#5b44f2!important;font-size:11px!important;font-weight:750!important;text-decoration:none!important}
.pgp-leaderboard-filters{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(130px,.65fr) minmax(230px,1.4fr) minmax(135px,.65fr) auto;gap:10px;align-items:end;margin:0!important}
.pgp-leaderboard-filters label{display:grid!important;gap:6px!important;margin:0!important;color:#344054!important}
.pgp-leaderboard-filters label>span{color:#475467!important;font-size:10px!important;font-weight:800!important;letter-spacing:.06em;text-transform:uppercase}
.pgp-leaderboard-filters select{width:100%!important;height:43px!important;min-height:43px!important;margin:0!important;padding:0 36px 0 12px!important;border:1px solid #d0d5dd!important;border-radius:11px!important;background-color:#fff!important;color:#344054!important;font-size:12px!important;font-weight:620!important;box-shadow:none!important}
.pgp-leaderboard-filter-submit,.pgp-leaderboard-filter-submit:hover,.pgp-leaderboard-filter-submit:focus-visible{display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;height:43px!important;min-height:43px!important;padding:0 17px!important;border:0!important;border-radius:11px!important;background:linear-gradient(135deg,#4f46e5,#7c3aed)!important;color:#fff!important;font-size:12px!important;font-weight:780!important;white-space:nowrap!important}
.pgp-leaderboard-filter-submit .pgp-icon{width:16px;height:16px;color:#fff!important}

.pgp-leaderboard-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:17px}
.pgp-leaderboard-section-head>div>span{display:block;margin-bottom:3px;color:#5b44f2!important;font-size:10px!important;font-weight:850!important;letter-spacing:.12em;text-transform:uppercase}
.pgp-leaderboard-section-head h2{margin:0!important;color:var(--pgp-lb-ink)!important;font-size:24px!important;font-weight:820!important;letter-spacing:-.025em!important}
.pgp-leaderboard-section-head>small{color:var(--pgp-lb-muted)!important;font-size:11px!important;text-align:right}

.pgp-honor-board{margin-top:26px}
.pgp-honor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;align-items:end}
.pgp-honor-card{position:relative;display:flex!important;min-width:0!important;min-height:250px!important;flex-direction:column!important;align-items:center!important;justify-content:flex-end!important;margin:0!important;padding:25px 18px 20px!important;border:1px solid #e4e7ec!important;border-radius:21px!important;background:linear-gradient(180deg,#fff,#fbfbff)!important;box-shadow:0 14px 36px rgba(15,23,42,.075)!important;text-align:center!important}
.pgp-honor-card:before{content:"";position:absolute;inset:0 0 auto;height:5px;border-radius:21px 21px 0 0;background:#94a3b8}
.pgp-honor-rank-1{order:2;min-height:282px!important;border-color:#c4b5fd!important;background:linear-gradient(180deg,#f8f7ff,#fff)!important;transform:translateY(-8px)}
.pgp-honor-rank-1:before{background:linear-gradient(90deg,#f59e0b,#fde68a,#f59e0b)}
.pgp-honor-rank-2{order:1}.pgp-honor-rank-2:before{background:linear-gradient(90deg,#94a3b8,#e2e8f0,#94a3b8)}
.pgp-honor-rank-3{order:3}.pgp-honor-rank-3:before{background:linear-gradient(90deg,#b45309,#fdba74,#b45309)}
.pgp-honor-card.is-current-user{box-shadow:0 0 0 3px rgba(91,68,242,.11),0 14px 36px rgba(15,23,42,.08)!important}
.pgp-honor-rank{position:absolute;top:14px;right:14px;display:flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:#f2f4f7;color:#475467!important}
.pgp-honor-rank .pgp-icon{width:15px;height:15px}.pgp-honor-rank strong{color:inherit!important;font-size:11px!important}
.pgp-honor-rank-1 .pgp-honor-rank{background:#fff7d6;color:#a16207!important}
.pgp-honor-avatar{display:grid;width:82px;height:82px;margin-bottom:12px;place-items:center;border:4px solid #fff;border-radius:50%;background:#eef2ff;box-shadow:0 6px 20px rgba(15,23,42,.14);overflow:hidden}
.pgp-honor-rank-1 .pgp-honor-avatar{width:92px;height:92px;box-shadow:0 0 0 5px #fef3c7,0 8px 24px rgba(15,23,42,.15)}
.pgp-honor-avatar img{width:100%!important;height:100%!important;object-fit:cover!important}
.pgp-honor-card h3{width:100%;overflow:hidden;margin:0 0 4px!important;color:var(--pgp-lb-ink)!important;font-size:16px!important;font-weight:800!important;text-overflow:ellipsis;white-space:nowrap}
.pgp-honor-card>p{margin:0 0 15px!important;color:var(--pgp-lb-muted)!important;font-size:11px!important}
.pgp-honor-metrics{display:grid;width:100%;grid-template-columns:1fr 1fr;gap:8px}
.pgp-honor-metrics span{display:grid;gap:2px;padding:9px;border-radius:11px;background:#f8fafc;color:#667085!important;font-size:9px!important;font-weight:700!important;text-transform:uppercase}
.pgp-honor-metrics strong{color:#344054!important;font-size:13px!important;font-weight:800!important;text-transform:none}

.pgp-your-standing{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:17px;align-items:center;margin-top:22px;padding:20px 22px;border:1px solid #c7d2fe;border-radius:19px;background:linear-gradient(135deg,#eef2ff,#faf5ff);box-shadow:0 10px 30px rgba(79,70,229,.075)}
.pgp-your-standing.is-empty{border-color:#e4e7ec;background:#fff}
.pgp-your-standing-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:14px;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff}.pgp-your-standing-icon .pgp-icon{width:22px;height:22px}
.pgp-your-standing-copy>span{color:#5b44f2!important;font-size:9px!important;font-weight:850!important;letter-spacing:.12em;text-transform:uppercase}
.pgp-your-standing-copy h2{margin:2px 0 3px!important;color:var(--pgp-lb-ink)!important;font-size:22px!important;font-weight:830!important}
.pgp-your-standing-copy p{margin:0!important;color:var(--pgp-lb-muted)!important;font-size:11px!important;line-height:1.5!important}
.pgp-your-standing-stats{display:flex;gap:8px}.pgp-your-standing-stats>span{display:grid;gap:2px;min-width:95px;padding:9px 11px;border:1px solid rgba(199,210,254,.8);border-radius:11px;background:rgba(255,255,255,.75)}
.pgp-your-standing-stats small{color:#667085!important;font-size:8px!important;font-weight:800!important;letter-spacing:.06em;text-transform:uppercase}.pgp-your-standing-stats strong{color:#172033!important;font-size:12px!important;font-weight:800!important}

.pgp-leaderboard-table-card{margin-top:22px;padding:20px;border:1px solid var(--pgp-lb-border);border-radius:21px;background:#fff;box-shadow:0 12px 36px rgba(15,23,42,.065)}
.pgp-leaderboard-table-wrap{overflow:auto;border:1px solid #eaecf0;border-radius:14px}
.pgp-leaderboard-table{width:100%!important;min-width:820px!important;margin:0!important;border-collapse:collapse!important;background:#fff!important}
.pgp-leaderboard-table th{padding:11px 13px!important;border:0!important;border-bottom:1px solid #eaecf0!important;background:#f8fafc!important;color:#667085!important;font-size:9px!important;font-weight:850!important;letter-spacing:.07em!important;text-align:left!important;text-transform:uppercase!important;white-space:nowrap!important}
.pgp-leaderboard-table td{padding:11px 13px!important;border:0!important;border-bottom:1px solid #f0f2f5!important;background:#fff!important;color:#475467!important;font-size:11px!important;vertical-align:middle!important;white-space:nowrap!important}
.pgp-leaderboard-table tbody tr:last-child td{border-bottom:0!important}
.pgp-leaderboard-table tbody tr:hover td{background:#fafaff!important;color:#344054!important}
.pgp-leaderboard-table tr.is-current-user td{background:#f3f1ff!important}.pgp-leaderboard-table tr.is-current-user:hover td{background:#ece9ff!important}
.pgp-table-rank{display:inline-grid;min-width:35px;height:29px;place-items:center;border-radius:9px;background:#f2f4f7;color:#475467!important;font-size:11px!important;font-weight:850!important}.pgp-table-rank.is-podium{background:#ede9fe;color:#5b21b6!important}
.pgp-leaderboard-person{display:flex;align-items:center;gap:9px}.pgp-leaderboard-person img{width:36px!important;height:36px!important;border-radius:50%!important;object-fit:cover!important}.pgp-leaderboard-person strong{display:block;max-width:180px;overflow:hidden;color:#172033!important;font-size:11px!important;text-overflow:ellipsis;white-space:nowrap}.pgp-leaderboard-person small{display:inline-block;margin-top:2px;padding:2px 6px;border-radius:999px;background:#5b44f2;color:#fff!important;font-size:7px!important;font-weight:800!important;text-transform:uppercase}
.pgp-leaderboard-score{display:inline-flex;padding:4px 8px;border-radius:999px;background:#ecfdf3;color:#067647!important;font-size:10px!important;font-weight:850!important}
.pgp-answer-balance{display:inline-flex;align-items:center;gap:5px}.pgp-answer-balance b{color:#067647!important;font-style:normal}.pgp-answer-balance em{color:#b42318!important;font-style:normal}.pgp-answer-balance i{color:#98a2b3!important;font-style:normal}
.pgp-leaderboard-divider td{padding:7px!important;background:#f8fafc!important;text-align:center!important}.pgp-leaderboard-divider span{color:#5b44f2!important;font-size:8px!important;font-weight:850!important;letter-spacing:.12em;text-transform:uppercase}
.pgp-leaderboard-empty{display:grid;min-height:260px;margin-top:22px;padding:40px;place-items:center;border:1px dashed #cbd5e1;border-radius:21px;background:#fff;text-align:center}.pgp-leaderboard-empty>span{display:grid;width:62px;height:62px;place-items:center;border-radius:18px;background:#eef2ff;color:#5b44f2}.pgp-leaderboard-empty .pgp-icon{width:28px;height:28px}.pgp-leaderboard-empty h2{margin:13px 0 4px!important;color:#172033!important;font-size:21px!important}.pgp-leaderboard-empty p{margin:0!important;color:#667085!important;font-size:12px!important}
.pgp-leaderboard-inline-link{display:inline-flex!important;align-items:center!important;gap:7px!important;padding:8px 11px!important;border:1px solid #d9d6fe!important;border-radius:10px!important;background:#fff!important;color:#5b44f2!important;font-size:11px!important;font-weight:760!important;text-decoration:none!important}.pgp-leaderboard-inline-link:hover{background:#f5f3ff!important;color:#4c1d95!important}.pgp-leaderboard-inline-link .pgp-icon{width:15px;height:15px}

@container pgp-leaderboard (max-width:980px){
  .pgp-leaderboard-hero{grid-template-columns:1fr;padding:29px}.pgp-leaderboard-hero-stats{grid-template-columns:repeat(3,1fr)}
  .pgp-leaderboard-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.pgp-leaderboard-exam-filter{grid-column:1/-1}.pgp-leaderboard-filter-submit{width:100%!important}
  .pgp-your-standing{grid-template-columns:auto minmax(0,1fr)}.pgp-your-standing-stats{grid-column:1/-1}.pgp-your-standing-stats>span{flex:1}
}
@container pgp-leaderboard (max-width:700px){
  .pgp-leaderboard-hero{padding:24px 20px;border-radius:20px}.pgp-leaderboard-hero-stats{grid-template-columns:1fr}.pgp-leaderboard-hero h1{font-size:34px!important}
  .pgp-leaderboard-filter-card,.pgp-leaderboard-table-card{padding:15px;border-radius:17px}.pgp-leaderboard-filter-head,.pgp-leaderboard-section-head{align-items:flex-start;flex-direction:column}.pgp-leaderboard-section-head>small{text-align:left}
  .pgp-leaderboard-filters{grid-template-columns:1fr}.pgp-leaderboard-exam-filter{grid-column:auto}
  .pgp-honor-grid{grid-template-columns:1fr}.pgp-honor-card,.pgp-honor-rank-1{order:initial;min-height:225px!important;transform:none}.pgp-honor-rank-1{grid-row:1}
  .pgp-your-standing{grid-template-columns:1fr;padding:18px}.pgp-your-standing-icon{width:43px;height:43px}.pgp-your-standing-stats{display:grid;grid-template-columns:1fr 1fr}.pgp-your-standing-stats>span:last-child{grid-column:1/-1}
}

/* PG Prep v0.5.8 static homepage preview. All rules are scoped to the shortcode root. */


/* v0.6.4 Dedicated public notices */
.pgp-notices-app{--pgpn-purple:#6d28d9;--pgpn-purple-dark:#4c1d95;--pgpn-ink:#0f172a;--pgpn-muted:#667085;--pgpn-border:#e6e8f0;display:block;width:100%;max-width:1180px!important;margin:28px auto!important;padding:0 clamp(14px,2vw,24px)!important;float:none!important;clear:both;color:var(--pgpn-ink)}
.pgp-notices-app *{box-sizing:border-box}.pgp-notices-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;overflow:hidden;padding:38px;border:1px solid #ddd6fe;border-radius:24px;background:radial-gradient(circle at 92% 8%,rgba(196,181,253,.52),transparent 34%),linear-gradient(135deg,#fff,#f7f5ff);box-shadow:0 20px 54px rgba(15,23,42,.08)}.pgp-notices-kicker{display:block;margin-bottom:8px;color:var(--pgpn-purple);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.pgp-notices-hero h1{margin:0!important;color:var(--pgpn-ink)!important;font-size:clamp(34px,5vw,54px)!important;line-height:1.05!important}.pgp-notices-hero p{max-width:670px;margin:13px 0 0;color:var(--pgpn-muted);font-size:16px;line-height:1.7}.pgp-notices-hero-count{display:flex;min-width:170px;flex-direction:column;padding:19px 22px;border:1px solid rgba(109,40,217,.16);border-radius:18px;background:rgba(255,255,255,.8);text-align:center}.pgp-notices-hero-count strong{font-size:31px;line-height:1}.pgp-notices-hero-count span{margin-top:7px;color:var(--pgpn-muted);font-size:11px;font-weight:700;text-transform:uppercase}
.pgp-notices-filter{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(180px,.8fr) auto auto;align-items:end;gap:13px;margin:22px 0;padding:18px;border:1px solid var(--pgpn-border);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.05)}.pgp-notices-filter label{display:grid;gap:7px;margin:0}.pgp-notices-filter label>span{color:#344054;font-size:12px;font-weight:800}.pgp-notices-filter input,.pgp-notices-filter select{width:100%;height:44px;margin:0!important;padding:0 13px!important;border:1px solid #d0d5dd!important;border-radius:11px!important;background:#fff!important;color:var(--pgpn-ink)!important;box-shadow:none!important;font:inherit!important}.pgp-notices-reset{display:inline-flex;align-items:center;justify-content:center;height:44px;color:var(--pgpn-purple);font-weight:750;text-decoration:none}
.pgp-notices-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pgp-notice-card{position:relative;display:flex;min-width:0;flex-direction:column;padding:23px;border:1px solid var(--pgpn-border);border-radius:18px;background:#fff;box-shadow:0 4px 16px rgba(15,23,42,.045);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.pgp-notice-card:hover{transform:translateY(-2px);border-color:#c4b5fd;box-shadow:0 15px 36px rgba(76,29,149,.1)}.pgp-notice-card.is-priority:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;border-radius:18px 0 0 18px;background:linear-gradient(#8b5cf6,#4c1d95)}.pgp-notice-card-meta,.pgp-notice-detail-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.pgp-notice-card time,.pgp-notice-detail time{color:var(--pgpn-muted);font-size:12px}.pgp-notice-type{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:#f2f4f7;color:#475467;font-size:10px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.pgp-notice-type.is-exam_date,.pgp-notice-type.is-deadline{background:#fef3c7;color:#92400e}.pgp-notice-type.is-confirmed,.pgp-notice-type.is-result{background:#dcfce7;color:#166534}.pgp-notice-type.is-admission{background:#dbeafe;color:#1d4ed8}.pgp-notice-type.is-platform{background:#ede9fe;color:#5b21b6}.pgp-notice-card h2{margin:18px 0 9px!important;font-size:20px!important;line-height:1.35!important}.pgp-notice-card h2 a{color:var(--pgpn-ink)!important;text-decoration:none!important}.pgp-notice-card p{margin:0 0 18px;color:var(--pgpn-muted);line-height:1.65}.pgp-notice-read{margin-top:auto;color:var(--pgpn-purple)!important;font-weight:800;text-decoration:none!important}.pgp-notices-empty{padding:55px 25px;border:1px dashed #c7d2fe;border-radius:20px;background:#faf9ff;text-align:center}.pgp-notices-empty h2{margin:12px 0 5px!important}.pgp-notices-empty p{color:var(--pgpn-muted)}
.pgp-notice-detail{width:100%;max-width:none;margin:0;padding:38px;border:1px solid var(--pgpn-border);border-radius:24px;background:#fff;box-shadow:0 18px 50px rgba(15,23,42,.08)}.pgp-notice-back{display:inline-flex;margin-bottom:26px;color:var(--pgpn-purple)!important;font-weight:800;text-decoration:none!important}.pgp-notice-detail h1{margin:18px 0 12px!important;color:var(--pgpn-ink)!important;font-size:clamp(32px,5vw,48px)!important;line-height:1.15!important}.pgp-notice-lead{margin:0 0 25px!important;padding-bottom:23px;border-bottom:1px solid #eef0f4;color:var(--pgpn-muted);font-size:18px;line-height:1.7}.pgp-notice-content{color:#344054;font-size:16px;line-height:1.8}.pgp-notice-content h2,.pgp-notice-content h3{color:var(--pgpn-ink)!important}.pgp-notice-content a{color:var(--pgpn-purple)!important}.pgp-notice-external{margin-top:26px}.pgp-notices-pagination{margin-top:25px}.pgp-notices-pagination ul{display:flex;justify-content:center;gap:7px;margin:0;padding:0;list-style:none}.pgp-notices-pagination a,.pgp-notices-pagination span{display:grid;place-items:center;min-width:39px;height:39px;padding:0 10px;border:1px solid var(--pgpn-border);border-radius:10px;background:#fff;color:#344054;text-decoration:none}.pgp-notices-pagination .current{border-color:var(--pgpn-purple);background:var(--pgpn-purple);color:#fff}
@media(max-width:760px){.pgp-notices-app{margin:18px auto;padding:0 10px}.pgp-notices-hero{align-items:flex-start;flex-direction:column;padding:27px 22px}.pgp-notices-hero-count{width:100%}.pgp-notices-filter{grid-template-columns:1fr}.pgp-notices-list{grid-template-columns:1fr}.pgp-notice-detail{padding:26px 20px}.pgp-notice-detail-head{align-items:flex-start;flex-direction:column}}

/* v0.7.0 — Program Type sections and ordered CSQ cases */
.pgp-app.pgp-exam-runner .pgp-question-heading-meta{
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  min-width:0 !important;
}
.pgp-app.pgp-exam-runner .pgp-section-badge{
  display:inline-flex !important;
  align-items:center !important;
  min-height:28px !important;
  padding:5px 10px !important;
  border-radius:999px !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:800 !important;
  letter-spacing:.05em !important;
  text-transform:uppercase !important;
  background:#ede9fe !important;
  color:#5b21b6 !important;
}
.pgp-app.pgp-exam-runner .pgp-section-badge.is-csq{
  background:#ecfeff !important;
  color:#0f766e !important;
}
.pgp-app.pgp-exam-runner .pgp-csq-context{
  display:grid !important;
  gap:10px !important;
  width:100% !important;
  margin:0 0 18px !important;
  padding:16px 18px !important;
  border:1px solid #a5f3fc !important;
  border-left:4px solid #0d9488 !important;
  border-radius:14px !important;
  background:#f0fdfa !important;
  color:#134e4a !important;
  box-sizing:border-box !important;
}
.pgp-app.pgp-exam-runner .pgp-csq-context-head{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  flex-wrap:wrap !important;
  gap:8px 14px !important;
}
.pgp-app.pgp-exam-runner .pgp-csq-context-head span{
  font-size:11px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  letter-spacing:.07em !important;
  text-transform:uppercase !important;
  color:#0f766e !important;
}
.pgp-app.pgp-exam-runner .pgp-csq-context-head strong{
  font-size:14px !important;
  line-height:1.35 !important;
  color:#134e4a !important;
}
.pgp-app.pgp-exam-runner .pgp-csq-stem{
  font-size:15px !important;
  line-height:1.65 !important;
  color:#134e4a !important;
  overflow-wrap:anywhere !important;
}
.pgp-app.pgp-exam-runner .pgp-csq-context small{
  font-size:12px !important;
  color:#0f766e !important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-palette{
  align-content:start !important;
}
.pgp-app.pgp-exam-runner .pgp-palette-group-title,
.pgp-app.pgp-exam-runner .pgp-palette-case-title{
  grid-column:1 / -1 !important;
  width:100% !important;
  box-sizing:border-box !important;
}
.pgp-app.pgp-exam-runner .pgp-palette-group-title{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  flex-wrap:wrap !important;
  gap:4px 10px !important;
  margin:10px 0 4px !important;
  padding:10px 0 7px !important;
  border-bottom:1px solid #e2e8f0 !important;
}
.pgp-app.pgp-exam-runner .pgp-palette-group-title:first-child{margin-top:0 !important;}
.pgp-app.pgp-exam-runner .pgp-palette-group-title strong{
  color:#0f172a !important;
  font-size:13px !important;
  text-transform:uppercase !important;
  letter-spacing:.05em !important;
}
.pgp-app.pgp-exam-runner .pgp-palette-group-title span{
  color:#64748b !important;
  font-size:11px !important;
  line-height:1.35 !important;
}
.pgp-app.pgp-exam-runner .pgp-palette-case-title{
  margin:6px 0 2px !important;
  padding:7px 9px !important;
  border-radius:8px !important;
  background:#f0fdfa !important;
  color:#0f766e !important;
  font-size:11px !important;
  font-weight:750 !important;
  line-height:1.35 !important;
}
.pgp-app .pgp-review-csq-context{
  display:grid;
  gap:7px;
  margin:0 0 16px;
  padding:14px 16px;
  border:1px solid #a5f3fc;
  border-radius:12px;
  background:#f0fdfa;
  color:#134e4a;
}
.pgp-app .pgp-review-csq-context > span,
.pgp-app .pgp-review-section-label{
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#0f766e;
}
.pgp-app .pgp-review-csq-context > div{line-height:1.6;}
.pgp-app .pgp-review-card-header > div{min-width:0;flex:1;}
@container pgp-exam-runner (max-width:620px){
  .pgp-app.pgp-exam-runner .pgp-csq-context{padding:13px 14px !important;}
  .pgp-app.pgp-exam-runner .pgp-csq-stem{font-size:14px !important;}
}

/* v0.7.0 — independent Subject Practice directory */
.pgp-app.pgp-subject-practice{
  width:100%;
  max-width:1180px!important;
  margin:28px auto!important;
  padding-block:clamp(18px,3vw,36px);
  padding-inline:clamp(14px,2vw,24px);
  box-sizing:border-box;
  container-type:inline-size;
  container-name:pgp-subject-practice;
}
.pgp-subject-practice .pgp-practice-hero{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(240px,.7fr);
  gap:24px;
  align-items:center;
  margin-bottom:22px;
  padding:clamp(24px,4vw,42px);
  border:1px solid #ddd6fe;
  border-radius:24px;
  background:linear-gradient(135deg,#0f172a 0%,#312e81 58%,#5b21b6 100%);
  color:#fff;
  box-shadow:0 22px 55px rgba(49,46,129,.16);
}
.pgp-subject-practice .pgp-practice-hero h2{
  margin:8px 0 10px;
  color:#fff;
  font-size:clamp(28px,4cqi,48px);
  line-height:1.08;
}
.pgp-subject-practice .pgp-practice-hero p{margin:0;max-width:720px;color:#dbeafe;line-height:1.7;}
.pgp-subject-practice .pgp-practice-rule{
  display:grid;
  gap:7px;
  padding:18px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:16px;
  background:rgba(255,255,255,.09);
  backdrop-filter:blur(8px);
}
.pgp-subject-practice .pgp-practice-rule strong{color:#ccfbf1;}
.pgp-subject-practice .pgp-practice-rule span{color:#e2e8f0;font-size:13px;line-height:1.55;}
.pgp-subject-practice .pgp-practice-filters{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr)) auto;
  gap:14px;
  align-items:end;
  margin-bottom:22px;
  padding:18px;
  border:1px solid #e2e8f0;
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 30px rgba(15,23,42,.06);
}
.pgp-subject-practice .pgp-practice-filters label{display:grid;gap:7px;min-width:0;}
.pgp-subject-practice .pgp-practice-filters label>span{font-size:12px;font-weight:800;color:#475569;text-transform:uppercase;letter-spacing:.05em;}
.pgp-subject-practice .pgp-practice-filters select{
  width:100%;min-height:46px;padding:10px 38px 10px 12px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#0f172a;
}
.pgp-subject-practice .pgp-practice-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));
  align-items:start;
  gap:14px;
}
.pgp-subject-practice .pgp-practice-card{
  display:grid;
  grid-template-rows:auto auto auto auto;
  gap:12px;
  min-width:0;
  padding:18px;
  border:1px solid #e2e8f0;
  border-top:3px solid #6d28d9;
  border-radius:16px;
  background:#fff;
  box-shadow:0 6px 20px rgba(15,23,42,.055);
}
.pgp-subject-practice .pgp-practice-card.is-csq{border-top-color:#0d9488;}
.pgp-subject-practice .pgp-practice-card>header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;min-height:0;color:#64748b;font-size:11px;font-weight:750;}
.pgp-subject-practice .pgp-practice-card-badges{display:flex;flex-wrap:wrap;align-items:center;gap:7px;min-width:0;}
.pgp-subject-practice .pgp-practice-serial{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:26px;padding:0 9px;border-radius:999px;background:#eef2ff;color:#4338ca;font-size:9.5px;font-weight:900;letter-spacing:.05em;box-shadow:inset 0 0 0 1px #c7d2fe;}
.pgp-subject-practice .pgp-practice-type{display:inline-flex;padding:4px 8px;border-radius:999px;background:#ede9fe;color:#5b21b6;font-size:10px;font-weight:900;letter-spacing:.05em;}
.pgp-subject-practice .is-csq .pgp-practice-type{background:#ccfbf1;color:#0f766e;}
.pgp-subject-practice .pgp-practice-card-copy{min-width:0;min-height:58px;}
.pgp-subject-practice .pgp-practice-program{max-width:56%;color:#64748b;font-size:10.5px;line-height:1.35;text-align:right;overflow-wrap:anywhere;}
.pgp-subject-practice .pgp-practice-card small{display:block;color:#7c3aed;font-size:11.5px;font-weight:750;line-height:1.35;}
.pgp-subject-practice .pgp-practice-card h3{margin:4px 0 0;font-size:18px;line-height:1.28;color:#0f172a;overflow-wrap:anywhere;}
.pgp-subject-practice .pgp-practice-card p{margin:7px 0 0;color:#64748b;font-size:12.5px;line-height:1.5;}
.pgp-subject-practice .pgp-practice-card-meta{display:flex;align-items:center;gap:6px;min-width:0;min-height:28px;white-space:nowrap;}
.pgp-subject-practice .pgp-practice-question-total,.pgp-subject-practice .pgp-practice-state,.pgp-subject-practice .pgp-practice-progress-item{display:inline-flex;align-items:center;gap:4px;min-height:25px;padding:4px 7px;border-radius:999px;font-size:9.5px;font-weight:800;line-height:1;}
.pgp-subject-practice .pgp-practice-question-total{background:#f1f5f9;color:#334155;box-shadow:inset 0 0 0 1px #e2e8f0;}
.pgp-subject-practice .pgp-practice-state.is-progress{background:#fff7ed;color:#b45309;box-shadow:inset 0 0 0 1px #fed7aa;}
.pgp-subject-practice .pgp-practice-state.is-completed{background:#ecfdf3;color:#047857;box-shadow:inset 0 0 0 1px #bbf7d0;}
.pgp-subject-practice .pgp-practice-progress-item{background:#f8fafc;color:#475569;box-shadow:inset 0 0 0 1px #e2e8f0;}
.pgp-subject-practice .pgp-practice-progress-item.is-best{background:#f5f3ff;color:#6d28d9;box-shadow:inset 0 0 0 1px #ddd6fe;}
.pgp-subject-practice .pgp-practice-progress-item .pgp-icon{width:12px;height:12px;}
.pgp-subject-practice .pgp-practice-admin-edit{display:inline-flex;align-items:center;margin-left:auto;padding:4px 7px;border:1px solid #c4b5fd;border-radius:8px;background:#faf5ff;color:#6d28d9!important;font-size:9.5px;font-weight:800;text-decoration:none!important;}
.pgp-subject-practice .pgp-practice-admin-edit:hover{border-color:#8b5cf6;background:#f3e8ff;color:#5b21b6!important;}
.pgp-subject-practice .pgp-practice-action-slot{display:flex;align-items:flex-end;min-height:0;margin-top:1px;}
.pgp-subject-practice .pgp-practice-action-slot>.pgp-button,.pgp-subject-practice .pgp-practice-action-slot>.pgp-notice{width:100%;margin:0;}
.pgp-subject-practice .pgp-practice-action-slot>.pgp-button{min-height:40px;padding:9px 14px;font-size:13px;}
.pgp-subject-practice .pgp-practice-action-slot>.pgp-notice{padding:10px 12px;font-size:12px;line-height:1.4;}
.pgp-subject-practice .pgp-practice-lock-note{display:inline-flex;align-items:center;gap:8px;justify-content:flex-start;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:10px 12px;border-radius:12px;background:#fff8f1;color:#b45309;box-shadow:inset 0 0 0 1px #fed7aa;}
.pgp-subject-practice .pgp-practice-lock-note-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:#c2410c;}
.pgp-subject-practice .pgp-practice-lock-note-icon .pgp-icon{width:16px;height:16px;}
.pgp-subject-practice .pgp-practice-lock-note>span:last-child{overflow:hidden;text-overflow:ellipsis;}
@container pgp-subject-practice (max-width:760px){
  .pgp-subject-practice .pgp-practice-hero{grid-template-columns:1fr;}
  .pgp-subject-practice .pgp-practice-filters{grid-template-columns:1fr 1fr;}
  .pgp-subject-practice .pgp-practice-filters .pgp-button{width:100%;}
  .pgp-subject-practice .pgp-practice-card-meta{flex-wrap:wrap;white-space:normal;}
}
@container pgp-subject-practice (max-width:480px){
  .pgp-app.pgp-subject-practice{padding:14px;}
  .pgp-subject-practice .pgp-practice-hero{padding:22px 18px;border-radius:18px;}
  .pgp-subject-practice .pgp-practice-filters{grid-template-columns:1fr;padding:14px;}
  .pgp-subject-practice .pgp-practice-action-slot{min-height:0;}
}


/* v0.7.1 Student Portal, progress trackers and profile */
.pgp-student-portal{display:grid;gap:26px;width:100%;max-width:1180px!important;margin:28px auto!important;padding-inline:clamp(14px,2vw,24px);float:none!important;clear:both}
.pgp-portal-nav{position:sticky;top:12px;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px 12px 10px 16px;border:1px solid rgba(226,232,240,.9);border-radius:18px;background:rgba(255,255,255,.92);box-shadow:0 12px 32px rgba(15,23,42,.08);backdrop-filter:blur(16px)}
.pgp-portal-brand{display:flex;align-items:center;gap:10px;color:var(--pgp-ink)!important;text-decoration:none!important;white-space:nowrap}.pgp-portal-brand>span{display:grid;place-items:center;width:37px;height:37px;border-radius:11px;background:linear-gradient(135deg,var(--pgp-primary),var(--pgp-violet));color:#fff;font-size:13px;font-weight:900}.pgp-portal-brand strong{font-size:14px}
.pgp-portal-nav-links{display:flex;align-items:center;gap:4px;min-width:0}.pgp-portal-nav-links a{display:flex;align-items:center;gap:7px;padding:9px 11px;border-radius:11px;color:#475467!important;font-size:12px;font-weight:750;text-decoration:none!important;white-space:nowrap}.pgp-portal-nav-links a:hover{background:#f8fafc;color:var(--pgp-primary)!important}.pgp-portal-nav-links a.is-active{background:var(--pgp-primary-soft);color:var(--pgp-primary)!important}.pgp-portal-nav-links .pgp-icon{width:16px;height:16px}
.pgp-portal-hero{padding:38px 40px}.pgp-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.pgp-hero-actions .pgp-button{min-height:42px;padding:10px 15px}.pgp-membership-card a{margin-top:11px;font-size:12px;font-weight:750;text-decoration:none}
.pgp-resume-banner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:20px 22px;border:1px solid #c7d2fe;border-radius:18px;background:linear-gradient(135deg,#eef2ff,#fff 55%,#faf5ff);box-shadow:var(--pgp-shadow-sm)}.pgp-resume-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:15px;background:linear-gradient(135deg,var(--pgp-primary),var(--pgp-violet));color:#fff}.pgp-resume-copy .pgp-kicker{margin-bottom:3px}.pgp-resume-copy h2{margin-bottom:3px;font-size:20px}.pgp-resume-copy p{margin:0;color:var(--pgp-muted);font-size:12px}
.pgp-portal-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.pgp-tone-indigo .pgp-stat-icon{background:#eef2ff;color:#4f46e5}.pgp-tone-violet .pgp-stat-icon{background:#f5f3ff;color:#7c3aed}.pgp-tone-emerald .pgp-stat-icon{background:#ecfdf3;color:#059669}.pgp-tone-amber .pgp-stat-icon{background:#fffbeb;color:#d97706}
.pgp-tracker-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.pgp-goal-card{padding:18px;border:1px solid var(--pgp-border);border-radius:17px;background:#fff;box-shadow:var(--pgp-shadow-sm)}.pgp-goal-card-head{display:flex;align-items:center;gap:9px;color:#475467;font-size:12px}.pgp-goal-card-head>span{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--pgp-primary-soft);color:var(--pgp-primary)}.pgp-goal-card-head .pgp-icon{width:17px;height:17px}.pgp-goal-value{display:flex;align-items:baseline;gap:6px;margin:15px 0 10px}.pgp-goal-value strong{font-size:28px;line-height:1}.pgp-goal-value span{color:var(--pgp-muted);font-size:12px}.pgp-progress-track{height:7px;overflow:hidden;border-radius:999px;background:#eef0f4}.pgp-progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--pgp-primary),var(--pgp-violet))}.pgp-goal-caption{display:flex;justify-content:space-between;gap:8px;margin-top:8px;color:var(--pgp-muted);font-size:10px}.pgp-goal-caption b{color:var(--pgp-primary)}
.pgp-portal-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.pgp-portal-two-col-wide{grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr)}.pgp-portal-panel{margin:0;padding:22px;border:1px solid var(--pgp-border);border-radius:20px;background:#fff;box-shadow:var(--pgp-shadow-sm)}.pgp-portal-panel .pgp-section-head{margin-bottom:18px}.pgp-quiet-link{font-size:12px;font-weight:750;text-decoration:none!important}
.pgp-type-performance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.pgp-type-card{padding:17px;border:1px solid #e4e7ec;border-radius:16px;background:linear-gradient(160deg,#fff,#fafbff)}.pgp-type-card-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.pgp-type-card-title span{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef2ff;color:#4338ca;font-size:10px;font-weight:850;letter-spacing:.08em}.pgp-type-violet .pgp-type-card-title span{background:#f5f3ff;color:#6d28d9}.pgp-type-card-title strong{font-size:25px}.pgp-type-meter{height:7px;margin:12px 0 14px;overflow:hidden;border-radius:999px;background:#eef0f4}.pgp-type-meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4f46e5,#818cf8)}.pgp-type-violet .pgp-type-meter i{background:linear-gradient(90deg,#7c3aed,#c084fc)}.pgp-type-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0}.pgp-type-card dl div{padding:9px;border-radius:10px;background:#f8fafc}.pgp-type-card dt{color:var(--pgp-muted);font-size:9px;text-transform:uppercase}.pgp-type-card dd{margin:2px 0 0;font-size:14px;font-weight:800}
.pgp-streak-badge{padding:6px 10px;border-radius:999px;background:#fff7ed;color:#c2410c;font-size:10px}.pgp-activity-calendar{display:grid;grid-template-columns:repeat(14,minmax(0,1fr));gap:5px;align-items:end}.pgp-activity-calendar>div{display:grid;gap:5px;text-align:center}.pgp-activity-calendar span,.pgp-activity-calendar small{color:#98a2b3;font-size:8px}.pgp-activity-calendar i{display:block;height:42px;border-radius:8px;background:#f2f4f7;border:1px solid #eaecf0}.pgp-activity-calendar .is-active i{background:linear-gradient(180deg,#a78bfa,#4f46e5);border-color:#818cf8;box-shadow:0 6px 12px rgba(79,70,229,.18)}.pgp-activity-calendar .is-active span,.pgp-activity-calendar .is-active small{color:#4f46e5;font-weight:800}.pgp-panel-note{margin:14px 0 0;color:var(--pgp-muted);font-size:11px}
.pgp-subject-progress-list{display:grid;gap:10px}.pgp-subject-progress-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(320px,1.5fr);align-items:center;gap:18px;padding:13px 14px;border:1px solid #edf0f4;border-radius:14px;background:#fff}.pgp-subject-progress-title{display:flex;align-items:center;gap:11px;min-width:0}.pgp-subject-progress-title>div{min-width:0}.pgp-subject-progress-title strong,.pgp-subject-progress-title small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pgp-subject-progress-title small{color:var(--pgp-muted);font-size:10px}.pgp-subject-initial{display:grid;place-items:center;width:37px;height:37px;flex:0 0 auto;border-radius:11px;background:linear-gradient(135deg,#eef2ff,#f5f3ff);color:var(--pgp-primary);font-weight:850}.pgp-subject-progress-metrics{display:grid;grid-template-columns:1.2fr .7fr auto;align-items:center;gap:12px}.pgp-subject-progress-metrics>div>span{display:block;color:var(--pgp-muted);font-size:9px;text-transform:uppercase}.pgp-subject-progress-metrics>div>strong{font-size:13px}.pgp-subject-progress-metrics .pgp-mini-progress{margin-top:4px}.pgp-strength-pill{display:inline-flex;justify-content:center;min-width:92px;padding:5px 8px;border-radius:999px;background:#f2f4f7;color:#667085;font-size:9px;font-weight:800;white-space:nowrap}.pgp-strength-pill.is-strong{background:#ecfdf3;color:#047857}.pgp-strength-pill.is-improving{background:#fffbeb;color:#b45309}.pgp-strength-pill.is-needs_attention{background:#fef2f2;color:#b91c1c}
.pgp-dashboard-side-stack{display:grid;gap:15px}.pgp-side-insight-card{position:relative;overflow:hidden;padding:22px;border:1px solid #e0e7ff;border-radius:19px;background:linear-gradient(145deg,#fff,#f8faff);box-shadow:var(--pgp-shadow-sm)}.pgp-side-insight-icon{display:grid;place-items:center;width:43px;height:43px;margin-bottom:15px;border-radius:13px;background:#fef3c7;color:#d97706}.pgp-side-insight-card h3{margin-bottom:13px;font-size:28px}.pgp-side-insight-card dl{display:grid;gap:8px;margin:0}.pgp-side-insight-card dl div{display:flex;justify-content:space-between;gap:12px;padding-top:8px;border-top:1px solid #eef0f4}.pgp-side-insight-card dt{color:var(--pgp-muted);font-size:10px}.pgp-side-insight-card dd{margin:0;font-size:11px;font-weight:750;text-align:right}.pgp-readiness-side-card h3{font-size:18px}.pgp-readiness-side-card p{color:var(--pgp-muted);font-size:11px}.pgp-readiness-side-card a{font-size:11px;font-weight:800;text-decoration:none}.pgp-readiness-mini{position:absolute;right:18px;top:18px;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:conic-gradient(var(--pgp-primary) calc(var(--pgp-readiness)*1%),#e5e7eb 0)}.pgp-readiness-mini:before{content:"";position:absolute;width:46px;height:46px;border-radius:50%;background:#fff}.pgp-readiness-mini strong{position:relative;font-size:11px}
.pgp-upcoming-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.pgp-upcoming-card{padding:18px;border:1px solid #e4e7ec;border-radius:16px;background:#fff;box-shadow:var(--pgp-shadow-sm)}.pgp-upcoming-date{display:flex;align-items:center;gap:6px;color:var(--pgp-primary);font-size:10px;font-weight:750}.pgp-upcoming-date .pgp-icon{width:15px;height:15px}.pgp-upcoming-card h3{margin:12px 0 6px;font-size:16px}.pgp-upcoming-card p{margin:0;color:var(--pgp-muted);font-size:11px}
.pgp-page-hero{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:36px 38px;border:1px solid #ddd6fe;border-radius:24px;background:radial-gradient(circle at 92% 10%,rgba(196,181,253,.45),transparent 32%),linear-gradient(145deg,#fff,#faf9ff);box-shadow:var(--pgp-shadow)}.pgp-page-hero h1{margin-bottom:10px;font-size:clamp(30px,4vw,45px)}.pgp-page-hero p{max-width:670px;margin:0;color:var(--pgp-muted)}.pgp-page-hero-compact{padding:29px 32px}.pgp-page-hero-stat{display:flex;flex-direction:column;min-width:150px;padding:18px;border:1px solid rgba(255,255,255,.8);border-radius:17px;background:rgba(255,255,255,.78);text-align:center}.pgp-page-hero-stat strong{font-size:30px}.pgp-page-hero-stat span{color:var(--pgp-muted);font-size:10px;text-transform:uppercase}.pgp-readiness-orb{position:relative;display:grid;place-items:center;width:150px;height:150px;flex:0 0 auto;border-radius:50%;background:conic-gradient(var(--pgp-primary) calc(var(--pgp-readiness)*1%),#e8eaf2 0);box-shadow:0 15px 36px rgba(79,70,229,.17)}.pgp-readiness-orb:before{content:"";position:absolute;width:118px;height:118px;border-radius:50%;background:#fff}.pgp-readiness-orb>div{position:relative;text-align:center}.pgp-readiness-orb strong{display:block;font-size:30px;line-height:1}.pgp-readiness-orb span{color:var(--pgp-muted);font-size:10px;font-weight:750}
.pgp-trend-chart{overflow:hidden}.pgp-trend-chart svg{display:block;width:100%;height:auto}.pgp-chart-axis{stroke:#e4e7ec;stroke-width:1}.pgp-chart-line{fill:none;stroke:#4f46e5;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.pgp-chart-point{fill:#fff;stroke:#4f46e5;stroke-width:3}.pgp-trend-labels{display:flex;justify-content:space-between;color:#98a2b3;font-size:9px}
.pgp-goals-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end;gap:12px;margin-top:20px;padding-top:20px;border-top:1px solid #eef0f4}.pgp-goals-form label,.pgp-field{display:grid;gap:6px}.pgp-goals-form label>span,.pgp-field>span{color:#344054;font-size:11px;font-weight:750}.pgp-goals-form input,.pgp-field input,.pgp-field select,.pgp-filter-bar select{width:100%;height:44px;padding:0 12px;border:1px solid var(--pgp-border);border-radius:11px;background:#fff;box-shadow:none;color:var(--pgp-ink);font:inherit}.pgp-goals-form input:focus,.pgp-field input:focus,.pgp-field select:focus,.pgp-filter-bar select:focus{outline:0;border-color:#a5b4fc;box-shadow:0 0 0 4px rgba(79,70,229,.1)}.pgp-goals-form .pgp-button{min-height:44px;padding:10px 14px}
.pgp-strength-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.pgp-strength-card{padding:21px;border:1px solid #e4e7ec;border-radius:18px;background:#fff;box-shadow:var(--pgp-shadow-sm)}.pgp-strength-card-icon{display:grid;place-items:center;width:40px;height:40px;margin-bottom:14px;border-radius:12px;background:#f2f4f7;color:#667085}.pgp-strength-card.is-success .pgp-strength-card-icon{background:#ecfdf3;color:#047857}.pgp-strength-card.is-warning .pgp-strength-card-icon{background:#fffbeb;color:#b45309}.pgp-strength-card.is-danger .pgp-strength-card-icon{background:#fef2f2;color:#b91c1c}.pgp-strength-card h3{font-size:17px}.pgp-strength-card>div{display:flex;flex-wrap:wrap;gap:7px}.pgp-strength-card>div span{padding:5px 9px;border-radius:999px;background:#f8fafc;font-size:10px;font-weight:700}.pgp-strength-card p{margin:0;color:var(--pgp-muted);font-size:11px}
.pgp-readiness-breakdown{display:grid;gap:17px}.pgp-readiness-metric>div:first-child{display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px;margin-bottom:7px}.pgp-readiness-metric strong{font-size:12px}.pgp-readiness-metric span{grid-row:2;color:var(--pgp-muted);font-size:9px}.pgp-readiness-metric b{grid-column:2;grid-row:1/3;color:var(--pgp-primary);font-size:13px}
.pgp-filter-bar{display:flex;align-items:end;gap:12px;padding:16px;border:1px solid var(--pgp-border);border-radius:16px;background:#fff;box-shadow:var(--pgp-shadow-sm)}.pgp-filter-bar label{display:grid;gap:5px;min-width:210px}.pgp-filter-bar label>span{font-size:10px;font-weight:750}.pgp-filter-bar .pgp-button{min-height:44px;padding:10px 14px}.pgp-attempts-table .pgp-status-pill.is-in-progress{background:#eef2ff;color:#4338ca}.pgp-attempts-table .pgp-status-pill.is-submitted,.pgp-attempts-table .pgp-status-pill.is-auto-submitted{background:#ecfdf3;color:#047857}.pgp-attempts-table .pgp-status-pill.is-invalidated{background:#fef2f2;color:#b91c1c}.pgp-table-action{text-align:right}.pgp-table-action a{font-size:11px;font-weight:800;text-decoration:none}.pgp-pagination ul{display:flex;justify-content:center;gap:5px;margin:0;padding:0;list-style:none}.pgp-pagination a,.pgp-pagination span{display:grid;place-items:center;min-width:37px;height:37px;padding:0 9px;border:1px solid var(--pgp-border);border-radius:10px;background:#fff;text-decoration:none!important}.pgp-pagination .current{border-color:var(--pgp-primary);background:var(--pgp-primary);color:#fff}
.pgp-profile-header{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:30px 34px;border:1px solid #ddd6fe;border-radius:24px;background:radial-gradient(circle at 90% 0,rgba(196,181,253,.4),transparent 32%),linear-gradient(145deg,#fff,#faf9ff);box-shadow:var(--pgp-shadow)}.pgp-profile-identity{display:flex;align-items:center;gap:19px}.pgp-profile-identity>img{width:96px;height:96px;border:4px solid #fff;border-radius:24px;box-shadow:0 10px 24px rgba(79,70,229,.16)}.pgp-profile-identity h1{margin-bottom:4px;font-size:32px}.pgp-profile-identity p{margin-bottom:8px;color:var(--pgp-muted)}.pgp-account-status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:9px;font-weight:800}.pgp-account-status.is-active{background:#ecfdf3;color:#047857}.pgp-profile-completion{display:grid;grid-template-columns:auto minmax(150px,220px);align-items:center;gap:16px}.pgp-profile-completion-meter{position:relative;display:grid;place-items:center;width:86px;height:86px;flex:0 0 auto;border-radius:50%;background:conic-gradient(var(--pgp-primary) calc(var(--pgp-completion)*1%),#e5e7eb 0);box-shadow:0 8px 22px rgba(79,70,229,.08)}.pgp-profile-completion-meter:before{content:"";position:absolute;inset:9px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px rgba(226,232,240,.7)}.pgp-profile-completion-value{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;text-align:center}.pgp-profile-completion-value strong{display:block;margin:0;color:var(--pgp-ink);font-size:20px;font-weight:900;line-height:.95;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.pgp-profile-completion-value span{display:block;margin:0;color:#7c879a;font-size:7.5px;font-weight:800;line-height:1;letter-spacing:.09em;text-transform:uppercase}.pgp-profile-completion p{margin:0;color:var(--pgp-muted);font-size:11px;line-height:1.6}.pgp-profile-photo-editor{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:18px;padding:16px;border:1px solid #e7e5f1;border-radius:16px;background:#faf9ff}.pgp-profile-photo-preview{width:96px;height:96px;padding:3px;border-radius:24px;background:linear-gradient(135deg,#818cf8,#c084fc);box-shadow:0 10px 24px rgba(79,70,229,.12)}.pgp-profile-photo-preview img{display:block;width:90px;height:90px;border:3px solid #fff;border-radius:20px;object-fit:cover}.pgp-profile-photo-controls{display:grid;justify-items:start;gap:7px;min-width:0}.pgp-profile-photo-controls>strong{font-size:14px}.pgp-profile-photo-controls>p{margin:0;color:var(--pgp-muted);font-size:11px;line-height:1.5}.pgp-profile-photo-picker{display:inline-flex;align-items:center;cursor:pointer}.pgp-profile-photo-picker>span{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid #c4b5fd;border-radius:10px;background:#fff;color:var(--pgp-primary);font-size:12px;font-weight:800}.pgp-profile-photo-picker .pgp-icon{width:16px;height:16px}.pgp-profile-photo-picker input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.pgp-profile-photo-picker:focus-within>span{outline:2px solid #a78bfa;outline-offset:2px}.pgp-profile-photo-remove{display:flex;align-items:center;gap:7px;color:#667085;font-size:10.5px;cursor:pointer}.pgp-profile-photo-remove input{width:16px;height:16px;accent-color:var(--pgp-primary)}.pgp-profile-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px}.pgp-profile-main{display:grid;gap:20px}.pgp-profile-form{display:grid;gap:20px}.pgp-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.pgp-field small{color:var(--pgp-muted);font-size:9px}.pgp-field input[readonly]{background:#f8fafc;color:#667085}.pgp-checkbox-field{display:flex;align-items:flex-start;gap:10px;padding:14px;border:1px solid #e4e7ec;border-radius:13px;background:#fafbff}.pgp-checkbox-field input{width:18px;height:18px;accent-color:var(--pgp-primary)}.pgp-checkbox-field span{display:grid}.pgp-checkbox-field strong{font-size:12px}.pgp-checkbox-field small{color:var(--pgp-muted);font-size:10px}.pgp-profile-sidebar{display:grid;align-content:start;gap:15px}.pgp-profile-side-card{padding:20px;border:1px solid var(--pgp-border);border-radius:18px;background:#fff;box-shadow:var(--pgp-shadow-sm)}.pgp-profile-side-card h3{margin-bottom:8px;font-size:18px}.pgp-profile-side-card p{margin:0;color:var(--pgp-muted);font-size:11px}.pgp-profile-side-card dl{display:grid;gap:10px;margin:0}.pgp-profile-side-card dl div{padding-bottom:9px;border-bottom:1px solid #eef0f4}.pgp-profile-side-card dl div:last-child{padding-bottom:0;border-bottom:0}.pgp-profile-side-card dt{color:var(--pgp-muted);font-size:9px;text-transform:uppercase}.pgp-profile-side-card dd{margin:2px 0 0;font-size:12px;font-weight:750}.pgp-security-card .pgp-button{margin-top:15px}

@media(max-width:1080px){
  .pgp-portal-nav{align-items:flex-start;flex-direction:column}.pgp-portal-nav-links{width:100%;overflow-x:auto;padding-bottom:2px}.pgp-portal-stat-grid,.pgp-tracker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pgp-portal-two-col-wide{grid-template-columns:1fr}.pgp-dashboard-side-stack{grid-template-columns:repeat(2,minmax(0,1fr))}.pgp-goals-form{grid-template-columns:repeat(2,minmax(0,1fr))}.pgp-goals-form .pgp-button{align-self:end}.pgp-profile-layout{grid-template-columns:1fr}.pgp-profile-sidebar{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .pgp-student-portal{gap:18px}.pgp-portal-nav{top:5px;border-radius:14px;padding:9px}.pgp-portal-brand{padding-left:3px}.pgp-portal-nav-links a{padding:8px 9px}.pgp-portal-nav-links a span{display:none}.pgp-portal-nav-links .pgp-icon{width:19px;height:19px}.pgp-portal-hero,.pgp-page-hero,.pgp-profile-header{padding:25px 20px}.pgp-resume-banner{grid-template-columns:auto minmax(0,1fr)}.pgp-resume-banner .pgp-button{grid-column:1/-1;width:100%}.pgp-portal-stat-grid,.pgp-tracker-grid,.pgp-portal-two-col,.pgp-type-performance-grid,.pgp-strength-grid,.pgp-upcoming-grid{grid-template-columns:1fr}.pgp-subject-progress-row{grid-template-columns:1fr}.pgp-subject-progress-metrics{grid-template-columns:1fr 1fr}.pgp-subject-progress-metrics .pgp-strength-pill{grid-column:1/-1;justify-self:start}.pgp-dashboard-side-stack{grid-template-columns:1fr}.pgp-activity-calendar{gap:3px}.pgp-activity-calendar i{height:30px}.pgp-page-hero{align-items:flex-start;flex-direction:column}.pgp-readiness-orb{width:120px;height:120px}.pgp-readiness-orb:before{width:94px;height:94px}.pgp-goals-form{grid-template-columns:1fr}.pgp-filter-bar{align-items:stretch;flex-direction:column}.pgp-filter-bar label{min-width:0}.pgp-profile-header{align-items:flex-start;flex-direction:column}.pgp-profile-completion{width:100%;grid-template-columns:auto 1fr}.pgp-form-grid{grid-template-columns:1fr}.pgp-profile-sidebar{grid-template-columns:1fr}.pgp-profile-identity{align-items:flex-start}.pgp-profile-identity>img{width:78px;height:78px;border-radius:19px}
}
@media(max-width:460px){
  .pgp-portal-stat-grid,.pgp-tracker-grid{grid-template-columns:1fr}.pgp-hero-actions{flex-direction:column}.pgp-hero-actions .pgp-button{width:100%}.pgp-subject-progress-metrics{grid-template-columns:1fr}.pgp-profile-identity{flex-direction:column}.pgp-profile-completion{grid-template-columns:1fr;text-align:center}.pgp-profile-completion>div{margin:auto}.pgp-type-card dl{grid-template-columns:1fr}.pgp-activity-calendar span{display:none}
}
.pgp-compact-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-top:2px}.pgp-compact-section-head h2{margin:0;font-size:24px}.pgp-compact-section-head .pgp-kicker{margin-bottom:4px}
@media(max-width:760px){.pgp-compact-section-head{align-items:flex-start;flex-direction:column}.pgp-compact-section-head h2{font-size:21px}}


/* v0.7.2 — unified frontend page canvas */
.pgp-app.pgp-dashboard:not(.pgp-student-portal),
.pgp-app.pgp-plans-shell,
.pgp-app.pgp-result-app,
.pgp-app.pgp-exam-runner,
.pgp-app.pgp-auth-gate{
  width:100%!important;
  max-width:1180px!important;
  margin:28px auto!important;
  padding-inline:clamp(14px,2vw,24px);
  float:none!important;
  clear:both;
  justify-self:center;
}
.pgp-app.pgp-leaderboard-shell,
.pgp-app.pgp-notices-app,
.pgp-app.pgp-subject-practice,
.pgp-app.pgp-student-portal{
  width:100%!important;
  max-width:1180px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  justify-self:center;
}
@media(max-width:760px){
  .pgp-app.pgp-dashboard:not(.pgp-student-portal),
  .pgp-app.pgp-plans-shell,
  .pgp-app.pgp-result-app,
  .pgp-app.pgp-exam-runner,
  .pgp-app.pgp-auth-gate,
  .pgp-app.pgp-leaderboard-shell,
  .pgp-app.pgp-notices-app,
  .pgp-app.pgp-subject-practice,
  .pgp-app.pgp-student-portal{
    margin-top:18px!important;
    margin-bottom:18px!important;
    padding-left:12px!important;
    padding-right:12px!important;
  }
}

/* v0.7.4 Program Types directory */
.pgp-program-types-app{position:relative;left:50%;display:grid;gap:30px;width:min(1180px,calc(100vw - 32px))!important;width:min(1180px,calc(100dvw - 32px))!important;max-width:none!important;margin:28px 0!important;margin-inline:0!important;justify-self:auto!important;transform:translateX(-50%)}
.pgp-program-directory-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:36px;padding:34px 36px;border:1px solid #e7e5f4;border-radius:24px;background:linear-gradient(135deg,#fff 0%,#f8f7ff 52%,#f1efff 100%);box-shadow:var(--pgp-shadow)}
.pgp-program-directory-hero>div:first-child{max-width:760px}.pgp-program-directory-hero h1{margin-bottom:12px;font-size:clamp(34px,5vw,54px)}.pgp-program-directory-hero p{margin-bottom:0;color:var(--pgp-muted);font-size:16px;line-height:1.75}
.pgp-program-directory-stats{display:grid;grid-template-columns:repeat(3,minmax(92px,1fr));gap:10px;min-width:330px;margin:0}.pgp-program-directory-stats>div{padding:16px;border:1px solid rgba(109,40,217,.12);border-radius:15px;background:rgba(255,255,255,.88);text-align:center}.pgp-program-directory-stats dt{color:var(--pgp-muted);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.pgp-program-directory-stats dd{margin:4px 0 0;color:#4c1d95;font-size:25px;font-weight:850;line-height:1}
.pgp-program-featured{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(330px,.75fr);overflow:hidden;border:2px solid var(--pgp-program-accent,#6d28d9);border-radius:22px;background:#fff;box-shadow:0 18px 48px rgba(76,29,149,.12)}
.pgp-program-featured-main{padding:34px 36px}.pgp-program-featured-resources{display:flex;flex-direction:column;padding:32px;border-left:1px solid #eceaf7;background:linear-gradient(180deg,#fbfaff,#f5f3ff)}
.pgp-program-focus-badge{display:inline-flex;margin-bottom:20px;padding:7px 12px;border-radius:999px;background:#fef3c7;color:#92400e;font-size:12px;font-weight:850}.pgp-program-title-row{display:flex;align-items:flex-start;gap:16px}.pgp-program-title-row h1,.pgp-program-title-row h2{margin:0 0 5px}.pgp-program-title-row h2{font-size:clamp(28px,3.2vw,40px)}
.pgp-program-icon{display:grid;place-items:center;flex:0 0 auto;width:52px;height:52px;border-radius:15px;background:#f5f3ff;background:color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 12%,#fff);color:var(--pgp-program-accent,#6d28d9)}.pgp-program-icon .pgp-icon{width:27px;height:27px}
.pgp-program-availability{display:inline-flex;align-items:center;gap:6px;color:var(--pgp-success);font-size:11px;font-weight:850;letter-spacing:.03em;text-transform:uppercase}.pgp-program-availability:before{content:"";width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px #dcfce7}
.pgp-program-featured-main>p{max-width:760px;margin:20px 0;color:var(--pgp-muted);font-size:15px;line-height:1.75}.pgp-program-authority{display:flex;align-items:center;gap:11px;margin:15px 0;padding:12px 14px;border:1px solid #eceaf7;border-radius:13px;background:#fafaff}.pgp-program-authority .pgp-icon{color:var(--pgp-program-accent,#6d28d9)}.pgp-program-authority span{display:flex;flex-direction:column}.pgp-program-authority small{color:var(--pgp-muted);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.pgp-program-authority strong{font-size:13px}
.pgp-program-featured-audience{margin-top:22px}.pgp-program-featured-audience>strong{display:block;margin-bottom:9px;font-size:12px;letter-spacing:.06em;text-transform:uppercase}.pgp-program-featured-audience ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;margin:0;padding:0;list-style:none}.pgp-program-featured-audience li{display:flex;align-items:flex-start;gap:8px;color:#344054;font-size:13px}.pgp-program-featured-audience .pgp-icon{width:17px;height:17px;margin-top:2px;color:var(--pgp-success)}
.pgp-program-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}.pgp-program-chips span{display:inline-flex;padding:5px 10px;border:1px solid #ddd6fe;border:1px solid color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 20%,#ddd6fe);border-radius:999px;background:#f5f3ff;background:color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 7%,#fff);color:#4c1d95;font-size:11px;font-weight:750}
.pgp-program-resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0 22px}.pgp-program-resource-grid>div{display:flex;align-items:center;gap:10px;padding:14px;border:1px solid #e8e4f7;border-radius:13px;background:#fff}.pgp-program-resource-grid .pgp-icon{width:21px;color:var(--pgp-program-accent,#6d28d9)}.pgp-program-resource-grid span{display:flex;flex-direction:column}.pgp-program-resource-grid strong{font-size:18px;line-height:1.1}.pgp-program-resource-grid small{color:var(--pgp-muted);font-size:10px}.pgp-program-secondary-link{display:block;margin-top:14px;text-align:center;font-size:12px;font-weight:750;text-decoration:none!important}
.pgp-program-group{display:grid;gap:16px}.pgp-program-group-heading,.pgp-program-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.pgp-program-group-heading h2,.pgp-program-section-heading h2{margin:0;font-size:27px}.pgp-program-group-heading>span,.pgp-program-section-heading>span{color:var(--pgp-muted);font-size:12px;font-weight:750}
.pgp-program-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pgp-program-card{display:flex;flex-direction:column;min-width:0;padding:24px;border:1px solid #eceaf7;border-radius:18px;background:#fff;box-shadow:0 4px 18px rgba(76,29,149,.055);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.pgp-program-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 32%,#eceaf7);box-shadow:0 14px 32px rgba(76,29,149,.1)}.pgp-program-card header{display:flex;align-items:center;justify-content:space-between;gap:12px}.pgp-program-card h3{margin:18px 0 9px;font-size:21px}.pgp-program-card>p{flex:1;margin-bottom:15px;color:var(--pgp-muted);font-size:13px;line-height:1.7}.pgp-program-card-authority{display:flex;flex-direction:column;margin:0 0 4px;padding:11px 12px;border-left:3px solid var(--pgp-program-accent,#6d28d9);background:#fafaff}.pgp-program-card-authority small{color:var(--pgp-muted);font-size:9px;font-weight:800;text-transform:uppercase}.pgp-program-card-authority strong{font-size:12px}.pgp-program-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:18px 0}.pgp-program-card dl>div{padding:10px;border-radius:11px;background:#f8f7fc;text-align:center}.pgp-program-card dt{color:var(--pgp-muted);font-size:9px;font-weight:800;text-transform:uppercase}.pgp-program-card dd{margin:3px 0 0;font-size:17px;font-weight:850}.pgp-program-card-link{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:15px;border-top:1px solid #f0eef8;font-weight:800;text-decoration:none!important}.pgp-program-card-link .pgp-icon{width:18px}
.pgp-program-empty,.pgp-program-inline-empty{padding:38px;border:1px dashed #d9d6e8;border-radius:18px;background:#fafaff;text-align:center}.pgp-program-empty>span{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 15px;border-radius:16px;background:#ede9fe;color:#6d28d9}.pgp-program-empty h2{margin-bottom:8px}.pgp-program-empty p,.pgp-program-inline-empty{color:var(--pgp-muted)}
.pgp-program-back{display:inline-flex;align-items:center;width:max-content;font-weight:750;text-decoration:none!important}.pgp-program-detail-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);gap:24px;padding:34px;border:1px solid #ddd6fe;border:1px solid color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 22%,#eceaf7);border-radius:22px;background:linear-gradient(135deg,#fff,#faf8ff);box-shadow:var(--pgp-shadow)}.pgp-program-detail-copy>p{margin:20px 0;color:var(--pgp-muted);font-size:15px;line-height:1.75}.pgp-program-detail-actions{display:flex;flex-direction:column;justify-content:center;padding:22px;border:1px solid #ebe8f7;border-radius:18px;background:#fff}.pgp-program-detail-actions dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0 0}.pgp-program-detail-actions dl>div{padding:11px 7px;border-radius:11px;background:#f8f7fc;text-align:center}.pgp-program-detail-actions dt{color:var(--pgp-muted);font-size:9px;font-weight:800;text-transform:uppercase}.pgp-program-detail-actions dd{margin:3px 0 0;font-size:18px;font-weight:850}
.pgp-program-overview-panel,.pgp-program-audience-panel{display:grid;grid-template-columns:minmax(240px,.45fr) minmax(0,1fr);gap:28px;padding:28px;border:1px solid #eceaf7;border-radius:19px;background:#fff}.pgp-program-overview-panel h2,.pgp-program-audience-panel h2{margin:0}.pgp-program-overview-content{color:#475467;line-height:1.8}.pgp-program-overview-content>:last-child{margin-bottom:0}.pgp-program-audience-panel ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none}.pgp-program-audience-panel li{display:flex;gap:9px;padding:12px;border-radius:12px;background:#f8faff}.pgp-program-audience-panel .pgp-icon{width:18px;color:var(--pgp-success)}
.pgp-program-detail-section{display:grid;gap:16px}.pgp-program-subject-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pgp-program-subject-card{display:flex;align-items:center;gap:13px;padding:16px;border:1px solid #eceaf7;border-radius:15px;background:#fff;color:var(--pgp-ink)!important;text-decoration:none!important}.pgp-program-subject-card:hover{border-color:#c4b5fd;background:#fafaff}.pgp-program-subject-initial{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;border-radius:12px;background:var(--pgp-program-accent,#6d28d9);color:#fff;font-weight:850}.pgp-program-subject-card>div{display:flex;flex:1;min-width:0;flex-direction:column}.pgp-program-subject-card strong{overflow-wrap:anywhere}.pgp-program-subject-card small{color:var(--pgp-muted);font-size:11px}.pgp-program-subject-card>.pgp-icon{width:17px;color:var(--pgp-program-accent,#6d28d9)}
.pgp-program-exam-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.pgp-program-exam-card{display:flex;flex-direction:column;padding:20px;border:1px solid #eceaf7;border-radius:16px;background:#fff}.pgp-program-exam-card>div{display:flex;justify-content:space-between;gap:8px}.pgp-program-exam-card>div span{padding:4px 8px;border-radius:999px;background:#f2f4f7;color:#475467;font-size:9px;font-weight:800;text-transform:uppercase}.pgp-program-exam-card h3{flex:1;margin:16px 0 12px;font-size:17px}.pgp-program-exam-card p{display:flex;align-items:center;gap:7px;color:var(--pgp-muted);font-size:12px}.pgp-program-exam-card p .pgp-icon{width:17px}.pgp-program-exam-card .pgp-button{margin-top:8px}
@media(max-width:980px){.pgp-program-directory-hero{align-items:stretch;flex-direction:column}.pgp-program-directory-stats{min-width:0}.pgp-program-featured,.pgp-program-detail-hero{grid-template-columns:1fr}.pgp-program-featured-resources{border-top:1px solid #eceaf7;border-left:0}.pgp-program-exam-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pgp-program-overview-panel,.pgp-program-audience-panel{grid-template-columns:1fr}}
@media(max-width:680px){.pgp-program-types-app{width:calc(100vw - 20px)!important;width:calc(100dvw - 20px)!important;margin:18px 0!important}.pgp-program-directory-hero,.pgp-program-featured-main,.pgp-program-featured-resources,.pgp-program-detail-hero{padding:22px}.pgp-program-directory-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.pgp-program-card-grid,.pgp-program-subject-grid,.pgp-program-exam-grid{grid-template-columns:1fr}.pgp-program-featured-audience ul,.pgp-program-audience-panel ul{grid-template-columns:1fr}.pgp-program-group-heading,.pgp-program-section-heading{align-items:flex-start;flex-direction:column;gap:5px}.pgp-program-title-row{align-items:center}.pgp-program-resource-grid{grid-template-columns:1fr 1fr}}
@media(max-width:430px){.pgp-program-directory-stats{grid-template-columns:1fr}.pgp-program-detail-actions dl,.pgp-program-card dl{grid-template-columns:1fr 1fr}.pgp-program-resource-grid{grid-template-columns:1fr}}

/* v0.8.0 Exam Pattern & Syllabus directory */
.pgp-exam-guide-app{display:grid;gap:24px;width:100%;max-width:1180px!important;margin:28px auto!important;padding:0 clamp(14px,2vw,24px);float:none!important;clear:both;box-sizing:border-box}
.pgp-exam-guide-app *{box-sizing:border-box}
.pgp-exam-guide-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);align-items:end;gap:30px;padding:clamp(28px,4vw,46px);overflow:hidden;border:1px solid #ddd6fe;border-radius:25px;background:radial-gradient(circle at 92% 110%,rgba(124,58,237,.15) 0 22%,transparent 22.5%),linear-gradient(135deg,#fff 0%,#faf9ff 52%,#f3f0ff 100%);box-shadow:0 18px 48px rgba(76,29,149,.09)}
.pgp-exam-guide-hero-copy h1{max-width:720px;margin:9px 0 14px;color:#0f172a;font-family:Poppins,Inter,sans-serif;font-size:clamp(34px,5vw,58px);font-weight:750;letter-spacing:-.045em;line-height:1.04}
.pgp-exam-guide-hero-copy p{max-width:720px;margin:0;color:#667085;font-size:clamp(14px,1.7vw,17px);line-height:1.75}
.pgp-exam-guide-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:0}
.pgp-exam-guide-stats>div{padding:17px 13px;border:1px solid #e7e3f5;border-radius:16px;background:rgba(255,255,255,.85);text-align:center;box-shadow:0 7px 22px rgba(76,29,149,.045)}
.pgp-exam-guide-stats dt{color:#667085;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.pgp-exam-guide-stats dd{margin:5px 0 0;color:#5b21b6;font-size:28px;font-weight:850;line-height:1}
.pgp-exam-guide-note{display:flex;align-items:flex-start;gap:15px;padding:18px 20px;border:1px solid #ddd6fe;border-radius:17px;background:#faf9ff;color:#344054}
.pgp-exam-guide-note>.pgp-icon{flex:0 0 auto;width:23px;height:23px;color:#6d28d9}
.pgp-exam-guide-note strong{display:block;margin-bottom:6px;color:#1e1b4b;font-size:14px}
.pgp-exam-guide-note p{margin:0;color:#667085;font-size:12px;line-height:1.7}
.pgp-guide-status{display:inline-flex;align-items:center;justify-content:center;padding:5px 9px;border-radius:999px;font-size:9px;font-weight:850;letter-spacing:.045em;text-transform:uppercase;white-space:nowrap}
.pgp-guide-status.is-verified{background:#dcfce7;color:#047857}
.pgp-guide-status.is-unconfirmed{background:#fef3c7;color:#92400e}
.pgp-exam-guide-note .pgp-guide-status{margin:0 4px}
.pgp-exam-guide-filters{display:grid;grid-template-columns:minmax(220px,1.35fr) minmax(180px,.8fr) minmax(170px,.75fr) auto;align-items:end;gap:13px;padding:17px;border:1px solid #e7e3f1;border-radius:18px;background:#fff;box-shadow:0 8px 26px rgba(15,23,42,.055)}
.pgp-exam-guide-filters label{display:grid;gap:7px;min-width:0}
.pgp-exam-guide-filters label>span{color:#475467;font-size:10px;font-weight:800;letter-spacing:.055em;text-transform:uppercase}
.pgp-exam-guide-filters input,.pgp-exam-guide-filters select{width:100%;min-height:44px;margin:0;padding:9px 12px;border:1px solid #d8dce5;border-radius:11px;background:#fff;color:#101828;font:inherit;font-size:13px;box-shadow:none}
.pgp-exam-guide-filters input:focus,.pgp-exam-guide-filters select:focus{border-color:#8b5cf6;outline:3px solid rgba(139,92,246,.12)}
.pgp-exam-guide-filters button{min-height:44px;padding:10px 17px;border:0;border-radius:11px;background:linear-gradient(135deg,#7c3aed,#5b21b6);color:#fff;font:inherit;font-size:12px;font-weight:800;cursor:pointer;white-space:nowrap}
.pgp-exam-guide-directory{display:grid;gap:28px}
.pgp-exam-guide-group{display:grid;gap:15px}
.pgp-exam-guide-group>header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:0 3px}
.pgp-exam-guide-group>header h2{margin:4px 0 0;color:#0f172a;font-family:Poppins,Inter,sans-serif;font-size:clamp(21px,2.5vw,29px);line-height:1.25}
.pgp-exam-guide-group>header>span{color:#667085;font-size:11px;font-weight:750;white-space:nowrap}
.pgp-exam-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.pgp-exam-guide-card{display:flex;flex-direction:column;min-width:0;padding:22px;border:1px solid #e8e5f1;border-radius:18px;background:#fff;box-shadow:0 5px 20px rgba(76,29,149,.055);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.pgp-exam-guide-card:hover{transform:translateY(-2px);border-color:#c4b5fd;box-shadow:0 15px 34px rgba(76,29,149,.1)}
.pgp-exam-guide-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.pgp-exam-guide-card>header small{overflow:hidden;color:#7c3aed;font-size:10px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}
.pgp-exam-guide-card h3{margin:17px 0 8px;font-family:Poppins,Inter,sans-serif;font-size:19px;line-height:1.35}
.pgp-exam-guide-card h3 a{color:#101828;text-decoration:none!important}
.pgp-exam-guide-card>p{flex:1;margin:0 0 15px;color:#667085;font-size:12px;line-height:1.7}
.pgp-exam-guide-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:15px 0}
.pgp-exam-guide-card dl>div{display:flex;align-items:center;gap:10px;min-width:0;padding:11px;border-radius:12px;background:#f8f7fc}
.pgp-exam-guide-card dl .pgp-icon{flex:0 0 auto;width:19px;color:#7c3aed}
.pgp-exam-guide-card dl span{min-width:0}
.pgp-exam-guide-card dt{color:#667085;font-size:9px;font-weight:800;letter-spacing:.045em;text-transform:uppercase}
.pgp-exam-guide-card dd{margin:2px 0 0;overflow-wrap:anywhere;color:#1d2939;font-size:12px;font-weight:750}
.pgp-exam-guide-card-link{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:14px;border-top:1px solid #f0eef7;color:#6d28d9!important;font-size:12px;font-weight:800;text-decoration:none!important}
.pgp-exam-guide-card-link .pgp-icon{width:17px}
.pgp-exam-guide-empty{padding:48px 22px;border:1px dashed #d8d3e7;border-radius:20px;background:#fafaff;text-align:center}
.pgp-exam-guide-empty>span{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 16px;border-radius:17px;background:#ede9fe;color:#6d28d9}
.pgp-exam-guide-empty>span .pgp-icon{width:26px}
.pgp-exam-guide-empty h2{margin:0 0 8px;color:#101828;font-size:24px}
.pgp-exam-guide-empty p{max-width:560px;margin:0 auto 16px;color:#667085;font-size:13px;line-height:1.65}
.pgp-exam-guide-empty a{color:#6d28d9;font-size:12px;font-weight:800;text-decoration:none!important}
.pgp-exam-guide-pagination .page-numbers{display:flex;justify-content:center;gap:7px;margin:0;padding:0;list-style:none}
.pgp-exam-guide-pagination a,.pgp-exam-guide-pagination span{display:grid;place-items:center;min-width:36px;height:36px;padding:0 10px;border:1px solid #e5e1ef;border-radius:10px;background:#fff;color:#475467;text-decoration:none!important}
.pgp-exam-guide-pagination .current{border-color:#6d28d9;background:#6d28d9;color:#fff}
.pgp-exam-guide-detail-app{gap:18px;margin-top:0!important;padding-top:30px!important;scroll-margin-top:96px}
.pgp-exam-guide-back{position:relative;z-index:2;display:inline-flex;align-items:center;gap:7px;width:max-content;margin:0 0 2px;padding:9px 12px;border:1px solid #e4def3;border-radius:11px;background:#fff;color:#6d28d9!important;font-size:12px;font-weight:800;line-height:1.2;text-decoration:none!important;box-shadow:0 6px 18px rgba(76,29,149,.07);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.pgp-exam-guide-back:hover{transform:translateY(-1px);border-color:#c4b5fd;box-shadow:0 10px 24px rgba(76,29,149,.11)}
.pgp-exam-guide-detail{padding:clamp(24px,4vw,42px);border:1px solid #e2def0;border-radius:24px;background:#fff;box-shadow:0 16px 42px rgba(76,29,149,.08)}
.pgp-exam-guide-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:22px}
.pgp-exam-guide-section-label{display:inline-flex;margin-bottom:9px;padding:5px 10px;border-radius:999px;background:#ede9fe;color:#5b21b6;font-size:9px;font-weight:850;letter-spacing:.045em;text-transform:uppercase}
.pgp-exam-guide-detail-header h1{margin:0;color:#101828;font-family:Poppins,Inter,sans-serif;font-size:clamp(29px,4vw,43px);letter-spacing:-.03em;line-height:1.14}
.pgp-exam-guide-detail-header p{margin:8px 0 0;color:#667085;font-size:12px}
.pgp-exam-guide-summary{max-width:830px;margin:24px 0 0;color:#475467;font-size:15px;line-height:1.75}
.pgp-exam-guide-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:28px 0}
.pgp-exam-guide-facts>div{padding:16px;border:1px solid #ebe8f3;border-radius:14px;background:linear-gradient(145deg,#fff,#faf9ff);text-align:center}
.pgp-exam-guide-facts dt{color:#667085;font-size:9px;font-weight:800;letter-spacing:.055em;text-transform:uppercase}
.pgp-exam-guide-facts dd{margin:6px 0 0;color:#101828;font-size:14px;font-weight:800;overflow-wrap:anywhere}
.pgp-exam-guide-detail-sections{display:grid;gap:13px}
.pgp-exam-guide-detail-sections>section{display:grid;grid-template-columns:auto minmax(0,1fr);gap:15px;padding:18px;border:1px solid #eceaf5;border-radius:16px;background:#fcfcff}
.pgp-exam-guide-detail-sections>section>span{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#ede9fe;color:#6d28d9}
.pgp-exam-guide-detail-sections>section>span .pgp-icon{width:20px}
.pgp-exam-guide-detail-sections h2{margin:0 0 7px;color:#1d2939;font-size:15px}
.pgp-exam-guide-detail-sections p{margin:0;color:#667085;font-size:13px;line-height:1.75}
.pgp-exam-guide-sources{display:grid;gap:6px;margin:0;padding-left:18px}
.pgp-exam-guide-sources li{color:#667085;font-size:12px}
.pgp-exam-guide-sources a{color:#6d28d9;font-weight:700;text-decoration:none!important}
.pgp-exam-guide-program-link{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px;padding:18px 20px;border:1px solid #ddd6fe;border-radius:16px;background:linear-gradient(135deg,#faf9ff,#f5f3ff)}
.pgp-exam-guide-program-link>div{display:flex;flex-direction:column;gap:4px}.pgp-exam-guide-program-link strong{font-size:16px}.pgp-exam-guide-program-link>a{color:#6d28d9!important;font-size:12px;font-weight:800;text-decoration:none!important;white-space:nowrap}
@media(max-width:900px){.pgp-exam-guide-hero{grid-template-columns:1fr}.pgp-exam-guide-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.pgp-exam-guide-filters button{width:100%}.pgp-exam-guide-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.pgp-exam-guide-app{margin:18px auto!important;padding:0 10px}.pgp-exam-guide-detail-app{margin-top:0!important;padding-top:20px!important}.pgp-exam-guide-hero{padding:24px 20px;border-radius:20px}.pgp-exam-guide-stats{grid-template-columns:1fr}.pgp-exam-guide-filters,.pgp-exam-guide-grid{grid-template-columns:1fr}.pgp-exam-guide-group>header,.pgp-exam-guide-detail-header,.pgp-exam-guide-program-link{align-items:flex-start;flex-direction:column}.pgp-exam-guide-card dl{grid-template-columns:1fr}.pgp-exam-guide-detail{padding:22px 18px;border-radius:19px}.pgp-exam-guide-facts{grid-template-columns:1fr 1fr}.pgp-exam-guide-detail-sections>section{grid-template-columns:1fr}.pgp-exam-guide-program-link>a{white-space:normal}}
@media(max-width:390px){.pgp-exam-guide-facts{grid-template-columns:1fr}.pgp-exam-guide-note{flex-direction:column}}

/* v0.8.2 — connected exam directory and polished exam overview */
.pgp-exams-directory{display:grid;gap:26px}
.pgp-exams-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);align-items:center;gap:34px;overflow:hidden;padding:clamp(30px,4vw,48px);border:1px solid #ddd6fe;border-radius:26px;background:radial-gradient(circle at 92% 16%,rgba(139,92,246,.18),transparent 32%),linear-gradient(135deg,#fff 0%,#f8f7ff 54%,#f2efff 100%);box-shadow:0 18px 48px rgba(76,29,149,.09)}
.pgp-exams-hero:after{content:"";position:absolute;right:-95px;bottom:-115px;width:250px;height:250px;border:42px solid rgba(109,40,217,.055);border-radius:50%}
.pgp-exams-hero-copy,.pgp-exams-hero-stats{position:relative;z-index:1}
.pgp-exams-hero h1{max-width:720px;margin:0 0 14px;font-size:clamp(34px,4.6vw,56px);font-weight:850;letter-spacing:-.048em}
.pgp-exams-hero p{max-width:720px;margin:0;color:#667085;font-size:16px;line-height:1.75}
.pgp-exams-hero-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pgp-exams-hero-stats>div{display:flex;flex-direction:column;min-height:108px;padding:18px;border:1px solid rgba(221,214,254,.9);border-radius:16px;background:rgba(255,255,255,.86);box-shadow:0 8px 24px rgba(76,29,149,.055);backdrop-filter:blur(10px)}
.pgp-exams-hero-stats span{color:#667085;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.pgp-exams-hero-stats strong{margin-top:auto;color:#5b21b6;font-size:30px;font-weight:880;line-height:1}
.pgp-exam-directory-filters{display:grid;grid-template-columns:minmax(220px,1.35fr) repeat(4,minmax(145px,.72fr));align-items:end;gap:12px;padding:16px;border:1px solid #e5e2ef;border-radius:18px;background:#fff;box-shadow:0 8px 26px rgba(15,23,42,.05)}
.pgp-exam-directory-filters label{display:grid;gap:7px;min-width:0}
.pgp-exam-directory-filters label>span{color:#475467;font-size:10px;font-weight:800;letter-spacing:.055em;text-transform:uppercase}
.pgp-exam-directory-filters input,.pgp-exam-directory-filters select{width:100%;min-height:44px;margin:0;padding:9px 12px;border:1px solid #d8dce5;border-radius:11px;background:#fff;color:#101828;font:inherit;font-size:13px;box-shadow:none}
.pgp-exam-directory-filters input:focus,.pgp-exam-directory-filters select:focus{border-color:#8b5cf6;outline:3px solid rgba(139,92,246,.12)}
.pgp-exam-filter-actions{grid-column:1/-1;display:flex;align-items:center;justify-content:flex-end;gap:12px;padding-top:3px}
.pgp-exam-filter-actions .pgp-button{min-height:42px;padding:9px 16px;font-size:12px}
.pgp-exam-filter-actions>a{font-size:12px;font-weight:800;text-decoration:none!important}
.pgp-exam-directory-section{display:grid;gap:16px}
.pgp-exam-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.pgp-exam-directory-card{position:relative;display:flex;flex-direction:column;min-width:0;min-height:390px;overflow:hidden;padding:22px;border:1px solid #e5e2ef;border-radius:20px;background:#fff;box-shadow:0 5px 20px rgba(76,29,149,.055);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.pgp-exam-directory-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#7c3aed,#4f46e5)}
.pgp-exam-directory-card.is-scheduled:before{background:linear-gradient(90deg,#f59e0b,#f97316)}
.pgp-exam-directory-card.is-ended:before{background:linear-gradient(90deg,#94a3b8,#64748b)}
.pgp-exam-directory-card:hover{transform:translateY(-3px);border-color:#c4b5fd;box-shadow:0 16px 36px rgba(76,29,149,.1)}
.pgp-exam-directory-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}
.pgp-exam-format,.pgp-exam-state{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#ede9fe;color:#5b21b6;font-size:9px;font-weight:850;letter-spacing:.025em}.pgp-exam-format{max-width:100%;white-space:normal;line-height:1.2;text-align:center}
.pgp-exam-state.is-running{gap:7px;border:1px solid #fecaca;background:#fef2f2;color:#b91c1c}.pgp-exam-state.is-running:before{content:"";width:7px;height:7px;flex:0 0 auto;border-radius:999px;background:#ef4444;box-shadow:0 0 0 0 rgba(239,68,68,.38);animation:pgp-live-pulse 1.65s ease-out infinite}.pgp-exam-state.is-scheduled{background:#ffedd5;color:#c2410c}.pgp-exam-state.is-ended{background:#f1f5f9;color:#475569}
.pgp-exam-directory-program{display:flex;align-items:center;gap:8px;margin-bottom:9px;color:#7c3aed;font-size:11px;font-weight:800;text-transform:uppercase}
.pgp-exam-directory-program .pgp-icon{width:17px;height:17px}
.pgp-exam-directory-card h3{margin:0 0 14px;font-size:21px;font-weight:830;line-height:1.35}
.pgp-exam-section-chips{display:flex;flex-wrap:wrap;gap:7px;min-height:29px;margin-bottom:18px}
.pgp-exam-section-chips span{display:inline-flex;padding:5px 8px;border-radius:8px;background:#f5f3ff;color:#5b21b6;font-size:10px;font-weight:750}
.pgp-exam-directory-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:15px}
.pgp-exam-directory-facts>span{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 7px;padding:11px;border-radius:12px;background:#f8f7fc}
.pgp-exam-directory-facts .pgp-icon{grid-row:1/3;width:18px;color:#7c3aed}
.pgp-exam-directory-facts b{color:#1d2939;font-size:13px;line-height:1.15}.pgp-exam-directory-facts small{color:#7b8498;font-size:9px}
.pgp-exam-schedule{display:flex;align-items:center;gap:10px;margin:0 0 15px;padding:11px 12px;border-radius:12px;background:#fff7ed;color:#9a3412}
.pgp-exam-schedule .pgp-icon{width:18px}.pgp-exam-schedule span{display:flex;flex-direction:column;font-size:11px;font-weight:750}.pgp-exam-schedule small{color:#c2410c;font-size:9px;font-weight:800;text-transform:uppercase}
.pgp-exam-directory-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:15px;border-top:1px solid #f0eef7}
.pgp-access-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:8px;background:#ecfdf3;color:#047857;font-size:9px;font-weight:850;text-transform:uppercase}.pgp-access-badge.is-subscription{background:#fff7ed;color:#b45309}.pgp-access-badge .pgp-icon{width:14px;height:14px}
.pgp-exam-directory-card-footer>a{display:inline-flex;align-items:center;gap:6px;color:#6d28d9!important;font-size:12px;font-weight:850;text-decoration:none!important}.pgp-exam-directory-card-footer>a .pgp-icon{width:16px}.pgp-exam-directory-card-footer>a.is-muted{color:#667085!important}

.pgp-exam-loading{min-height:330px;border:1px solid #e5e2ef;border-radius:22px;background:#fff}
.pgp-exam-overview{display:grid;gap:22px;max-width:100%;margin:0 auto!important;padding:0!important;overflow:visible!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.pgp-exam-overview:before{display:none!important}
.pgp-exam-overview-back{display:inline-flex;align-items:center;gap:7px;width:max-content;padding:9px 12px;border:1px solid #e4def3;border-radius:11px;background:#fff;color:#6d28d9!important;font-size:12px;font-weight:800;text-decoration:none!important;box-shadow:0 6px 18px rgba(76,29,149,.06)}
.pgp-exam-overview-back .pgp-icon{width:17px}
.pgp-exam-overview-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:28px;padding:clamp(28px,4vw,44px);border:1px solid #ddd6fe;border-radius:25px;background:radial-gradient(circle at 94% 0%,rgba(139,92,246,.15),transparent 33%),linear-gradient(135deg,#fff,#f7f5ff);box-shadow:0 16px 42px rgba(76,29,149,.08)}
.pgp-exam-overview-title{min-width:0}.pgp-exam-overview-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.pgp-exam-overview-state{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:#f1f5f9;color:#475569;font-size:10px;font-weight:850;text-transform:uppercase}.pgp-exam-overview-state.is-running{gap:7px;border:1px solid #fecaca;background:#fef2f2;color:#b91c1c}.pgp-exam-overview-state.is-running:before{content:"";width:7px;height:7px;flex:0 0 auto;border-radius:999px;background:#ef4444;box-shadow:0 0 0 0 rgba(239,68,68,.38);animation:pgp-live-pulse 1.65s ease-out infinite}.pgp-exam-overview-state.is-scheduled{background:#ffedd5;color:#c2410c}.pgp-exam-overview-state.is-ended{background:#f1f5f9;color:#475569}
.pgp-exam-overview-program{display:flex;align-items:center;gap:8px;margin-bottom:9px;color:#7c3aed;font-size:11px;font-weight:800;text-transform:uppercase}.pgp-exam-overview-program .pgp-icon{width:18px}
.pgp-exam-overview h1{margin:0 0 12px;font-size:clamp(32px,4vw,52px)!important;font-weight:860;letter-spacing:-.045em}.pgp-exam-overview-title>p{max-width:720px;margin:0;color:#667085;font-size:15px}
.pgp-exam-overview-access{display:flex;flex-direction:column;min-width:170px;padding:18px;border:1px solid #d1fae5;border-radius:16px;background:#ecfdf3;color:#047857}.pgp-exam-overview-access.is-subscription{border-color:#fed7aa;background:#fff7ed;color:#b45309}.pgp-exam-overview-access .pgp-icon{width:22px;margin-bottom:11px}.pgp-exam-overview-access span{font-size:9px;font-weight:850;text-transform:uppercase}.pgp-exam-overview-access strong{font-size:16px}
.pgp-exam-overview-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.pgp-exam-overview-facts>div{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:3px 10px;padding:17px;border:1px solid #e8e5f1;border-radius:15px;background:#fff;box-shadow:0 5px 18px rgba(15,23,42,.04)}
.pgp-exam-overview-facts .pgp-icon{grid-row:1/3;width:22px;color:#7c3aed}.pgp-exam-overview-facts span{color:#667085;font-size:9px;font-weight:800;text-transform:uppercase}.pgp-exam-overview-facts strong{color:#101828;font-size:16px}
.pgp-exam-overview-sections{display:flex;flex-wrap:wrap;gap:9px;padding:15px 17px;border:1px solid #e5e2ef;border-radius:15px;background:#faf9ff}.pgp-exam-overview-sections span{display:inline-flex;align-items:center;gap:4px;padding:7px 10px;border-radius:9px;background:#fff;color:#5b21b6;font-size:11px}.pgp-exam-overview-sections strong{font-size:13px}
.pgp-exam-overview-instructions{padding:21px;border:1px solid #e5e2ef;border-radius:17px;background:#fff}.pgp-exam-overview-instructions>span{display:block;margin-bottom:8px;color:#475467;font-size:10px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.pgp-exam-overview-instructions>div{color:#475467;font-size:14px;line-height:1.75}.pgp-exam-overview-instructions>div>:last-child{margin-bottom:0}
.pgp-exam-readiness{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:26px;padding:24px;border:1px solid #ddd6fe;border-radius:18px;background:linear-gradient(135deg,#faf9ff,#f5f3ff)}
.pgp-exam-readiness h2{margin:0;font-size:22px}.pgp-exam-readiness ul{display:grid;gap:9px;margin:0;padding:0;list-style:none}.pgp-exam-readiness li{display:flex;align-items:flex-start;gap:9px;color:#475467;font-size:13px}.pgp-exam-readiness li .pgp-icon{width:17px;margin-top:2px;color:#059669}
.pgp-exam-start-wrap{padding:20px;border:1px solid #d8d3f2;border-radius:17px;background:#fff;box-shadow:0 8px 24px rgba(76,29,149,.06)}.pgp-exam-start-wrap>div{display:flex;flex-direction:column;gap:2px}.pgp-exam-start-wrap strong{color:#344054;font-size:14px}.pgp-exam-start-wrap small{max-width:none}.pgp-exam-unavailable{margin:0}
.pgp-exam-error-state{display:flex;min-height:420px;flex-direction:column;align-items:center;justify-content:center;padding:38px;border:1px solid #fecaca;border-radius:22px;background:#fff;text-align:center}.pgp-exam-error-state>span{display:grid;place-items:center;width:58px;height:58px;margin-bottom:16px;border-radius:17px;background:#fef2f2;color:#dc2626}.pgp-exam-error-state>span .pgp-icon{width:27px}.pgp-exam-error-state h2{margin:0 0 8px}.pgp-exam-error-state p{max-width:560px;margin:0 0 20px;color:#667085}

@media(max-width:1050px){
  .pgp-exams-hero{grid-template-columns:1fr}.pgp-exam-directory-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.pgp-exam-search{grid-column:span 2}.pgp-exam-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .pgp-exams-directory{padding:0 10px}.pgp-exams-hero{padding:26px 21px;border-radius:21px}.pgp-exams-hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.pgp-exam-directory-filters{grid-template-columns:1fr 1fr}.pgp-exam-search{grid-column:1/-1}.pgp-exam-directory-grid{grid-template-columns:1fr}.pgp-exam-overview{padding:0 10px!important}.pgp-exam-overview-head{grid-template-columns:1fr;padding:24px 20px;border-radius:21px}.pgp-exam-overview-access{min-width:0}.pgp-exam-overview-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pgp-exam-readiness{grid-template-columns:1fr}.pgp-exam-start-wrap{align-items:stretch!important;flex-direction:column!important}.pgp-exam-start-wrap .pgp-button{width:100%}
}
@media(max-width:480px){
  .pgp-exams-hero-stats{grid-template-columns:1fr 1fr}.pgp-exams-hero-stats>div{min-height:90px;padding:14px}.pgp-exam-directory-filters{grid-template-columns:1fr}.pgp-exam-filter-actions{align-items:stretch;flex-direction:column}.pgp-exam-filter-actions .pgp-button{width:100%}.pgp-exam-directory-facts{grid-template-columns:1fr}.pgp-exam-directory-card-footer{align-items:flex-start;flex-direction:column}.pgp-exam-overview-facts{grid-template-columns:1fr}.pgp-exam-overview-sections{flex-direction:column}.pgp-exam-overview-sections span{width:100%}
}

/* v0.8.5 — unified account access */
.pgp-auth-shell-unified .pgp-auth-card{justify-content:flex-start;overflow:auto}
.pgp-auth-shell-unified .pgp-auth-heading{margin-bottom:20px}
.pgp-auth-tabs-dedicated{max-width:none}
.pgp-auth-dedicated-panel{padding-top:4px}
.pgp-auth-panel-copy{margin:0 0 20px;padding:0 0 16px;border-bottom:1px solid #eef0f4}
.pgp-auth-panel-copy h3{margin:0 0 5px;font-size:21px}
.pgp-auth-panel-copy p{margin:0;color:var(--pgp-muted);font-size:13px;line-height:1.55}
.pgp-auth-registration-disabled{display:flex;align-items:flex-start;gap:10px;margin:0 0 20px;padding:13px 14px;border:1px solid #fde68a;border-radius:12px;background:#fffbeb;color:#92400e;font-size:13px}
.pgp-auth-registration-disabled .pgp-icon{width:18px;margin-top:1px}
.pgp-auth-shell-unified .pgp-auth-redirect-note{margin-top:20px}
.pgp-auth-signed-in{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;padding:28px;border:1px solid #ddd6fe;border-radius:22px;background:linear-gradient(135deg,#fff,#f5f3ff);box-shadow:var(--pgp-shadow)}
.pgp-auth-signed-in-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:var(--pgp-success-soft);color:var(--pgp-success)}
.pgp-auth-signed-in-icon .pgp-icon{width:25px;height:25px}
.pgp-auth-signed-in h2{margin:2px 0 6px;font-size:27px}
.pgp-auth-signed-in p{margin:0;color:var(--pgp-muted)}
.pgp-auth-signed-in-actions{display:flex;align-items:center;gap:10px}
@media(max-width:760px){
  .pgp-auth-signed-in{grid-template-columns:1fr;text-align:center}
  .pgp-auth-signed-in-icon{margin-inline:auto}
  .pgp-auth-signed-in-actions{align-items:stretch;flex-direction:column}
  .pgp-auth-shell-unified .pgp-auth-card{overflow:visible}
}
.pgp-auth-gate-linked-body{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px;border:1px solid var(--pgp-border);border-radius:18px;background:#fff}
.pgp-auth-gate-linked-body h3{margin:0 0 6px;font-size:21px}
.pgp-auth-gate-linked-body p{max-width:650px;margin:0;color:var(--pgp-muted)}
.pgp-auth-gate-linked-actions{display:flex;align-items:center;gap:10px;flex:0 0 auto}
@media(max-width:760px){.pgp-auth-gate-linked-body{align-items:stretch;flex-direction:column}.pgp-auth-gate-linked-actions{align-items:stretch;flex-direction:column}.pgp-auth-gate-linked-actions .pgp-button{width:100%}}

/* v0.9.0 Program Type subscription access */
.pgp-button.is-disabled{pointer-events:none;cursor:not-allowed;opacity:.58;filter:grayscale(.15)}
.pgp-notice-warning{border-color:#fed7aa!important;background:#fff7ed!important;color:#9a3412!important}
.pgp-program-subject-card.is-locked,.pgp-program-exam-card.is-locked{opacity:.68;cursor:not-allowed}
.pgp-program-subject-card.is-locked>.pgp-icon{color:#98a2b3}

/* Subscription Plans public catalogue (v0.9.6). */
.pgp-app.pgp-plans-shell{max-width:1248px;gap:30px}.pgp-plans-shell{gap:30px}
.pgp-plans-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(292px,.65fr);gap:28px;align-items:center;padding:34px 36px;border:1px solid #ddd6fe;border-radius:24px;background:radial-gradient(circle at 90% 12%,rgba(139,92,246,.18),transparent 36%),linear-gradient(135deg,#111827,#312e81);color:#fff;box-shadow:0 20px 56px rgba(49,46,129,.2)}
.pgp-plans-hero .pgp-kicker{color:#c4b5fd}.pgp-plans-hero h1{max-width:760px;margin:10px 0 13px;color:#fff;font-size:clamp(30px,4.2vw,50px);line-height:1.08;letter-spacing:-.04em}.pgp-plans-hero p{max-width:760px;margin:0;color:rgba(255,255,255,.76);font-size:14px;line-height:1.65}.pgp-plans-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.pgp-plans-hero .pgp-button-secondary{border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.08);color:#fff}.pgp-plans-hero .pgp-button-secondary:hover{background:rgba(255,255,255,.15)}
.pgp-plans-summary-card{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:18px;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:rgba(255,255,255,.08);backdrop-filter:blur(12px)}.pgp-plans-summary-card>span{grid-column:1/-1;display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#fff;color:var(--pgp-primary)}.pgp-plans-summary-card>span .pgp-icon{width:22px}.pgp-plans-summary-card div{padding:12px;border-radius:13px;background:rgba(255,255,255,.08)}.pgp-plans-summary-card strong{display:block;color:#fff;font-size:24px}.pgp-plans-summary-card small{display:block;margin-top:2px;color:rgba(255,255,255,.68);font-size:10px;line-height:1.3}
.pgp-plan-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:16px}.pgp-plan-section-heading h2{margin:6px 0 0;font-size:clamp(23px,3vw,30px)}.pgp-plan-section-heading>a{color:var(--pgp-primary);font-weight:750}.pgp-active-subscriptions,.pgp-plan-steps{display:grid;gap:14px}.pgp-active-subscription-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px}.pgp-active-subscription-grid article{display:grid;grid-template-columns:40px 1fr;gap:10px;align-items:center;padding:15px 16px;border:1px solid #bbf7d0;border-radius:15px;background:#f0fdf4}.pgp-active-subscription-grid article>span{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#dcfce7;color:#047857}.pgp-active-subscription-grid article>span .pgp-icon{width:18px}.pgp-active-subscription-grid article p{margin:2px 0 0;color:#4b5563;font-size:11.5px;line-height:1.45}.pgp-active-subscription-grid article small{grid-column:2;color:#047857;font-size:11.5px;font-weight:700}
.pgp-plan-step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.pgp-plan-step-grid article{padding:18px;border:1px solid var(--pgp-border);border-radius:16px;background:#fff;box-shadow:var(--pgp-shadow-sm)}.pgp-plan-step-grid article>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--pgp-primary-soft);color:var(--pgp-primary);font-weight:850}.pgp-plan-step-grid h3{margin:12px 0 6px;font-size:16px}.pgp-plan-step-grid p{margin:0;color:var(--pgp-muted);font-size:12.5px;line-height:1.55}
.pgp-plan-catalogue{display:grid;gap:22px;scroll-margin-top:110px}.pgp-plan-program-section{display:grid;gap:16px;padding:22px;border:1px solid color-mix(in srgb,var(--pgp-plan-accent) 18%,var(--pgp-border));border-radius:20px;background:linear-gradient(180deg,color-mix(in srgb,var(--pgp-plan-accent) 7%,#fff),#fff 142px);box-shadow:var(--pgp-shadow-sm)}.pgp-plan-program-heading{display:grid;grid-template-columns:50px minmax(0,1fr) auto;gap:14px;align-items:center}.pgp-plan-program-mark{display:grid;place-items:center;width:50px;height:50px;border-radius:15px;background:linear-gradient(135deg,var(--pgp-plan-accent),color-mix(in srgb,var(--pgp-plan-accent) 68%,#111827));color:#fff;font-size:20px;font-weight:850;box-shadow:0 10px 24px color-mix(in srgb,var(--pgp-plan-accent) 24%,transparent)}.pgp-plan-program-heading h2{margin:4px 0 3px;font-size:24px}.pgp-plan-program-heading p{max-width:760px;margin:0;color:var(--pgp-muted);font-size:12px;line-height:1.5}.pgp-program-unlocked{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:999px;background:#dcfce7;color:#047857;font-size:11px;font-weight:800}.pgp-program-unlocked .pgp-icon{width:14px}.pgp-plan-program-section .pgp-plan-grid{grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:16px}.pgp-plan-program-section .pgp-plan-card{border-color:color-mix(in srgb,var(--pgp-plan-accent) 19%,#e4e7ec);background:linear-gradient(180deg,color-mix(in srgb,var(--pgp-plan-accent) 5.5%,#fff),#fff 116px)}.pgp-plan-program-section .pgp-plan-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--pgp-plan-accent),color-mix(in srgb,var(--pgp-plan-accent) 62%,#111827))}.pgp-plan-program-section .pgp-plan-icon{background:color-mix(in srgb,var(--pgp-plan-accent) 11%,#fff);color:var(--pgp-plan-accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--pgp-plan-accent) 16%,#e4e7ec)}
.pgp-plan-card{min-width:0;padding:20px;border-radius:18px;box-shadow:0 10px 28px rgba(15,23,42,.06)}.pgp-plan-card:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(15,23,42,.1)}.pgp-plan-card.is-current{border-color:#86efac;box-shadow:0 14px 34px rgba(22,163,74,.1)}.pgp-plan-status-badge{position:absolute;top:16px;right:16px;padding:6px 9px;border-radius:999px;background:#dcfce7;color:#047857;font-size:9.5px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.pgp-plan-icon{width:42px;height:42px;margin-bottom:14px;border-radius:13px}.pgp-plan-icon .pgp-icon{width:20px}.pgp-plan-card h3{margin:0 0 8px;font-size:20px;line-height:1.2}.pgp-plan-description{min-height:0;margin-bottom:0;color:#667085;font-size:12px;line-height:1.5}.pgp-plan-card .pgp-price{align-items:baseline;gap:6px;margin:14px 0 5px}.pgp-plan-card .pgp-price span{order:0;margin:0;color:var(--pgp-primary);font-size:12px;font-weight:850}.pgp-plan-card .pgp-price strong{order:1;font-size:34px}.pgp-plan-duration{gap:6px;font-size:12px}.pgp-plan-duration .pgp-icon{width:15px}.pgp-plan-card ul{display:grid;gap:8px;margin:16px 0 0;padding:0;list-style:none}.pgp-plan-card li{display:flex;align-items:flex-start;gap:8px;color:#344054;font-size:13px;line-height:1.45}.pgp-plan-card li .pgp-icon{width:16px}.pgp-plan-footer{margin-top:auto;padding-top:14px;border-top:1px solid #f0f2f5}.pgp-current-plan{padding:10px;border-radius:10px;font-size:13px}.pgp-current-plan .pgp-icon{width:16px}.pgp-plan-note{display:block;color:var(--pgp-muted);font-size:11.5px;line-height:1.45;text-align:center}.pgp-plan-card .pgp-button{width:100%;min-height:42px;margin-top:10px;padding:10px 16px;text-align:center;font-size:14px}.pgp-plan-bundle-section{border-color:#c4b5fd}.pgp-plan-help-card{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:22px 24px;border:1px solid #ddd6fe;border-radius:20px;background:#f8f7ff}.pgp-plan-help-card h2{margin:6px 0 6px;font-size:24px}.pgp-plan-help-card p{max-width:720px;margin:0;color:var(--pgp-muted);font-size:13px;line-height:1.55}.pgp-plan-help-card>div:last-child{display:flex;flex-wrap:wrap;gap:10px;flex:0 0 auto}
@media(max-width:900px){.pgp-app.pgp-plans-shell{max-width:100%}.pgp-plans-hero{grid-template-columns:1fr;padding:28px}.pgp-plan-step-grid{grid-template-columns:1fr}.pgp-plan-help-card{align-items:flex-start;flex-direction:column}.pgp-plan-help-card>div:last-child{width:100%}.pgp-plan-help-card .pgp-button{flex:1;text-align:center}}
@media(max-width:640px){.pgp-app.pgp-plans-shell,.pgp-plans-shell{gap:24px}.pgp-plans-hero{padding:22px 18px;border-radius:20px}.pgp-plans-hero h1{font-size:32px}.pgp-plans-hero-actions{flex-direction:column}.pgp-plans-hero-actions .pgp-button{width:100%;text-align:center}.pgp-plans-summary-card{padding:14px}.pgp-plan-program-section{padding:18px 14px}.pgp-plan-program-heading{grid-template-columns:44px minmax(0,1fr)}.pgp-plan-program-mark{width:44px;height:44px;border-radius:13px}.pgp-program-unlocked{grid-column:1/-1;width:max-content}.pgp-plan-section-heading{align-items:flex-start;flex-direction:column}.pgp-active-subscription-grid article{grid-template-columns:38px 1fr}.pgp-plan-help-card{padding:20px 18px}.pgp-plan-help-card>div:last-child{flex-direction:column}.pgp-plan-help-card .pgp-button{width:100%}.pgp-plan-card{padding:18px}}

/* v0.9.9 Rich notice summary/content formatting */
.pgp-notice-rich-text>:first-child{margin-top:0!important}.pgp-notice-rich-text>:last-child{margin-bottom:0!important}.pgp-notice-rich-text ul,.pgp-notice-rich-text ol{padding-left:1.35em}.pgp-notice-rich-text blockquote{margin:1.2em 0;padding:12px 16px;border-left:4px solid var(--pgpn-purple);background:#f8f7ff;color:#475467}.pgp-notice-rich-text img{max-width:100%;height:auto;border-radius:12px}.pgp-notice-card-summary{margin:0 0 18px;color:var(--pgpn-muted);font-size:14px;line-height:1.65}.pgp-notice-card-summary p{margin:0 0 8px}.pgp-notice-card-summary h1,.pgp-notice-card-summary h2,.pgp-notice-card-summary h3,.pgp-notice-card-summary h4{margin:8px 0 5px!important;color:#344054!important;font-size:15px!important;line-height:1.45!important}.pgp-notice-card-summary ul,.pgp-notice-card-summary ol{margin:6px 0 10px}.pgp-notice-lead.pgp-notice-rich-text p{margin:0 0 10px}.pgp-notice-lead.pgp-notice-rich-text h2,.pgp-notice-lead.pgp-notice-rich-text h3{margin:12px 0 7px!important;color:#344054!important;font-size:20px!important}

/* v0.9.20 per-Exam free/subscription access */
.pgp-access-badge.is-free{background:#ecfdf3;color:#047857}
.pgp-auth-shell-recovery .pgp-auth-card{justify-content:center}
.pgp-auth-recovery-card .pgp-form{margin-top:4px}
.pgp-auth-recovery-links{display:flex;flex-direction:column;gap:12px;margin-top:18px}
.pgp-auth-recovery-links .pgp-button{text-align:center}
.pgp-auth-text-link{color:var(--pgp-primary);font-size:13px;font-weight:700;text-decoration:none}
.pgp-auth-text-link:hover{text-decoration:underline}
.pgp-forgot-password-form,.pgp-reset-password-form{display:grid;gap:18px}

/* v0.9.23 focused Exam overview */
.pgp-exam-primary-status{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:24px 26px;border:2px solid #c7d2fe;border-radius:20px;background:linear-gradient(135deg,#eef2ff,#faf5ff);box-shadow:0 16px 36px rgba(79,70,229,.12)}.pgp-exam-primary-status-main{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px 20px;min-width:0}.pgp-exam-primary-status-copy{min-width:0}
.pgp-exam-primary-status-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:#4f46e5;color:#fff;box-shadow:0 10px 24px rgba(79,70,229,.23)}
.pgp-exam-primary-status-icon .pgp-icon{width:26px;height:26px}
.pgp-exam-primary-status .pgp-kicker{display:block;margin-bottom:4px}
.pgp-exam-primary-status h2{margin:0 0 6px;font-size:clamp(23px,3vw,31px);letter-spacing:-.025em}
.pgp-exam-primary-status p{max-width:760px;margin:0;color:#475467;font-size:14px;line-height:1.65}
.pgp-exam-status-timing{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:5px 12px;width:min(100%,320px);max-width:100%;margin-top:0;margin-left:auto;padding:12px 14px;border:1px solid #fed7aa;border-radius:13px;background:rgba(255,255,255,.72);box-shadow:0 7px 18px rgba(180,83,9,.07)}
.pgp-exam-status-timing>span{color:#9a3412;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.pgp-exam-status-timing>strong{color:#9a3412;font-size:18px;font-weight:900;line-height:1.1;font-variant-numeric:tabular-nums;white-space:nowrap;justify-self:end;text-align:right}
.pgp-exam-status-timing>small{grid-column:1/-1;color:#7c2d12;font-size:11px;font-weight:650;line-height:1.35}
.pgp-exam-status-timing.is-live{border-color:#fecaca;background:#fff7f7;box-shadow:0 7px 18px rgba(220,38,38,.07)}
.pgp-exam-status-timing.is-live>span,.pgp-exam-status-timing.is-live>strong{color:#b91c1c}
.pgp-exam-status-timing.is-live>small{color:#991b1b}
.pgp-exam-status-timing.is-ended{border-color:#e2e8f0;background:#f8fafc;box-shadow:none}
.pgp-exam-status-timing.is-ended>span,.pgp-exam-status-timing.is-ended>strong,.pgp-exam-status-timing.is-ended>small{color:#475569}
.pgp-exam-status-timing.is-ended>strong{font-size:14px;white-space:normal}
.pgp-exam-primary-status .pgp-button{min-width:170px;justify-content:center;padding:14px 20px;font-size:14px;box-shadow:0 12px 28px rgba(79,70,229,.24)}
.pgp-exam-primary-status.is-ready{border-color:#86efac;background:linear-gradient(135deg,#ecfdf5,#f5f3ff)}
.pgp-exam-primary-status.is-ready .pgp-exam-primary-status-icon{background:#059669;box-shadow:0 10px 24px rgba(5,150,105,.22)}
.pgp-exam-primary-status.is-resume{border-color:#93c5fd;background:linear-gradient(135deg,#eff6ff,#eef2ff)}
.pgp-exam-primary-status.is-resume .pgp-exam-primary-status-icon{background:#2563eb;box-shadow:0 10px 24px rgba(37,99,235,.22)}
.pgp-exam-primary-status.is-scheduled{border-color:#fdba74;background:linear-gradient(135deg,#fff7ed,#fffbeb)}
.pgp-exam-primary-status.is-scheduled .pgp-exam-primary-status-icon{background:#ea580c;box-shadow:0 10px 24px rgba(234,88,12,.2)}
.pgp-exam-primary-status.is-danger{border-color:#fca5a5;background:linear-gradient(135deg,#fff1f2,#fff7ed);box-shadow:0 18px 42px rgba(220,38,38,.16)}
.pgp-exam-primary-status.is-danger .pgp-exam-primary-status-icon,.pgp-exam-primary-status.is-unavailable .pgp-exam-primary-status-icon{background:#dc2626;box-shadow:0 10px 24px rgba(220,38,38,.23)}
.pgp-exam-primary-status.is-danger h2{color:#991b1b}
.pgp-exam-attempt-usage{display:inline-flex;margin-top:11px;padding:7px 10px;border-radius:9px;background:#fff;color:#b91c1c;font-size:12px}
.pgp-exam-overview-format{display:grid;grid-template-columns:minmax(180px,.42fr) minmax(0,1fr);align-items:center;gap:20px;padding:20px 22px;border:1px solid #ddd6fe;border-radius:18px;background:linear-gradient(135deg,#faf9ff,#fff)}
.pgp-exam-overview-format h2{margin:4px 0 0;font-size:22px}
.pgp-exam-overview-format .pgp-exam-overview-sections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0;border:0;background:transparent}
.pgp-exam-overview-format .pgp-exam-overview-sections span{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 10px;min-width:0;padding:13px 14px;border:1px solid #e5e7eb;border-radius:13px;background:#fff;box-shadow:0 5px 15px rgba(15,23,42,.04)}
.pgp-exam-overview-format .pgp-exam-overview-sections .pgp-icon{grid-row:1/3;width:20px;color:#7c3aed}
.pgp-exam-overview-format .pgp-exam-overview-sections small{color:#667085;font-size:9px;font-weight:800;text-transform:uppercase}
.pgp-exam-overview-format .pgp-exam-overview-sections strong{color:#101828;font-size:19px}
.pgp-exam-overview-instructions{order:99;padding:25px 27px;border-color:#d8d3e8;background:linear-gradient(180deg,#fff,#fcfbff)}
.pgp-exam-overview-instructions>span{margin-bottom:14px;color:#5b21b6;font-size:11px}
.pgp-exam-overview-instructions>div{color:#344054;font-size:14px;line-height:1.75}
.pgp-exam-overview-instructions h2,.pgp-exam-overview-instructions h3,.pgp-exam-overview-instructions h4{margin:20px 0 8px;color:#101828;line-height:1.3}
.pgp-exam-overview-instructions h2:first-child,.pgp-exam-overview-instructions h3:first-child{margin-top:0}
.pgp-exam-overview-instructions p{margin:0 0 12px}
.pgp-exam-overview-instructions ul,.pgp-exam-overview-instructions ol{margin:0 0 14px;padding-left:22px}
.pgp-exam-overview-instructions li{margin:5px 0}
.pgp-exam-overview-instructions a{color:#4f46e5;font-weight:700}
@media(max-width:900px){.pgp-exam-primary-status{grid-template-columns:auto minmax(0,1fr)}.pgp-exam-primary-status .pgp-button{grid-column:1/-1;width:100%}.pgp-exam-overview-format{grid-template-columns:1fr}.pgp-exam-overview-format .pgp-exam-overview-sections{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.pgp-exam-primary-status-main{grid-template-columns:1fr}.pgp-exam-status-timing{width:100%;margin-left:0}}@media(max-width:640px){.pgp-exam-primary-status{grid-template-columns:1fr;padding:20px}.pgp-exam-primary-status-icon{width:48px;height:48px}.pgp-exam-primary-status .pgp-button{grid-column:auto}.pgp-exam-primary-status-main{gap:14px}.pgp-exam-status-timing{width:100%;grid-template-columns:1fr;gap:4px}.pgp-exam-status-timing>strong{font-size:17px;justify-self:start;text-align:left}.pgp-exam-status-timing>small{grid-column:auto}.pgp-exam-overview-format .pgp-exam-overview-sections{grid-template-columns:1fr}.pgp-exam-overview-instructions{padding:21px 18px}}


/* v0.10.1 Result question reference */
.pgp-review-reference{min-height:62px;padding:15px 20px;border-top:1px solid #f0f2f5;background:#fff;color:#667085;line-height:1.6}
.pgp-review-reference strong{display:block;margin-bottom:4px;color:var(--pgp-ink)}
.pgp-review-reference span:empty{display:block;min-height:1.4em}

/* Google Identity Services */
.pgp-google-auth{margin:24px 0 0}
.pgp-auth-divider{display:flex;align-items:center;gap:14px;margin:0 0 14px;color:#667085;font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.pgp-auth-divider:before,.pgp-auth-divider:after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,#d8dbe4)}
.pgp-auth-divider:after{background:linear-gradient(90deg,#d8dbe4,transparent)}
.pgp-auth-divider span{white-space:nowrap}
.pgp-google-button-surface{display:flex;align-items:center;justify-content:center;min-height:66px;padding:10px;border:1px solid #e2e5ee;border-radius:18px;background:linear-gradient(180deg,#fff,#fafaff);box-shadow:0 8px 24px rgba(61,52,139,.08)}
.pgp-google-button-wrap{display:flex;justify-content:center;width:100%;min-height:44px;overflow:hidden}
.pgp-google-button-wrap .g_id_signin{max-width:100%}
.pgp-google-button-wrap iframe{max-width:100%!important;border-radius:999px!important}
.pgp-google-noscript{margin:10px 0 0;color:var(--pgp-muted);font-size:12px;text-align:center}
@media(max-width:460px){.pgp-google-auth{margin-top:20px}.pgp-google-button-surface{min-height:62px;padding:8px;border-radius:15px}.pgp-google-button-wrap{justify-content:flex-start;overflow-x:auto}.pgp-auth-divider{gap:10px}.pgp-auth-divider span{font-size:9px}}

/* v0.13.13 Program detail preparation-hub redesign */
.pgp-program-hub{gap:24px}
.pgp-program-hub-hero{align-items:stretch;grid-template-columns:minmax(0,1.45fr) minmax(290px,.55fr);padding:30px}
.pgp-program-hub .pgp-program-detail-copy>p{max-width:760px;margin:16px 0 14px;font-size:14px;line-height:1.7}
.pgp-program-hub-meta{display:flex;flex-wrap:wrap;gap:9px 16px;color:#667085;font-size:11px;font-weight:700}
.pgp-program-hub-meta span{display:inline-flex;align-items:center;gap:7px}
.pgp-program-hub-meta .pgp-icon{width:16px;height:16px;color:var(--pgp-program-accent,#6d28d9)}
.pgp-program-hub-chips{margin-top:13px}
.pgp-program-hub-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:19px}
.pgp-program-hub-hero-actions .pgp-button{min-height:42px;padding:10px 15px}
.pgp-program-hub-summary{display:flex;flex-direction:column;justify-content:center;padding:21px;border:1px solid #e7e3f5;border-radius:18px;background:rgba(255,255,255,.88);box-shadow:0 8px 24px rgba(76,29,149,.05)}
.pgp-program-hub-summary>strong{font-size:16px}
.pgp-program-hub-summary>p{margin:6px 0 16px;color:#667085;font-size:11px;line-height:1.6}
.pgp-program-hub-summary dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}
.pgp-program-hub-summary dl>div{padding:12px;border-radius:12px;background:#f8f7fc}
.pgp-program-hub-summary dt{color:#667085;font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.pgp-program-hub-summary dd{margin:3px 0 0;color:#1e1b4b;font-size:20px;font-weight:850}
.pgp-program-resource-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.pgp-program-resource-nav>a{display:grid;grid-template-columns:42px minmax(0,1fr) 18px;align-items:center;gap:11px;min-width:0;padding:15px;border:1px solid #e8e5f1;border-radius:16px;background:#fff;color:#101828!important;text-decoration:none!important;box-shadow:0 5px 18px rgba(76,29,149,.045);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.pgp-program-resource-nav>a:hover{transform:translateY(-2px);border-color:#c4b5fd;box-shadow:0 13px 28px rgba(76,29,149,.09)}
.pgp-program-resource-nav>a.is-empty{pointer-events:none;opacity:.62}
.pgp-program-resource-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 10%,#fff);color:var(--pgp-program-accent,#6d28d9)}
.pgp-program-resource-icon .pgp-icon{width:21px;height:21px}
.pgp-program-resource-nav>a>span:nth-child(2){display:grid;gap:2px;min-width:0}
.pgp-program-resource-nav strong{font-size:12px;line-height:1.3}
.pgp-program-resource-nav small{overflow:hidden;color:#667085;font-size:9px;text-overflow:ellipsis;white-space:nowrap}
.pgp-program-resource-nav>a>.pgp-icon{width:17px;color:#7c3aed}
.pgp-program-live-section{display:grid;gap:15px;padding:22px;border:1px solid #ddd6fe;border-radius:20px;background:linear-gradient(135deg,#faf9ff,#fff);box-shadow:0 8px 28px rgba(76,29,149,.055)}
.pgp-program-live-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.pgp-program-live-card{display:flex;flex-direction:column;min-width:0;padding:20px;border:1px solid #e8e5f1;border-radius:16px;background:#fff;box-shadow:0 5px 18px rgba(15,23,42,.04)}
.pgp-program-live-card.is-running{border-color:#86efac;box-shadow:0 12px 28px rgba(22,163,74,.09)}
.pgp-program-live-card-top{display:flex;align-items:center;justify-content:space-between;gap:9px}
.pgp-program-live-card-top>span:last-child{color:#667085;font-size:9px;font-weight:800;text-transform:uppercase}
.pgp-program-live-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;background:#fef3c7;color:#92400e;font-size:9px;font-weight:850;letter-spacing:.045em}
.pgp-program-live-card.is-running .pgp-program-live-badge{display:inline-flex;align-items:center;gap:7px;border:1px solid #fecaca;background:#fef2f2;color:#b91c1c}.pgp-program-live-card.is-running .pgp-program-live-badge:before{content:"";width:7px;height:7px;flex:0 0 auto;border-radius:999px;background:#ef4444;box-shadow:0 0 0 0 rgba(239,68,68,.38);animation:pgp-live-pulse 1.65s ease-out infinite}
.pgp-program-live-badge i{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px currentColor;opacity:.72}
.pgp-program-live-card h3{margin:15px 0 12px;font-size:18px;line-height:1.35}
.pgp-program-live-facts{display:grid;gap:7px;margin-bottom:16px;color:#667085;font-size:10px}
.pgp-program-live-facts span{display:flex;align-items:center;gap:7px}
.pgp-program-live-facts .pgp-icon{width:15px;height:15px;color:#7c3aed}
.pgp-program-live-card .pgp-button{margin-top:auto;justify-content:center}
.pgp-program-section-link{color:var(--pgp-program-accent,#6d28d9)!important;font-size:11px;font-weight:800;text-decoration:none!important;white-space:nowrap}
.pgp-program-practice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.pgp-program-practice-card{display:flex;flex-direction:column;min-width:0;padding:18px;border:1px solid #e8e5f1;border-radius:16px;background:#fff;box-shadow:0 4px 16px rgba(15,23,42,.035)}
.pgp-program-practice-card>header{display:flex;align-items:center;justify-content:space-between;gap:8px}
.pgp-program-practice-card>header>span:first-child{padding:5px 8px;border-radius:999px;background:#f3e8ff;color:#6d28d9;font-size:9px;font-weight:850}
.pgp-program-card-lock{display:inline-flex!important;align-items:center;gap:4px!important;color:#b45309!important;background:#fff7ed!important}
.pgp-program-card-lock .pgp-icon{width:12px;height:12px}
.pgp-program-practice-card>small{margin-top:13px;color:#7c3aed;font-size:10px;font-weight:800}
.pgp-program-practice-card h3{flex:1;margin:5px 0 11px;font-size:16px;line-height:1.4}
.pgp-program-practice-card p{display:flex;align-items:center;gap:6px;margin:0 0 13px;color:#667085;font-size:10px}
.pgp-program-practice-card p .pgp-icon{width:15px}
.pgp-program-practice-card>a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:12px;border-top:1px solid #f0eef8;color:var(--pgp-program-accent,#6d28d9)!important;font-size:11px;font-weight:800;text-decoration:none!important}
.pgp-program-practice-card>a .pgp-icon{width:16px}
.pgp-program-paper-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.pgp-program-paper-card{display:grid;grid-template-columns:74px minmax(0,1fr);overflow:hidden;border:1px solid #e8e5f1;border-radius:16px;background:#fff}
.pgp-program-paper-year{display:grid;place-items:center;padding:16px 10px;background:linear-gradient(145deg,var(--pgp-program-accent,#6d28d9),#4c1d95);color:#fff;font-size:21px;font-weight:900;letter-spacing:-.03em}
.pgp-program-paper-body{display:flex;flex-direction:column;min-width:0;padding:17px}
.pgp-program-paper-body>span{color:#7c3aed;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}
.pgp-program-paper-body h3{margin:5px 0 9px;font-size:16px;line-height:1.4}
.pgp-program-paper-meta{display:flex;flex-wrap:wrap;gap:7px 13px;color:#667085;font-size:10px}
.pgp-program-paper-body>a{display:flex;align-items:center;gap:7px;width:max-content;margin-top:13px;color:var(--pgp-program-accent,#6d28d9)!important;font-size:11px;font-weight:800;text-decoration:none!important}
.pgp-program-paper-body>a .pgp-icon{width:16px}
.pgp-program-exam-card{box-shadow:0 4px 16px rgba(15,23,42,.035)}
.pgp-program-exam-card.is-running{border-color:#bbf7d0}
.pgp-program-exam-state.is-running{display:inline-flex;align-items:center;gap:7px;border:1px solid #fecaca;background:#fef2f2!important;color:#b91c1c!important}.pgp-program-exam-state.is-running:before{content:"";width:7px;height:7px;flex:0 0 auto;border-radius:999px;background:#ef4444;box-shadow:0 0 0 0 rgba(239,68,68,.38);animation:pgp-live-pulse 1.65s ease-out infinite}
.pgp-program-exam-state.is-scheduled{background:#fef3c7!important;color:#92400e!important}
.pgp-program-exam-state.is-ended{background:#f2f4f7!important;color:#667085!important}
.pgp-program-exam-meta{display:grid!important;justify-content:stretch!important;gap:5px;margin-bottom:12px}
.pgp-program-exam-meta p{margin:0}
.pgp-program-access-note{display:flex;align-items:center;gap:9px;padding:12px 14px;border:1px solid #fed7aa;border-radius:13px;background:#fff7ed;color:#9a3412;font-size:10px}
.pgp-program-access-note>.pgp-icon{flex:0 0 auto;width:17px}
.pgp-program-access-note span{flex:1}
.pgp-program-access-note a{color:#9a3412!important;font-weight:850;text-decoration:none!important;white-space:nowrap}
.pgp-program-supporting-info{display:grid;gap:14px;margin-top:5px;padding-top:20px;border-top:1px solid #eceaf7}
.pgp-program-info-accordions{display:grid;gap:9px}
.pgp-program-info-accordions details{overflow:hidden;border:1px solid #e8e5f1;border-radius:14px;background:#fff}
.pgp-program-info-accordions summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 17px;color:#1f2937;font-size:12px;font-weight:850;cursor:pointer;list-style:none}
.pgp-program-info-accordions summary::-webkit-details-marker{display:none}
.pgp-program-info-accordions summary span{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:#f5f3ff;color:#6d28d9;font-size:17px;line-height:1}
.pgp-program-info-accordions details[open] summary span{transform:rotate(45deg)}
.pgp-program-info-accordions .pgp-program-overview-content{padding:0 17px 17px;color:#667085;font-size:12px;line-height:1.75}
.pgp-program-info-accordions ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0 17px 17px;list-style:none}
.pgp-program-info-accordions li{display:flex;align-items:flex-start;gap:8px;padding:10px 11px;border-radius:11px;background:#f8faff;color:#475467;font-size:11px}
.pgp-program-info-accordions li .pgp-icon{flex:0 0 auto;width:16px;color:#16a34a}
.pgp-program-subject-card.is-locked{opacity:.86}
.pgp-program-subject-card.is-locked small{color:#667085}

@media(max-width:980px){
  .pgp-program-hub-hero{grid-template-columns:1fr}
  .pgp-program-resource-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pgp-program-live-grid,.pgp-program-practice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
  .pgp-program-hub{gap:18px}
  .pgp-program-hub-hero{padding:21px}
  .pgp-program-hub-hero-actions{flex-direction:column}
  .pgp-program-hub-hero-actions .pgp-button{width:100%;justify-content:center}
  .pgp-program-resource-nav{grid-template-columns:1fr 1fr;gap:8px}
  .pgp-program-resource-nav>a{grid-template-columns:36px minmax(0,1fr);padding:12px}
  .pgp-program-resource-nav>a>.pgp-icon{display:none}
  .pgp-program-resource-icon{width:36px;height:36px}
  .pgp-program-live-section{padding:17px}
  .pgp-program-live-grid,.pgp-program-practice-grid,.pgp-program-paper-grid{grid-template-columns:1fr}
  .pgp-program-paper-card{grid-template-columns:66px minmax(0,1fr)}
  .pgp-program-info-accordions ul{grid-template-columns:1fr}
  .pgp-program-access-note{align-items:flex-start;flex-wrap:wrap}
  .pgp-program-access-note a{margin-left:26px}
}
@media(max-width:430px){
  .pgp-program-resource-nav{grid-template-columns:1fr}
  .pgp-program-hub-summary dl{grid-template-columns:1fr 1fr}
}

/* v0.13.14 — Exam Runner UX: sticky mobile status, review workflow and navigator drawer */
.pgp-app.pgp-exam-runner .pgp-progress-meta{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  min-height:28px!important;
  padding:5px 16px!important;
  border-bottom:1px solid #e9ebf2!important;
  background:#fff!important;
  color:#667085!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.02em!important;
}
.pgp-app.pgp-exam-runner .pgp-progress-meta strong{color:#344054!important;font-size:10px!important}
.pgp-app.pgp-exam-runner .pgp-sync-status{white-space:nowrap!important}
.pgp-app.pgp-exam-runner .pgp-sync-dot{
  width:8px!important;
  height:8px!important;
  flex:0 0 8px!important;
  border-radius:999px!important;
  background:#86efac!important;
  box-shadow:0 0 0 3px rgba(134,239,172,.12)!important;
}
.pgp-app.pgp-exam-runner .pgp-sync-status[data-state="saving"] .pgp-sync-dot{background:#fde68a!important;box-shadow:0 0 0 3px rgba(253,230,138,.12)!important;animation:pgp-sync-pulse 1s ease-in-out infinite}
.pgp-app.pgp-exam-runner .pgp-sync-status[data-state="offline"] .pgp-sync-dot,
.pgp-app.pgp-exam-runner .pgp-sync-status[data-state="error"] .pgp-sync-dot{background:#fca5a5!important;box-shadow:0 0 0 3px rgba(252,165,165,.12)!important}
@keyframes pgp-sync-pulse{50%{opacity:.42}}

.pgp-app.pgp-exam-runner .pgp-mobile-palette-toggle{
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  min-height:38px!important;
  margin:0!important;
  padding:7px 10px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  box-shadow:none!important;
  font:inherit!important;
  font-size:11px!important;
  font-weight:800!important;
}
.pgp-app.pgp-exam-runner .pgp-mobile-palette-toggle .pgp-icon{width:16px!important;height:16px!important}
.pgp-app.pgp-exam-runner .pgp-mobile-palette-toggle strong{padding-left:2px!important;font-size:10px!important;color:rgba(255,255,255,.78)!important}

.pgp-app.pgp-exam-runner .pgp-review-toggle{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#667085!important;
  font:inherit!important;
  font-size:11px!important;
  font-weight:750!important;
  line-height:1.3!important;
}
.pgp-app.pgp-exam-runner .pgp-review-toggle:hover,
.pgp-app.pgp-exam-runner .pgp-review-toggle:focus-visible{color:#7c3aed!important;text-decoration:underline!important;text-underline-offset:3px!important}
.pgp-app.pgp-exam-runner .pgp-review-toggle.is-marked{color:#a16207!important}
.pgp-app.pgp-exam-runner .pgp-review-toggle .pgp-icon{width:14px!important;height:14px!important;fill:transparent!important}
.pgp-app.pgp-exam-runner .pgp-review-toggle.is-marked .pgp-icon{fill:#facc15!important;stroke:#a16207!important}

.pgp-app.pgp-exam-runner .pgp-palette-filters{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:6px!important;
  margin:0 0 12px!important;
}
.pgp-app.pgp-exam-runner .pgp-palette-filter{
  min-height:32px!important;
  margin:0!important;
  padding:5px 8px!important;
  border:1px solid #e4e7ec!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:none!important;
  color:#667085!important;
  font:inherit!important;
  font-size:10px!important;
  font-weight:800!important;
}
.pgp-app.pgp-exam-runner .pgp-palette-filter:hover,
.pgp-app.pgp-exam-runner .pgp-palette-filter:focus-visible{border-color:#c4b5fd!important;background:#faf7ff!important;color:#6d28d9!important}
.pgp-app.pgp-exam-runner .pgp-palette-filter.is-active{border-color:#8b5cf6!important;background:#f3e8ff!important;color:#6d28d9!important}
.pgp-app.pgp-exam-runner .pgp-palette-filter span{display:inline!important;color:inherit!important;font-size:inherit!important}
.pgp-app.pgp-exam-runner .pgp-palette-close{display:none!important}
.pgp-app.pgp-exam-runner .pgp-palette-backdrop{display:none!important}
.pgp-app.pgp-exam-runner button.pgp-quiz-palette-button.is-review:not(.is-current){
  border-color:#facc15!important;
  background:#fefce8!important;
  color:#854d0e!important;
  box-shadow:inset 0 0 0 1px rgba(250,204,21,.18)!important;
}
.pgp-app.pgp-exam-runner button.pgp-quiz-palette-button.is-current.is-review{box-shadow:0 0 0 3px rgba(250,204,21,.48)!important}
.pgp-app.pgp-exam-runner .pgp-legend-dot.is-review{border-color:#eab308!important;background:#fef08a!important}

/* Submit is deliberately secondary until the student reaches the final question. */
.pgp-app.pgp-exam-runner .pgp-quiz-submit:not(.is-primary),
.pgp-app.pgp-exam-runner .pgp-quiz-submit:not(.is-primary):hover,
.pgp-app.pgp-exam-runner .pgp-quiz-submit:not(.is-primary):focus-visible{
  border:1px solid #c4b5fd!important;
  background:#fff!important;
  color:#5b21b6!important;
  box-shadow:none!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-submit:not(.is-primary) *,
.pgp-app.pgp-exam-runner .pgp-quiz-submit:not(.is-primary) .pgp-icon{background:transparent!important;color:#5b21b6!important}
.pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary,
.pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary:hover,
.pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary:focus-visible,
.pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary *{background:linear-gradient(135deg,#4f46e5,#7c3aed)!important;color:#fff!important}
.pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary .pgp-icon{background:transparent!important}
.pgp-quiz-dialog .pgp-quiz-dialog-summary{grid-template-columns:repeat(3,minmax(0,1fr))!important}

@container pgp-exam-runner (max-width:920px){
  .pgp-app.pgp-exam-runner .pgp-mobile-palette-toggle{display:inline-flex!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-palette-panel{
    display:block!important;
    position:fixed!important;
    inset:0 0 0 auto!important;
    z-index:99991!important;
    order:0!important;
    width:min(370px,90vw)!important;
    max-width:90vw!important;
    height:100dvh!important;
    max-height:100dvh!important;
    overflow:auto!important;
    padding:18px!important;
    border:0!important;
    border-left:1px solid #e4e7ec!important;
    background:#fff!important;
    box-shadow:-18px 0 55px rgba(15,23,42,.2)!important;
    transform:translateX(105%)!important;
    transition:transform .2s ease!important;
  }
  .pgp-app.pgp-exam-runner .pgp-quiz-palette-panel.is-open{transform:translateX(0)!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-palette-heading{
    align-items:center!important;
    flex-direction:row!important;
    justify-content:space-between!important;
    gap:12px!important;
    margin-bottom:12px!important;
  }
  .pgp-app.pgp-exam-runner .pgp-quiz-palette-heading>div{min-width:0!important}
  .pgp-app.pgp-exam-runner .pgp-palette-close{
    display:grid!important;
    place-items:center!important;
    width:36px!important;
    height:36px!important;
    flex:0 0 36px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid #e4e7ec!important;
    border-radius:10px!important;
    background:#fff!important;
    color:#344054!important;
    box-shadow:none!important;
  }
  .pgp-app.pgp-exam-runner .pgp-palette-close .pgp-icon{width:17px!important;height:17px!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-palette{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(38px,1fr))!important;
    overflow:visible!important;
    gap:8px!important;
    padding:0!important;
  }
  .pgp-app.pgp-exam-runner button.pgp-quiz-palette-button{min-width:0!important;flex:initial!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-palette-legend{display:grid!important}
  .pgp-app.pgp-exam-runner .pgp-palette-backdrop{
    position:fixed!important;
    inset:0!important;
    z-index:99990!important;
    width:100vw!important;
    height:100vh!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:rgba(15,23,42,.46)!important;
    box-shadow:none!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:opacity .2s ease,visibility .2s ease!important;
  }
  .pgp-app.pgp-exam-runner.is-palette-open .pgp-palette-backdrop{display:block!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
}

@container pgp-exam-runner (max-width:620px){
  .pgp-app.pgp-exam-runner .pgp-quiz-toolbar{
    position:sticky!important;
    top:0!important;
    z-index:60!important;
    align-items:stretch!important;
    flex-direction:column!important;
    gap:7px!important;
    min-height:0!important;
    padding:8px 10px!important;
  }
  body.admin-bar .pgp-app.pgp-exam-runner .pgp-quiz-toolbar{top:46px!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-toolbar-title{gap:8px!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-toolbar-logo{width:30px!important;height:30px!important;border-radius:9px!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-toolbar-title strong{max-width:none!important;font-size:12px!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-toolbar-title small{display:none!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-toolbar-stats{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto auto!important;
    align-items:center!important;
    gap:6px!important;
    width:100%!important;
  }
  .pgp-app.pgp-exam-runner .pgp-sync-status{
    display:flex!important;
    min-width:0!important;
    min-height:36px!important;
    padding:6px 8px!important;
    overflow:hidden!important;
  }
  .pgp-app.pgp-exam-runner #pgp-sync-label{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:10px!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-answered-chip{display:none!important}
  .pgp-app.pgp-exam-runner .pgp-mobile-palette-toggle{min-height:36px!important;padding:6px 8px!important}
  .pgp-app.pgp-exam-runner .pgp-mobile-palette-toggle>span{display:none!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-timer-wrap{min-width:106px!important;min-height:36px!important;padding:6px 8px!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-timer{font-size:15px!important}
  .pgp-app.pgp-exam-runner .pgp-progress-meta{min-height:25px!important;padding:4px 10px!important;font-size:9px!important}
  .pgp-app.pgp-exam-runner .pgp-progress-meta strong{font-size:9px!important}
  .pgp-app.pgp-exam-runner .pgp-answer-tools{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:8px 12px!important}
  .pgp-app.pgp-exam-runner .pgp-review-toggle{font-size:11px!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-actionbar{bottom:6px!important}
  .pgp-quiz-dialog .pgp-quiz-dialog-summary{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .pgp-quiz-dialog .pgp-quiz-dialog-summary div{padding:9px 6px!important;text-align:center!important}
  .pgp-quiz-dialog .pgp-quiz-dialog-summary strong{font-size:17px!important}
  .pgp-quiz-dialog .pgp-quiz-dialog-summary span{font-size:9px!important}
}

@media (prefers-reduced-motion:reduce){
  .pgp-app.pgp-exam-runner .pgp-quiz-palette-panel,
  .pgp-app.pgp-exam-runner .pgp-palette-backdrop{transition:none!important}
  .pgp-app.pgp-exam-runner .pgp-sync-status[data-state="saving"] .pgp-sync-dot{animation:none!important}
}
.pgp-app.pgp-exam-runner .pgp-quiz-palette [hidden]{display:none!important}
@media(max-width:620px){
  .pgp-quiz-dialog .pgp-quiz-dialog-summary{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .pgp-quiz-dialog .pgp-quiz-dialog-summary div{padding:9px 6px!important;text-align:center!important}
  .pgp-quiz-dialog .pgp-quiz-dialog-summary strong{font-size:17px!important}
  .pgp-quiz-dialog .pgp-quiz-dialog-summary span{font-size:9px!important}
}

/* v0.13.15 — clean Exam Library resource-first redesign */
.pgp-exams-directory-clean{gap:22px}
.pgp-exams-directory-clean .pgp-exams-hero-compact{grid-template-columns:minmax(0,1fr) auto;gap:24px;padding:26px 30px;border-radius:22px;box-shadow:0 10px 32px rgba(76,29,149,.07)}
.pgp-exams-directory-clean .pgp-exams-hero-compact:after{width:190px;height:190px;right:-82px;bottom:-102px;border-width:32px}
.pgp-exams-directory-clean .pgp-exams-hero h1{margin:0 0 8px;font-size:clamp(30px,4vw,43px);letter-spacing:-.04em}
.pgp-exams-directory-clean .pgp-exams-hero p{max-width:690px;font-size:14px;line-height:1.6}
.pgp-exams-summary{position:relative;z-index:1;display:flex;align-items:stretch;gap:8px}
.pgp-exams-summary>span{display:flex;min-width:92px;flex-direction:column;justify-content:center;padding:11px 13px;border:1px solid #e4def3;border-radius:13px;background:rgba(255,255,255,.9);color:#667085;font-size:9px;font-weight:800;line-height:1.35;text-transform:uppercase}
.pgp-exams-summary strong{display:block;margin-bottom:3px;color:#5b21b6;font-size:21px;line-height:1}
.pgp-exams-summary .is-open{border-color:#bbf7d0;background:#f0fdf4}.pgp-exams-summary .is-open strong{color:#047857}

.pgp-exam-clean-section-head{align-items:end;margin:0}.pgp-exam-clean-section-head h2{margin:2px 0 0;font-size:24px}
.pgp-exam-open-now{display:grid;gap:13px;padding:18px;border:1px solid #bbf7d0;border-radius:20px;background:linear-gradient(135deg,#f8fffb,#f0fdf4)}
.pgp-exam-open-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.pgp-exam-open-card{display:flex;min-width:0;flex-direction:column;justify-content:space-between;gap:15px;padding:18px;border:1px solid #d1fae5;border-radius:16px;background:#fff;box-shadow:0 6px 18px rgba(5,150,105,.05)}
.pgp-exam-open-card.has-progress{border-color:#c4b5fd;box-shadow:0 7px 22px rgba(109,40,217,.08)}
.pgp-exam-open-card-badges{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:11px}
.pgp-exam-open-card .pgp-exam-directory-program{margin-bottom:6px}
.pgp-exam-open-card h3{margin:0 0 10px;font-size:18px;line-height:1.35}
.pgp-exam-progress-badge{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;background:#ede9fe;color:#5b21b6;font-size:9px;font-weight:850;text-transform:uppercase}
.pgp-exam-open-card-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:13px;border-top:1px solid #ecfdf3}
.pgp-exam-primary-cta{min-height:38px!important;padding:8px 13px!important;font-size:11px!important}
.pgp-exam-primary-cta.is-disabled{opacity:.6}
.pgp-exam-admin-edit{color:#667085!important;font-size:10px;font-weight:750;text-decoration:none!important;white-space:nowrap}.pgp-exam-admin-edit:hover{color:#6d28d9!important}

.pgp-exam-discovery{display:grid;gap:11px}
.pgp-exam-directory-filters-clean{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border-radius:16px;box-shadow:0 5px 18px rgba(15,23,42,.04)}
.pgp-exam-directory-filters-clean .pgp-exam-search-clean{position:relative;display:flex;align-items:center;gap:7px;min-width:0}
.pgp-exam-search-clean>.pgp-icon{position:absolute;left:12px;width:18px;height:18px;color:#98a2b3;pointer-events:none}
.pgp-exam-directory-filters-clean .pgp-exam-search-clean input{min-height:46px;padding:9px 78px 9px 39px;border-radius:12px;background:#fafafa}
.pgp-exam-search-submit{position:absolute;right:5px;min-height:36px;padding:6px 12px;border:0;border-radius:9px;background:#6d28d9;color:#fff;font:inherit;font-size:11px;font-weight:800;cursor:pointer}
.pgp-exam-advanced-filters{position:relative;min-width:112px}
.pgp-exam-advanced-filters>summary{display:flex;min-height:46px;align-items:center;justify-content:center;gap:7px;padding:9px 13px;border:1px solid #d8dce5;border-radius:12px;background:#fff;color:#344054;font-size:11px;font-weight:800;cursor:pointer;list-style:none}.pgp-exam-advanced-filters>summary::-webkit-details-marker{display:none}.pgp-exam-advanced-filters>summary .pgp-icon{width:17px}.pgp-exam-advanced-filters>summary b{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:3px;border-radius:999px;background:#ede9fe;color:#5b21b6;font-size:9px}
.pgp-exam-advanced-filters[open]>summary{border-color:#c4b5fd;background:#faf9ff;color:#5b21b6}
.pgp-exam-advanced-filter-panel{position:absolute;z-index:20;top:calc(100% + 8px);right:0;display:grid;width:min(640px,calc(100vw - 42px));grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;padding:15px;border:1px solid #e2def0;border-radius:15px;background:#fff;box-shadow:0 18px 44px rgba(15,23,42,.14)}
.pgp-exam-advanced-filter-panel label{display:grid!important;gap:6px}.pgp-exam-advanced-filter-panel label>span{font-size:9px!important}.pgp-exam-advanced-filter-panel select{min-height:42px!important}
.pgp-exam-advanced-filter-panel .pgp-exam-filter-actions{grid-column:1/-1;justify-content:flex-end;padding:2px 0 0}.pgp-exam-advanced-filter-panel .pgp-exam-filter-actions .pgp-button{min-height:38px}.pgp-exam-advanced-filter-panel .pgp-exam-filter-actions>a{color:#667085!important}

.pgp-exam-state-tabs{display:flex;align-items:center;gap:7px;overflow-x:auto;padding:1px 1px 3px;scrollbar-width:none}.pgp-exam-state-tabs::-webkit-scrollbar{display:none}
.pgp-exam-state-tabs a{display:inline-flex;flex:0 0 auto;align-items:center;gap:7px;padding:8px 11px;border:1px solid #e4e7ec;border-radius:999px;background:#fff;color:#475467!important;font-size:10px;font-weight:800;text-decoration:none!important;white-space:nowrap}.pgp-exam-state-tabs a:hover{border-color:#c4b5fd;color:#5b21b6!important}.pgp-exam-state-tabs a.is-active{border-color:#c4b5fd;background:#f5f3ff;color:#5b21b6!important}.pgp-exam-state-tabs a span{display:inline-grid;place-items:center;min-width:20px;height:18px;padding:0 5px;border-radius:999px;background:#f2f4f7;color:#667085;font-size:9px}.pgp-exam-state-tabs a.is-active span{background:#e9e5ff;color:#5b21b6}
.pgp-exam-state-tabs a.pgp-exam-live-tab.has-live{border-color:#fecaca;color:#b91c1c!important}.pgp-exam-state-tabs a.pgp-exam-live-tab.has-live:before{content:"";width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:#ef4444;box-shadow:0 0 0 0 rgba(239,68,68,.38);animation:pgp-live-pulse 1.65s ease-out infinite}.pgp-exam-state-tabs a.pgp-exam-live-tab.has-live span{background:#fef2f2;color:#b91c1c}.pgp-exam-state-tabs a.pgp-exam-live-tab.has-live.is-active{border-color:#fca5a5;background:#fef2f2;color:#991b1b!important}.pgp-exam-state-tabs a.pgp-exam-live-tab.has-live.is-active span{background:#fee2e2;color:#991b1b}

.pgp-exam-directory-grid-clean{gap:14px;align-items:start}
.pgp-exam-directory-card-clean{min-height:0;padding:18px;border-radius:17px;box-shadow:0 4px 16px rgba(15,23,42,.045)}
.pgp-exam-directory-card-clean.is-running{border-color:#fecaca;box-shadow:0 6px 20px rgba(239,68,68,.07)}.pgp-exam-directory-card-clean.is-running:before{background:linear-gradient(90deg,#ef4444,#dc2626)}
@keyframes pgp-live-pulse{0%{box-shadow:0 0 0 0 rgba(239,68,68,.38)}70%{box-shadow:0 0 0 7px rgba(239,68,68,0)}100%{box-shadow:0 0 0 0 rgba(239,68,68,0)}}
.pgp-exam-directory-card-clean:before{height:3px}
.pgp-exam-directory-card-clean:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(76,29,149,.085)}
.pgp-exam-directory-card-clean.is-ended{background:#fbfcfd}.pgp-exam-directory-card-clean.is-ended:not(:hover){opacity:.82}
.pgp-exam-directory-card-clean .pgp-exam-directory-card-top{margin-bottom:10px}.pgp-exam-card-badge-group{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}.pgp-exam-serial-badge{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:28px;padding:0 10px;border-radius:999px;background:#eef2ff;color:#4338ca;font-size:10px;font-weight:900;letter-spacing:.04em;box-shadow:inset 0 0 0 1px #c7d2fe}
.pgp-exam-directory-card-clean .pgp-exam-directory-program{margin-bottom:5px;font-size:10px}.pgp-exam-directory-card-clean .pgp-exam-directory-program .pgp-icon{width:15px;height:15px}
.pgp-exam-directory-card-clean h3{margin:0 0 10px;font-size:18px;line-height:1.32}
.pgp-exam-inline-facts{display:flex;flex-wrap:wrap;align-items:center;gap:0;margin:0 0 10px;color:#667085;font-size:10px;font-weight:700;line-height:1.5}
.pgp-exam-inline-facts>span{display:inline-flex;align-items:center}.pgp-exam-inline-facts>span:not(:last-child):after{content:"·";margin:0 7px;color:#c0c5ce}
.pgp-exam-clean-schedule{display:flex;align-items:center;gap:7px;margin:0 0 10px;padding:8px 9px;border-radius:10px;background:#f0fdf4;color:#047857;font-size:10px;font-weight:700}.pgp-exam-clean-schedule .pgp-icon{width:15px;height:15px;flex:0 0 auto}.pgp-exam-clean-schedule b{font-weight:850}.pgp-exam-clean-schedule.is-upcoming{background:#fff7ed;color:#b45309}.pgp-exam-clean-schedule.is-ended{background:#f2f4f7;color:#667085}
.pgp-exam-directory-card-footer-clean{gap:10px;margin-top:10px;padding-top:12px}.pgp-exam-card-foot-meta{display:flex;align-items:center;gap:8px;min-width:0}.pgp-exam-directory-card-footer-clean .pgp-access-badge{padding:4px 7px;font-size:8px;white-space:nowrap}
.pgp-exam-card-action{display:inline-flex!important;min-height:34px;align-items:center;justify-content:center;gap:5px;padding:7px 10px;border:1px solid #ddd6fe;border-radius:9px;background:#fff;color:#5b21b6!important;font-size:10px!important;font-weight:850;text-decoration:none!important;white-space:nowrap}.pgp-exam-card-action .pgp-icon{width:14px!important}.pgp-exam-card-action:hover{border-color:#c4b5fd;background:#faf9ff}.pgp-exam-card-action.is-primary{border-color:#6d28d9;background:#6d28d9;color:#fff!important}.pgp-exam-card-action.is-primary:hover{background:#5b21b6}.pgp-exam-card-action.is-muted{border-color:#e4e7ec;background:#f9fafb;color:#667085!important}

@media(max-width:1050px){
  .pgp-exams-directory-clean .pgp-exams-hero-compact{grid-template-columns:1fr}.pgp-exams-summary{justify-content:flex-start}.pgp-exam-open-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .pgp-exams-directory-clean{padding:0 10px;gap:18px}.pgp-exams-directory-clean .pgp-exams-hero-compact{padding:22px 19px;border-radius:19px}.pgp-exams-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.pgp-exams-summary>span{min-width:0;padding:9px}.pgp-exam-open-now{padding:14px;border-radius:17px}.pgp-exam-open-grid{grid-template-columns:1fr}.pgp-exam-directory-filters-clean{grid-template-columns:minmax(0,1fr) auto}.pgp-exam-advanced-filter-panel{position:fixed;z-index:9999;inset:auto 12px 12px;width:auto;grid-template-columns:1fr;border-radius:18px;box-shadow:0 18px 60px rgba(15,23,42,.2)}.pgp-exam-advanced-filter-panel .pgp-exam-filter-actions{grid-column:auto}.pgp-exam-directory-grid-clean{grid-template-columns:1fr}.pgp-exam-clean-section-head h2{font-size:21px}
}
@media(max-width:480px){
  .pgp-exams-directory-clean .pgp-exams-hero h1{font-size:30px}.pgp-exams-directory-clean .pgp-exams-hero p{font-size:13px}.pgp-exams-summary strong{font-size:18px}.pgp-exams-summary>span{font-size:8px}.pgp-exam-directory-filters-clean{grid-template-columns:1fr auto;padding:8px}.pgp-exam-directory-filters-clean .pgp-exam-search-clean input{padding-right:12px}.pgp-exam-search-submit{display:none}.pgp-exam-advanced-filters{min-width:48px}.pgp-exam-advanced-filters>summary{width:46px;padding:8px}.pgp-exam-advanced-filters>summary span{font-size:0}.pgp-exam-advanced-filters>summary span b{font-size:9px}.pgp-exam-directory-card-clean{min-height:0}.pgp-exam-directory-card-footer-clean{align-items:stretch;flex-direction:column}.pgp-exam-card-foot-meta{justify-content:space-between}.pgp-exam-card-action{width:100%}.pgp-exam-open-card-actions{align-items:stretch;flex-direction:column}.pgp-exam-open-card-actions .pgp-button{width:100%}.pgp-exam-open-card-actions .pgp-exam-admin-edit{text-align:center}
}

/* v0.13.21 recent frontend refinements */
.pgp-plan-focus-bar{--pgp-plan-accent:#6D28D9;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--pgp-plan-accent) 28%,#e4e7ec);border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--pgp-plan-accent) 9%,#fff),#fff);color:color-mix(in srgb,var(--pgp-plan-accent) 68%,#111827);box-shadow:0 8px 22px color-mix(in srgb,var(--pgp-plan-accent) 9%,transparent)}
.pgp-plan-focus-bar>div{display:flex;align-items:center;gap:11px;min-width:0}.pgp-plan-focus-bar>div>span{display:grid;place-items:center;flex:0 0 auto;width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--pgp-plan-accent),color-mix(in srgb,var(--pgp-plan-accent) 68%,#111827));color:#fff}.pgp-plan-focus-bar .pgp-icon{width:18px;height:18px}.pgp-plan-focus-bar p{display:grid;gap:1px;min-width:0;margin:0}.pgp-plan-focus-bar small{color:color-mix(in srgb,var(--pgp-plan-accent) 74%,#334155);font-size:9px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.pgp-plan-focus-bar strong{overflow:hidden;color:color-mix(in srgb,var(--pgp-plan-accent) 62%,#111827);font-size:14px;text-overflow:ellipsis;white-space:nowrap}.pgp-plan-focus-bar>a{flex:0 0 auto;color:color-mix(in srgb,var(--pgp-plan-accent) 74%,#111827)!important;font-size:11px;font-weight:850;text-decoration:none!important}.pgp-plan-program-section[id],.pgp-plan-focus-bar[id]{scroll-margin-top:118px}.pgp-plan-program-section.is-focused{border-color:color-mix(in srgb,var(--pgp-plan-accent) 34%,#e4e7ec);box-shadow:0 16px 42px color-mix(in srgb,var(--pgp-plan-accent) 12%,transparent)}
@media(max-width:640px){.pgp-plan-focus-bar{align-items:flex-start;flex-direction:column}.pgp-plan-focus-bar>a{padding-left:49px}.pgp-plan-program-section[id],.pgp-plan-focus-bar[id]{scroll-margin-top:88px}}

@media(prefers-reduced-motion:reduce){.pgp-exam-state.is-running:before,.pgp-exam-overview-state.is-running:before,.pgp-program-live-card.is-running .pgp-program-live-badge:before,.pgp-program-exam-state.is-running:before,.pgp-exam-state-tabs a.pgp-exam-live-tab.has-live:before{animation:none!important;box-shadow:none!important}}


/* v0.13.28 cohesive UX polish */
.pgp-subject-practice .pgp-practice-card{border-top-color:var(--pgp-program-accent,#6d28d9);background:linear-gradient(180deg,color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 4.5%,#fff),#fff 84px)}
.pgp-subject-practice .pgp-practice-card .pgp-practice-program{color:color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 68%,#475569)}
.pgp-subject-practice .pgp-practice-card .pgp-practice-type{background:color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 11%,#fff);color:color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 76%,#111827)}
.pgp-exam-directory-card-clean:not(.is-running),.pgp-exam-open-card{border-top:3px solid var(--pgp-program-accent,#6d28d9)}
.pgp-exam-directory-card-clean .pgp-exam-directory-program,.pgp-exam-open-card .pgp-exam-directory-program{color:color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 66%,#475569)}
.pgp-exam-state.is-running{border-color:#bbf7d0;background:#ecfdf3;color:#047857}
.pgp-exam-state.is-running:before{display:none}
.pgp-exam-state.is-running.is-live-exam{border-color:#fecaca;background:#fef2f2;color:#b91c1c}
.pgp-exam-state.is-running.is-live-exam:before{display:block}
.pgp-result-stats{grid-template-columns:repeat(5,minmax(0,1fr))}
.pgp-result-stat.is-correct{border-color:#bbf7d0;background:#f0fdf4}.pgp-result-stat.is-correct strong{color:#047857}
.pgp-result-stat.is-wrong{border-color:#fecaca;background:#fff7f7}.pgp-result-stat.is-wrong strong{color:#b91c1c}
.pgp-result-stat.is-unanswered{background:#f8fafc}.pgp-result-stat.is-unanswered strong{color:#475569}
.pgp-result-stat.is-accuracy{border-color:#ddd6fe;background:#faf5ff}.pgp-result-stat.is-accuracy strong{color:#6d28d9}
.pgp-dashboard-next-actions{display:grid;gap:12px;margin-top:4px}.pgp-next-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pgp-next-action-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;overflow:hidden;padding:17px 18px;border:1px solid color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 20%,#e2e8f0);border-left:4px solid var(--pgp-program-accent,#6d28d9);border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 7%,#fff),#fff);box-shadow:0 8px 22px rgba(15,23,42,.05)}.pgp-next-action-card>div{min-width:0}.pgp-next-action-card small{display:block;margin-bottom:3px;color:color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 70%,#475569);font-size:10px;font-weight:800}.pgp-next-action-card h3{margin:0 0 4px;font-size:17px;line-height:1.3}.pgp-next-action-card p{margin:0;color:#64748b;font-size:11.5px;line-height:1.45}.pgp-next-action-status{grid-column:1/-1;display:inline-flex;width:max-content;padding:5px 8px;border-radius:999px;background:#f1f5f9;color:#475569;font-size:9px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.pgp-next-action-card.is-live .pgp-next-action-status{gap:6px;background:#fef2f2;color:#b91c1c}.pgp-next-action-card.is-live .pgp-next-action-status:before{content:"";width:6px;height:6px;border-radius:50%;background:#ef4444;animation:pgp-live-pulse 1.65s ease-out infinite}.pgp-next-action-card .pgp-button{white-space:nowrap}
.pgp-plan-status-badge.is-value{background:color-mix(in srgb,var(--pgp-plan-accent,#6d28d9) 12%,#fff);color:color-mix(in srgb,var(--pgp-plan-accent,#6d28d9) 76%,#111827);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--pgp-plan-accent,#6d28d9) 22%,#e2e8f0)}
.pgp-plan-equivalent{display:block;margin-top:5px;color:#64748b;font-size:10.5px;font-weight:750}
@media(max-width:900px){.pgp-result-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.pgp-next-action-grid{grid-template-columns:1fr}}
@media(max-width:640px){.pgp-result-stats{grid-template-columns:1fr 1fr}.pgp-next-action-card{grid-template-columns:1fr}.pgp-next-action-card .pgp-button{width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){.pgp-next-action-card.is-live .pgp-next-action-status:before{animation:none}}

@media(max-width:520px){.pgp-profile-photo-editor{grid-template-columns:1fr;justify-items:start}.pgp-profile-photo-preview{width:84px;height:84px}.pgp-profile-photo-preview img{width:78px;height:78px;border-radius:18px}}

/* v0.13.44 Question report / content flagging */
.pgp-report-question,.pgp-review-report-button{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:#b45309;font:inherit;font-size:11px;font-weight:800;line-height:1.2;cursor:pointer}.pgp-report-question:hover,.pgp-review-report-button:hover{color:#92400e;text-decoration:underline}.pgp-report-question .pgp-icon,.pgp-review-report-button .pgp-icon{width:15px;height:15px}.pgp-report-question:disabled{opacity:.5;cursor:not-allowed;text-decoration:none}.pgp-review-card-actions{display:flex;flex:0 0 auto;flex-direction:column;align-items:flex-end;gap:8px}.pgp-review-report-button{padding:3px 0}.pgp-report-modal-open{overflow:hidden}.pgp-question-report-modal{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:20px}.pgp-question-report-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(15,23,42,.55);backdrop-filter:blur(3px);cursor:pointer}.pgp-question-report-dialog{position:relative;width:min(100%,560px);max-height:min(88vh,720px);overflow:auto;padding:24px;border:1px solid #e5e7eb;border-radius:20px;background:#fff;box-shadow:0 30px 80px rgba(15,23,42,.28)}.pgp-question-report-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}.pgp-question-report-dialog h3{margin:4px 0 7px;font-size:24px;line-height:1.2}.pgp-question-report-dialog header p{max-width:470px;margin:0;color:#667085;font-size:13px;line-height:1.55}.pgp-question-report-close{display:grid;place-items:center;width:36px;height:36px;flex:0 0 auto;border:1px solid #e5e7eb;border-radius:10px;background:#fff;color:#475467;cursor:pointer}.pgp-question-report-close .pgp-icon{width:18px}.pgp-question-report-dialog form{display:grid;gap:16px}.pgp-report-field{display:grid;gap:7px;color:#344054;font-size:12px;font-weight:800}.pgp-report-field span small{color:#98a2b3;font-weight:600}.pgp-report-field select,.pgp-report-field textarea{width:100%;border:1px solid #d0d5dd;border-radius:11px;background:#fff;color:#101828;font:inherit;font-size:14px;font-weight:500;outline:none}.pgp-report-field select{min-height:44px;padding:0 12px}.pgp-report-field textarea{min-height:108px;padding:11px 12px;line-height:1.5;resize:vertical}.pgp-report-field select:focus,.pgp-report-field textarea:focus{border-color:#8b5cf6;box-shadow:0 0 0 3px rgba(139,92,246,.12)}.pgp-question-report-state{min-height:20px;font-size:12px;font-weight:700}.pgp-question-report-state .is-error{color:#b42318}.pgp-question-report-state .is-success{display:flex;align-items:center;gap:6px;color:#027a48}.pgp-question-report-state .pgp-icon{width:15px}.pgp-question-report-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:2px}.pgp-question-report-actions .pgp-button{min-height:42px}.pgp-question-report-actions .pgp-button .pgp-icon{width:16px}
@media(max-width:640px){.pgp-review-card-header{flex-wrap:wrap}.pgp-review-card-actions{width:100%;flex-direction:row;align-items:center;justify-content:space-between;padding-left:43px}.pgp-question-report-modal{align-items:end;padding:10px}.pgp-question-report-dialog{width:100%;max-height:92vh;padding:20px 18px;border-radius:20px 20px 14px 14px}.pgp-question-report-actions{display:grid;grid-template-columns:1fr 1fr}.pgp-question-report-actions .pgp-button{justify-content:center}}

/* v0.13.51 transparent negative-mark score breakdown */
.pgp-score-breakdown{display:inline-flex;align-items:center;gap:6px;width:max-content;max-width:100%;margin-top:8px;padding:4px 8px;border:1px solid #fde68a;border-radius:999px;background:#fffbeb}.pgp-score-breakdown span{color:#92400e;font-size:9px;font-weight:800;letter-spacing:.045em;text-transform:uppercase}.pgp-score-breakdown strong{color:#78350f;font-size:11px;font-weight:800;font-variant-numeric:tabular-nums}

/* v0.13.52 compact Exam Runner answer tools */
.pgp-app.pgp-exam-runner .pgp-answer-tools{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:6px!important;
}
.pgp-app.pgp-exam-runner button.pgp-clear-answer,
.pgp-app.pgp-exam-runner button.pgp-review-toggle,
.pgp-app.pgp-exam-runner button.pgp-report-question{
  appearance:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  width:auto!important;
  min-width:0!important;
  min-height:28px!important;
  height:28px!important;
  margin:0!important;
  padding:4px 8px!important;
  border:1px solid #e4e7ec!important;
  border-radius:8px!important;
  background:#fff!important;
  box-shadow:none!important;
  font:inherit!important;
  font-size:10.5px!important;
  font-weight:760!important;
  line-height:1!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  transform:none!important;
  filter:none!important;
}
.pgp-app.pgp-exam-runner button.pgp-clear-answer .pgp-icon,
.pgp-app.pgp-exam-runner button.pgp-review-toggle .pgp-icon,
.pgp-app.pgp-exam-runner button.pgp-report-question .pgp-icon{
  width:13px!important;
  height:13px!important;
}
.pgp-app.pgp-exam-runner button.pgp-clear-answer{
  color:#667085!important;
}
.pgp-app.pgp-exam-runner button.pgp-clear-answer:hover,
.pgp-app.pgp-exam-runner button.pgp-clear-answer:focus-visible{
  border-color:#fecaca!important;
  background:#fff7f7!important;
  color:#b42318!important;
  box-shadow:none!important;
  text-decoration:none!important;
}
.pgp-app.pgp-exam-runner button.pgp-review-toggle{
  color:#475467!important;
}
.pgp-app.pgp-exam-runner button.pgp-review-toggle:hover,
.pgp-app.pgp-exam-runner button.pgp-review-toggle:focus-visible{
  border-color:#ddd6fe!important;
  background:#faf5ff!important;
  color:#6d28d9!important;
  box-shadow:none!important;
  text-decoration:none!important;
}
.pgp-app.pgp-exam-runner button.pgp-review-toggle.is-marked{
  border-color:#fde68a!important;
  background:#fffbeb!important;
  color:#92400e!important;
}
.pgp-app.pgp-exam-runner button.pgp-review-toggle.is-marked .pgp-icon{
  fill:#facc15!important;
  stroke:#92400e!important;
}
.pgp-app.pgp-exam-runner button.pgp-report-question{
  border-color:#fed7aa!important;
  background:#fffaf5!important;
  color:#9a3412!important;
}
.pgp-app.pgp-exam-runner button.pgp-report-question:hover,
.pgp-app.pgp-exam-runner button.pgp-report-question:focus-visible{
  border-color:#fdba74!important;
  background:#fff7ed!important;
  color:#7c2d12!important;
  box-shadow:none!important;
  text-decoration:none!important;
}
.pgp-app.pgp-exam-runner .pgp-keyboard-hint{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  min-height:24px!important;
  margin-left:2px!important;
  padding:3px 6px!important;
  border:0!important;
  border-left:1px solid #e4e7ec!important;
  border-radius:0!important;
  background:transparent!important;
  color:#98a2b3!important;
  font-size:9.5px!important;
  font-weight:650!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.pgp-app.pgp-exam-runner .pgp-keyboard-hint strong{
  color:#667085!important;
  font-size:9.5px!important;
  font-weight:850!important;
}
@container pgp-exam-runner (max-width:620px){
  .pgp-app.pgp-exam-runner .pgp-answer-tools{gap:6px!important}
  .pgp-app.pgp-exam-runner button.pgp-clear-answer,
  .pgp-app.pgp-exam-runner button.pgp-review-toggle,
  .pgp-app.pgp-exam-runner button.pgp-report-question{
    min-height:27px!important;
    height:27px!important;
    padding:4px 7px!important;
    font-size:10px!important;
  }
  .pgp-app.pgp-exam-runner .pgp-keyboard-hint{display:none!important}
}


/* v0.13.53 scoring consistency + report modal visibility */
.pgp-question-report-modal{
  --pgp-primary:#4f46e5;
  --pgp-violet:#7c3aed;
  --pgp-surface:#fff;
  --pgp-surface-soft:#f8fafc;
  --pgp-border:#e4e7ec;
  --pgp-ink:#101828;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
.pgp-question-report-actions button[type="submit"].pgp-button{
  min-width:158px!important;
  border-color:transparent!important;
  background:linear-gradient(135deg,#4f46e5,#7c3aed)!important;
  box-shadow:0 8px 18px rgba(79,70,229,.22)!important;
  color:#fff!important;
  opacity:1;
  visibility:visible;
}
.pgp-question-report-actions button[type="submit"].pgp-button:hover,
.pgp-question-report-actions button[type="submit"].pgp-button:focus-visible{
  background:linear-gradient(135deg,#4338ca,#6d28d9)!important;
  color:#fff!important;
}
.pgp-question-report-actions button[type="submit"].pgp-button:disabled{
  opacity:.58!important;
}
.pgp-question-report-actions .pgp-button-secondary{
  border:1px solid #d0d5dd!important;
  background:#fff!important;
  box-shadow:none!important;
  color:#101828!important;
}
.pgp-question-report-actions .pgp-button-secondary:hover,
.pgp-question-report-actions .pgp-button-secondary:focus-visible{
  background:#f8fafc!important;
  color:#101828!important;
}

/* v0.13.54 clearer final-score equation; final marks are not a percentage */
.pgp-score-breakdown{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px 10px;
  width:max-content;
  max-width:100%;
  margin-top:10px;
  padding:7px 10px;
  border:1px solid #e2e8f0;
  border-radius:12px;
  background:rgba(255,255,255,.78);
  box-shadow:0 4px 12px rgba(15,23,42,.035);
}
.pgp-score-breakdown .pgp-score-breakdown-label{
  color:#64748b;
  font-size:9px;
  font-weight:850;
  letter-spacing:.055em;
  text-transform:uppercase;
}
.pgp-score-equation{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
  color:#334155;
  font-size:11.5px;
  font-weight:750;
  font-variant-numeric:tabular-nums;
}
.pgp-score-equation span{font-size:inherit;letter-spacing:0;text-transform:none}
.pgp-score-equation b{font-weight:900}
.pgp-score-equation i{color:#94a3b8;font-style:normal;font-weight:900}
.pgp-score-equation .is-correct{color:#047857}
.pgp-score-equation .is-wrong{color:#b91c1c}
.pgp-score-equation .is-net{
  padding:3px 7px;
  border-radius:7px;
  background:#f1f5f9;
  color:#0f172a;
  font-size:12px;
  font-weight:900;
}
.pgp-score-ring strong{font-variant-numeric:tabular-nums}
@media(max-width:640px){
  .pgp-score-breakdown{align-items:flex-start;width:100%}
  .pgp-score-breakdown .pgp-score-breakdown-label{width:100%}
}


/* v0.13.55 result hierarchy: final score -> answer counts -> accuracy/rank insights */
.pgp-result-hero{
  grid-template-columns:210px minmax(0,1fr);
  gap:32px;
  padding:32px 34px;
}
.pgp-score-ring{
  width:176px;
  height:176px;
  box-shadow:0 16px 36px rgba(79,70,229,.13);
}
.pgp-score-ring:before{width:138px;height:138px}
.pgp-score-ring>div{display:grid;justify-items:center;gap:3px}
.pgp-score-ring small{
  color:#7c3aed;
  font-size:9px;
  font-weight:900;
  letter-spacing:.08em;
  line-height:1;
  text-transform:uppercase;
}
.pgp-score-ring strong{font-size:38px;line-height:1.02}
.pgp-score-ring span{font-size:11px}
.pgp-result-copy h2{margin-bottom:6px}
.pgp-result-copy>p{margin:0;color:#64748b}
.pgp-result-counts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:18px;
}
.pgp-result-counts .pgp-result-stat{
  min-height:72px;
  padding:12px 14px;
  border-radius:12px;
  box-shadow:none;
}
.pgp-result-counts .pgp-result-stat span{
  font-size:9.5px;
  font-weight:850;
  letter-spacing:.045em;
}
.pgp-result-counts .pgp-result-stat strong{
  margin-top:4px;
  font-size:22px;
  font-variant-numeric:tabular-nums;
  line-height:1.05;
}
.pgp-result-insights{
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);
  gap:10px;
  margin-top:10px;
}
.pgp-result-insight{
  position:relative;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  align-items:center;
  gap:11px;
  min-height:82px;
  padding:12px 14px;
  overflow:hidden;
  border:1px solid #e2e8f0;
  border-radius:13px;
  background:rgba(255,255,255,.88);
}
.pgp-result-insight-icon{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:11px;
  background:#f1f5f9;
  color:#475569;
}
.pgp-result-insight-icon .pgp-icon{width:18px;height:18px}
.pgp-result-insight-copy{min-width:0}
.pgp-result-insight-copy>span{
  display:block;
  color:#64748b;
  font-size:9.5px;
  font-weight:850;
  letter-spacing:.055em;
  line-height:1.15;
  text-transform:uppercase;
}
.pgp-result-insight-copy>strong{
  display:block;
  margin-top:2px;
  color:#0f172a;
  font-size:24px;
  font-weight:900;
  font-variant-numeric:tabular-nums;
  letter-spacing:-.025em;
  line-height:1.05;
}
.pgp-result-insight-copy>small{
  display:block;
  margin-top:4px;
  overflow:hidden;
  color:#64748b;
  font-size:10.5px;
  font-weight:650;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.pgp-result-insight.is-accuracy{
  padding-bottom:18px;
  border-color:#ddd6fe;
  background:linear-gradient(135deg,#faf5ff,#fff 72%);
}
.pgp-result-insight.is-accuracy .pgp-result-insight-icon{background:#ede9fe;color:#6d28d9}
.pgp-result-insight.is-accuracy .pgp-result-insight-copy>strong{color:#6d28d9}
.pgp-result-insight-track{
  position:absolute;
  right:14px;
  bottom:9px;
  left:63px;
  height:4px;
  overflow:hidden;
  border-radius:999px;
  background:#ede9fe;
}
.pgp-result-insight-track i{
  display:block;
  width:calc(var(--metric,0)*1%);
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#7c3aed,#4f46e5);
}
.pgp-result-insight.is-rank{
  border-color:#fde68a;
  background:linear-gradient(135deg,#fffbeb,#fff 78%);
}
.pgp-result-insight.is-rank .pgp-result-insight-icon{background:#fef3c7;color:#b45309}
.pgp-result-insight.is-rank .pgp-result-insight-copy>strong{color:#92400e}
.pgp-result-insight.is-duration .pgp-result-insight-icon{background:#eff6ff;color:#2563eb}
.pgp-result-actions{margin-top:18px}
/* Retire the old equal-weight five-card layout for the rebuilt result summary. */
.pgp-result-copy>.pgp-result-stats{display:none}
@media(max-width:900px){
  .pgp-result-hero{grid-template-columns:180px minmax(0,1fr);gap:24px;padding:28px 24px}
  .pgp-score-ring{width:156px;height:156px}
  .pgp-score-ring:before{width:122px;height:122px}
  .pgp-score-ring strong{font-size:34px}
}
@media(max-width:720px){
  .pgp-result-hero{grid-template-columns:1fr;padding:24px 18px}
  .pgp-result-insights{grid-template-columns:1fr}
  .pgp-result-insight-copy>small{white-space:normal}
}
@media(max-width:520px){
  .pgp-result-counts{gap:7px}
  .pgp-result-counts .pgp-result-stat{min-height:66px;padding:10px}
  .pgp-result-counts .pgp-result-stat span{font-size:8.5px}
  .pgp-result-counts .pgp-result-stat strong{font-size:20px}
  .pgp-result-insight{grid-template-columns:34px minmax(0,1fr);min-height:76px;padding:11px 12px}
  .pgp-result-insight-icon{width:34px;height:34px;border-radius:10px}
  .pgp-result-insight-copy>strong{font-size:22px}
  .pgp-result-insight-track{right:12px;left:57px}
}

/* v0.13.59 explicit answer-confidence tags: Unsure / Guess only */
.pgp-app.pgp-exam-runner .pgp-confidence-tools{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  min-height:28px!important;
  padding-left:2px!important;
}
.pgp-app.pgp-exam-runner .pgp-confidence-label{
  margin-right:1px!important;
  color:#98a2b3!important;
  font-size:9.5px!important;
  font-weight:700!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.pgp-app.pgp-exam-runner button.pgp-confidence-toggle{
  appearance:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:0!important;
  min-height:26px!important;
  height:26px!important;
  margin:0!important;
  padding:4px 8px!important;
  border:1px solid #e4e7ec!important;
  border-radius:999px!important;
  background:#fff!important;
  box-shadow:none!important;
  color:#667085!important;
  font:inherit!important;
  font-size:10px!important;
  font-weight:800!important;
  line-height:1!important;
  white-space:nowrap!important;
  cursor:pointer!important;
  transform:none!important;
}
.pgp-app.pgp-exam-runner button.pgp-confidence-toggle:hover:not(:disabled),
.pgp-app.pgp-exam-runner button.pgp-confidence-toggle:focus-visible:not(:disabled){
  border-color:#c4b5fd!important;
  background:#faf5ff!important;
  color:#6d28d9!important;
}
.pgp-app.pgp-exam-runner button.pgp-confidence-toggle[data-confidence="unsure"].is-active{
  border-color:#fcd34d!important;
  background:#fffbeb!important;
  color:#92400e!important;
}
.pgp-app.pgp-exam-runner button.pgp-confidence-toggle[data-confidence="guess"].is-active{
  border-color:#c4b5fd!important;
  background:#f5f3ff!important;
  color:#6d28d9!important;
}
.pgp-app.pgp-exam-runner button.pgp-confidence-toggle:disabled{
  opacity:.42!important;
  cursor:not-allowed!important;
}
@container pgp-exam-runner (max-width:620px){
  .pgp-app.pgp-exam-runner .pgp-confidence-tools{gap:3px!important}
  .pgp-app.pgp-exam-runner .pgp-confidence-label{display:none!important}
  .pgp-app.pgp-exam-runner button.pgp-confidence-toggle{height:25px!important;min-height:25px!important;padding:4px 7px!important;font-size:9.5px!important}
}

/* v0.13.60 advanced result analytics: confidence, switching, subject, difficulty, timing and strategy */
.pgp-result-analytics{display:grid;gap:16px;padding:2px 0 8px}.pgp-result-analytics-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:2px 2px}.pgp-result-analytics-head h2{margin:4px 0 5px;font-size:26px;letter-spacing:-.03em}.pgp-result-analytics-head p{max-width:700px;margin:0;color:#64748b;font-size:12.5px;line-height:1.55}.pgp-result-context-badges{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:7px}.pgp-result-context-badges>span{display:inline-flex;align-items:center;gap:5px;padding:7px 9px;border:1px solid #e2e8f0;border-radius:999px;background:#fff;color:#64748b;font-size:10px;font-weight:750;white-space:nowrap}.pgp-result-context-badges .pgp-icon{width:13px;height:13px;color:#7c3aed}.pgp-result-context-badges b{color:#0f172a;font-variant-numeric:tabular-nums}.pgp-result-context-badges b.is-positive{color:#047857}.pgp-result-context-badges b.is-negative{color:#b91c1c}
.pgp-analytics-tracking-note{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border:1px solid #dbeafe;border-radius:12px;background:#eff6ff;color:#475569;font-size:10.5px;line-height:1.5}.pgp-analytics-tracking-note .pgp-icon{width:15px;height:15px;flex:0 0 auto;color:#2563eb}
.pgp-result-coach{display:grid;grid-template-columns:minmax(220px,.68fr) minmax(0,1.32fr);gap:18px;padding:17px 18px;border:1px solid #ddd6fe;border-radius:17px;background:linear-gradient(135deg,#faf5ff,#fff 72%);box-shadow:0 8px 24px rgba(76,29,149,.055)}.pgp-result-coach>header{display:flex;align-items:flex-start;gap:10px}.pgp-result-coach>header>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border-radius:10px;background:#ede9fe;color:#6d28d9}.pgp-result-coach>header .pgp-icon{width:17px;height:17px}.pgp-result-coach h3{margin:3px 0 0;font-size:17px}.pgp-result-coach>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.pgp-result-coach p{position:relative;margin:0;padding:9px 10px 9px 22px;border:1px solid #eeeaf8;border-radius:11px;background:rgba(255,255,255,.78);color:#475569;font-size:10.5px;line-height:1.45}.pgp-result-coach p:before{content:"";position:absolute;left:10px;top:14px;width:5px;height:5px;border-radius:50%;background:#7c3aed}
.pgp-analytics-top-grid,.pgp-analytics-bottom-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pgp-analytics-card,.pgp-analytics-table-card{overflow:hidden;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 7px 22px rgba(15,23,42,.045)}.pgp-analytics-card{display:grid;align-content:start;gap:13px;padding:16px}.pgp-analytics-card>header{display:flex;align-items:flex-start;gap:10px}.pgp-analytics-card>header>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border-radius:10px;background:#f1f5f9;color:#475569}.pgp-analytics-card>header .pgp-icon{width:17px;height:17px}.pgp-analytics-card h4{margin:0;color:#0f172a;font-size:14px}.pgp-analytics-card header p{margin:3px 0 0;color:#94a3b8;font-size:9.5px;line-height:1.4}.pgp-analytics-card>footer{display:flex;align-items:center;justify-content:space-between;gap:9px;padding-top:10px;border-top:1px solid #f1f5f9;color:#64748b;font-size:9.5px}.pgp-analytics-card>footer b,.pgp-analytics-card>footer strong{color:#0f172a;font-size:11px;font-variant-numeric:tabular-nums}.pgp-analytics-card .is-positive{color:#047857!important}.pgp-analytics-card .is-negative{color:#b91c1c!important}
.pgp-confidence-analysis>header>span{background:#f5f3ff;color:#7c3aed}.pgp-confidence-analysis-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pgp-confidence-analysis-grid>div{padding:11px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc}.pgp-confidence-analysis-grid>div.is-guess{border-color:#fed7aa;background:#fff7ed}.pgp-confidence-analysis-grid span{display:block;color:#64748b;font-size:9px;font-weight:850;text-transform:uppercase}.pgp-confidence-analysis-grid strong{display:block;margin:3px 0;color:#0f172a;font-size:24px;line-height:1;font-variant-numeric:tabular-nums}.pgp-confidence-analysis-grid small{color:#64748b;font-size:9px;line-height:1.35}
.pgp-analytics-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.pgp-analytics-metrics>div{padding:9px 10px;border-radius:10px;background:#f8fafc}.pgp-analytics-metrics span{display:block;color:#64748b;font-size:8.7px;font-weight:750}.pgp-analytics-metrics strong{display:block;margin-top:2px;color:#0f172a;font-size:18px;font-variant-numeric:tabular-nums}.pgp-analytics-metrics .is-good{background:#ecfdf5}.pgp-analytics-metrics .is-good strong{color:#047857}.pgp-analytics-metrics .is-bad{background:#fef2f2}.pgp-analytics-metrics .is-bad strong{color:#b91c1c}.pgp-change-analysis>header>span{background:#eff6ff;color:#2563eb}
.pgp-penalty-analysis>header>span{background:#fef2f2;color:#dc2626}.pgp-penalty-total{padding:11px 12px;border:1px solid #fecaca;border-radius:12px;background:#fff7f7}.pgp-penalty-total span,.pgp-penalty-total small{display:block;color:#7f1d1d;font-size:9px}.pgp-penalty-total strong{display:block;margin:2px 0;color:#b91c1c;font-size:25px;line-height:1;font-variant-numeric:tabular-nums}.pgp-analytics-mini-list{display:grid;gap:5px}.pgp-analytics-mini-list>span{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#64748b;font-size:9.5px}.pgp-analytics-mini-list b{font-weight:700}.pgp-analytics-mini-list strong{color:#b91c1c;font-variant-numeric:tabular-nums}
.pgp-analytics-table-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:12px}.pgp-analytics-table-card>header{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:15px 16px 11px;border-bottom:1px solid #f1f5f9}.pgp-analytics-table-card h3{margin:3px 0 0;font-size:16px}.pgp-analytics-table-card header>small{color:#94a3b8;font-size:9px}.pgp-analytics-table-wrap{overflow-x:auto}.pgp-analytics-table-card table{width:100%;border-collapse:collapse;font-size:10px}.pgp-analytics-table-card th,.pgp-analytics-table-card td{padding:9px 11px;border-bottom:1px solid #f1f5f9;text-align:center;white-space:nowrap}.pgp-analytics-table-card thead th{background:#f8fafc;color:#64748b;font-size:8.5px;font-weight:850;text-transform:uppercase}.pgp-analytics-table-card tbody th{text-align:left;color:#334155;font-weight:750}.pgp-analytics-table-card td{color:#64748b;font-variant-numeric:tabular-nums}.pgp-analytics-table-card td strong{color:#0f172a}.pgp-analytics-table-card td.is-correct{color:#059669;font-weight:850}.pgp-analytics-table-card td.is-wrong{color:#dc2626;font-weight:850}.pgp-analytics-table-card tr:last-child th,.pgp-analytics-table-card tr:last-child td{border-bottom:0}.pgp-analytics-empty{text-align:left!important;color:#94a3b8!important;font-style:italic}
.pgp-time-analysis>header>span{background:#eff6ff;color:#2563eb}.pgp-time-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.pgp-time-summary-grid>div{padding:9px;border-radius:10px;background:#f8fafc}.pgp-time-summary-grid span{display:block;color:#94a3b8;font-size:8.5px;font-weight:750;text-transform:uppercase}.pgp-time-summary-grid strong{display:block;margin-top:2px;color:#334155;font-size:12px;font-variant-numeric:tabular-nums}.pgp-pace-comparison{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.pgp-pace-comparison>span{padding:5px 7px;border-radius:8px;background:#f8fafc;color:#64748b;font-size:8.8px}.pgp-pace-comparison b{color:#0f172a}.pgp-pace-comparison .is-warning{width:100%;color:#b45309;font-size:9px}
.pgp-speed-analysis>header>span{background:#f5f3ff;color:#7c3aed}.pgp-speed-matrix{display:grid;grid-template-columns:1fr 1fr;gap:7px}.pgp-speed-matrix>div{padding:10px;border:1px solid #e2e8f0;border-radius:10px}.pgp-speed-matrix span{display:block;color:#64748b;font-size:8.5px}.pgp-speed-matrix strong{display:block;margin-top:2px;color:#334155;font-size:18px;font-variant-numeric:tabular-nums}.pgp-speed-matrix .is-good{border-color:#bbf7d0;background:#f0fdf4}.pgp-speed-matrix .is-good strong{color:#047857}.pgp-speed-matrix .is-risk{border-color:#fecaca;background:#fef2f2}.pgp-speed-matrix .is-risk strong{color:#b91c1c}.pgp-review-analysis>header>span{background:#fffbeb;color:#b45309}
.pgp-review-intelligence{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin-top:7px}.pgp-review-intelligence span{display:inline-flex;padding:4px 6px;border:1px solid #e2e8f0;border-radius:999px;background:#f8fafc;color:#64748b;font-size:8.5px;font-weight:750;line-height:1}.pgp-review-intelligence .is-guess{border-color:#fed7aa;background:#fff7ed;color:#b45309}.pgp-review-intelligence .is-unsure{border-color:#ddd6fe;background:#faf5ff;color:#7c3aed}.pgp-review-intelligence .is-changed{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.pgp-review-intelligence .is-review{border-color:#fde68a;background:#fffbeb;color:#92400e}
@media(max-width:980px){.pgp-analytics-top-grid,.pgp-analytics-bottom-grid{grid-template-columns:1fr 1fr}.pgp-analytics-top-grid>.pgp-analytics-card:last-child,.pgp-analytics-bottom-grid>.pgp-analytics-card:last-child{grid-column:1/-1}.pgp-analytics-table-grid{grid-template-columns:1fr}.pgp-result-coach{grid-template-columns:1fr}.pgp-result-coach>div{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.pgp-result-analytics-head{align-items:flex-start;flex-direction:column}.pgp-result-context-badges{justify-content:flex-start}.pgp-analytics-top-grid,.pgp-analytics-bottom-grid{grid-template-columns:1fr}.pgp-analytics-top-grid>.pgp-analytics-card:last-child,.pgp-analytics-bottom-grid>.pgp-analytics-card:last-child{grid-column:auto}.pgp-result-coach>div{grid-template-columns:1fr}.pgp-analytics-table-card th,.pgp-analytics-table-card td{padding:8px 9px}.pgp-review-intelligence{padding-right:4px}}

/* v0.13.60 option-elimination telemetry and analytics */
.pgp-exam-runner .pgp-option-line{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:stretch;gap:7px}
.pgp-exam-runner .pgp-option-line>label.pgp-option{height:100%;margin:0}
.pgp-exam-runner .pgp-option-eliminate{display:grid;place-items:center;width:34px;min-width:34px;height:34px;align-self:center;padding:0!important;border:1px solid #d9dee8!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important;color:#94a3b8!important;font-size:19px!important;font-weight:500!important;line-height:1!important;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease,transform .15s ease}
.pgp-exam-runner .pgp-option-eliminate:hover:not(:disabled){border-color:#f59e0b!important;background:#fffbeb!important;color:#b45309!important;transform:translateY(-1px)}
.pgp-exam-runner .pgp-option-eliminate.is-active{border-color:#fbbf24!important;background:#fff7ed!important;color:#c2410c!important}
.pgp-exam-runner .pgp-option-eliminate:disabled{opacity:.28;cursor:not-allowed}
.pgp-exam-runner .pgp-option-line.is-eliminated label.pgp-option{border-color:#e5e7eb!important;background:#f8fafc!important;box-shadow:none!important}
.pgp-exam-runner .pgp-option-line.is-eliminated .pgp-option-text{text-decoration:line-through!important;text-decoration-thickness:1.5px!important;text-decoration-color:#94a3b8!important;color:#94a3b8!important;opacity:.82}
.pgp-exam-runner .pgp-option-line.is-eliminated .pgp-option-key{border-color:#e2e8f0!important;background:#f1f5f9!important;color:#94a3b8!important}
.pgp-exam-runner .pgp-option-line.is-eliminated .pgp-option-check{opacity:.45}
.pgp-elimination-analysis>header>span{background:#fff7ed!important;color:#c2410c!important}
.pgp-elimination-analysis .pgp-elimination-score{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:10px 11px;border:1px solid #fed7aa;border-radius:11px;background:#fffaf5}
.pgp-elimination-analysis .pgp-elimination-score span{color:#9a3412;font-size:9px;font-weight:750}
.pgp-elimination-analysis .pgp-elimination-score strong{color:#c2410c;font-size:22px;font-variant-numeric:tabular-nums}
.pgp-review-intelligence .is-eliminated{border-color:#fed7aa;background:#fff7ed;color:#c2410c}
@media(max-width:640px){.pgp-exam-runner .pgp-option-line{grid-template-columns:minmax(0,1fr) 30px;gap:5px}.pgp-exam-runner .pgp-option-eliminate{width:30px;min-width:30px;height:30px;border-radius:9px!important;font-size:17px!important}}
.pgp-analytics-top-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.pgp-topic-analysis{width:100%}.pgp-topic-analysis .pgp-topic-subject{display:block;margin-bottom:2px;color:#94a3b8;font-size:8px;font-weight:700;line-height:1.2}.pgp-topic-analysis tbody th{min-width:180px;white-space:normal}
.pgp-time-extremes{display:grid;gap:4px;padding-top:8px;border-top:1px solid #f1f5f9}.pgp-time-extremes>span{display:flex;align-items:center;flex-wrap:wrap;gap:5px;color:#94a3b8;font-size:8.5px}.pgp-time-extremes b{padding:3px 5px;border-radius:6px;background:#f8fafc;color:#475569;font-size:8.5px;font-variant-numeric:tabular-nums}
@media(max-width:1180px){.pgp-analytics-top-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.pgp-analytics-top-grid{grid-template-columns:1fr}.pgp-topic-analysis tbody th{min-width:150px}}

/* v0.13.61 — separate navigation from the final review action and add a true review stage. */
.pgp-app.pgp-exam-runner .pgp-quiz-actionbar{
  grid-template-columns:auto minmax(120px,1fr) auto 1px auto!important;
  gap:10px!important;
  padding:9px 10px!important;
}
.pgp-app.pgp-exam-runner .pgp-prev{grid-column:1!important}
.pgp-app.pgp-exam-runner .pgp-quiz-position{grid-column:2!important;grid-row:auto!important}
.pgp-app.pgp-exam-runner .pgp-next{grid-column:3!important}
.pgp-app.pgp-exam-runner .pgp-final-action-divider{
  display:block!important;
  grid-column:4!important;
  width:1px!important;
  height:30px!important;
  margin:0 2px!important;
  background:#e4e7ec!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-submit,
.pgp-app.pgp-exam-runner .pgp-quiz-submit:not(.is-primary),
.pgp-app.pgp-exam-runner .pgp-quiz-submit:not(.is-primary):hover,
.pgp-app.pgp-exam-runner .pgp-quiz-submit:not(.is-primary):focus-visible,
.pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary,
.pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary:hover,
.pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary:focus-visible{
  grid-column:5!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  min-width:190px!important;
  min-height:46px!important;
  height:46px!important;
  padding:7px 15px!important;
  border:1px solid #6d28d9!important;
  border-radius:11px!important;
  background:linear-gradient(135deg,#4f46e5,#7c3aed)!important;
  color:#fff!important;
  box-shadow:0 8px 20px -12px rgba(79,70,229,.85)!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-submit:hover{box-shadow:0 11px 24px -12px rgba(79,70,229,.95)!important;transform:translateY(-1px)}
.pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary{box-shadow:0 0 0 3px rgba(124,58,237,.12),0 10px 25px -12px rgba(79,70,229,.95)!important}
.pgp-app.pgp-exam-runner .pgp-submit-copy,
.pgp-app.pgp-exam-runner .pgp-submit-copy *,
.pgp-app.pgp-exam-runner .pgp-quiz-submit .pgp-icon{
  background:transparent!important;
  color:inherit!important;
}
.pgp-app.pgp-exam-runner .pgp-submit-copy{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:0!important;line-height:1.05!important}
.pgp-app.pgp-exam-runner .pgp-submit-copy strong{font-size:12px!important;font-weight:850!important;letter-spacing:-.01em!important}
.pgp-app.pgp-exam-runner .pgp-submit-copy small{margin-top:3px!important;font-size:8.5px!important;font-weight:700!important;letter-spacing:.035em!important;text-transform:uppercase!important;opacity:.78!important}
.pgp-app.pgp-exam-runner .pgp-quiz-submit .pgp-icon{width:18px!important;height:18px!important;flex:0 0 auto!important}

.pgp-exam-review-backdrop{padding:18px!important}
.pgp-exam-review-dialog{
  width:min(790px,96vw)!important;
  max-height:min(88vh,820px)!important;
  overflow:auto!important;
  padding:0!important;
  border:1px solid #e4e7ec!important;
  border-radius:22px!important;
  color:#172033!important;
  background:#fff!important;
  box-shadow:0 32px 90px rgba(15,23,42,.34)!important;
}
.pgp-exam-review-head{
  position:sticky!important;
  top:0!important;
  z-index:3!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:20px!important;
  align-items:center!important;
  padding:22px 24px 18px!important;
  border-bottom:1px solid #eef0f4!important;
  background:rgba(255,255,255,.97)!important;
  backdrop-filter:blur(10px)!important;
}
.pgp-exam-review-heading{display:flex!important;align-items:flex-start!important;gap:13px!important;min-width:0!important}
.pgp-exam-review-icon{display:grid!important;place-items:center!important;width:42px!important;height:42px!important;flex:0 0 42px!important;border-radius:13px!important;background:#ede9fe!important;color:#6d28d9!important}
.pgp-exam-review-icon .pgp-icon{width:21px!important;height:21px!important}
.pgp-exam-review-eyebrow{display:block!important;margin:0 0 4px!important;color:#6d28d9!important;font-size:9px!important;font-weight:900!important;letter-spacing:.14em!important}
.pgp-exam-review-dialog .pgp-exam-review-heading h3{margin:0 0 4px!important;color:#111827!important;font-size:21px!important;font-weight:850!important;letter-spacing:-.025em!important}
.pgp-exam-review-dialog .pgp-exam-review-heading p{margin:0!important;color:#667085!important;font-size:12px!important;line-height:1.45!important}
.pgp-exam-review-time{min-width:150px!important;padding:10px 12px!important;border:1px solid #ddd6fe!important;border-radius:12px!important;background:#faf8ff!important;text-align:right!important}
.pgp-exam-review-time>span{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:5px!important;color:#6d28d9!important;font-size:8.5px!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.05em!important}
.pgp-exam-review-time .pgp-icon{width:13px!important;height:13px!important}
.pgp-exam-review-time strong{display:block!important;margin-top:3px!important;color:#312e81!important;font-size:19px!important;font-variant-numeric:tabular-nums!important;letter-spacing:.035em!important}
.pgp-exam-review-time small{display:block!important;margin-top:1px!important;color:#8b84a8!important;font-size:8px!important}
.pgp-exam-review-summary{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:8px!important;
  margin:18px 24px!important;
}
.pgp-exam-review-summary>div{padding:11px 12px!important;border:1px solid #eef0f4!important;border-radius:11px!important;background:#f8fafc!important}
.pgp-exam-review-summary>div strong{font-size:20px!important;line-height:1!important}
.pgp-exam-review-summary>div span{display:block!important;margin-top:5px!important;color:#667085!important;font-size:9px!important;font-weight:750!important;text-transform:uppercase!important;letter-spacing:.025em!important}
.pgp-exam-review-summary .is-answered{border-color:#bbf7d0!important;background:#f0fdf4!important}.pgp-exam-review-summary .is-answered strong{color:#15803d!important}
.pgp-exam-review-summary .is-unanswered{border-color:#e2e8f0!important;background:#f8fafc!important}.pgp-exam-review-summary .is-unanswered strong{color:#475569!important}
.pgp-exam-review-summary .is-review{border-color:#fde68a!important;background:#fffbeb!important}.pgp-exam-review-summary .is-review strong{color:#a16207!important}
.pgp-exam-review-summary .is-unsure{border-color:#bfdbfe!important;background:#eff6ff!important}.pgp-exam-review-summary .is-unsure strong{color:#2563eb!important}
.pgp-exam-review-summary .is-guess{border-color:#ddd6fe!important;background:#f5f3ff!important}.pgp-exam-review-summary .is-guess strong{color:#7c3aed!important}
.pgp-exam-review-map{margin:0 24px 16px!important;padding:16px!important;border:1px solid #e7eaf0!important;border-radius:15px!important;background:#fbfcfe!important}
.pgp-exam-review-map-head{display:flex!important;justify-content:space-between!important;align-items:flex-end!important;gap:14px!important;margin-bottom:13px!important}
.pgp-exam-review-map-head>div:first-child strong{display:block!important;color:#1f2937!important;font-size:13px!important}.pgp-exam-review-map-head>div:first-child span{display:block!important;margin-top:2px!important;color:#8a94a6!important;font-size:9.5px!important}
.pgp-exam-review-legend{display:flex!important;flex-wrap:wrap!important;justify-content:flex-end!important;gap:6px 10px!important;color:#667085!important;font-size:8.5px!important;font-weight:700!important}
.pgp-exam-review-legend span{display:inline-flex!important;align-items:center!important;gap:4px!important}.pgp-exam-review-legend i{display:block!important;width:7px!important;height:7px!important;border-radius:50%!important;background:#cbd5e1!important}.pgp-exam-review-legend i.is-unanswered{background:#94a3b8!important}.pgp-exam-review-legend i.is-review{background:#eab308!important}.pgp-exam-review-legend i.is-unsure{background:#3b82f6!important}.pgp-exam-review-legend i.is-guess{background:#8b5cf6!important}
.pgp-exam-review-grid{display:grid!important;grid-template-columns:repeat(10,minmax(0,1fr))!important;gap:7px!important}
.pgp-review-question-button{position:relative!important;display:grid!important;place-items:center!important;aspect-ratio:1!important;min-width:0!important;padding:0!important;border:1px solid #dfe3ea!important;border-radius:9px!important;background:#fff!important;color:#475569!important;font-size:10.5px!important;font-weight:850!important;box-shadow:none!important;cursor:pointer!important}
.pgp-review-question-button:hover,.pgp-review-question-button:focus-visible{border-color:#8b5cf6!important;outline:none!important;box-shadow:0 0 0 3px rgba(139,92,246,.12)!important}
.pgp-review-question-button.is-answered{border-color:#bbf7d0!important;background:#f0fdf4!important;color:#15803d!important}
.pgp-review-question-button.is-unanswered{background:#fff!important;color:#64748b!important}
.pgp-review-question-button.is-review:after,.pgp-review-question-button.is-unsure:before,.pgp-review-question-button.is-guess:before{content:""!important;position:absolute!important;width:6px!important;height:6px!important;border-radius:50%!important;box-shadow:0 0 0 2px #fff!important}
.pgp-review-question-button.is-review:after{top:4px!important;right:4px!important;background:#eab308!important}
.pgp-review-question-button.is-unsure:before{bottom:4px!important;right:4px!important;background:#3b82f6!important}
.pgp-review-question-button.is-guess:before{bottom:4px!important;right:4px!important;background:#8b5cf6!important}
.pgp-exam-review-warning,.pgp-exam-review-ready{display:flex!important;align-items:flex-start!important;gap:9px!important;margin:0 24px 16px!important;padding:11px 13px!important;border-radius:11px!important;font-size:10.5px!important;line-height:1.45!important}
.pgp-exam-review-warning{border:1px solid #fed7aa!important;background:#fff7ed!important;color:#9a3412!important}.pgp-exam-review-ready{border:1px solid #bbf7d0!important;background:#f0fdf4!important;color:#166534!important}.pgp-exam-review-warning .pgp-icon,.pgp-exam-review-ready .pgp-icon{width:16px!important;height:16px!important;flex:0 0 auto!important;margin-top:1px!important}
.pgp-exam-review-actions{position:sticky!important;bottom:0!important;z-index:3!important;display:flex!important;flex-direction:row!important;justify-content:space-between!important;gap:12px!important;margin:0!important;padding:15px 24px 20px!important;border-top:1px solid #eef0f4!important;background:rgba(255,255,255,.97)!important;backdrop-filter:blur(10px)!important}
.pgp-exam-review-actions .pgp-button{min-height:43px!important;border-radius:10px!important;font-size:11.5px!important;font-weight:800!important}
.pgp-exam-review-actions .pgp-dialog-cancel{background:#fff!important;color:#475569!important}
.pgp-exam-review-actions .pgp-final-submit,.pgp-exam-review-actions .pgp-final-submit:hover,.pgp-exam-review-actions .pgp-final-submit:focus-visible{min-width:170px!important;border-color:#6d28d9!important;background:linear-gradient(135deg,#4f46e5,#7c3aed)!important;color:#fff!important;box-shadow:0 8px 20px -12px rgba(79,70,229,.9)!important}
.pgp-exam-review-actions .pgp-final-submit *{background:transparent!important;color:inherit!important}

@container pgp-exam-runner (max-width:620px){
  .pgp-app.pgp-exam-runner .pgp-quiz-actionbar{grid-template-columns:1fr 1fr!important;gap:7px!important;padding:7px!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-position{grid-column:1/-1!important;grid-row:1!important}
  .pgp-app.pgp-exam-runner .pgp-prev{grid-column:1!important;grid-row:2!important}
  .pgp-app.pgp-exam-runner .pgp-next{grid-column:2!important;grid-row:2!important}
  .pgp-app.pgp-exam-runner .pgp-final-action-divider{display:none!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-submit,.pgp-app.pgp-exam-runner .pgp-quiz-submit:not(.is-primary),.pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary{grid-column:1/-1!important;grid-row:3!important;width:100%!important;min-width:0!important;margin-top:2px!important}
  .pgp-app.pgp-exam-runner .pgp-submit-copy{align-items:center!important}
}
@media(max-width:700px){
  .pgp-exam-review-backdrop{padding:8px!important;place-items:end center!important}
  .pgp-exam-review-dialog{width:100%!important;max-height:94dvh!important;border-radius:18px 18px 10px 10px!important}
  .pgp-exam-review-head{grid-template-columns:1fr!important;gap:11px!important;padding:17px 16px 13px!important}
  .pgp-exam-review-icon{width:36px!important;height:36px!important;flex-basis:36px!important}
  .pgp-exam-review-dialog .pgp-exam-review-heading h3{font-size:19px!important}
  .pgp-exam-review-time{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;min-width:0!important;padding:8px 10px!important;text-align:left!important}.pgp-exam-review-time>span{justify-content:flex-start!important}.pgp-exam-review-time strong{margin:0 0 0 auto!important;font-size:16px!important}.pgp-exam-review-time small{display:none!important}
  .pgp-exam-review-summary{grid-template-columns:repeat(5,minmax(58px,1fr))!important;overflow-x:auto!important;margin:13px 16px!important;padding-bottom:3px!important}.pgp-exam-review-summary>div{padding:9px!important}.pgp-exam-review-summary>div strong{font-size:17px!important}.pgp-exam-review-summary>div span{font-size:7.5px!important}
  .pgp-exam-review-map{margin:0 16px 13px!important;padding:13px!important}.pgp-exam-review-map-head{align-items:flex-start!important;flex-direction:column!important;gap:8px!important}.pgp-exam-review-legend{justify-content:flex-start!important}
  .pgp-exam-review-grid{grid-template-columns:repeat(8,minmax(0,1fr))!important;gap:6px!important}
  .pgp-exam-review-warning,.pgp-exam-review-ready{margin:0 16px 13px!important}
  .pgp-exam-review-actions{flex-direction:column-reverse!important;padding:12px 16px 16px!important}.pgp-exam-review-actions .pgp-button{width:100%!important}.pgp-exam-review-actions .pgp-final-submit{min-width:0!important}
}
@media(max-width:430px){.pgp-exam-review-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important}}

/* v0.13.62 — keep final review separate on the left; group routine navigation on the right. */
.pgp-app.pgp-exam-runner .pgp-quiz-actionbar{
  grid-template-columns:auto 1px minmax(120px,1fr) auto auto!important;
  gap:10px!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-submit,
.pgp-app.pgp-exam-runner .pgp-quiz-submit:not(.is-primary),
.pgp-app.pgp-exam-runner .pgp-quiz-submit:not(.is-primary):hover,
.pgp-app.pgp-exam-runner .pgp-quiz-submit:not(.is-primary):focus-visible,
.pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary,
.pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary:hover,
.pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary:focus-visible{
  grid-column:1!important;
  grid-row:1!important;
  min-width:154px!important;
  min-height:42px!important;
  height:42px!important;
  padding:7px 13px!important;
  border:1px solid #4338ca!important;
  border-radius:10px!important;
  background:#4338ca!important;
  color:#fff!important;
  box-shadow:0 5px 14px -10px rgba(67,56,202,.72)!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-submit:hover,
.pgp-app.pgp-exam-runner .pgp-quiz-submit:focus-visible{
  background:#3730a3!important;
  border-color:#3730a3!important;
  box-shadow:0 7px 16px -10px rgba(55,48,163,.82)!important;
  transform:translateY(-1px);
}
.pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary{
  background:#3730a3!important;
  border-color:#3730a3!important;
  box-shadow:0 0 0 3px rgba(67,56,202,.10),0 6px 16px -10px rgba(55,48,163,.82)!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-submit .pgp-icon{width:16px!important;height:16px!important}
.pgp-app.pgp-exam-runner .pgp-submit-copy{align-items:flex-start!important}
.pgp-app.pgp-exam-runner .pgp-submit-copy strong{font-size:11.5px!important;font-weight:800!important;color:#fff!important}
.pgp-app.pgp-exam-runner .pgp-submit-copy small{display:none!important}
.pgp-app.pgp-exam-runner .pgp-final-action-divider{
  display:block!important;
  grid-column:2!important;
  grid-row:1!important;
  width:1px!important;
  height:28px!important;
  margin:0 3px!important;
  background:#e4e7ec!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-position{grid-column:3!important;grid-row:1!important}
.pgp-app.pgp-exam-runner .pgp-prev{grid-column:4!important;grid-row:1!important}
.pgp-app.pgp-exam-runner .pgp-next{grid-column:5!important;grid-row:1!important}

@container pgp-exam-runner (max-width:620px){
  .pgp-app.pgp-exam-runner .pgp-quiz-actionbar{grid-template-columns:1fr 1fr!important;gap:7px!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-position{grid-column:1/-1!important;grid-row:1!important}
  .pgp-app.pgp-exam-runner .pgp-prev{grid-column:1!important;grid-row:2!important}
  .pgp-app.pgp-exam-runner .pgp-next{grid-column:2!important;grid-row:2!important}
  .pgp-app.pgp-exam-runner .pgp-final-action-divider{display:none!important}
  .pgp-app.pgp-exam-runner .pgp-quiz-submit,
  .pgp-app.pgp-exam-runner .pgp-quiz-submit:not(.is-primary),
  .pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary{
    grid-column:1/-1!important;
    grid-row:3!important;
    width:100%!important;
    min-width:0!important;
    margin-top:2px!important;
  }
  .pgp-app.pgp-exam-runner .pgp-submit-copy{align-items:center!important}
}


/* v0.13.63 — restore the preferred two-line final-step label and harden contrast against theme button text overrides. */
.pgp-app.pgp-exam-runner .pgp-quiz-submit,
.pgp-app.pgp-exam-runner .pgp-quiz-submit:not(.is-primary),
.pgp-app.pgp-exam-runner .pgp-quiz-submit:not(.is-primary):hover,
.pgp-app.pgp-exam-runner .pgp-quiz-submit:not(.is-primary):focus-visible,
.pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary,
.pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary:hover,
.pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary:focus-visible{
  min-width:178px!important;
  min-height:46px!important;
  height:46px!important;
  padding:7px 14px!important;
  background:#4338ca!important;
  border-color:#4338ca!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-submit:hover,
.pgp-app.pgp-exam-runner .pgp-quiz-submit:focus-visible{
  background:#3730a3!important;
  border-color:#3730a3!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-submit,
.pgp-app.pgp-exam-runner .pgp-quiz-submit *,
.pgp-app.pgp-exam-runner .pgp-quiz-submit .pgp-icon,
.pgp-app.pgp-exam-runner .pgp-quiz-submit .pgp-icon *{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
.pgp-app.pgp-exam-runner .pgp-quiz-submit .pgp-icon{
  stroke:#fff!important;
}
.pgp-app.pgp-exam-runner .pgp-submit-copy{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:2px!important;
  line-height:1!important;
}
.pgp-app.pgp-exam-runner .pgp-submit-copy strong{
  display:block!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:11.75px!important;
  font-weight:850!important;
  line-height:1.05!important;
  opacity:1!important;
}
.pgp-app.pgp-exam-runner .pgp-submit-copy small{
  display:block!important;
  margin:0!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:8px!important;
  font-weight:750!important;
  line-height:1.05!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  opacity:.78!important;
}
@container pgp-exam-runner (max-width:620px){
  .pgp-app.pgp-exam-runner .pgp-quiz-submit,
  .pgp-app.pgp-exam-runner .pgp-quiz-submit:not(.is-primary),
  .pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary{
    min-width:0!important;
    min-height:46px!important;
    height:46px!important;
  }
  .pgp-app.pgp-exam-runner .pgp-submit-copy{align-items:center!important}
}


/* v0.13.64 — keep the mobile Review answers CTA physically stable on hover/tap/focus. */
@container pgp-exam-runner (max-width:620px){
  .pgp-app.pgp-exam-runner .pgp-quiz-submit,
  .pgp-app.pgp-exam-runner .pgp-quiz-submit:hover,
  .pgp-app.pgp-exam-runner .pgp-quiz-submit:focus,
  .pgp-app.pgp-exam-runner .pgp-quiz-submit:focus-visible,
  .pgp-app.pgp-exam-runner .pgp-quiz-submit:active,
  .pgp-app.pgp-exam-runner .pgp-quiz-submit:not(.is-primary):hover,
  .pgp-app.pgp-exam-runner .pgp-quiz-submit:not(.is-primary):focus-visible,
  .pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary:hover,
  .pgp-app.pgp-exam-runner .pgp-quiz-submit.is-primary:focus-visible{
    transform:none!important;
    margin-top:2px!important;
  }
}
@media (hover:none), (pointer:coarse){
  .pgp-app.pgp-exam-runner .pgp-quiz-submit,
  .pgp-app.pgp-exam-runner .pgp-quiz-submit:hover,
  .pgp-app.pgp-exam-runner .pgp-quiz-submit:focus,
  .pgp-app.pgp-exam-runner .pgp-quiz-submit:focus-visible,
  .pgp-app.pgp-exam-runner .pgp-quiz-submit:active{
    transform:none!important;
  }
}
@media (hover:hover) and (pointer:fine){
  .pgp-app.pgp-exam-runner .pgp-quiz-submit:hover{
    transform:translateY(-1px);
  }
}

/* v0.13.66 — personalized Exam Library filters: no redundant single-program control and no sticky mobile sheet. */
.pgp-exam-directory-filters-clean.has-no-advanced-filters{grid-template-columns:minmax(0,1fr)!important}
.pgp-exam-advanced-filter-panel.is-student-context{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){
  .pgp-exam-directory-filters-clean{grid-template-columns:1fr!important;align-items:stretch!important}
  .pgp-exam-advanced-filters{position:relative!important;width:100%!important;min-width:0!important}
  .pgp-exam-advanced-filters>summary{width:100%!important;min-height:46px!important;justify-content:center!important;padding:9px 13px!important}
  .pgp-exam-advanced-filters>summary span{font-size:11px!important}
  .pgp-exam-advanced-filters>summary span b{font-size:9px!important}
  .pgp-exam-advanced-filter-panel,
  .pgp-exam-advanced-filter-panel.is-student-context{position:static!important;inset:auto!important;width:100%!important;grid-template-columns:1fr!important;margin-top:8px!important;max-height:none!important;overflow:visible!important;border-radius:15px!important;box-shadow:0 10px 28px rgba(15,23,42,.09)!important}
  .pgp-exam-advanced-filter-panel .pgp-exam-filter-actions{grid-column:auto!important}
}

/* v0.13.66 — preferred Program onboarding + free/premium personalization. */
.pgp-registration-steps fieldset{min-width:0;margin:0;padding:0;border:0}.pgp-registration-step legend{margin:0 0 14px;padding:0;color:var(--pgp-ink);font-size:17px;font-weight:850}.pgp-registration-step{display:grid;gap:14px}.pgp-registration-step[hidden]{display:none!important}.pgp-registration-stepper{display:grid;grid-template-columns:auto minmax(28px,1fr) auto;align-items:center;gap:10px;margin:0 0 18px}.pgp-registration-stepper>span{display:inline-flex;align-items:center;gap:7px;color:#98a2b3;font-size:11px;font-weight:800}.pgp-registration-stepper>span b{display:grid;place-items:center;width:24px;height:24px;border:1px solid #e4e7ec;border-radius:50%;background:#fff;font-size:10px}.pgp-registration-stepper>span.is-active{color:var(--pgp-primary)}.pgp-registration-stepper>span.is-active b{border-color:#c4b5fd;background:#f5f3ff}.pgp-registration-stepper>i{height:1px;background:#e4e7ec}.pgp-registration-step-copy{margin:-4px 0 2px;color:var(--pgp-muted);font-size:11px;line-height:1.55}.pgp-registration-program-grid{display:grid;gap:10px;max-height:310px;overflow:auto;padding:2px}.pgp-registration-program-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 13px;border:1px solid #e4e7ec;border-radius:13px;background:#fff}.pgp-registration-program-card:has([data-pgp-preferred-program]:checked){border-color:color-mix(in srgb,var(--pgp-program-accent,#6D28D9) 40%,#ddd6fe);background:color-mix(in srgb,var(--pgp-program-accent,#6D28D9) 5%,#fff)}.pgp-registration-program-check{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.pgp-registration-program-check input{width:18px;height:18px;margin-top:1px;accent-color:var(--pgp-program-accent,#6D28D9)}.pgp-registration-program-check span{display:grid;gap:2px}.pgp-registration-program-check strong{font-size:12px}.pgp-registration-program-check small{color:var(--pgp-muted);font-size:9px}.pgp-registration-primary-choice{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:999px;background:#f8fafc;color:#667085;font-size:9px;font-weight:800;white-space:nowrap}.pgp-registration-primary-choice input{width:14px;height:14px;accent-color:var(--pgp-primary)}.pgp-registration-primary-choice:has(input:checked){background:#ede9fe;color:#5b21b6}.pgp-registration-primary-choice:has(input:disabled){opacity:.4}.pgp-registration-program-error{margin:0;color:#b42318;font-size:10px;font-weight:750}.pgp-registration-step-actions{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px}.pgp-registration-step-actions .pgp-button:last-child{justify-content:center}.pgp-profile-program-preferences{grid-column:1/-1}.pgp-program-preference-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:6px}.pgp-program-preference-card{display:flex;align-items:flex-start;gap:9px;padding:11px 12px;border:1px solid #e4e7ec;border-radius:12px;background:#fff;cursor:pointer}.pgp-program-preference-card:has(input:checked){border-color:#c4b5fd;background:#faf9ff}.pgp-program-preference-card.is-owned{box-shadow:inset 3px 0 0 #10b981}.pgp-program-preference-card input{width:17px;height:17px;margin-top:1px;accent-color:var(--pgp-primary)}.pgp-program-preference-card>span{display:grid;gap:2px}.pgp-program-preference-card strong{font-size:11px}.pgp-program-preference-card small{font-size:8.5px!important;line-height:1.35}.pgp-practice-card .pgp-access-badge.is-free{background:#ecfdf3;color:#047857}.pgp-practice-card .pgp-access-badge.is-premium{background:#f5f3ff;color:#6d28d9}
@media(max-width:760px){.pgp-registration-program-card{grid-template-columns:1fr}.pgp-registration-primary-choice{justify-self:start}.pgp-registration-step-actions{grid-template-columns:1fr 1fr}.pgp-program-preference-grid{grid-template-columns:1fr}}


/* Past Year Questions: keep the hub compact at six cards, then reveal the rest on demand. */
.pgp-program-paper-more{display:flex;flex-direction:column;gap:13px;margin-top:14px}
.pgp-program-paper-more>summary{order:2;display:flex;align-items:center;justify-content:center;width:max-content;max-width:100%;margin:0 auto;padding:10px 16px;border:1px solid color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 24%,#fff);border-radius:12px;background:#fff;color:var(--pgp-program-accent,#6d28d9);font-size:11px;font-weight:850;line-height:1.2;cursor:pointer;list-style:none;box-shadow:0 4px 14px rgba(76,29,149,.05);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.pgp-program-paper-more>summary::-webkit-details-marker{display:none}
.pgp-program-paper-more>summary:hover{border-color:color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 44%,#fff);background:color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 4%,#fff);box-shadow:0 8px 20px rgba(76,29,149,.08)}
.pgp-program-paper-more>summary:focus-visible{outline:3px solid color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 24%,transparent);outline-offset:3px}
.pgp-program-paper-more-open{display:none}
.pgp-program-paper-more[open] .pgp-program-paper-more-closed{display:none}
.pgp-program-paper-more[open] .pgp-program-paper-more-open{display:inline}
.pgp-program-paper-more>.pgp-program-paper-grid{order:1;margin-top:0}
@media(max-width:680px){.pgp-program-paper-more>summary{width:100%;box-sizing:border-box;padding:12px 16px}}


/* v0.13.73 — automatic direct Subject Practice fallback. */
.pgp-practice-card.is-direct-pool{border-style:solid}
.pgp-practice-card.is-direct-pool .pgp-practice-serial{min-width:42px;letter-spacing:.05em}
.pgp-practice-card.is-direct-pool .pgp-practice-card-copy small{color:var(--pgp-program-accent,#6D28D9);font-weight:800}
.pgp-direct-subject-practice-grid{grid-template-columns:minmax(0,1fr)}
@media(min-width:900px){.pgp-direct-subject-practice-grid .pgp-practice-card{max-width:760px}}

/* v0.13.78 — Published exams: show 6 initially, expand the remainder inline. */
.pgp-program-exam-more{display:flex;flex-direction:column;gap:14px;margin-top:14px}
.pgp-program-exam-more>summary{order:2;display:flex;align-items:center;justify-content:center;width:max-content;max-width:100%;margin:0 auto;padding:10px 16px;border:1px solid color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 24%,#fff);border-radius:12px;background:#fff;color:var(--pgp-program-accent,#6d28d9);font-size:11px;font-weight:850;line-height:1.2;cursor:pointer;list-style:none;box-shadow:0 4px 14px rgba(76,29,149,.05);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.pgp-program-exam-more>summary::-webkit-details-marker{display:none}
.pgp-program-exam-more>summary:hover{border-color:color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 44%,#fff);background:color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 4%,#fff);box-shadow:0 8px 20px rgba(76,29,149,.08)}
.pgp-program-exam-more>summary:focus-visible{outline:3px solid color-mix(in srgb,var(--pgp-program-accent,#6d28d9) 24%,transparent);outline-offset:3px}
.pgp-program-exam-more-open{display:none}
.pgp-program-exam-more[open] .pgp-program-exam-more-closed{display:none}
.pgp-program-exam-more[open] .pgp-program-exam-more-open{display:inline}
.pgp-program-exam-more>.pgp-program-exam-grid{order:1;margin-top:0}
@media(max-width:680px){.pgp-program-exam-more>summary{width:100%;box-sizing:border-box;padding:12px 16px}}

/* v0.13.90 Notice rich tables: branded, readable, responsive and print-safe. */
.pgp-notice-detail .pgp-notice-rich-text table{width:100%;margin:22px 0;border:1px solid #ddd6fe;border-collapse:separate;border-spacing:0;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(76,29,149,.06);font-size:14px;line-height:1.5}
.pgp-notice-detail .pgp-notice-rich-text caption{padding:0 0 10px;color:#475467;font-size:13px;font-weight:750;text-align:left}
.pgp-notice-detail .pgp-notice-rich-text thead th,.pgp-notice-detail .pgp-notice-rich-text tr:first-child th{padding:12px 14px;border:0;background:linear-gradient(135deg,#6d28d9,#4c1d95);color:#fff;font-weight:800;text-align:left;vertical-align:middle}
.pgp-notice-detail .pgp-notice-rich-text th+th{border-left:1px solid rgba(255,255,255,.16)}
.pgp-notice-detail .pgp-notice-rich-text td{padding:11px 14px;border-top:1px solid #ebe7f7;border-right:1px solid #ebe7f7;background:#fff;color:#344054;vertical-align:top}
.pgp-notice-detail .pgp-notice-rich-text td:last-child{border-right:0}
.pgp-notice-detail .pgp-notice-rich-text tbody tr:nth-child(even) td{background:#faf9ff}
.pgp-notice-detail .pgp-notice-rich-text tbody tr:hover td{background:#f5f3ff}
.pgp-notice-detail .pgp-notice-rich-text tr:first-child td{background:#f5f3ff;color:#312e81;font-weight:750}
.pgp-notice-detail .pgp-notice-rich-text table a{color:#6d28d9;font-weight:700;text-decoration:underline;text-underline-offset:2px}
@media(max-width:700px){.pgp-notice-detail .pgp-notice-rich-text table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}.pgp-notice-detail .pgp-notice-rich-text th,.pgp-notice-detail .pgp-notice-rich-text td{min-width:120px;padding:10px 12px}}
@media print{.pgp-notice-detail .pgp-notice-rich-text table{box-shadow:none}.pgp-notice-detail .pgp-notice-rich-text thead th,.pgp-notice-detail .pgp-notice-rich-text tr:first-child th{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
