/* Phase 2: lightweight presentation only; MCQ functionality stays in the core renderer. */
.pep-phase2-builder,.pep-phase2-directory,.pep-phase2-generated{max-width:1120px;margin:24px auto;padding:26px;border:1px solid #e2e8f0;border-radius:18px;background:#fff;color:#17243b;box-shadow:0 8px 26px rgba(15,23,42,.04)}
.pep-phase2-heading{margin-bottom:22px}.pep-phase2-heading h2,.pep-phase2-result-header h2{margin:.3em 0;font-size:clamp(1.35rem,2.6vw,1.9rem);line-height:1.25;color:#0f172a}.pep-phase2-heading p,.pep-phase2-result-header p{margin:.4em 0;color:#64748b;line-height:1.6}
.pep-phase2-form fieldset{border:0;padding:0;margin:0 0 18px}.pep-phase2-form legend{margin:0 0 10px;font-size:1rem;color:#0f172a}.pep-phase2-subject-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;max-height:330px;overflow-y:auto;padding:4px}
.pep-phase2-subject{display:flex;align-items:center;gap:9px;border:1px solid #d9e3f0;border-radius:10px;padding:12px;background:#f8fbff;cursor:pointer;line-height:1.4;font-size:.9rem}
.pep-phase2-subject:has(input:checked){background:#e8efff;border-color:#2563eb;color:#1743ad}.pep-phase2-subject input{accent-color:#2563eb;width:17px;height:17px;flex-shrink:0;margin:0}
.pep-phase2-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pep-phase2-fields label{display:flex;flex-direction:column;gap:8px;font-size:.94rem}.pep-phase2-fields select{width:100%;background:#fff;border:1px solid #cad5e4;border-radius:9px;padding:11px;min-height:44px;color:#17243b}
.pep-phase2-form-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:20px}.pep-phase2-form-bottom p{font-size:.84rem;line-height:1.5;color:#65758f;max-width:620px}.pep-phase2-form-bottom .pep-button{white-space:nowrap}
.pep-phase2-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.pep-phase2-card{background:#f8fbff;border:1px solid #e1e8f3;border-radius:14px;padding:20px}.pep-phase2-card h3{font-size:1.16rem;margin:14px 0 8px;color:#111f37}.pep-phase2-card p{color:#64748b;margin:0 0 16px}.pep-phase2-tag{display:inline-block;font-size:.74rem;color:#1d4ed8;background:#e3eeff;padding:5px 10px;border-radius:99px;font-weight:650}.pep-phase2-result-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:15px}.pep-phase2-error{padding:13px 16px;background:#fff4f1;border:1px solid #ffbba9;border-radius:10px;color:#8e2514;margin:12px 0 20px}
@media(max-width:680px){.pep-phase2-builder,.pep-phase2-directory,.pep-phase2-generated{padding:18px 14px;margin:14px auto;border-radius:12px}.pep-phase2-fields{grid-template-columns:1fr}.pep-phase2-form-bottom,.pep-phase2-result-header{flex-direction:column;align-items:stretch}.pep-phase2-form-bottom .pep-button{width:100%;text-align:center}.pep-phase2-subject-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pep-phase2-subject{padding:10px;font-size:.81rem}}
@media(max-width:360px){.pep-phase2-subject-grid{grid-template-columns:1fr}}
/* v0.7.16 subject practice navigation and mobile allocation editor */
.pep-category-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:22px 0 18px;padding:5px;border-radius:14px;background:#f0f5fd;border:1px solid #dce5f1}
.pep-category-tabs a{display:flex;align-items:center;justify-content:center;text-decoration:none;text-align:center;border-radius:10px;padding:12px 8px;color:#2c4361;font-weight:700;font-size:.91rem;min-height:44px}
.pep-category-tabs a.is-active{background:#2563eb;color:#fff;box-shadow:0 3px 12px #2563eb30}
.pep-category-pager{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin:16px 0 24px}
.pep-category-children{margin:24px 0;background:#f6faff;border:1px solid #dde6f3;padding:14px 18px;border-radius:12px}
.pep-category-children summary{cursor:pointer;font-weight:700;color:#204a9d}
.pep-allocation-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:20px 0 6px;color:#0f172a}
.pep-allocation-head>span{font-size:.88rem;background:#eaf1ff;color:#1d4ed8;border-radius:100px;padding:8px 12px;white-space:nowrap}
.pep-allocation-summary{font-size:.88rem;color:#8b5418;margin-bottom:12px;line-height:1.5}
.pep-allocation-summary.is-complete{color:#127443}
.pep-phase2-builder .pep-phase2-subject-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;max-height:none;overflow:visible;padding:0}
.pep-allocation-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #dce4ef;border-radius:13px;background:#fff;padding:11px 12px;min-height:65px}
.pep-allocation-row.is-selected{border-color:#729cef;background:#f4f8ff}
.pep-allocation-row.is-pending{border-style:dashed}
.pep-alloc-label{display:flex;align-items:center;gap:9px;min-width:0;font-weight:650;color:#26334b;font-size:.88rem;line-height:1.35;cursor:pointer}
.pep-alloc-label input{width:18px;height:18px;accent-color:#2563eb;flex:none}
.pep-stepper{display:flex;flex:none;align-items:center;border:1px solid #d2dff0;border-radius:9px;background:#fff;overflow:hidden}
.pep-stepper button{width:32px;height:38px;display:grid;place-items:center;background:#f0f5ff;border:0;color:#1b56b8;font-weight:800;font-size:1.2rem;cursor:pointer}
.pep-stepper button:disabled{opacity:.4;cursor:not-allowed}
.pep-stepper input{width:38px;text-align:center;border:0;padding:7px 1px;color:#102744;font-weight:800;font-size:.93rem;appearance:textfield;background:#fff}
.pep-stepper input:disabled{color:#8c9bb1}
.pep-stepper input::-webkit-inner-spin-button,.pep-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.pep-phase2-form-bottom .pep-button:disabled{cursor:not-allowed;background:#9cb2d6;box-shadow:none;color:#fff}
.pep-phase2-single-note{padding:14px;border-radius:11px;background:#edf4ff;color:#34527b;margin-top:16px}
.pep-phase2-availability{margin:14px 0 18px;border:1px solid #bcd3ff;border-radius:12px;padding:14px 16px;background:#f0f6ff;color:#123b79}
.pep-phase2-availability p{margin:.4em 0 0;line-height:1.55}
.pep-availability-dialog{border:0;border-radius:18px;background:#fff;color:#102443;max-width:min(440px,calc(100vw - 28px));padding:24px;box-shadow:0 18px 70px #0b204b44}
.pep-availability-dialog::backdrop{background:#0b1737a8}
.pep-availability-dialog p{line-height:1.6;color:#43536f}
.pep-availability-dialog .pep-button{width:100%;text-align:center;margin-top:10px}
.pep-subject-prefs{padding:22px;margin:18px 0;border:1px solid #dce6f5;border-radius:14px;background:#fff;color:#233752}
.pep-subject-prefs h3{margin:0 0 6px;color:#152b52}
.pep-subject-prefs p{font-size:.88rem;color:#5d6c81;margin:0 0 13px}
.pep-prefs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin-bottom:14px}
.pep-prefs-grid label{display:flex;align-items:center;gap:8px;border:1px solid #e1e8f3;border-radius:9px;padding:11px;font-size:.86rem}
.pep-prefs-grid input{accent-color:#2563eb;width:16px;height:16px;flex:none}
.pep-prefs-success{color:#108051!important;font-weight:650}
@media(max-width:780px){.pep-phase2-builder .pep-phase2-subject-grid{grid-template-columns:1fr}.pep-allocation-head{flex-wrap:wrap}.pep-stepper button{width:37px;min-height:40px}}
@media(max-width:460px){.pep-category-tabs{gap:3px;padding:3px}.pep-category-tabs a{font-size:.78rem;padding:10px 4px}.pep-allocation-row{padding:10px 9px;gap:5px}.pep-alloc-label{font-size:.8rem}.pep-stepper button{width:31px}.pep-stepper input{width:34px}.pep-allocation-head>span{font-size:.78rem}}
/* v0.7.17 — readable, keyboard accessible builder. Scoped selectors override tiny theme styles. */
.pep-phase2-builder{--pep-b-blue:#2563eb;--pep-b-ink:#12223d;--pep-b-muted:#52627c;--pep-b-line:#d8e3f3;--pep-b-soft:#f5f8ff;box-sizing:border-box;max-width:1120px;padding:clamp(18px,3vw,38px);font-size:16px!important;line-height:1.6!important;color:var(--pep-b-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif}
.pep-phase2-builder *, .pep-phase2-generated *{box-sizing:border-box}
.pep-phase2-heading .pep-kicker{display:inline-flex;align-items:center;gap:6px;background:#e9f1ff;color:#214da4;border-radius:99px;padding:7px 14px;font-size:13px!important;font-weight:800!important;letter-spacing:.04em}
.pep-phase2-builder .pep-phase2-heading h2{font-size:clamp(25px,3.5vw,35px)!important;line-height:1.2!important;font-weight:800!important;margin:14px 0 10px!important;color:#101e37!important}
.pep-phase2-builder .pep-phase2-heading p{font-size:16px!important;line-height:1.75!important;color:#53637d!important;max-width:800px;margin:0 0 23px!important}
.pep-builder-section-label{display:flex;align-items:center;gap:14px;margin:30px 0 16px;color:#14253e}
.pep-builder-section-label>span{display:grid;place-items:center;flex:none;border-radius:13px;background:#e8f0ff;color:#2455bb;font-size:15px;font-weight:850;width:42px;height:42px}
.pep-builder-section-label strong{display:block;font-size:20px!important;line-height:1.35;font-weight:800!important}
.pep-builder-section-label small{display:block;color:#60718d;font-size:14px!important;line-height:1.6}
.pep-phase2-builder .pep-phase2-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.pep-phase2-builder .pep-field{display:flex;flex-direction:column;gap:9px;min-width:0;color:#182a45}
.pep-phase2-builder .pep-field>strong{font-size:16px!important;font-weight:740!important;line-height:1.45}
.pep-phase2-builder .pep-field>select,.pep-phase2-builder .pep-difficulty-picker summary{display:flex;align-items:center;justify-content:space-between;gap:9px;width:100%;min-height:54px;padding:11px 14px;border:1px solid #cbd9ed;border-radius:12px;background:#fff;color:#182b48;font-size:16px!important;line-height:1.4;box-shadow:0 2px 4px rgba(20,50,98,.02)}
.pep-phase2-builder .pep-field>select:focus,.pep-difficulty-picker summary:focus-visible,.pep-phase2-builder input:focus-visible,.pep-phase2-builder button:focus-visible,.pep-challenge-box button:focus-visible{outline:3px solid #93b4fa;outline-offset:2px}
.pep-difficulty-picker{position:relative}.pep-difficulty-picker summary{list-style:none;cursor:pointer;font-weight:600}.pep-difficulty-picker summary::-webkit-details-marker{display:none}.pep-difficulty-picker[open] summary{border-color:#316cde;box-shadow:0 0 0 3px #2563eb15}
.pep-difficulty-options{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:40;border:1px solid #d3dff1;border-radius:14px;background:#fff;box-shadow:0 15px 40px #0a254526;padding:10px;min-width:215px}
.pep-difficulty-options label{display:flex;align-items:center;gap:13px;padding:12px;border-radius:9px;color:#172a48;font-size:16px!important;font-weight:630;cursor:pointer;min-height:48px}.pep-difficulty-options label:hover{background:#eff5ff}
.pep-difficulty-options input{width:21px!important;height:21px!important;accent-color:#2563eb;flex:none}
.pep-difficulty-options p{font-size:13px!important;line-height:1.6!important;color:#63718b!important;margin:5px 8px 8px!important}
.pep-year-help{display:block;background:#f0f6ff;color:#355173!important;border-radius:12px;padding:13px 16px;margin:14px 0 0!important;font-size:14px!important;line-height:1.65!important}
.pep-year-help span{font-size:19px;color:#2563eb;margin-right:8px}
.pep-phase2-builder .pep-allocation-options{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-bottom:19px}
.pep-split-tabs,.pep-subject-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.pep-split-tabs button,.pep-subject-actions button{appearance:none;border:1px solid #d5e0f0;background:#fff;color:#295078;border-radius:10px;padding:11px 14px;min-height:46px;font-size:14px!important;line-height:1.4;font-weight:750;cursor:pointer}
.pep-split-tabs button.is-active{background:#e9f1ff;border-color:#86aef7;color:#1f50b4}
.pep-allocation-head{margin:18px 0 7px}.pep-allocation-head>strong{font-size:18px!important;line-height:1.5}
.pep-allocation-head>span{font-size:14px!important;line-height:1.4;font-weight:650}
.pep-allocation-summary{font-size:16px!important;line-height:1.65!important;font-weight:650!important;margin:0 0 18px!important;min-height:27px}
.pep-phase2-builder .pep-phase2-subject-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.pep-phase2-builder .pep-allocation-row{min-height:76px;gap:12px;padding:12px 13px;border-radius:14px;border-color:#d6e1f0}
.pep-phase2-builder .pep-allocation-row.is-selected{background:#f2f7ff;border-color:#8ab1f2}
.pep-phase2-builder .pep-alloc-label{font-size:16px!important;line-height:1.45!important;font-weight:700!important;gap:10px;color:#182e4c!important;flex:1;min-width:0;overflow-wrap:anywhere}
.pep-phase2-builder .pep-alloc-label input{width:20px!important;height:20px!important;flex:none}
.pep-subject-icon{display:grid;place-items:center;width:33px;height:33px;border-radius:9px;background:#e5efff;color:#2563eb;flex:none;font-size:20px}
.pep-phase2-builder .pep-stepper{border-radius:10px;border-color:#b9cbe5;flex:none}
.pep-phase2-builder .pep-stepper button{width:42px;min-height:44px;font-size:24px!important;font-weight:800!important;background:#ecf3ff;color:#1648a6;touch-action:manipulation}
.pep-phase2-builder .pep-stepper input{width:48px;min-height:44px;padding:5px 1px;font-size:17px!important;font-weight:800!important}
.pep-phase2-form-bottom{border-top:1px solid #e0e8f3;margin-top:26px;align-items:flex-end}
.pep-builder-policies{flex:1;max-width:680px}.pep-builder-policies>strong{font-size:16px!important;color:#1b3657}
.pep-builder-policies p{display:flex;flex-wrap:wrap;gap:8px;margin:9px 0!important;max-width:none!important}.pep-builder-policies p span{display:inline-block;font-size:13px!important;line-height:1.5;background:#eef4fc;border-radius:7px;padding:7px 9px;color:#25476b}
.pep-builder-policies small{display:block;font-size:14px!important;line-height:1.7!important;color:#60728b!important}
.pep-phase2-form-bottom .pep-generate-cta{min-height:54px;padding:14px 23px;font-size:16px!important;line-height:1.4!important;font-weight:800!important;border-radius:12px;box-shadow:0 5px 18px #2563eb20;white-space:normal}
.pep-phase2-single-note{background:#eff5ff;padding:17px 20px;color:#294b71;font-size:16px!important}.pep-phase2-single-note strong{font-size:17px!important}.pep-phase2-single-note p{font-size:15px!important;line-height:1.7!important;margin:6px 0 0}
.pep-phase2-generated .pep-share-exact{display:flex;align-items:center;justify-content:space-between;gap:17px;background:#eaf3ff;border:1px solid #bcd6ff;border-radius:16px;padding:17px;margin:16px 0 21px;flex-wrap:wrap}
.pep-share-exact-copy{display:flex;align-items:center;gap:13px;flex:1;min-width:220px}.pep-share-symbol{display:grid;place-items:center;background:#d3e5ff;border-radius:12px;width:45px;height:45px;color:#2654b1;font-size:24px;font-weight:800;flex:none}
.pep-share-exact strong{font-size:18px!important;color:#152d54}.pep-share-exact p{font-size:14px!important;color:#476283;margin:4px 0!important;line-height:1.6!important}.pep-share-exact .pep-share-exact-button{font-size:15px!important;min-height:48px;padding:11px 17px}
.pep-challenge-box{background:#f6faff;border:1px solid #cbdcf6;border-radius:16px;padding:22px;margin:25px 0 15px;color:#162b48;font-size:16px}
.pep-challenge-head{display:flex;align-items:center;gap:13px}.pep-challenge-symbol{display:grid;place-items:center;border-radius:12px;background:#deebff;color:#1d54b7;font-size:28px;width:49px;height:49px;flex:none}.pep-challenge-box h3{font-size:21px!important;margin:0 0 5px!important;color:#162b48!important}.pep-challenge-box p{font-size:14px!important;line-height:1.7!important;color:#566d8c!important;margin:0 0 10px!important}
.pep-challenge-name{display:flex;flex-direction:column;gap:7px;font-size:15px!important;font-weight:700!important;margin:18px 0 13px}.pep-challenge-name input{font-size:16px!important;line-height:1.4;min-height:48px;padding:10px 13px;width:min(100%,420px);border:1px solid #c9d8ed;border-radius:10px;background:#fff;color:#1b3152}
.pep-challenge-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.pep-challenge-actions button{min-height:46px;font-size:15px!important}.pep-challenge-status{font-size:14px!important;font-weight:650!important}
.pep-challenge-scores{display:grid;gap:8px;margin:14px 0}.pep-challenge-score{display:grid;grid-template-columns:38px minmax(80px,1fr) auto;align-items:center;gap:7px;border:1px solid #d9e5f5;border-radius:10px;padding:12px;background:#fff;font-size:15px!important}.pep-challenge-score strong{font-size:15px!important}.pep-challenge-rank{background:#e4efff;color:#1d55b5;border-radius:9px;text-align:center;padding:6px;font-weight:800}.pep-challenge-score small{grid-column:2 / -1;color:#58718f;font-size:13px!important}.pep-challenge-privacy{font-size:13px!important;margin-top:12px!important}
@media(max-width:760px){.pep-phase2-builder .pep-phase2-subject-grid{grid-template-columns:1fr}.pep-phase2-builder .pep-phase2-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.pep-phase2-form-bottom{flex-direction:column;align-items:stretch}.pep-phase2-form-bottom .pep-generate-cta{width:100%}}
@media(max-width:520px){.pep-phase2-builder{padding:18px 13px}.pep-phase2-builder .pep-phase2-heading h2{font-size:26px!important}.pep-phase2-builder .pep-phase2-fields{grid-template-columns:1fr;gap:14px}.pep-phase2-builder .pep-allocation-row{padding:12px 9px;gap:8px}.pep-phase2-builder .pep-stepper button{width:40px}.pep-phase2-builder .pep-stepper input{width:40px}.pep-subject-icon{width:29px;height:29px}.pep-phase2-builder .pep-alloc-label{font-size:15px!important;gap:7px}.pep-phase2-builder .pep-alloc-label input{width:19px!important;height:19px!important}.pep-phase2-builder .pep-allocation-head>span{white-space:normal}.pep-split-tabs button,.pep-subject-actions button{font-size:13px!important;padding:10px}.pep-share-exact .pep-share-exact-button{width:100%}.pep-challenge-score{grid-template-columns:33px minmax(60px,1fr) auto;font-size:13px!important}.pep-challenge-score strong{font-size:14px!important}}
@media(max-width:340px){.pep-phase2-builder .pep-alloc-label{font-size:15px!important}.pep-phase2-builder .pep-stepper button{width:36px}.pep-phase2-builder .pep-stepper input{width:36px}.pep-phase2-builder .pep-allocation-row{gap:4px;padding:10px 7px}.pep-subject-icon{display:none}}

.pep-subject-icon svg{width:20px;height:20px;display:block;flex:none;stroke:currentColor}

/* v0.7.19 — inline difficulty selection, share actions, attempt-by-attempt leaderboard. */
.pep-phase2-builder .pep-level-field{border:0;padding:0;margin:0;min-width:0;display:block}
.pep-phase2-builder .pep-level-field legend{font-size:16px!important;font-weight:740!important;line-height:1.45!important;padding:0;margin:0 0 10px;color:#182a45}
.pep-phase2-builder .pep-level-chips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.pep-phase2-builder .pep-level-chip{position:relative;display:flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;min-height:54px;padding:10px 8px;border:1.5px solid #cbd9ed;border-radius:12px;background:#fff;color:#213857;font-weight:750;font-size:15px!important;line-height:1.3!important;transition:background .15s,border-color .15s,box-shadow .15s}
.pep-phase2-builder .pep-level-chip:hover{background:#f4f8ff;border-color:#8db4f4}
.pep-phase2-builder .pep-level-chip.is-selected{border-color:#2860dc;background:#e9f1ff;color:#154cbb;box-shadow:inset 0 0 0 1px #2860dc}
.pep-phase2-builder .pep-level-chip:focus-within{outline:3px solid #9abaff;outline-offset:2px}
.pep-phase2-builder .pep-level-chip input{position:absolute;inset:0;width:100%!important;height:100%!important;margin:0!important;opacity:0;cursor:pointer}
.pep-phase2-builder .pep-level-chip-icon{color:#5980ba;font-size:17px!important;line-height:1}
.pep-phase2-builder .pep-level-chip.is-selected .pep-level-chip-icon{color:#165ad7}
.pep-phase2-builder .pep-level-check{font-size:13px!important;color:#1451b9;display:none}
.pep-phase2-builder .pep-level-chip.is-selected .pep-level-check{display:inline}
.pep-phase2-builder .pep-level-help{display:block;color:#60718d;font-size:13px!important;line-height:1.5!important;margin-top:9px}
.pep-phase2-generated .pep-share-exact-actions,.pep-board-share-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.pep-phase2-generated .pep-whatsapp-button{background:#087e65!important;border-color:#087e65!important;color:#fff!important;font-weight:800!important}
.pep-phase2-generated .pep-whatsapp-button:hover{background:#056950!important}
.pep-phase2-generated .pep-facebook-button{background:#2255ad!important;border-color:#2255ad!important;color:#fff!important;font-weight:800!important}
.pep-phase2-generated .pep-facebook-button:hover{background:#184689!important}
.pep-share-exact .pep-share-exact-actions .pep-button{min-height:46px;font-size:15px!important;border-radius:10px}
.pep-share-exact .pep-share-feedback{flex-basis:100%;font-size:14px!important;line-height:1.4}
.pep-board-hero{padding:28px;border:1px solid #cbdcf6;background:linear-gradient(125deg,#f3f8ff,#e7f0ff);border-radius:18px;color:#1b3255;margin:14px 0}
.pep-board-hero h2{font-size:30px!important;line-height:1.3!important;color:#173967!important;margin:8px 0 12px!important}
.pep-board-hero p{font-size:16px!important;line-height:1.65!important;color:#455e80!important;max-width:760px;margin-bottom:18px!important}
.pep-challenge-box .pep-board-share-actions{padding-top:15px;border-top:1px solid #d9e5f5;margin-top:16px}
.pep-board-share-actions .pep-button{min-height:46px;font-size:14px!important;border-radius:10px!important;padding:10px 15px!important}
.pep-challenge-scores{min-width:0;width:100%;margin:13px 0}
.pep-leaderboard-scroll{width:100%;max-width:100%;overflow-x:auto;border:1px solid #d4e1f2;border-radius:12px;background:white;-webkit-overflow-scrolling:touch}
.pep-leaderboard-table{border-collapse:collapse!important;width:100%!important;min-width:630px!important;margin:0!important;background:#fff;color:#172c48;font-size:14px!important;line-height:1.5!important}
.pep-leaderboard-table caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.pep-leaderboard-table thead{background:#e9f2ff}
.pep-leaderboard-table th{padding:14px 13px!important;border-bottom:1px solid #cfdff3!important;color:#29476f!important;font-size:13px!important;font-weight:800!important;white-space:nowrap;text-align:left!important}
.pep-leaderboard-table td{padding:13px!important;border-bottom:1px solid #e8eef7!important;font-size:14px!important;vertical-align:middle!important;white-space:nowrap;text-align:left!important}
.pep-leaderboard-table tbody tr:last-child td{border-bottom:0!important}
.pep-leaderboard-table tbody tr.pep-top-rank{background:#fbfdff}
.pep-leaderboard-table .pep-board-position{font-weight:850;color:#2858af}
.pep-leaderboard-table .pep-board-student{font-weight:750;color:#18365c;max-width:185px;overflow:hidden;text-overflow:ellipsis}
.pep-leaderboard-table .pep-board-penalty{color:#a13a41;font-weight:700}
.pep-leaderboard-table .pep-board-net{color:#115c4b;font-weight:850}
.pep-board-hint{font-size:12px!important;line-height:1.5!important;color:#687b96!important;margin:8px 0!important}
.pep-board-empty{border:1px dashed #b8cbe6;border-radius:10px;padding:16px;color:#567091}
@media(max-width:650px){.pep-phase2-builder .pep-level-chips{gap:6px}.pep-phase2-builder .pep-level-chip{font-size:14px!important;gap:4px;min-height:52px;padding:9px 5px}.pep-level-chip-icon{font-size:15px!important}.pep-phase2-generated .pep-share-exact-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.pep-share-exact .pep-share-exact-actions .pep-button{width:100%;min-height:48px;font-size:13px!important;padding:10px 7px}.pep-challenge-box{padding:16px}.pep-board-hero{padding:19px}.pep-board-hero h2{font-size:24px!important}.pep-board-share-actions .pep-button{flex:1 1 44%}}
@media(max-width:360px){.pep-phase2-builder .pep-level-chip{font-size:13px!important}.pep-phase2-builder .pep-level-chip-icon{display:none}.pep-board-share-actions .pep-button{font-size:12px!important;padding:10px 7px!important}}
@media(prefers-reduced-motion:reduce){.pep-level-chip{transition:none!important}}

/* v0.7.20: creator-chosen, immutable marking policy and concise share actions. */
.pep-phase2-builder .pep-builder-marking{margin-top:24px;padding:18px;border:1px solid #c8daf3;background:#f3f8ff;border-radius:16px}
.pep-phase2-builder .pep-builder-marking .pep-builder-section-label{margin-top:0;margin-bottom:13px}
.pep-phase2-builder .pep-builder-negative{display:flex;gap:14px;align-items:flex-start;padding:16px;background:#fff;border:1px solid #c9d9ed;border-radius:12px;cursor:pointer}
.pep-phase2-builder .pep-builder-negative:focus-within{outline:3px solid #93b4fb;outline-offset:2px}
.pep-phase2-builder .pep-builder-negative input{width:22px!important;height:22px!important;accent-color:#2563eb;flex:none;margin:2px 0 0}
.pep-phase2-builder .pep-builder-negative-text{display:flex;flex-direction:column;gap:6px;min-width:0}
.pep-phase2-builder .pep-builder-negative-text strong{font-size:16px!important;line-height:1.5;color:#143256}
.pep-phase2-builder .pep-builder-negative-text em{font-size:14px;font-style:normal;color:#bf4234;font-weight:700;white-space:normal}
.pep-phase2-builder .pep-builder-negative-text small{font-size:14px!important;line-height:1.6!important;color:#516881}
.pep-phase2-generated .pep-share-exact{border-color:#a5c4f7;background:linear-gradient(125deg,#ecf5ff,#f4f9ff)}
.pep-phase2-generated .pep-share-exact .pep-share-exact-actions{align-items:stretch}
.pep-phase2-generated .pep-share-exact .pep-whatsapp-button{background:#147d54;color:#fff;border-color:#147d54}
@media(max-width:520px){.pep-phase2-builder .pep-builder-marking{padding:12px}.pep-phase2-builder .pep-builder-negative{padding:13px;gap:9px}.pep-phase2-builder .pep-builder-negative-text strong{font-size:15px!important}}

.pep-phase2-generated .pep-short-link-preview{display:block;margin-top:8px;font-size:13px!important;color:#2d5079;overflow-wrap:anywhere}.pep-phase2-generated .pep-short-link-preview strong{font-weight:750}.pep-phase2-generated .pep-short-link-preview code{font-size:13px;background:#fff;border:1px solid #b7cee9;border-radius:6px;padding:3px 6px;color:#1b50af;overflow-wrap:anywhere}

/* v0.7.21 — reduce pre-test clutter; bring review accordions above the private board. */
.pep-phase2-generated .pep-phase2-result-header{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:9px!important;margin:0 0 10px!important;flex-wrap:wrap!important}
.pep-phase2-generated .pep-phase2-result-header h2{font-size:clamp(19px,2.3vw,25px)!important;margin:4px 0!important;line-height:1.25!important;color:#14253d!important}
.pep-phase2-generated .pep-phase2-result-header .pep-kicker{font-size:11px!important;letter-spacing:.065em!important;color:#0b756a!important}
.pep-phase2-generated .pep-create-another{padding:10px 13px!important;min-height:39px!important;font-size:12px!important;border-radius:10px!important;white-space:nowrap!important}
.pep-phase2-generated .pep-v21-metadata{display:flex;gap:7px;flex-wrap:wrap;margin:3px 0 12px}
.pep-phase2-generated .pep-v21-metadata>span{display:inline-flex;align-items:center;min-height:29px;padding:5px 10px;border-radius:999px;background:#f1f5fa;color:#334864;font-size:11px;font-weight:750;line-height:1.3}
.pep-phase2-generated .pep-phase2-availability.pep-v21-inline-update{display:flex!important;align-items:center!important;gap:7px!important;line-height:1.4!important;padding:9px 13px!important;margin:9px 0 12px!important;color:#0d6457!important;border:1px solid #d0f2e6!important;border-radius:10px!important;background:#e9fcf6!important;font-size:12px!important;font-weight:750!important}
.pep-phase2-generated .pep-v21-invite{margin:6px 0 12px;border:1px solid #dce6f0;border-radius:10px;background:#f8fbff}
.pep-phase2-generated .pep-v21-invite summary{cursor:pointer;padding:9px 12px;color:#295c81;font-size:12px;font-weight:750}
.pep-phase2-generated .pep-v21-invite .pep-share-exact{margin:0!important;border:0!important;border-top:1px solid #dce6f0!important;border-radius:0!important;box-shadow:none!important;padding:11px!important;gap:9px!important}
.pep-phase2-generated .pep-v21-invite .pep-share-exact strong{font-size:13px!important}.pep-phase2-generated .pep-v21-invite .pep-share-exact p{font-size:12px!important}
.pep-phase2-generated.pep-test-finished>.pep-v21-invite{display:none!important}
.pep-phase2-generated .pep-v21-challenge{margin:12px 0!important;padding:15px!important;background:#f6faff!important;border:1px solid #d4e4f8!important;border-radius:14px!important;color:#193653!important}
.pep-phase2-generated .pep-v21-challenge .pep-challenge-head{gap:10px!important;align-items:center!important}
.pep-phase2-generated .pep-v21-challenge .pep-challenge-symbol{width:36px!important;height:36px!important;font-size:20px!important;border-radius:11px!important}
.pep-phase2-generated .pep-v21-challenge h3{font-size:17px!important;margin:0 0 2px!important;line-height:1.3!important}
.pep-phase2-generated .pep-v21-challenge .pep-challenge-head p{font-size:12px!important;line-height:1.45!important;margin:0!important}
.pep-phase2-generated .pep-v21-challenge .pep-v21-auto-name{font-size:12px!important;color:#526b82!important;margin:9px 0!important}
.pep-phase2-generated .pep-v21-challenge .pep-challenge-actions{display:flex;flex-wrap:wrap;gap:8px;margin:5px 0 7px}
.pep-phase2-generated .pep-v21-challenge .pep-challenge-actions .pep-button{min-height:41px!important;padding:8px 13px!important;border-radius:10px!important;font-size:12px!important;font-weight:800!important}
.pep-phase2-generated .pep-v21-challenge .pep-challenge-status{font-size:11px!important;line-height:1.4!important;margin:7px 0!important;color:#315c79!important}
.pep-phase2-generated .pep-v21-challenge .pep-challenge-scores{margin:7px 0!important}
.pep-phase2-generated .pep-v21-challenge .pep-board-empty{padding:9px 11px!important;font-size:12px!important;line-height:1.45!important;margin:0!important}
.pep-phase2-generated .pep-v21-challenge .pep-board-hint{font-size:11px!important;margin:5px 0!important}
.pep-phase2-generated .pep-v21-challenge .pep-leaderboard-table{font-size:12px!important}
.pep-phase2-generated .pep-v21-challenge .pep-leaderboard-table th,.pep-phase2-generated .pep-v21-challenge .pep-leaderboard-table td{padding:8px!important;font-size:12px!important}
.pep-phase2-generated .pep-v21-board-share,.pep-phase2-generated .pep-v21-privacy{font-size:12px!important;margin-top:9px!important;padding:9px 0!important;border-top:1px solid #d9e5f5!important}
.pep-phase2-generated .pep-v21-board-share summary,.pep-phase2-generated .pep-v21-privacy summary{cursor:pointer;font-size:12px!important;font-weight:750!important;color:#335674!important}
.pep-phase2-generated .pep-v21-board-share .pep-board-share-actions{border:0!important;margin:8px 0 0!important;padding:0!important;display:flex!important;flex-wrap:wrap!important;gap:6px!important}
.pep-phase2-generated .pep-v21-board-share .pep-button{min-height:37px!important;padding:8px!important;font-size:11px!important;flex:1 1 40%!important}
.pep-phase2-generated .pep-v21-privacy p{margin:7px 0 0!important;font-size:11px!important;line-height:1.4!important}
@media(max-width:520px){.pep-phase2-generated .pep-phase2-result-header{align-items:flex-start!important}.pep-phase2-generated .pep-create-another{font-size:11px!important}.pep-phase2-generated .pep-v21-challenge{padding:12px!important}.pep-phase2-generated .pep-v21-challenge .pep-challenge-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.pep-phase2-generated .pep-v21-challenge .pep-challenge-actions .pep-button{min-width:0!important;width:100%!important}}
@media(max-width:360px){.pep-phase2-generated .pep-phase2-result-header{flex-direction:column!important}.pep-phase2-generated .pep-v21-metadata>span{font-size:10px!important}.pep-phase2-generated .pep-v21-challenge .pep-challenge-actions{grid-template-columns:1fr}}

/* v0.7.22 — readable compact challenge and share presentation. */
.pep-phase2-generated .pep-v21-metadata>span{font-size:13px!important;line-height:1.45!important;min-height:33px!important}
.pep-phase2-generated .pep-phase2-availability.pep-v21-inline-update{font-size:15px!important;line-height:1.5!important}
.pep-phase2-generated .pep-v21-challenge h3{font-size:19px!important;line-height:1.4!important}
.pep-phase2-generated .pep-v21-challenge .pep-challenge-head p{font-size:15px!important;line-height:1.55!important}
.pep-phase2-generated .pep-v21-challenge .pep-v21-auto-name{font-size:15px!important;line-height:1.5!important}
.pep-phase2-generated .pep-v21-challenge .pep-challenge-status{font-size:14px!important;line-height:1.6!important}
.pep-phase2-generated .pep-v21-challenge .pep-challenge-actions .pep-button{font-size:14px!important;min-height:43px!important}
.pep-phase2-generated .pep-v21-challenge .pep-board-empty,.pep-phase2-generated .pep-v21-challenge .pep-board-hint{font-size:14px!important;line-height:1.6!important}
.pep-phase2-generated .pep-v21-challenge .pep-leaderboard-table,.pep-phase2-generated .pep-v21-challenge .pep-leaderboard-table th,.pep-phase2-generated .pep-v21-challenge .pep-leaderboard-table td{font-size:14px!important}
.pep-phase2-generated .pep-v21-challenge .pep-v21-privacy summary{font-size:15px!important;line-height:1.5!important}
.pep-phase2-generated .pep-v21-challenge .pep-v21-privacy p{font-size:14px!important;line-height:1.6!important}
@media(max-width:520px){.pep-phase2-generated .pep-v21-metadata>span{font-size:12px!important}.pep-phase2-generated .pep-v21-challenge .pep-challenge-actions{grid-template-columns:1fr 1fr}.pep-phase2-generated .pep-v21-challenge .pep-challenge-actions .pep-button{font-size:13px!important;white-space:normal!important}}
