/* PharmAssess Dashboard — scoped to .pa */
.pa{
	--pink:#D51270;--pink-d:#93003f;--blue:#1F6FB5;--sky:#4BA5E8;--red:#EE1E1E;
	--ink:#1a1a2e;--mute:#777;--line:#ebebeb;--bg:#f0f0f0;
	--shadow:0 4px 24px rgba(0,0,0,.07);
	font-family:'Poppins',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
	color:var(--ink);line-height:1.45;font-size:16px;
	display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px;align-items:start;
	background:var(--bg);padding:24px;box-sizing:border-box;max-width:1600px;margin-left:auto;margin-right:auto;
	-webkit-font-smoothing:antialiased;text-align:left;
}
.pa *,.pa *::before,.pa *::after{box-sizing:border-box}
.pa a{color:inherit;text-decoration:none}
.pa img{max-width:100%;height:auto;display:block;border:0;box-shadow:none}
.pa h1,.pa h2,.pa h3,.pa p,.pa ul,.pa ol,.pa li{margin:0;padding:0;font-family:inherit;letter-spacing:normal;text-transform:none;list-style:none}
.pa svg{flex-shrink:0}
.pa :focus-visible{outline:2px solid var(--pink);outline-offset:2px}
.pa-card{background:#fff;border-radius:20px}

/* ---------- Sidebar ---------- */
.pa-side{
	position:sticky;top:24px;background:#fff;border-radius:20px;
	padding:28px 12px 16px;max-height:calc(100vh - 48px);overflow:auto;
}
.pa-logo{display:block;padding:0 12px 28px}
.pa-logo img{max-width:220px;width:100%;margin:0 auto}
.pa-logo-txt{font-size:22px;font-weight:700;color:var(--blue)}
.pa-nav{display:flex;flex-direction:column;gap:14px}
.pa-nav a{
	display:flex;align-items:center;gap:14px;padding:10px 14px;
	border:1px solid var(--line);border-radius:10px;background:#fff;
	position:relative;transition:background .15s,border-color .15s;
}
.pa-nav a:hover{background:#f8f8f8}
.pa-nav a[aria-current="page"]{border-color:var(--pink);background:#fff7fb}
.pa-ico{width:32px;height:32px;border-radius:8px;background:#f3f3f3;color:#888;display:grid;place-items:center}
.pa-nav-txt{display:flex;flex-direction:column;gap:3px;min-width:0}
.pa-nav-lbl{font-size:15px;font-weight:600;color:#444;line-height:1.15;white-space:nowrap}
.pa-nav-sub{font-size:11px;font-weight:600;color:var(--pink);line-height:1}
.pa-nav-badge{
	position:absolute;top:-8px;right:-8px;min-width:20px;height:20px;padding:0 5px;
	border-radius:10px;border:2px solid #fff;background:var(--pink);color:#fff;
	font-size:11px;font-weight:700;display:grid;place-items:center;line-height:1;
}
.pa-nav a.is-danger .pa-ico{background:#fff0f5;color:var(--pink)}
.pa-nav a.is-danger .pa-nav-lbl{color:var(--pink)}
.pa-nav a.is-danger:hover{background:#fff0f5}

/* Mobile-only chrome (hidden on desktop) */
.pa-top,.pa-scrim,.pa .pa-close{display:none}

/* ---------- Main ---------- */
.pa-main{display:flex;flex-direction:column;gap:24px;min-width:0}
.pa-crumb{display:flex;align-items:center;gap:16px;font-size:14px;font-weight:600;color:#888;padding:4px 8px 0}
.pa-crumb::after{content:"";flex:1;height:1px;background:#d6d6d6}

/* Welcome */
.pa-welcome{display:grid;grid-template-columns:260px minmax(0,1fr);gap:40px;align-items:center;padding:32px 40px}
.pa-profile{background:#fff;border-radius:20px;box-shadow:var(--shadow);padding:40px 24px 28px;text-align:center}
.pa-avatar{width:104px;height:104px;border-radius:50%;border:3px solid var(--blue);object-fit:cover;margin:0 auto 18px;background:#ddd}
.pa-name{font-size:18px;font-weight:600;color:var(--blue);line-height:1.3}
.pa-id{font-size:16px;color:var(--mute)}
.pa-login-l{font-size:16px;font-weight:500;color:var(--blue);margin-top:12px}
.pa-login-v{font-size:15px;color:#555}
.pa .pa-hello{font-size:34px;font-weight:600;color:var(--pink);line-height:1.15}
.pa-sub{font-size:14px;font-weight:500;color:var(--sky);margin:14px 0}
.pa-progress{background:#fff;border-radius:16px;border:1px solid #f0f0f3;box-shadow:var(--shadow);padding:22px 24px}
.pa-progress-h{display:flex;justify-content:space-between;font-size:13px;font-weight:500;color:#555;margin-bottom:10px}
.pa-progress-h b{color:var(--pink-d);font-weight:700}
.pa-track{height:10px;background:#f0f0f0;border-radius:99px;overflow:hidden}
.pa-track i{display:block;height:100%;background:var(--pink-d);border-radius:99px;animation:pa-grow 1.1s cubic-bezier(.4,0,.2,1) both}
.pa-badges{margin-top:22px;font-size:14px;color:#555}

/* Banner (compact strip) */
.pa-banner{
	display:flex;align-items:center;gap:24px;padding:18px 24px 18px 18px;border-radius:20px;color:#fff;
	background:linear-gradient(120deg,#D51270 0%,#a70d58 100%);box-shadow:0 10px 26px rgba(213,18,112,.18);
}
.pa-banner-img{position:relative;flex:none;width:180px;border-radius:14px;overflow:hidden;background:#fff;border:3px solid rgba(255,255,255,.9);transition:transform .2s}
.pa-banner-img img{width:100%;aspect-ratio:16/10;object-fit:cover}
.pa-banner-img:hover{transform:scale(1.03)}
.pa-banner-play{position:absolute;inset:0;display:grid;place-items:center;background:rgba(20,10,20,.18)}
.pa-banner-play svg{width:40px;height:40px;padding:11px;border-radius:50%;background:#fff;color:var(--pink);fill:var(--pink);stroke:none;box-shadow:0 4px 14px rgba(0,0,0,.2)}
.pa-banner-txt{flex:1;min-width:0}
.pa .pa-banner h2{font-size:21px;font-weight:600;line-height:1.25;color:#fff}
.pa .pa-banner p{font-size:14px;line-height:1.5;margin:6px 0 0;max-width:62ch;color:rgba(255,255,255,.9)}
.pa .pa-btn{
	flex:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;
	background:#fff;color:var(--pink);font-size:15px;font-weight:600;
	padding:11px 20px;border-radius:12px;box-shadow:0 4px 14px rgba(0,0,0,.12);transition:transform .15s;
}
.pa-btn svg{width:16px;height:16px}
.pa .pa-btn:hover{transform:translateY(-1px);color:var(--pink)}

/* Grid */
.pa-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:28px}
.pa-tile{
	display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;
	aspect-ratio:1/1;padding:24px 18px;text-align:center;
	background:#fff;border-radius:20px;box-shadow:0 2px 16px rgba(0,0,0,.05);
	transition:box-shadow .2s,transform .2s;
}
.pa-tile:hover{box-shadow:0 8px 28px rgba(0,0,0,.1);transform:translateY(-2px)}
.pa-tile img{width:78%;aspect-ratio:6/5;object-fit:contain}
.pa-tile span{font-size:16px;font-weight:600;color:var(--blue);line-height:1.1}

/* Random topic card */
.pa-rnd{position:relative;aspect-ratio:1/1;border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 4px 20px rgba(0,0,0,.1)}
.pa-rnd-inner{display:flex;flex-direction:column;height:100%}
.pa-rnd-strip{display:block;height:6px;flex:none}
.pa-rnd-img{position:relative;display:block;height:40%;flex:none;overflow:hidden}
.pa-rnd-img img{width:100%;height:100%;object-fit:cover}
.pa-rnd-img::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,transparent 45%,rgba(255,255,255,.95))}
.pa-rnd-tag{position:absolute;top:10px;right:10px;z-index:1;font-size:11px;font-weight:600;border-radius:20px;padding:3px 10px}
.pa-rnd-tag.is-new{background:#e0f0ff;color:#185FA5}
.pa-rnd-tag.is-prog{background:#fff4e0;color:#854F0B}
.pa-rnd-tag.is-done{background:#e3f9ea;color:#166534}
.pa-rnd-body{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:space-between;padding:12px 16px 16px}
.pa-rnd-k,.pa-rnd-t,.pa-rnd-bar,.pa-rnd-p{display:block}
.pa-rnd-k{font-size:12px;font-weight:600;color:var(--pink)}
.pa-rnd-t{font-size:16px;font-weight:700;line-height:1.25;margin:2px 0 10px}
.pa-rnd-bar{height:5px;background:#f0f0f0;border-radius:99px;overflow:hidden}
.pa-rnd-bar i{display:block;height:100%;border-radius:99px}
.pa-rnd-p{font-size:11px;color:#999;margin-top:5px}
.pa .pa-rnd-btn{
	display:flex;align-items:center;justify-content:center;gap:8px;margin-top:10px;
	background:var(--pink);color:#fff;border-radius:12px;padding:10px;font-size:13px;font-weight:600;
	transition:background .2s;
}
.pa .pa-rnd-btn:hover{background:#b0005e;color:#fff}
.pa-rnd-btn svg{width:12px;height:12px;fill:#fff}
.pa .pa-rnd-refresh{
	all:unset;box-sizing:border-box;
	position:absolute;top:16px;left:10px;z-index:2;
	width:32px;height:32px;border-radius:50%;
	display:grid;place-items:center;cursor:pointer;
	background:rgba(255,255,255,.92);color:#555;box-shadow:0 2px 8px rgba(0,0,0,.14);
	transition:transform .35s ease;
}
.pa .pa-rnd-refresh:hover{transform:rotate(180deg)}
.pa .pa-rnd-refresh:focus-visible{outline:2px solid var(--pink);outline-offset:2px}
.pa-rnd.is-swap .pa-rnd-inner{animation:pa-fade .25s ease}

/* Leaderboard */
.pa-rank{padding:40px 24px 36px;text-align:center}
.pa .pa-rank h2{font-size:20px;font-weight:600;color:var(--pink)}
.pa-clock{display:flex;justify-content:center;align-items:flex-start;gap:4px;margin:36px 0 18px}
.pa-seg{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:88px}
.pa-seg b{font-size:56px;font-weight:300;color:var(--red);line-height:1;font-variant-numeric:tabular-nums}
.pa-seg small{font-size:11px;font-weight:500;color:#888;letter-spacing:.08em}
.pa-colon{font-size:44px;font-weight:300;color:var(--red);opacity:.35;line-height:1.05}
.pa-week{width:min(300px,80%);height:3px;background:#222;border-radius:99px;margin:0 auto;overflow:hidden}
.pa-week i{display:block;height:100%;width:0;background:var(--red)}
.pa-week-l{font-size:12px;color:var(--mute);margin-top:10px}
.pa-lb{margin-top:40px;overflow-x:auto}

/* Loading screen (page load + slow navigation) */
.pa-loader{
	position:fixed;inset:0;z-index:2147483000;display:none;align-items:center;justify-content:center;cursor:progress;
	background:radial-gradient(circle at 50% 42%,#fff 0%,#f6f3f7 45%,#eef1f6 100%);
	opacity:1;transition:opacity .35s ease,visibility .35s ease;
}
.pa-loader.on{display:flex}
.pa-loader.is-done{opacity:0;visibility:hidden;pointer-events:none}
.pa-loader.is-boot{animation:pa-boot-out .4s ease 8s forwards} /* safety net if JS never runs */
.pa-loader-box{display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px}
.pa-loader-ring{position:relative;width:104px;height:104px;border-radius:50%;display:grid;place-items:center;margin-bottom:18px}
.pa-loader-ring::before{content:"";position:absolute;inset:0;border-radius:50%;
	background:conic-gradient(from 0deg,#D51270,#f5b400,#7b5cff,#D51270);
	-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 5px),#000 calc(100% - 4px));
	mask:radial-gradient(farthest-side,transparent calc(100% - 5px),#000 calc(100% - 4px));
	animation:pa-spin 1.1s linear infinite}
.pa-loader-ring::after{content:"";position:absolute;inset:-14px;border-radius:50%;background:radial-gradient(circle,rgba(213,18,112,.16),transparent 70%);animation:pa-breathe 2s ease-in-out infinite;z-index:-1}
.pa-loader-ring img{width:84px;height:84px;border-radius:50%;object-fit:contain;padding:8px;background:#fff;border:3px solid #fff;box-shadow:0 8px 24px rgba(213,18,112,.18)}
.pa .pa-loader-brand{font-size:12px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--pink);margin:0}
.pa .pa-loader-msg{font-size:17px;font-weight:500;color:#2a2a35;margin:8px 0 18px;min-height:1.5em;transition:opacity .25s}
.pa .pa-loader-msg.is-swap{opacity:0}
.pa-loader-bar{position:relative;display:block;width:200px;height:4px;border-radius:99px;background:rgba(213,18,112,.12);overflow:hidden}
.pa-loader-bar i{position:absolute;top:0;bottom:0;left:-40%;width:40%;border-radius:99px;background:linear-gradient(90deg,#D51270,#f5b400);animation:pa-slide 1.2s ease-in-out infinite}
@keyframes pa-slide{to{left:100%}}
@keyframes pa-breathe{50%{transform:scale(1.12);opacity:.6}}
@keyframes pa-boot-out{to{opacity:0;visibility:hidden}}

@keyframes pa-grow{from{width:0}}
@keyframes pa-fade{from{opacity:0}}
@keyframes pa-pulse{0%,100%{opacity:.5}50%{opacity:1}}
@keyframes pa-load{to{width:99%}}


/* ==========================================================================
   Calculation Topics page
   ========================================================================== */
.pa-top-row{display:grid;grid-template-columns:300px minmax(0,1fr);gap:24px;align-items:stretch}
.pa-top-profile{padding:0;display:flex}
.pa-top-profile .pa-profile{flex:1;box-shadow:none;display:flex;flex-direction:column;justify-content:center}

/* Results slider */
.pa-results{padding:24px 28px;min-width:0;display:flex;flex-direction:column}
.pa-results-h{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px}
.pa .pa-results-h h2{font-size:17px;font-weight:600;color:var(--ink)}
.pa .pa-results-h p{font-size:12px;color:#999}
.pa-results-count{flex:none;background:#e0f0ff;color:#185FA5;font-size:12px;font-weight:600;border-radius:20px;padding:4px 12px}
.pa .pa-results-empty{flex:1;display:grid;place-items:center;text-align:center;padding:28px 16px;border-radius:16px;background:#fafafa;color:#888;font-size:14px}
.pa-slider{flex:1;display:flex;flex-direction:column;justify-content:space-between}
.pa-slider-view{overflow:hidden;border-radius:18px}
.pa-slider-track{display:flex;transition:transform .5s cubic-bezier(.4,0,.2,1)}
.pa-slide{flex:0 0 100%;min-width:0;padding:4px}
.pa-score{display:flex;align-items:center;gap:16px;background:#fff;border-left:8px solid var(--pink);border-radius:18px;box-shadow:0 2px 14px rgba(0,0,0,.08);padding:18px 18px 18px 20px;min-height:170px}
.pa-score-body{flex:1;min-width:0}
.pa-score img{width:110px;height:110px;border-radius:14px;object-fit:cover;flex:none}
.pa-score-pill{display:inline-flex;align-items:center;gap:6px;border-radius:12px;padding:3px 11px;font-size:12px;font-weight:600;margin-bottom:6px}
.pa-score-pill i{width:7px;height:7px;border-radius:50%;background:currentColor}
.pa-score-pill.is-high{background:#dcfce7;color:#166534}
.pa-score-pill.is-mid{background:#fff4e0;color:#854F0B}
.pa-score-pill.is-low{background:#fce8e8;color:#991f1f}
.pa .pa-score h3{font-size:17px;font-weight:600;line-height:1.3;margin:0 0 8px}
.pa .pa-score-num{display:flex;align-items:baseline;gap:6px;margin-bottom:8px}
.pa-score-num b{font-size:36px;font-weight:700;line-height:1}
.pa-score-num span{font-size:15px;font-weight:600;color:#aaa}
.pa-score-bar{height:8px;background:#f0f0f0;border-radius:99px;overflow:hidden}
.pa-score-bar i{display:block;height:100%;border-radius:99px}
.pa .pa-score-pct{font-size:11px;font-weight:600;color:#aaa;margin-top:5px}
.pa-slider-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}
.pa .pa-arrow{all:unset;box-sizing:border-box;cursor:pointer;width:34px;height:34px;border-radius:50%;border:1.5px solid #e0e0e0;display:grid;place-items:center;color:#888;transition:background .2s,border-color .2s,color .2s}
.pa .pa-arrow:hover{background:var(--pink);border-color:var(--pink);color:#fff}
.pa .pa-arrow:focus-visible,.pa .pa-dot:focus-visible{outline:2px solid var(--pink);outline-offset:2px}
.pa-dots{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.pa .pa-dot{all:unset;box-sizing:border-box;cursor:pointer;width:8px;height:8px;border-radius:50%;background:#e0e0e0;transition:background .3s,transform .2s}
.pa .pa-dot.is-on{background:var(--pink);transform:scale(1.3)}

/* Intro video */
.pa-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,360px);gap:32px;align-items:center;background:var(--pink);color:#fff;border-radius:20px;padding:40px 48px}
.pa .pa-intro h2{font-size:28px;font-weight:600;color:#fff}
.pa .pa-intro p{color:#fff;margin-top:10px;max-width:55ch}
.pa-intro img{border-radius:16px;border:6px solid #fff}

/* Topic cards */
.pa-topics-wrap{display:flex;flex-direction:column;gap:18px}
.pa .pa-topics-h{font-size:22px;font-weight:600;color:var(--ink);text-align:center}
.pa-topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.pa-topic{display:flex;align-items:center;gap:16px;background:#fff;border-radius:22px;border-left:10px solid var(--pink);box-shadow:0 4px 20px rgba(0,0,0,.06);padding:22px 24px 22px 22px;min-width:0}
.pa-topic-body{flex:1;min-width:0}
.pa-topic-img{width:84px;height:84px;border-radius:14px;object-fit:cover;flex:none;align-self:center}
.pa-topic-pill{display:inline-block;font-size:12px;font-weight:600;border-radius:20px;padding:3px 11px;background:#e0f0ff;color:#185FA5}
.pa-topic.is-prog .pa-topic-pill{background:#fff4e0;color:#854F0B}
.pa-topic.is-done .pa-topic-pill{background:#e3f9ea;color:#166534}
.pa .pa-topic h3{font-size:18px;font-weight:600;line-height:1.25;margin:10px 0 10px}
.pa-topic-meta{display:flex;flex-direction:column;gap:5px}
.pa .pa-topic-meta li{display:flex;align-items:center;gap:7px;font-size:13px;color:#444}
.pa-topic-meta svg{width:14px;height:14px;color:#444}
.pa-topic-checks{display:flex;flex-direction:column;gap:8px}
.pa .pa-topic-checks li{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:500;color:#999}
.pa-topic-checks li span{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;border:2px solid #e0e0e0;color:transparent;flex:none}
.pa-topic-checks li span svg{width:14px;height:14px;stroke-width:3}
.pa .pa-topic-checks li.is-ok{color:#3aa95b}
.pa-topic-checks li.is-ok span{background:#5ac06e;border-color:#5ac06e;color:#fff}
.pa-topic-bar{height:7px;background:#eee;border-radius:99px;overflow:hidden;margin:14px 0 8px;max-width:340px}
.pa-topic-bar i{display:block;height:100%;border-radius:99px;background:var(--sky)}
.pa-topic.is-done .pa-topic-bar i{background:#5ac06e}
.pa .pa-topic-note{font-size:13px;font-weight:600;color:var(--blue)}
.pa-topic.is-done .pa-topic-note{color:#2e7d45}
.pa-topic-btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.pa .pa-tb{display:inline-flex;align-items:center;gap:7px;border-radius:9px;padding:9px 14px;font-size:13px;font-weight:600;line-height:1.1;transition:background .2s,color .2s,border-color .2s}
.pa-tb svg{width:13px;height:13px}
.pa .pa-tb-main{background:#5aa4e3;color:#fff}
.pa-tb-main svg{fill:#fff}
.pa .pa-tb-main:hover{background:#3f8dd1;color:#fff}
.pa .pa-tb-alt{border:1.5px solid #5aa4e3;color:#2f7cc2;background:#fff}
.pa .pa-tb-alt:hover{background:#5aa4e3;color:#fff}
.pa .pa-tb-alt.is-off{border-color:#d7e6f5;color:#b6cde4;cursor:not-allowed;background:#fff}
.pa .pa-admin-note{margin-top:10px;font-size:11px;color:#b45309;background:#fff7e6;border-radius:8px;padding:6px 10px}

@media (max-width:1200px){
	.pa-topics{grid-template-columns:1fr}
}
@media (max-width:1024px){
	.pa-top-row{grid-template-columns:1fr;gap:16px}
	.pa-intro{grid-template-columns:1fr;padding:28px 24px}
	.pa-topics{gap:16px}
}
@media (max-width:600px){
	.pa-score{flex-direction:column-reverse;align-items:flex-start;min-height:0}
	.pa-score img{width:72px;height:72px}
	.pa-score-body{width:100%}
	.pa-topic{flex-direction:column-reverse;align-items:flex-start;padding:18px}
	.pa-topic-img{width:64px;height:64px;align-self:flex-start}
	.pa-topic-bar{max-width:none}
	.pa-results{padding:18px}
}


/* ==========================================================================
   Podium (WatuPRO leaderboard) — scoped, used on Dashboard + Statistics
   ========================================================================== */
.pa [hidden]{display:none!important}
.pa-podium .watupro-table{display:flex!important;flex-direction:row!important;align-items:flex-end!important;justify-content:center!important;gap:12px!important;border:0!important;padding:2rem 1rem 0!important;margin:0 auto!important;background:transparent!important;width:100%!important;font-family:inherit!important}
.pa-podium .watupro-table thead{display:none!important}
.pa-podium .watupro-table tbody{display:contents!important}
.pa-podium .watupro-table tbody tr{display:flex!important;flex-direction:column!important;align-items:center!important;gap:8px!important;flex:1!important;max-width:180px!important;background:transparent!important}
.pa-podium .watupro-table tbody tr td{border:0!important;background:transparent!important;padding:0!important;box-shadow:none!important;outline:0!important}
.pa-podium .watupro-table tbody tr .rank{width:52px!important;height:52px!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:20px!important;font-weight:600!important;order:1!important}
.pa-podium .watupro-table tbody tr .display_name{font-size:13px!important;font-weight:500!important;text-align:center!important;line-height:1.3!important;order:2!important;color:#333!important;word-break:break-word}
.pa-podium .watupro-table tbody tr .points,.pa-podium .watupro-table tbody tr .percent{font-size:12px!important;color:#888!important;order:3!important;text-align:center!important}
.pa-podium .watupro-table tbody tr::after{content:""!important;display:block!important;width:100%!important;border-radius:8px 8px 0 0!important;order:4!important}
.pa-podium .watupro-table tbody tr:nth-child(1){order:2!important}
.pa-podium .watupro-table tbody tr:nth-child(1) .rank{background:#FCCE6C!important;color:#412402!important}
.pa-podium .watupro-table tbody tr:nth-child(1)::after{height:120px!important;background:#FCCE6C!important}
.pa-podium .watupro-table tbody tr:nth-child(2){order:1!important}
.pa-podium .watupro-table tbody tr:nth-child(2) .rank{background:#D3D1C7!important;color:#2C2C2A!important}
.pa-podium .watupro-table tbody tr:nth-child(2)::after{height:80px!important;background:#888780!important}
.pa-podium .watupro-table tbody tr:nth-child(3){order:3!important}
.pa-podium .watupro-table tbody tr:nth-child(3) .rank{background:#F0997B!important;color:#4A1B0C!important}
.pa-podium .watupro-table tbody tr:nth-child(3)::after{height:60px!important;background:#D85A30!important}

/* ==========================================================================
   Statistics page
   ========================================================================== */
.pa-stats-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,400px);gap:32px;align-items:center;padding:28px 56px 28px 15%}
.pa .pa-stats-hero h1{font-size:28px;font-weight:700;line-height:1.2;color:var(--pink);max-width:16ch}
.pa .pa-stats-hero p{font-size:14px;color:#666;margin-top:12px;max-width:46ch}
.pa-stats-hero img{max-height:200px;width:auto;justify-self:center}

.pa-stats-row{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:24px;align-items:stretch}
.pa-points{padding:32px 28px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.pa-points-ico{width:48px;height:48px;border-radius:14px;background:#fff0f6;color:var(--pink);display:grid;place-items:center;margin-bottom:18px}
.pa-points-ico svg{width:24px;height:24px;fill:var(--pink)}
.pa .pa-points-l{font-size:14px;font-weight:500;color:#666}
.pa .pa-points-num{font-size:56px;font-weight:700;line-height:1.05;color:var(--ink);font-variant-numeric:tabular-nums;margin:4px 0 2px}
.pa .pa-points-s{font-size:13px;color:#999}
.pa-top3{padding:28px 24px 0;text-align:center;display:flex;flex-direction:column}
.pa .pa-top3 h2{font-size:18px;font-weight:600;color:var(--pink)}
.pa-top3 .pa-podium{flex:1;display:flex;align-items:flex-end;overflow-x:auto}

.pa-scores{padding:24px 28px 28px;min-width:0}
.pa-scores-h{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}
.pa .pa-scores-h h2{font-size:20px;font-weight:600}
.pa-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.pa-kpi{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:12px;padding:16px 18px}
.pa-kpi::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--kc)}
.pa-kpi b{display:block;font-size:26px;font-weight:700;line-height:1}
.pa-kpi span{display:block;font-size:12px;font-weight:500;color:#666;margin-top:6px}

.pa-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;background:#fafafa;border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-bottom:14px}
.pa-f{display:flex;flex-direction:column;gap:5px;margin:0}
.pa-f>span:first-child{font-size:12px;font-weight:600;color:#666}
.pa-f-in{position:relative;display:block}
.pa-f-in svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:15px;height:15px;color:#9aa0ae;pointer-events:none}
.pa .pa-f input{height:38px;padding:0 10px;border:1px solid #dfe2ea;border-radius:8px;font:inherit;font-size:14px;color:var(--ink);background:#fff;box-shadow:none;outline:0;margin:0;min-width:150px}
.pa .pa-f-search input{padding-left:32px;min-width:220px}
.pa .pa-f input:focus{border-color:var(--pink);box-shadow:0 0 0 3px rgba(213,18,112,.12)}
.pa .pa-f-clear{all:unset;box-sizing:border-box;cursor:pointer;height:38px;padding:0 16px;border:1px solid #dfe2ea;border-radius:8px;font-size:14px;font-weight:500;color:#555;background:#fff;display:inline-flex;align-items:center}
.pa .pa-f-clear:hover{background:#f3f3f3}
.pa .pa-f-clear:focus-visible{outline:2px solid var(--pink);outline-offset:2px}

.pa-tbl-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px}
.pa .pa-tbl{width:100%;border-collapse:collapse;border:0;margin:0;font-size:14px;background:#fff}
.pa .pa-tbl th{background:#f6f7fa;text-align:left;padding:11px 16px;font-size:12px;font-weight:600;color:#666;border:0;border-bottom:1px solid var(--line);white-space:nowrap}
.pa .pa-tbl td{padding:12px 16px;border:0;border-bottom:1px solid var(--line);vertical-align:middle;background:transparent;color:var(--ink)}
.pa .pa-tbl tbody tr:last-child td{border-bottom:0}
.pa .pa-tbl tbody tr:hover td{background:#fbf7fa}
.pa .pa-tbl strong{font-weight:600}
.pa .pa-td-mute{color:#666;white-space:nowrap}
.pa .pa-td-b{font-weight:600}
.pa .pa-td-pc{font-weight:600}
.pa .pa-td-pc.is-good{color:#047857}
.pa .pa-td-pc.is-mid{color:#B45309}
.pa .pa-td-pc.is-low{color:#B91C1C}
.pa-grade{display:inline-block;padding:3px 10px;border-radius:99px;font-size:12px;font-weight:600;background:#FEF3C7;color:#B45309}
.pa-grade.is-pass{background:#D1FAE5;color:#047857}
.pa .pa-noresults{margin-top:12px}

@media (max-width:1024px){
	.pa-stats-hero{grid-template-columns:1fr;padding:28px 24px;text-align:left}
	.pa-stats-hero img{max-height:160px;justify-self:start}
	.pa-stats-row{grid-template-columns:1fr;gap:16px}
	.pa-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:700px){
	.pa-scores{padding:18px}
	.pa-f,.pa .pa-f input,.pa .pa-f-search input{width:100%;min-width:0}
	.pa-tbl-wrap{border:0;overflow:visible}
	.pa .pa-tbl thead{display:none}
	.pa .pa-tbl,.pa .pa-tbl tbody{display:block}
	.pa .pa-tbl tr{display:block;border:1px solid var(--line);border-radius:12px;margin-bottom:10px;overflow:hidden}
	.pa .pa-tbl td{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;text-align:right}
	.pa .pa-tbl td::before{content:attr(data-th);font-size:12px;font-weight:600;color:#999;text-align:left;flex:none}
	.pa .pa-tbl tbody tr:last-child td{border-bottom:1px solid var(--line)}
	.pa .pa-tbl td:last-child{border-bottom:0!important}
	.pa .pa-points-num{font-size:44px}
}


/* ==========================================================================
   Hub pages (Paper 1 / Paper 2)
   ========================================================================== */
.pa-hub-hero{display:grid;grid-template-columns:minmax(0,360px) minmax(0,1fr);gap:48px;align-items:center;padding:36px 64px 36px 12%}
.pa-hub-hero img{width:100%;height:auto;max-width:360px}
.pa .pa-hub-hero h1{font-size:28px;font-weight:600;line-height:1.2;color:var(--blue);max-width:22ch}
.pa .pa-hub-sub{font-size:17px;font-weight:600;color:#4b7a9c;margin-top:14px}
.pa .pa-hub-text{font-size:14px;line-height:1.65;color:#666;margin-top:12px;max-width:62ch}

.pa-hub-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.pa .pa-hub-card{display:flex;align-items:center;gap:20px;min-height:280px;padding:32px 28px 32px 36px;border-left:8px solid #9db0d6;transition:box-shadow .2s,transform .2s}
.pa .pa-hub-card:hover{box-shadow:0 10px 30px rgba(0,0,0,.08);transform:translateY(-2px)}
.pa-hub-card-body{flex:1;min-width:0;display:flex;flex-direction:column;align-self:stretch}
.pa .pa-hub-card h2{font-size:21px;font-weight:600;color:var(--blue)}
.pa .pa-hub-card p{font-size:14px;line-height:1.6;color:#444;margin-top:12px;max-width:40ch}
.pa-hub-btn{margin-top:auto;align-self:flex-start;display:inline-flex;align-items:center;gap:8px;background:#5aa4e3;color:#fff;border-radius:9px;padding:10px 16px;font-size:14px;font-weight:600;transition:background .2s}
.pa-hub-btn svg{width:14px;height:14px}
.pa .pa-hub-card:hover .pa-hub-btn{background:#3f8dd1}
.pa-hub-card img{width:44%;max-width:260px;flex:none}

@media (max-width:1200px){
	.pa-hub-cards{grid-template-columns:1fr}
}
@media (max-width:1024px){
	.pa-hub-hero{grid-template-columns:1fr;gap:20px;padding:28px 24px}
	.pa-hub-hero img{max-width:240px}
	.pa-hub-cards{gap:16px}
}
@media (max-width:600px){
	.pa .pa-hub-hero h1{font-size:24px}
	.pa .pa-hub-card{flex-direction:column-reverse;align-items:flex-start;min-height:0;padding:22px 20px}
	.pa-hub-card img{width:60%;max-width:220px;align-self:center}
	.pa-hub-btn{margin-top:18px}
}


/* ---------- [pharmassess_menu]: button on all screens + drawer ---------- */
.pa.pa-menu-btn-only{display:inline-block;padding:0;background:transparent;gap:0;vertical-align:middle}
.pa.pa-menu-btn-only .pa-menu-btn{
	all:unset;box-sizing:border-box;cursor:pointer;position:relative;
	display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 16px 0 14px;
	background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 2px 10px rgba(0,0,0,.06);
	font:600 15px/1 'Poppins',system-ui,sans-serif;color:#444;transition:background .15s,border-color .15s;
}
.pa.pa-menu-btn-only .pa-menu-btn.is-icon{width:44px;padding:0;justify-content:center}
.pa.pa-menu-btn-only .pa-menu-btn:hover{background:#f8f8f8;border-color:#ddd}
.pa.pa-menu-btn-only .pa-menu-btn:focus-visible{outline:2px solid var(--pink);outline-offset:2px}
.pa.pa-menu-btn-only .pa-menu-btn svg{width:20px;height:20px}
.pa-menu-dot{position:absolute;top:-4px;right:-4px;width:8px;height:8px;border-radius:50%;background:var(--pink);border:2px solid #fff;box-sizing:content-box}
.pa.pa-menu-btn-only .pa-close{
	all:unset;box-sizing:border-box;cursor:pointer;display:grid;place-items:center;
	position:absolute;top:10px;right:10px;width:44px;height:44px;border-radius:12px;color:#444;
}
.pa.pa-menu-btn-only .pa-close:hover{background:#f3f3f3}
.pa.pa-menu-btn-only .pa-close svg{width:22px;height:22px}
.pa.pa-menu-btn-only .pa-side{
	position:fixed;top:0;left:0;bottom:0;z-index:100000;
	width:min(300px,86vw);max-height:none;border-radius:0 20px 20px 0;box-shadow:0 0 40px rgba(0,0,0,.15);
	padding:64px 12px 24px;overflow:auto;text-align:left;
	transform:translateX(-105%);transition:transform .25s ease;visibility:hidden;
}
.pa.pa-menu-btn-only.is-open .pa-side{transform:none;visibility:visible}
.pa.pa-menu-btn-only .pa-scrim{
	display:block;position:fixed;inset:0;z-index:99999;background:rgba(10,10,20,.45);
	opacity:0;pointer-events:none;transition:opacity .25s;
}
.pa.pa-menu-btn-only.is-open .pa-scrim{opacity:1;pointer-events:auto}


/* ==========================================================================
   Question bank page
   ========================================================================== */
.pa-qb-hero{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:40px;align-items:center;padding:40px 48px}
.pa-qb-hero img{width:100%;max-width:240px;justify-self:center}
.pa .pa-qb-hero h1{font-size:30px;font-weight:600;line-height:1.2;color:var(--pink)}
.pa .pa-qb-intro{font-size:15px;color:#555;margin-top:10px;max-width:60ch}
.pa .pa-qb-steps{counter-reset:qb;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0 18px}
.pa .pa-qb-steps li{counter-increment:qb;position:relative;padding:14px 16px 14px 56px;border:1px solid var(--line);border-radius:14px;background:#fcfcfd}
.pa .pa-qb-steps li::before{content:counter(qb);position:absolute;left:14px;top:14px;width:28px;height:28px;border-radius:50%;background:#fff0f6;color:var(--pink);font-size:13px;font-weight:700;display:grid;place-items:center}
.pa-qb-steps b{display:block;font-size:14px;font-weight:600;color:var(--ink)}
.pa-qb-steps span{display:block;font-size:13px;line-height:1.55;color:#666;margin-top:3px}
.pa .pa-qb-outro{font-size:13px;line-height:1.6;color:#777;max-width:70ch}

.pa-qb-form-card{padding:36px 48px 40px;background:linear-gradient(180deg,#f4f8fc 0%,#fff 60%)}
.pa .pa-qb-form-card h2{font-size:24px;font-weight:600;color:var(--blue);text-align:center;margin-bottom:24px}
.pa-qb-form{max-width:900px;margin:0 auto;display:flex;flex-direction:column;gap:28px}
.pa .pa-qb-step{border:0;margin:0;padding:0;min-width:0}
.pa .pa-qb-step legend{display:flex;align-items:center;gap:10px;padding:0;margin-bottom:14px;font-size:16px;font-weight:600;color:var(--ink)}
.pa-qb-step legend span{width:26px;height:26px;border-radius:50%;background:var(--pink);color:#fff;font-size:13px;font-weight:700;display:grid;place-items:center}

.pa-qb-form input[type="radio"]{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}

.pa-qb-sizes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.pa-qb-size{display:block;cursor:pointer;margin:0}
.pa-qb-size-card{display:flex;flex-direction:column;align-items:center;gap:2px;padding:20px 12px 18px;border:2px solid #e3e6ee;border-radius:16px;background:#fff;text-align:center;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s;position:relative}
.pa-qb-size-card b{font-size:34px;font-weight:700;line-height:1.1;color:var(--ink)}
.pa-qb-size-card small{font-size:13px;color:#777}
.pa-qb-size-card em{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:5px 11px;border-radius:99px;background:#eef4fb;color:var(--blue);font-style:normal;font-size:12px;font-weight:600}
.pa-qb-size-card em svg{width:13px;height:13px}
.pa-qb-size:hover .pa-qb-size-card{border-color:#f0a8cb;transform:translateY(-2px)}
.pa-qb-size input:checked + .pa-qb-size-card{border-color:var(--pink);background:#fff6fa;box-shadow:0 8px 22px rgba(213,18,112,.14)}
.pa-qb-size input:checked + .pa-qb-size-card b{color:var(--pink)}
.pa-qb-size input:checked + .pa-qb-size-card::after,
.pa-qb-topic input:checked + span::after{content:"";position:absolute;top:10px;right:10px;width:20px;height:20px;border-radius:50%;background:var(--pink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-9'/%3E%3C/svg%3E") center/12px no-repeat}
.pa-qb-size input:focus-visible + .pa-qb-size-card,.pa-qb-topic input:focus-visible + span{outline:3px solid rgba(213,18,112,.35);outline-offset:2px}

.pa-qb-topics{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
.pa-qb-topic{display:block;cursor:pointer;margin:0}
.pa-qb-topic span{position:relative;display:flex;align-items:center;gap:8px;min-height:50px;padding:12px 38px 12px 14px;border:1.5px solid #e3e6ee;border-radius:12px;background:#fff;font-size:14px;font-weight:500;color:#333;line-height:1.3;transition:border-color .15s,background .15s}
.pa-qb-topic span svg{width:16px;height:16px;color:var(--pink)}
.pa-qb-topic span::after{top:50%!important;transform:translateY(-50%)}
.pa-qb-topic:hover span{border-color:#f0a8cb}
.pa-qb-topic.is-random span{border-style:dashed;border-color:#f0a8cb;background:#fffafc;font-weight:600}
.pa-qb-topic input:checked + span{border-color:var(--pink);border-style:solid;background:#fff6fa;color:var(--pink)}

.pa-qb-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:22px;border-top:1px solid var(--line)}
.pa .pa-qb-summary{font-size:14px;color:#666;min-width:0}
.pa .pa-qb-summary.is-error{color:#B91C1C;font-weight:500}
.pa .pa-qb-summary b{color:var(--ink)}
.pa .pa-qb-go{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;gap:10px;height:52px;padding:0 26px;border-radius:14px;background:var(--pink);color:#fff;font-size:16px;font-weight:600;box-shadow:0 10px 24px rgba(213,18,112,.25);transition:background .15s,transform .15s,opacity .15s}
.pa .pa-qb-go:hover{background:#b30f5f;transform:translateY(-1px)}
.pa .pa-qb-go:focus-visible{outline:3px solid rgba(213,18,112,.35);outline-offset:3px}
.pa .pa-qb-go.is-waiting{opacity:.55}
.pa-qb-go svg{width:18px;height:18px}

/* Clinical bank: question-type cards */
.pa-qb-types{grid-template-columns:repeat(2,minmax(0,1fr))}
.pa-qb-types .pa-qb-size-card{padding:22px 16px 20px}
.pa-qb-types .pa-qb-size-card b{font-size:20px;line-height:1.25}
.pa-qb-types .pa-qb-size-card small{font-size:12px;font-weight:600;letter-spacing:.06em;color:#999}
.pa-cqb-sba{animation:pa-fade .25s ease}

@media (max-width:1024px){
	.pa-qb-hero{grid-template-columns:1fr;padding:28px 24px}
	.pa-qb-hero img{max-width:160px;justify-self:start;grid-row:1}
	.pa-qb-form-card{padding:28px 20px 32px}
}
@media (max-width:700px){
	.pa .pa-qb-steps{grid-template-columns:1fr}
	.pa .pa-qb-hero h1{font-size:24px}
	.pa-qb-sizes{gap:8px}
	.pa-qb-size-card{padding:14px 6px}
	.pa-qb-size-card b{font-size:26px}
	.pa-qb-size-card em{padding:4px 8px;font-size:11px}
	.pa-qb-topics{grid-template-columns:1fr}
	.pa-qb-types .pa-qb-size-card b{font-size:16px}
	.pa-qb-foot{flex-direction:column;align-items:stretch}
	.pa .pa-qb-go{justify-content:center;width:100%}
}


/* ==========================================================================
   Mock paper pages
   ========================================================================== */
.pa .pa-mock-hero h1{max-width:24ch}
.pa .pa-mock-hero .pa-qb-intro{max-width:72ch;line-height:1.7}
.pa-mocks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.pa .pa-mock{display:flex;align-items:center;gap:18px;padding:26px 24px 26px 28px;border-left:8px solid #4BA5E8;transition:box-shadow .2s,transform .2s}
.pa .pa-mock:hover{box-shadow:0 10px 30px rgba(0,0,0,.08);transform:translateY(-2px)}
.pa-mock-num{flex:none;width:56px;height:56px;border-radius:16px;background:#eef4fb;color:var(--blue);font-size:24px;font-weight:700;display:grid;place-items:center}
.pa-mock-body{flex:1;min-width:0}
.pa .pa-mock h2{font-size:21px;font-weight:600;color:var(--blue)}
.pa .pa-mock-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.pa .pa-mock-meta li{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:99px;background:#f5f6f9;color:#555;font-size:13px;font-weight:500}
.pa-mock-meta svg{width:14px;height:14px;color:var(--blue)}
.pa-mock-go{flex:none;display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:12px;background:var(--pink);color:#fff;font-size:15px;font-weight:600;box-shadow:0 8px 20px rgba(213,18,112,.22);transition:background .2s}
.pa-mock-go svg{width:16px;height:16px}
.pa .pa-mock:hover .pa-mock-go{background:#b30f5f}
.pa .pa-mock.is-soon{border-left-color:#d7dbe3;cursor:default}
.pa .pa-mock.is-soon:hover{box-shadow:none;transform:none}
.pa-mock.is-soon .pa-mock-num{background:#f3f4f7;color:#9aa0ae}
.pa .pa-mock.is-soon h2{color:#8a90a0}
.pa-mock-soon{flex:none;display:inline-flex;align-items:center;gap:7px;padding:10px 16px;border-radius:12px;background:#f3f4f7;color:#777;font-size:14px;font-weight:600}
.pa-mock-soon svg{width:15px;height:15px}
@media (max-width:1100px){.pa-mocks{grid-template-columns:1fr}}
@media (max-width:600px){
	.pa .pa-mock{flex-wrap:wrap;padding:20px}
	.pa-mock-num{width:46px;height:46px;font-size:20px}
	.pa-mock-go,.pa-mock-soon{width:100%;justify-content:center}
}


/* ==========================================================================
   Dashboard: headline stats, focus areas, next-step tag
   ========================================================================== */
.pa-mini{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}
.pa-mini > div{padding:14px 16px;border-radius:12px;background:#f7f8fa}
.pa-mini b{display:block;font-size:26px;font-weight:700;line-height:1.1;color:var(--ink);font-variant-numeric:tabular-nums}
.pa-mini b small{font-size:13px;font-weight:600;color:#999;margin-left:1px}
.pa-mini span{display:block;font-size:13px;color:#666;margin-top:4px;line-height:1.3}

.pa-focus{padding:26px 28px}
.pa-focus-h{margin-bottom:16px}
.pa .pa-focus-h h2{font-size:20px;font-weight:600;color:var(--ink)}
.pa .pa-focus-h p{font-size:14px;color:#777;margin-top:4px}
.pa-focus-list{display:flex;flex-direction:column;gap:10px}
.pa-focus-item{display:flex;flex-wrap:nowrap;align-items:center;gap:12px 16px;padding:12px 16px 12px 12px;border:1px solid var(--line);border-radius:16px;background:#fcfcfd;min-width:0}
.pa-focus-item img{width:48px;height:48px;border-radius:12px;object-fit:cover;flex:none}
.pa-focus-txt{flex:1 1 auto;min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px}
.pa-focus-txt b{min-width:180px;font-size:15px;font-weight:600;line-height:1.25;color:var(--ink)}
.pa-focus-txt .pa-score-pill{margin:0;white-space:nowrap}
.pa-focus-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:12px;color:#777}
.pa .pa-focus-item .pa-tb{flex:0 0 auto;margin-left:auto}
.pa .pa-focus-cta{align-self:flex-start}
.pa-rnd-tag.is-next{background:#ffe3f0;color:#9d0c52}

@media (max-width:600px){.pa-focus-item{flex-wrap:wrap}.pa-focus-txt{flex:1 1 0}.pa-focus-txt b{min-width:0;flex-basis:100%}.pa .pa-focus-item .pa-tb{flex:1 1 100%;justify-content:center;margin-left:0}}
@media (max-width:600px){
	.pa-focus{padding:20px 18px}
	.pa-mini{gap:8px}
	.pa-mini > div{padding:10px}
	.pa-mini b{font-size:20px}
	.pa-mini span{font-size:11px}
}


/* ==========================================================================
   Locked items (student's tags don't include them)
   ========================================================================== */
.pa .is-locked{cursor:not-allowed}
a.is-locked{cursor:pointer}
.pa-nav .is-locked{display:flex;align-items:center;gap:14px;padding:10px 14px;border:1px dashed #e3e5ea;border-radius:10px;background:#fafafb;position:relative}
.pa-nav .is-locked .pa-ico{background:#f1f2f4;color:#b7bac2}
.pa-nav .is-locked .pa-nav-lbl{color:#a3a7b0}
.pa-nav-lock{margin-left:auto;color:#b0b4bd;display:grid;place-items:center}
.pa-nav-lock svg{width:15px;height:15px}

.pa .pa-lock{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:99px;background:#eceef1;color:#6f7480;font-size:12px;font-weight:600;line-height:1}
.pa .pa-lock span{color:inherit;font-size:inherit;font-weight:inherit;line-height:inherit}
.pa-lock svg{width:13px;height:13px}

.pa .pa-tile.is-locked{background:#fafafb;box-shadow:none;border:1px dashed #e3e5ea}
.pa .pa-tile.is-locked:hover{transform:none;box-shadow:none}
.pa-tile.is-locked img{filter:grayscale(1);opacity:.45}
.pa .pa-tile.is-locked > span:not(.pa-lock){color:#a3a7b0}

.pa .pa-hub-card.is-locked{border-left-color:#d7dbe3;background:#fafafb}
.pa .pa-hub-card.is-locked:hover{transform:none;box-shadow:none}
.pa-hub-card.is-locked img{filter:grayscale(1);opacity:.45}
.pa .pa-hub-card.is-locked h2{color:#8a90a0}
.pa-hub-card.is-locked .pa-lock{margin-top:auto;align-self:flex-start}


/* Locked page */
.pa-locked-page{padding:56px 32px;text-align:center;display:flex;flex-direction:column;align-items:center}
.pa-locked-ico{width:72px;height:72px;border-radius:22px;background:#fff0f6;color:var(--pink);display:grid;place-items:center;margin-bottom:20px}
.pa-locked-ico svg{width:32px;height:32px}
.pa .pa-locked-page h1{font-size:26px;font-weight:600;line-height:1.25;color:var(--ink);max-width:24ch}
.pa .pa-locked-page p{font-size:15px;color:#666;margin-top:10px;max-width:52ch}
.pa-locked-btns{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:24px}


/* ==========================================================================
   AIMEE study assistant
   ========================================================================== */
.pa-aimee{display:grid;grid-template-columns:190px minmax(0,1fr);grid-template-areas:"who bubble" ". foot";gap:14px 24px;align-items:start;padding:26px 28px;
	background:linear-gradient(135deg,#fff 0%,#fff 55%,#fdf0f7 100%)}
.pa-aimee-who{grid-area:who;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding-top:4px}
.pa-aimee-av{position:relative;width:88px;height:88px;border-radius:50%;padding:4px;background:linear-gradient(135deg,#D51270,#7b5cff)}
.pa-aimee-av img{width:100%;height:100%;border-radius:50%;object-fit:cover;background:#fff;border:3px solid #fff}
.pa-aimee-av i{position:absolute;right:6px;bottom:6px;width:14px;height:14px;border-radius:50%;background:#22c55e;border:3px solid #fff}
.pa .pa-aimee-name{display:inline-flex;align-items:center;gap:6px;font-size:17px;font-weight:700;color:var(--ink)}
.pa-aimee-name span{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:99px;background:#f1ecff;color:#6d4fe0;font-size:10px;font-weight:700;letter-spacing:.04em}
.pa-aimee-name span svg{width:11px;height:11px}
.pa .pa-aimee-role{font-size:12px;color:#888}

.pa-aimee-bubble{grid-area:bubble;position:relative;background:#fff;border:1px solid #efe6ee;border-radius:6px 20px 20px 20px;padding:20px 22px;box-shadow:0 6px 24px rgba(213,18,112,.07);min-height:128px}
.pa-aimee-bubble::before{content:"";position:absolute;left:-8px;top:18px;width:14px;height:14px;background:#fff;border-left:1px solid #efe6ee;border-bottom:1px solid #efe6ee;transform:rotate(45deg)}
.pa .pa-aimee-hi{font-size:13px;font-weight:600;color:var(--pink);margin-bottom:6px}
.pa .pa-aimee-msg{font-size:16px;line-height:1.6;color:#2a2a35}
.pa-aimee-msg b{font-weight:600;color:var(--ink)}
.pa-aimee-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.pa .pa-aimee-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:12px;border:1.5px solid #e3e6ee;background:#fff;color:#444;font-size:14px;font-weight:600;line-height:1.1;transition:background .15s,border-color .15s,transform .15s}
.pa .pa-aimee-btn:hover{background:#f7f8fa;border-color:#cfd3dc}
.pa .pa-aimee-btn.is-main{background:var(--pink);border-color:var(--pink);color:#fff;box-shadow:0 8px 18px rgba(213,18,112,.22)}
.pa .pa-aimee-btn.is-main:hover{background:#b30f5f;border-color:#b30f5f;transform:translateY(-1px)}
.pa-aimee-btn svg{width:15px;height:15px}

.pa-aimee-typing{display:none;gap:5px;padding:8px 0 4px}
.pa-aimee-typing i{width:8px;height:8px;border-radius:50%;background:#d9b3c9;animation:pa-dot 1s infinite ease-in-out}
.pa-aimee-typing i:nth-child(2){animation-delay:.15s}
.pa-aimee-typing i:nth-child(3){animation-delay:.3s}
@keyframes pa-dot{0%,80%,100%{transform:translateY(0);opacity:.5}40%{transform:translateY(-5px);opacity:1}}
.pa-aimee-bubble.is-typing .pa-aimee-typing{display:flex}
.pa-aimee-bubble.is-typing .pa-aimee-msg,.pa-aimee-bubble.is-typing .pa-aimee-actions{display:none}
.pa-aimee-bubble.is-in .pa-aimee-msg,.pa-aimee-bubble.is-in .pa-aimee-actions{animation:pa-fade .35s ease}

.pa-aimee-foot{grid-area:foot;display:flex;align-items:center;justify-content:space-between;gap:12px}
.pa .pa-aimee-count{font-size:12px;color:#999}
.pa-aimee-count b{color:#666;font-weight:600}
.pa .pa-aimee-next{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:10px;font-size:13px;font-weight:600;color:#6d4fe0;transition:background .15s}
.pa .pa-aimee-next:hover{background:#f1ecff}
.pa .pa-aimee-next:focus-visible{outline:2px solid #6d4fe0;outline-offset:2px}
.pa-aimee-next svg{width:14px;height:14px}

@media (max-width:760px){
	.pa-aimee{grid-template-columns:1fr;grid-template-areas:"who" "bubble" "foot";padding:20px 16px}
	.pa-aimee-who{flex-direction:row;text-align:left;gap:12px}
	.pa-aimee-av{width:60px;height:60px;padding:3px}
	.pa-aimee-av i{right:2px;bottom:2px;width:12px;height:12px}
	.pa-aimee-bubble{border-radius:20px 20px 20px 20px}
	.pa-aimee-bubble::before{left:30px;top:-8px;border-left:1px solid #efe6ee;border-bottom:0;border-top:1px solid #efe6ee}
	.pa .pa-aimee-msg{font-size:15px}
	.pa .pa-aimee-btn{flex:1 1 100%;justify-content:center}
}


/* ==========================================================================
   Badges, trophies, celebration
   ========================================================================== */
.pa-badgebox{margin-top:16px;padding:16px 18px;border-radius:16px;background:#fff;border:1px solid #f0f0f3;box-shadow:var(--shadow)}
.pa-badgebox-h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;margin-bottom:10px}
.pa-badgebox-h b{font-size:15px;font-weight:600;color:var(--ink)}
.pa-badgebox-h span{font-size:13px;color:#777}
.pa-badgebox-bar{height:6px;border-radius:99px;background:#f0f0f0;overflow:hidden}
.pa-badgebox-bar i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#f5b400,#D51270)}
.pa .pa-badge-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.pa .pa-badge-list li{display:flex;flex-direction:column;align-items:center;gap:4px;width:64px}
.pa-badge-list img{width:52px;height:52px;object-fit:contain;transition:transform .2s}
.pa-badge-list li.is-earned:hover img{transform:scale(1.1) rotate(-4deg)}
.pa-badge-list li span{font-size:11px;font-weight:600;color:#555;text-align:center;line-height:1.2}
.pa-badge-list li.is-locked img{filter:grayscale(1);opacity:.35}
.pa-badge-list li.is-locked span{color:#aaa}
/* If a badge image can't load, show a neat numbered medal instead of a blank */
.pa-badge-list li.is-broken img{display:none}
.pa-badge-list li.is-broken::before{content:attr(data-pts);width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-size:14px;font-weight:700;color:#fff;background:linear-gradient(135deg,#f5b400,#D51270)}
.pa-badge-list li.is-broken.is-locked::before{background:#d9dbe0}
.pa-badge-list.is-grid li.is-broken::before{width:56px;height:56px}

/* Stats page: badges inside the points card */
.pa-points-badges{align-self:stretch;margin-top:18px;padding-top:16px;border-top:1px solid #f0f0f0}
.pa .pa-points-next{font-size:13px;color:#666;margin-bottom:8px}
.pa-points-next b{color:var(--ink);font-weight:600}
.pa .pa-badge-list.is-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 8px}
.pa .pa-badge-list.is-grid li{width:auto}
.pa-badge-list.is-grid img{width:56px;height:56px}

/* Trophies on the podium */
.pa-podium .watupro-table tbody tr::before{content:"";order:0;width:64px;height:64px;background:center/contain no-repeat;margin-bottom:-2px}
.pa-podium .watupro-table tbody tr:nth-child(1)::before{background-image:var(--pa-t1,none);width:78px;height:78px}
.pa-podium .watupro-table tbody tr:nth-child(2)::before{background-image:var(--pa-t2,none)}
.pa-podium .watupro-table tbody tr:nth-child(3)::before{background-image:var(--pa-t3,none)}

/* New badge pop-up */
.pa-celebrate{position:fixed;inset:0;z-index:2147482000;display:grid;place-items:center;padding:20px;background:rgba(15,10,25,.55);animation:pa-fade .25s ease}
.pa-celebrate.is-closing{animation:pa-fade .2s ease reverse forwards}
.pa-celebrate-card{position:relative;overflow:hidden;width:min(380px,100%);padding:34px 28px 26px;border-radius:24px;background:#fff;text-align:center;box-shadow:0 30px 80px rgba(0,0,0,.3);animation:pa-pop .45s cubic-bezier(.2,1.4,.4,1)}
.pa-celebrate-rays{position:absolute;left:50%;top:-110px;width:360px;height:360px;margin-left:-180px;border-radius:50%;
	background:repeating-conic-gradient(from 0deg,rgba(245,180,0,.14) 0 10deg,transparent 10deg 20deg);animation:pa-spin 14s linear infinite;pointer-events:none}
.pa-celebrate-card img{position:relative;width:140px;height:140px;object-fit:contain;margin:0 auto 10px;filter:drop-shadow(0 10px 20px rgba(0,0,0,.18))}
.pa .pa-celebrate-k{position:relative;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--pink)}
.pa .pa-celebrate-card h2{position:relative;font-size:26px;font-weight:700;color:var(--ink);margin-top:4px}
.pa .pa-celebrate-s{position:relative;font-size:15px;color:#555;margin-top:8px}
.pa .pa-celebrate-ok{all:unset;box-sizing:border-box;cursor:pointer;position:relative;display:inline-block;margin-top:20px;padding:12px 30px;border-radius:12px;background:var(--pink);color:#fff;font-size:15px;font-weight:600;box-shadow:0 10px 24px rgba(213,18,112,.3)}
.pa .pa-celebrate-ok:hover{background:#b30f5f}
.pa .pa-celebrate-ok:focus-visible{outline:3px solid rgba(213,18,112,.35);outline-offset:3px}
@keyframes pa-pop{from{transform:scale(.7);opacity:0}}
@keyframes pa-spin{to{transform:rotate(360deg)}}


/* Badge buttons + info pop-up + profile badge */
.pa .pa-badge-btn{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;border-radius:12px;padding:4px}
.pa .pa-badge-btn:hover{background:#fff6fa}
.pa .pa-badge-btn:focus-visible{outline:2px solid var(--pink);outline-offset:2px}

.pa-avatar-wrap{position:relative;width:104px;margin:0 auto 28px}
.pa-avatar-wrap .pa-avatar{margin:0}
.pa .pa-avatar-badge{position:absolute;left:50%;bottom:-16px;transform:translateX(-50%);width:44px;height:44px;padding:3px;border-radius:50%;background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.15);display:grid;place-items:center;transition:transform .2s}
.pa .pa-avatar-badge:hover{transform:translateX(-50%) scale(1.12);background:#fff}
.pa-avatar-badge img{width:100%;height:100%;object-fit:contain}
.pa .pa-avatar-badge-name{display:inline-block;margin:6px 0 8px;padding:3px 10px;border-radius:99px;background:#fff6e0;color:#8a5a00;font-size:11px;font-weight:700;letter-spacing:.02em}

.pa-binfo .pa-celebrate-card{padding-top:30px}
.pa-binfo.is-locked .pa-celebrate-card img{filter:grayscale(1);opacity:.45}
.pa-binfo.is-locked .pa-celebrate-rays{display:none}
.pa .pa-binfo-how{position:relative;font-size:14px;line-height:1.6;color:#555;margin-top:10px}
.pa-binfo-status{position:relative;margin-top:16px;padding:12px 14px;border-radius:14px;background:#f7f8fa;font-size:13px;color:#555;text-align:left}
.pa-binfo-status b{color:var(--ink)}
.pa-binfo-status.is-got{background:#e9f7ef;color:#166534}
.pa-binfo-status .pa-badgebox-bar{margin-top:8px}
.pa .pa-binfo-close{all:unset;box-sizing:border-box;cursor:pointer;position:absolute;top:12px;right:12px;z-index:2;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;color:#777}
.pa .pa-binfo-close:hover{background:#f3f3f3}
.pa-binfo-close svg{width:18px;height:18px}


/* Sidebar: latest badge chip */
.pa .pa-side-badge{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:4px 12px;width:100%;margin:0 0 14px;padding:10px 12px 14px;
	border-radius:12px;border:1px solid #f3e3c2;background:linear-gradient(135deg,#fffaf0,#fff4f9);text-align:left}
.pa .pa-side-badge:hover{background:linear-gradient(135deg,#fff5e0,#ffeaf4)}
.pa-side-badge img{width:40px;height:40px;object-fit:contain}
.pa-side-badge-txt{display:flex;flex-direction:column;min-width:0}
.pa-side-badge-txt b{font-size:14px;font-weight:600;color:var(--ink);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pa-side-badge-txt small{font-size:11px;color:#8a7a60;margin-top:2px}
.pa-side-badge-bar{position:absolute;left:12px;right:12px;bottom:6px;height:3px;border-radius:99px;background:rgba(0,0,0,.06);overflow:hidden}
.pa-side-badge-bar i{display:block;height:100%;background:linear-gradient(90deg,#f5b400,#D51270)}


/* Notification bar: top right, in line with the page title row */
.pa-main{position:relative}
.pa-notify{position:absolute;top:-4px;right:0;z-index:500;display:flex;align-items:center;justify-content:flex-end;min-height:32px}
.pa-main:has(> .pa-notify) > .pa-crumb{padding-right:72px}
@media (max-width:1024px){
	.pa-notify{top:-2px;right:4px}
}


/* ==========================================================================
   [pharmassess_card] — summary card for other programme pages
   ========================================================================== */
.pa.pa-embed{display:block;padding:0;background:transparent;max-width:none;margin:0;gap:0}
.pa-pp{position:relative;overflow:hidden;padding:24px 28px;border:1px solid #dbe4ef;border-radius:24px;background:#eef3f9;box-shadow:0 18px 50px rgba(15,23,42,.08);transition:transform .25s,box-shadow .25s}
.pa-pp:not(.is-locked){background:linear-gradient(135deg,#f4f7fb 0%,#eef3f9 55%,#fbeef5 100%)}
.pa-pp:not(.is-locked)::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:linear-gradient(90deg,#D51270,#f5b400)}
.pa-pp:not(.is-locked):hover{transform:translateY(-3px);box-shadow:0 22px 56px rgba(15,23,42,.12)}
.pa-pp-head{display:flex;justify-content:space-between;align-items:center;gap:20px}
.pa-pp-titles{min-width:0}
.pa .pa-pp-label{display:inline-flex;align-items:center;gap:6px;color:#64748b;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}
.pa .pa-pp-label.is-brand{color:var(--pink)}
.pa-pp-label i{width:8px;height:8px;border-radius:50%;background:var(--pink);box-shadow:0 0 0 4px rgba(213,18,112,.12)}
.pa .pa-pp h3{margin:0;color:#0f172a;font-size:26px;line-height:1.2;font-weight:600}
.pa .pa-pp-titles p{font-size:14px;color:#64748b;margin-top:6px}
.pa-pp-ring{position:relative;flex:none;width:84px;height:84px}
.pa-pp-ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.pa-pp-ring circle{fill:none;stroke-width:8}
.pa-pp-ring-bg{stroke:#dde5ef}
.pa-pp-ring-fg{stroke:var(--pink);stroke-linecap:round;transition:stroke-dashoffset 1s ease}
.pa-pp-ring b{position:absolute;inset:0;display:grid;place-items:center;font-size:18px;font-weight:700;color:#0f172a}

.pa-pp-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.4fr);gap:10px;margin-top:18px}
.pa-pp-stats > div,.pa .pa-pp-badge{padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.75);border:1px solid rgba(219,228,239,.8)}
.pa-pp-stats b{display:block;font-size:22px;font-weight:700;line-height:1.1;color:#0f172a}
.pa-pp-stats b small{font-size:12px;font-weight:600;color:#94a3b8}
.pa-pp-stats span{display:block;font-size:12px;color:#64748b;margin-top:3px}
.pa .pa-pp-badge{flex-direction:row;justify-content:flex-start;align-items:center;gap:10px;text-align:left}
.pa .pa-pp-badge:hover{background:#fff}
.pa-pp-badge img{width:40px;height:40px;object-fit:contain;flex:none}
.pa-pp-badge span b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pa-pp-badge span{min-width:0;margin:0}

.pa-pp-aimee{display:flex;align-items:flex-start;gap:12px;margin-top:14px;padding:12px 14px;border-radius:14px;background:#fff;border:1px solid #f0e3ec}
.pa-pp-aimee img{width:40px;height:40px;border-radius:50%;object-fit:cover;flex:none;border:2px solid #fff;box-shadow:0 0 0 2px var(--pink)}
.pa .pa-pp-aimee p{font-size:14px;line-height:1.55;color:#334155}
.pa-pp-aimee p span{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--pink);margin-bottom:2px}
.pa-pp-aimee b{color:#0f172a;font-weight:600}

.pa-pp-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.pa .pa-pp-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border-radius:12px;border:1.5px solid #cbd5e1;background:#fff;color:#334155;font-size:14px;font-weight:600;line-height:1.1;transition:background .15s,transform .15s}
.pa .pa-pp-btn:hover{background:#f8fafc}
.pa .pa-pp-btn.is-main{background:var(--pink);border-color:var(--pink);color:#fff;box-shadow:0 10px 22px rgba(213,18,112,.25)}
.pa .pa-pp-btn.is-main:hover{background:#b30f5f;transform:translateY(-1px)}
.pa-pp-btn svg{width:16px;height:16px}

/* Locked (no PharmAssess tags) — matches the existing "Coming Soon" card */
.pa-pp.is-locked{display:flex;align-items:center;justify-content:space-between;cursor:not-allowed}
.pa-pp-lockico{flex:none;width:50px;height:50px;border-radius:50%;background:#94a3b8;color:#fff;display:grid;place-items:center;margin-left:20px;box-shadow:0 2px 8px rgba(15,23,42,.18)}
.pa-pp-lockico svg{width:22px;height:22px}
.pa-pp-ribbon{position:absolute;top:18px;right:-48px;padding:6px 55px;background:#f59e0b;color:#fff;font-size:10px;font-weight:800;letter-spacing:.12em;transform:rotate(35deg);box-shadow:0 4px 10px rgba(0,0,0,.15)}

@media (max-width:900px){
	.pa-pp-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
	.pa .pa-pp-badge{grid-column:1/-1}
}
@media (max-width:640px){
	.pa-pp{padding:18px;border-radius:18px}
	.pa .pa-pp h3{font-size:21px}
	.pa-pp-ring{width:68px;height:68px}
	.pa-pp-ring b{font-size:15px}
	.pa-pp-stats b{font-size:18px}
	.pa .pa-pp-btn{flex:1 1 100%;justify-content:center}
	.pa-pp-lockico{width:44px;height:44px}
	.pa-pp-ribbon{top:15px;right:-56px;font-size:9px}
}

/* ---------- Tablet / mobile ---------- */
@media (max-width:1024px){
	.pa{grid-template-columns:minmax(0,1fr);padding:12px;gap:16px}
	.pa-main{gap:16px}
	.pa-top{
		display:flex;align-items:center;justify-content:space-between;
		position:sticky;top:8px;z-index:50;
		background:#fff;border-radius:16px;padding:8px 8px 8px 16px;box-shadow:var(--shadow);
	}
	.pa-top img{height:40px;width:auto}
	.pa .pa-burger,.pa .pa-close{
		all:unset;box-sizing:border-box;cursor:pointer;
		width:44px;height:44px;border-radius:12px;display:grid;place-items:center;color:#444;
	}
	.pa .pa-burger:hover,.pa .pa-close:hover{background:#f3f3f3}
	.pa .pa-burger svg,.pa .pa-close svg{width:22px;height:22px}
	.pa .pa-close{display:grid;position:absolute;top:10px;right:10px}

	.pa-side{
		position:fixed;top:0;left:0;bottom:0;z-index:100000;
		width:min(300px,86vw);max-height:none;border-radius:0 20px 20px 0;
		padding:64px 12px 24px;transform:translateX(-105%);transition:transform .25s ease;
		visibility:hidden;
	}
	.pa.is-open .pa-side{transform:none;visibility:visible}
	.pa-scrim{
		display:block;position:fixed;inset:0;z-index:99999;background:rgba(10,10,20,.45);
		opacity:0;pointer-events:none;transition:opacity .25s;
	}
	.pa.is-open .pa-scrim{opacity:1;pointer-events:auto}

	.pa-welcome{grid-template-columns:1fr;gap:24px;padding:20px}
	.pa-progress{max-width:none}
	.pa-banner{flex-wrap:wrap;gap:16px;padding:16px}
	.pa-banner-txt{flex:1 1 220px}
	.pa-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px}
}
@media (max-width:600px){
	.pa .pa-hello{font-size:26px}
	.pa .pa-banner h2{font-size:18px}
	.pa-banner-img{width:120px}
	.pa .pa-btn{flex:1 1 100%}
	.pa-profile{padding:28px 20px 22px}
	.pa-rnd{grid-column:1/-1;aspect-ratio:auto;min-height:340px}
	.pa-tile{aspect-ratio:auto;padding:18px 12px;gap:10px}
	.pa-tile span{font-size:14px}
	.pa-seg{min-width:56px;gap:6px}
	.pa-seg b{font-size:36px}
	.pa-colon{font-size:28px}
	.pa-rank{padding:28px 12px}
}
@media (prefers-reduced-motion:reduce){
	.pa *,.pa *::before,.pa *::after{animation:none!important;transition:none!important}
	.pa-loader-bar i{left:30%}
	.pa-loader.is-boot{animation:pa-boot-out .01s linear 8s forwards!important}
}

/* Lesson practice question progress on Calculation Topics cards. */
.pa-topic-practice-count { margin: 6px 0 12px; font-size: 13px; line-height: 1.5; color: #4b5870; }
.pa-topic-practice-count strong { color: #092858; font-weight: 700; }
