.pphc-written-attempt{max-width:1380px}.pphc-written-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 20px;margin-bottom:12px;background:#fff;border:1px solid #dcdcde;border-radius:10px}.pphc-written-header h1{font-size:21px;margin:3px 0}.pphc-written-header span{display:block;color:#3858e9;font-weight:700}.pphc-timer{text-align:right}.pphc-timer small,.pphc-timer span{display:block;color:#646970}.pphc-timer strong{font-size:21px;font-variant-numeric:tabular-nums}.pphc-timer.is-urgent strong{color:#d63638}.pphc-written-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 14px;margin-bottom:12px;background:#f6f7f7;border-radius:7px}.pphc-written-nav a{padding:5px 9px;background:#fff;border-radius:5px;text-decoration:none}.pphc-written-dossier{scroll-margin-top:32px;margin-bottom:26px}.pphc-written-dossier>header{padding:12px 18px;background:#243b8f;color:#fff;border-radius:9px 9px 0 0}.pphc-written-dossier>header h2{color:#fff;font-size:19px;margin:2px 0}.pphc-written-case{position:sticky;top:32px;z-index:18;padding:9px 14px;background:#f6f7f7;border:1px solid #dcdcde;border-top:0;box-shadow:0 4px 10px rgba(0,0,0,.08);font-size:12px;line-height:1.35}.pphc-written-case>strong{display:block;margin-bottom:4px;font-size:12px}.pphc-written-case__scroll{max-height:6.75em;overflow:auto;padding-right:7px}.pphc-written-case__scroll p{margin:4px 0}.pphc-written-case__scroll .pphc-written-table{margin:5px 0}.pphc-written-case__scroll .pphc-candidate-button{padding:5px 9px;font-size:12px}.pphc-written-layout{display:block;padding:16px 18px;background:#fff;border:1px solid #dcdcde;border-top:0;border-radius:0 0 10px 10px}.pphc-written-questions{width:100%}.pphc-written-question{padding:0 0 20px;margin-bottom:22px;border-bottom:1px solid #dcdcde}.pphc-written-question:last-child{border:0;margin-bottom:0}.pphc-written-question h3{margin:12px 0 7px}.pphc-question-meta{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#646970;margin-bottom:7px}.pphc-written-table{overflow:auto}.pphc-written-table table{border-collapse:collapse;width:100%}.pphc-written-table td{border:1px solid #c3c4c7;padding:6px}.pphc-written-attempt .pphc-rich-toolbar{min-height:32px;padding:4px 6px}.pphc-written-attempt .pphc-rich-toolbar .pphc-insert-math{margin:0}.pphc-written-attempt .pphc-rich-surface{min-height:150px;padding:9px}.pphc-written-attempt .pphc-content-block{margin-bottom:8px}.pphc-written-attempt .pphc-content-block__header{padding:5px 8px}.pphc-written-attempt .pphc-block-toolbar{padding:6px 0}.pphc-written-actions{position:sticky;bottom:0;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 15px;background:#fff;border:1px solid #dcdcde;box-shadow:0 -4px 14px rgba(0,0,0,.08)}[data-pphc-save-state].is-error{color:#d63638;font-weight:700}.pphc-review{padding:22px;background:#fff;border:1px solid #dcdcde;border-radius:10px}.pphc-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}.pphc-review-item{display:flex;flex-direction:column;padding:12px;border-radius:7px}.pphc-review-item.is-answered{background:#edfaef;color:#176b31}.pphc-review-item.is-empty{background:#fcf0f1;color:#8a2424}.pphc-review-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px}.pphc-review-actions form{margin:0}body>.ML__keyboard{--keycap-height:36px;--keycap-max-width:68px;--keycap-width:min(68px,7.4cqw);--keycap-gap:4px;--keycap-font-size:clamp(12px,2.2cqw,17px);--keyboard-padding-top:3px;--keyboard-toolbar-font-size:12px}body>.ML__keyboard .MLK__toolbar{min-height:26px}body>.ML__keyboard .MLK__toolbar>div>div{min-height:27px;min-width:32px;padding:3px 7px;margin:0 2px 2px}html.pphc-math-keyboard-open body{padding-bottom:calc(var(--pphc-math-keyboard-height,180px) + 24px)!important}@media(max-width:900px){.pphc-written-case{top:0}.admin-bar .pphc-written-case{top:46px}.pphc-review-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.pphc-written-header{align-items:flex-start;padding:11px}.pphc-written-header h1{font-size:17px}.pphc-timer strong{font-size:18px}.pphc-written-case__scroll{max-height:6.75em}.pphc-written-layout{padding:12px}.pphc-review-grid{grid-template-columns:1fr}.pphc-review-actions{align-items:stretch;flex-direction:column}.pphc-review-actions>*{width:100%}body>.ML__keyboard{--keycap-height:32px;--keycap-gap:3px;--keycap-font-size:12px}}
/* Les réponses textuelles compactes grandissent avec leur contenu. */
.pphc-written-attempt [data-pphc-compact] .pphc-rich-surface{min-height:38px}
/* Les actions finales restent dans le flux de la page : aucune barre flottante. */
.pphc-written-actions{position:static!important;bottom:auto!important;z-index:auto;box-shadow:none;margin-top:20px;padding:16px 15px}
.pphc-written-question{scroll-margin-top:150px}.pphc-review-item{border:1px solid transparent;text-decoration:none;transition:border-color .15s ease,box-shadow .15s ease}.pphc-review-item:hover,.pphc-review-item:focus-visible{border-color:currentColor;box-shadow:0 2px 8px rgba(0,0,0,.12)}.pphc-review-item:focus-visible{outline:3px solid #3858e9;outline-offset:2px}
.pphc-math-keyboard-size{position:fixed;top:auto;right:70px;bottom:calc(var(--pphc-math-keyboard-height,0px) - 34px);z-index:100002;display:flex;align-items:center;overflow:hidden;border:1px solid #666;border-radius:6px;background:#fff;box-shadow:0 1px 6px rgba(0,0,0,.18)}.pphc-math-keyboard-size[hidden]{display:none}.pphc-math-keyboard-size button{min-width:42px;height:30px;padding:0 9px;border:0;border-right:1px solid #dcdcde;background:#fff;color:#1d2327;font-size:13px;font-weight:700;cursor:pointer}.pphc-math-keyboard-size button:last-child{border-right:0}.pphc-math-keyboard-size button:hover,.pphc-math-keyboard-size button:focus-visible{background:#3858e9;color:#fff}.pphc-math-keyboard-size button:disabled{background:#f0f0f1;color:#a7aaad;cursor:not-allowed}.pphc-math-keyboard-size [data-pphc-keyboard-reset]{min-width:58px;font-variant-numeric:tabular-nums}body>.ML__keyboard{--keycap-height:var(--pphc-user-keycap-height,36px);--keycap-max-width:var(--pphc-user-keycap-max-width,68px);--keycap-width:min(var(--pphc-user-keycap-max-width,68px),var(--pphc-user-keycap-responsive-width,7.4cqw));--keycap-gap:var(--pphc-user-keycap-gap,4px);--keycap-font-size:var(--pphc-user-keycap-font-size,17px);--keyboard-padding-top:var(--pphc-user-keyboard-padding-top,3px);--keyboard-toolbar-font-size:var(--pphc-user-keyboard-toolbar-font-size,12px)}body>.ML__keyboard .MLK__toolbar{min-height:var(--pphc-user-toolbar-height,27px)}body>.ML__keyboard .MLK__toolbar>div>div{min-height:var(--pphc-user-toolbar-height,27px);min-width:var(--pphc-user-toolbar-width,32px);padding:var(--pphc-user-toolbar-padding-y,3px) var(--pphc-user-toolbar-padding-x,7px)}@media(max-width:600px){.pphc-math-keyboard-size{right:64px;bottom:calc(var(--pphc-math-keyboard-height,0px) - 32px)}.pphc-math-keyboard-size button{min-width:36px;height:28px;padding:0 6px;font-size:12px}.pphc-math-keyboard-size [data-pphc-keyboard-reset]{min-width:50px}}
.pphc-written-question>.pphc-written-rich,.pphc-written-question>.pphc-written-table{font-size:16px;line-height:1.6}.pphc-written-question>.pphc-written-rich math-field.pphc-rendered-math,.pphc-written-question>.pphc-written-table math-field.pphc-rendered-math{font-size:1em;line-height:1;vertical-align:-.1em}.pphc-written-question>.pphc-written-rich math-field.pphc-rendered-math--display,.pphc-written-question>.pphc-written-table math-field.pphc-rendered-math--display{font-size:1em;line-height:1.25;vertical-align:baseline}
.pphc-written-case__heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:4px}.pphc-written-case__heading>strong{font-size:12px}.pphc-statement-open{padding:3px 8px;border:1px solid #3858e9;border-radius:5px;background:#fff;color:#2947cc;font-size:12px;font-weight:700;cursor:pointer}.pphc-statement-open:hover,.pphc-statement-open:focus-visible{background:#3858e9;color:#fff}.pphc-statement-dialog{width:min(1050px,calc(100vw - 40px));max-width:none;height:auto;max-height:90vh;padding:0;border:0;border-radius:12px;background:#fff;box-shadow:0 18px 70px rgba(0,0,0,.35);overflow:hidden}.pphc-statement-dialog::backdrop{background:rgba(8,15,40,.68)}.pphc-statement-dialog__panel{display:flex;flex-direction:column;max-height:90vh}.pphc-statement-dialog__panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:20px 24px;background:#243b8f;color:#fff}.pphc-statement-dialog__panel>header span{display:block;margin-bottom:3px;color:#dce4ff;font-size:13px;font-weight:700;text-transform:uppercase}.pphc-statement-dialog__panel>header h2{margin:0;color:#fff;font-size:22px;line-height:1.3}.pphc-statement-dialog__close{flex:0 0 auto;width:38px;height:38px;padding:0;border:1px solid rgba(255,255,255,.65);border-radius:50%;background:transparent;color:#fff;font-size:28px;line-height:32px;cursor:pointer}.pphc-statement-dialog__close:hover,.pphc-statement-dialog__close:focus-visible{background:#fff;color:#243b8f}.pphc-statement-dialog__content{overflow:auto;padding:26px 30px;font-size:clamp(17px,1.25vw,20px);line-height:1.7;color:#17202a}.pphc-statement-dialog__content .pphc-written-rich{font-size:inherit;line-height:inherit}.pphc-statement-dialog__content math-field.pphc-rendered-math{font-size:1.05em;line-height:1.25;vertical-align:-.12em}.pphc-statement-dialog__content math-field.pphc-rendered-math--display{font-size:1.12em;line-height:1.35}.pphc-statement-dialog__content .pphc-written-table{margin:18px 0}.pphc-statement-dialog__content .pphc-written-table td{padding:10px 12px}.pphc-statement-dialog__panel>footer{display:flex;justify-content:flex-end;padding:14px 24px;border-top:1px solid #dcdcde;background:#f6f7f7}@media(max-width:600px){.pphc-statement-dialog{width:calc(100vw - 18px);max-height:94vh}.pphc-statement-dialog__panel{max-height:94vh}.pphc-statement-dialog__panel>header{padding:15px 16px}.pphc-statement-dialog__panel>header h2{font-size:18px}.pphc-statement-dialog__content{padding:19px 17px;font-size:17px}.pphc-statement-dialog__panel>footer{padding:11px 16px}}
