/* Campus Médecine: thème nuit bleu et espace de gestion plus lisible. */
:root{--campus-radius:22px}
.button,.top-actions .button,.filter-chip,.saved-filter,.answer-option,.save-button,.resource-link,.resume-action,.pomodoro-controls button,.plan-form button,.theme-toggle,.admin-tab,.admin-row-actions button,.admin-user-controls button,.admin-fields input,.admin-fields textarea,.admin-fields select,.admin-user-controls select,.auth-dialog form input{border-radius:18px}
.button{min-height:52px;padding-inline:24px}
.button-small{min-height:42px;border-radius:999px}
.admin-shell{width:min(1320px,calc(100% - 48px));padding:38px 34px 74px;margin:36px auto 72px;border:1px solid #dce8f6;border-radius:30px;background:linear-gradient(145deg,#f9fbff,#f0f6ff);box-shadow:0 22px 70px #12396712;scroll-margin-top:100px}
.admin-heading{align-items:flex-start;margin:0 0 26px}.admin-heading .eyebrow{color:#236dcb}.admin-heading h2{font-size:clamp(32px,4vw,48px);letter-spacing:-2px}.admin-heading h2 em{color:#2878d2}.admin-heading p{max-width:700px;line-height:1.7}.admin-badge{background:#e5f0ff;color:#226dca;border:1px solid #c7ddfa;border-radius:999px;padding:12px 18px;letter-spacing:.08em}
.admin-heading-actions{display:flex;align-items:center;gap:10px}.admin-exit{border:1px solid #d5e2f2;border-radius:999px;background:#fff;color:#375a83;padding:12px 17px;font:700 12px var(--sans);cursor:pointer}.admin-exit:hover{border-color:#8eb5e5;color:#1769d2}body.admin-mode main,body.admin-mode .footer{display:none}body.admin-mode .admin-shell{display:block!important;min-height:calc(100vh - 145px)}
.admin-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 27px}.admin-overview article{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px 20px;border:1px solid #dce7f5;border-radius:21px;background:#fff;box-shadow:0 8px 22px #1845770a}.admin-overview span{color:#73839a;font-size:13px;font-weight:700}.admin-overview strong{font:800 28px var(--display);color:#216dcc}
.admin-tabs{gap:8px;padding:7px;border:1px solid #dce7f5;border-radius:19px;background:#eaf2fc}.admin-tab{border:0;border-radius:14px;padding:13px 20px;color:#5b6f89}.admin-tab.active{background:#fff;color:#1f70ce;box-shadow:0 4px 16px #183c6617}.admin-form,.admin-list{border-radius:24px}.admin-form{padding:28px;box-shadow:0 13px 35px #1539610b}.admin-form h3,.admin-list-heading h3{font-size:20px}.admin-fields{gap:18px}.admin-fields input,.admin-fields textarea,.admin-fields select,.admin-user-controls select,.auth-dialog form input{min-height:46px;border-radius:15px;padding:12px 15px}.admin-fields textarea{min-height:86px}.admin-fields label{gap:9px}.admin-form-actions{gap:12px}.admin-form-actions .button{min-height:48px}.admin-list{box-shadow:0 9px 28px #173c6608}.admin-row{padding:18px 21px}.admin-row strong{font-size:14px}.admin-row-actions button,.admin-user-controls button{border-radius:13px;padding:10px 13px}.admin-order-controls{display:inline-flex;gap:5px;margin-right:4px}.admin-order-controls button{width:35px;height:35px;padding:0!important;border-radius:12px!important;font-size:15px!important}
.demo-only[hidden],.student-live-summary[hidden]{display:none!important}.student-live-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:18px 0;padding:16px 20px;border:1px solid #cfe2fb;border-radius:20px;background:#edf5ff;color:#2a3d58}.student-live-summary strong{color:#1d69bf}.student-live-summary span{color:#61738d;text-align:right}
body.mono-mode{--campus-blue:#8dbfff;--campus-sky:#244e80;--teal:#78b2ff;--mint:#18375d;--line:#29466a;background:#071426;color:#e7f0ff;color-scheme:dark}
body.mono-mode .topbar,body.mono-mode .main-nav{background:#0a1b32;border-color:#1d3655;box-shadow:0 8px 28px #020a15aa}
body.mono-mode .brand,body.mono-mode .brand-word-2,body.mono-mode .main-nav a:hover,body.mono-mode .main-nav .active{color:#eaf3ff}
body.mono-mode .brand-mark,body.mono-mode .menu-toggle{background:#102849;border-color:#29496e;color:#c2ddff}
body.mono-mode .brand-mark svg,body.mono-mode .menu-toggle span{stroke:#9bc8ff;background-color:#9bc8ff}
body.mono-mode .theme-toggle{background:#173a63;border-color:#315985;color:#dcecff}
body.mono-mode .theme-toggle:hover{background:#204d7d;border-color:#4e83bf}
body.mono-mode .top-actions .button-dark{background:#204d7d;color:#f0f7ff;box-shadow:0 8px 20px #020a1555}
body.mono-mode .hero.wrap{background:radial-gradient(ellipse 65% 52% at 50% 0%,#17365b 0%,#0d2340 52%,#071426 100%);color:#eaf3ff}
body.mono-mode .hero.wrap:before{border-color:#82baff20;box-shadow:0 0 0 48px #82baff0d,0 0 0 100px #82baff08}
body.mono-mode .hero h1,body.mono-mode .hero h1 em,body.mono-mode .value-heading h2,body.mono-mode .value-heading h2 em,body.mono-mode .section-head h2,body.mono-mode .feature-copy h2,body.mono-mode .feature-copy h2 em{color:#edf5ff}
body.mono-mode .hero-copy>p,body.mono-mode .hero .social-proof,body.mono-mode .section-sub,body.mono-mode .value-heading p,body.mono-mode .value-card p,body.mono-mode .subject-card p,body.mono-mode .feature-copy p,body.mono-mode .resource-body p,body.mono-mode .community p{color:#adbfda}
body.mono-mode .hero-pill,body.mono-mode .hero .text-link,body.mono-mode .search-box,body.mono-mode .filter-chip,body.mono-mode .answer-option,body.mono-mode .subject-card,body.mono-mode .value-card,body.mono-mode .resource-card{background:#0e2340;border-color:#284667;color:#dceaff;box-shadow:0 14px 36px #020a1555}
body.mono-mode .hero-pill{color:#eaf3ff}.mono-mode .pulse-dot{background:#79bcff;box-shadow:0 0 0 4px #79bcff2a}
body.mono-mode .hero .button-teal,body.mono-mode .quiz-footer .button,body.mono-mode .dialog-done{background:#317fd2;color:#fff;box-shadow:0 10px 24px #06142688}
body.mono-mode .hero .text-link{border-color:#315173;color:#edf5ff}.mono-mode .hero .text-link span,.mono-mode .eyebrow,.mono-mode .section-head>.text-link,.mono-mode .book-top,.mono-mode .preview-label,.mono-mode .preview-copy aside b,.mono-mode .subject-label,.mono-mode .quiz-topic,.mono-mode .resource-link,.mono-mode .dialog-eyebrow,.mono-mode .dialog-body h3,.mono-mode .footer-inner>a:last-child{color:#8dbfff}
body.mono-mode .study-mark,body.mono-mode .strip-icon,body.mono-mode .subject-icon,body.mono-mode .value-icon,body.mono-mode .quiz-chip,body.mono-mode .quick-continue,body.mono-mode .filter-chip.selected,body.mono-mode .saved-filter.selected,body.mono-mode .book-stamp{background:#16365a;border-color:#31577f;color:#b7d7ff}
body.mono-mode .hero-art:before{background:radial-gradient(ellipse,#589de322,transparent 70%);border-color:#82baff22}body.mono-mode .hero-art:after,body.mono-mode .art-cross,body.mono-mode .sparkle-a,body.mono-mode .sparkle-b,body.mono-mode .art-note,body.mono-mode .note-icon,body.mono-mode .check-mark{color:#9bc8ff}
body.mono-mode .art-orbit,body.mono-mode .orbit-two{border-color:#82baff30}
body.mono-mode .book-card,body.mono-mode .art-note,body.mono-mode .quiz-card,body.mono-mode .fiche-dialog{background:#102744;border-color:#2b4b70;color:#e5f0ff;box-shadow:0 24px 70px #01091399}
body.mono-mode .book-heading,body.mono-mode .book-footer strong,body.mono-mode .quiz-content h3,body.mono-mode .answer-option.selected,body.mono-mode .resource-body h3,body.mono-mode .community h2,body.mono-mode .fiche-dialog h2{color:#eff6ff}
body.mono-mode .book-lines i,body.mono-mode .quiz-progress,body.mono-mode .mini-progress{background:#254467}body.mono-mode .book-stamp{border-color:#42658b}.mono-mode .book-footer,body.mono-mode .dialog-source{border-color:#29486a;color:#afc2dc}
body.mono-mode .preview-copy p,body.mono-mode .preview-copy aside,body.mono-mode .dialog-body{color:#c5d5eb}body.mono-mode .preview-copy aside{background:#122e4e;border-color:#31567d}
body.mono-mode .quick-strip{background:#0d203a;border-color:#294768;box-shadow:0 14px 34px #020a1555}.mono-mode .quick-intro,.mono-mode .quick-stat strong,.mono-mode .value-card h3,.mono-mode .subject-card h3{color:#edf5ff}.mono-mode .quick-stat span,.mono-mode .subject-bottom,.mono-mode .resource-meta,.mono-mode .empty-state{color:#aebfda}.mono-mode .quick-divider{background:#2a496b}.mono-mode .continue-icon{background:#367fc8;color:#fff}
body.mono-mode .value-section{background:#071426}body.mono-mode .feature-section{background:linear-gradient(135deg,#0e2340,#102b4d);border-color:#29486a}.mono-mode .feature-mark{color:#83baff10}.mono-mode .quiz-chip{color:#cfe4ff}.mono-mode .quiz-chip i,.mono-mode .quiz-progress i,.mono-mode .mini-progress i{background:#66a7f3}.mono-mode .answer-option:hover,.mono-mode .answer-option.selected{border-color:#5798e0;background:#17375c}.mono-mode .answer-letter,.mono-mode .answer-option.selected .answer-letter{background:#1b4068;border-color:#39689a;color:#e7f2ff}
body.mono-mode .visual-lungs,body.mono-mode .visual-kidney,body.mono-mode .visual-breath{background:linear-gradient(145deg,#173657,#102541)}body.mono-mode .visual-lungs:after,body.mono-mode .visual-kidney:after,body.mono-mode .visual-breath:after{background-image:radial-gradient(#8dbfff55 .65px,transparent .65px)}body.mono-mode .lung-art{background:#1b426c;color:#b9d9ff}body.mono-mode .lung-art:before{background:#102744;box-shadow:inset 7px 0 #315982}body.mono-mode .visual-lungs:before{background:#6aa4e7;box-shadow:-10px 24px 0 -1px #6aa4e7,10px 24px 0 -1px #6aa4e7}body.mono-mode .visual-kidney .kidney-art,body.mono-mode .visual-breath .breath-art{color:#a9cefb;filter:none}body.mono-mode .visual-caption,body.mono-mode .visual-kidney .visual-caption{color:#c0d8f4}
body.mono-mode .community{background:linear-gradient(120deg,#102744,#153455);border-color:#2d4d71}.mono-mode .community-icon{background:#17375d;border-color:#31567d;color:#9bc8ff}.mono-mode .community .eyebrow{color:#8dbfff}.mono-mode .community .button-outline{background:#102744;border-color:#3a5c82;color:#eaf3ff}
body.mono-mode .footer{background:#071426;border-color:#1f3a5b}.mono-mode .footer-inner,.mono-mode .footer-note{color:#aebfda}.mono-mode .footer-inner .brand{color:#eaf3ff}.mono-mode .footer-inner .brand-mark{background:#102744;border-color:#29486a}
body.mono-mode .fiche-dialog::backdrop{background:#010712cc}.mono-mode .dialog-close{color:#c6dcf8}.mono-mode .dialog-source a{color:#8dbfff}.mono-mode .search-box:focus-within{border-color:#5798e0;box-shadow:0 0 0 3px #5798e022}
body.mono-mode .brand-mark svg{background-color:transparent;fill:none;stroke:#9bc8ff}body.mono-mode .main-nav .active:after{background:#69aaf3}body.mono-mode .hero .social-proof strong{color:#9bc8ff}body.mono-mode .note-icon{background:#17375d;color:#9bc8ff}body.mono-mode .check-mark{background:#3079c8;color:#fff}
body.mono-mode .admin-shell{background:linear-gradient(145deg,#0a1e37,#0d2543);border-color:#29486a;box-shadow:0 22px 70px #01091366}body.mono-mode .admin-heading .eyebrow,body.mono-mode .admin-heading h2 em{color:#8dbfff}body.mono-mode .admin-heading h2{color:#edf5ff}body.mono-mode .admin-heading p{color:#aebfda}body.mono-mode .admin-badge{background:#17385e;color:#9bc8ff;border-color:#315880}body.mono-mode .admin-overview article,body.mono-mode .admin-form,body.mono-mode .admin-list{background:#102744;border-color:#294b70;box-shadow:0 12px 28px #020a1533}body.mono-mode .admin-overview span,body.mono-mode .admin-help,body.mono-mode .admin-row small{color:#afc2dc}body.mono-mode .admin-overview strong{color:#8dbfff}body.mono-mode .admin-tabs{background:#0b203a;border-color:#29486a}body.mono-mode .admin-tab{color:#aebfda}body.mono-mode .admin-tab.active{background:#17375c;color:#9bc8ff;box-shadow:0 4px 16px #01091366}body.mono-mode .admin-form h3,body.mono-mode .admin-list-heading h3,body.mono-mode .admin-row strong{color:#edf5ff}body.mono-mode .admin-row{border-color:#29486a}body.mono-mode .admin-fields label{color:#bdcde2}body.mono-mode .admin-fields input,body.mono-mode .admin-fields textarea,body.mono-mode .admin-fields select,body.mono-mode .admin-user-controls select,body.mono-mode .auth-dialog form input{background:#0a1e37;border-color:#315274;color:#edf5ff}body.mono-mode .admin-row-actions button,body.mono-mode .admin-user-controls button{background:#143253;border-color:#315274;color:#c7ddf8}body.mono-mode .admin-message{background:#103453;border-color:#28628e;color:#bcdeff}body.mono-mode .auth-switch{background:#0a1e37}body.mono-mode .auth-switch button.active{background:#17375c;color:#9bc8ff}body.mono-mode .admin-overview article{border-radius:22px}body.mono-mode .admin-exit{background:#102744;border-color:#315274;color:#c8ddf7}
body.mono-mode .student-live-summary{background:#102a48;border-color:#315880;color:#d6e8ff}body.mono-mode .student-live-summary strong{color:#9bc8ff}body.mono-mode .student-live-summary span{color:#b4c9e4}
@media(max-width:760px){.admin-shell{width:calc(100% - 28px);padding:25px 18px 48px;border-radius:26px}.admin-heading{flex-direction:column}.admin-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admin-overview article{padding:15px}.admin-overview strong{font-size:24px}.student-live-summary{align-items:flex-start;flex-direction:column}.student-live-summary span{text-align:left}}
/* Paiement du pack et verrouillage du catalogue. */
.pack-wall{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:16px 28px;padding:26px;margin:0 0 28px;border:1px solid #cbdcf2;border-radius:24px;background:linear-gradient(135deg,#f6faff,#edf5ff 60%,#f8fbff);box-shadow:0 18px 40px #1557a20d;color:#18314e}.pack-wall-top{grid-column:1/-1;display:flex;align-items:center;gap:10px}.pack-lock{width:38px;height:38px;display:grid;place-items:center;border-radius:14px;background:#dcebff;color:#1769d2;font-size:18px}.pack-pill{font:800 10px var(--display);letter-spacing:1.3px;color:#1769d2}.pack-wall-copy h3{font:800 23px/1.15 var(--display);margin:0 0 8px;color:#162c47}.pack-wall-copy p,.pack-payment-details p{font-size:13px;line-height:1.6;color:#61758e;margin:0 0 14px}.pack-price{font:800 30px var(--display);color:#1265c4}.pack-price small{font-size:13px}.pack-price span{font:600 12px var(--sans);color:#6b7f98}.pack-payment-details{padding:17px;border-radius:18px;background:#fff;border:1px solid #dce8f6}.pack-payment-details>strong{font-size:13px;color:#203b5b}.pack-payment-details>p{margin:7px 0 10px;font-size:11px}.pack-payment-details>div{display:grid;gap:8px}.pack-payment-details>div span{padding:9px 11px;border-radius:12px;background:#f5f9ff;font-size:12px;color:#315678;overflow-wrap:anywhere}.pack-payment-details>div b{display:block;color:#1769d2;font-size:10px;margin-bottom:2px}.pack-request-form{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:12px}.pack-request-form label{display:grid;gap:6px;color:#526b87;font-size:11px;font-weight:700}.pack-request-form input,.pack-request-form select{min-height:44px;border:1px solid #cbdcf0;border-radius:14px;padding:10px 12px;background:#fff;color:#193654}.pack-request-form .button{border-radius:16px;min-height:44px;white-space:nowrap}.pack-secure-note{grid-column:1/-1;color:#758aa1;font-size:10px;line-height:1.5}.pack-status{grid-column:1/-1;padding:14px 16px;border-radius:16px;display:grid;gap:4px}.pack-status.pending{background:#fff8e8;border:1px solid #f1d38b;color:#70551a}.pack-status.pending span,.pack-status.pending small{font-size:11px}.pack-status.denied,.pack-request-error{background:#fff1f0;color:#aa493f;border-radius:12px;padding:12px;font-size:12px}.admin-payment-list .admin-row-actions{flex-wrap:wrap}.admin-payment-list .button{min-height:34px;padding:0 12px;border-radius:12px;font-size:11px}.admin-payment-list .danger-action{border-color:#f0c8c4!important;color:#a44840!important}.admin-help{line-height:1.55}.private-pdf-link{cursor:pointer}
body.mono-mode .pack-wall{background:linear-gradient(140deg,#0e2745,#12365e 60%,#102844);border-color:#2d527c;box-shadow:0 18px 40px #02091566;color:#edf5ff}body.mono-mode .pack-wall-copy h3{color:#eff6ff}body.mono-mode .pack-wall-copy p,body.mono-mode .pack-payment-details p,body.mono-mode .pack-secure-note{color:#b4c9e3}body.mono-mode .pack-lock{background:#173b65;color:#a6ceff}body.mono-mode .pack-pill,body.mono-mode .pack-price,body.mono-mode .pack-payment-details>div b{color:#91c3ff}body.mono-mode .pack-price span{color:#b5c8df}body.mono-mode .pack-payment-details{background:#0c2340;border-color:#2d527c}body.mono-mode .pack-payment-details>strong{color:#edf5ff}body.mono-mode .pack-payment-details>div span{background:#122f51;color:#d2e4f8}body.mono-mode .pack-request-form label{color:#bdcfe5}body.mono-mode .pack-request-form input,body.mono-mode .pack-request-form select{background:#091c34;border-color:#34577d;color:#edf5ff}body.mono-mode .pack-status.pending{background:#40371f;border-color:#786333;color:#ffe7a7}body.mono-mode .pack-status.denied,body.mono-mode .pack-request-error{background:#472c32;color:#ffd7d4}
@media(max-width:700px){.pack-wall{grid-template-columns:1fr;padding:19px;border-radius:20px}.pack-wall-top,.pack-secure-note,.pack-status,.pack-request-form{grid-column:1}.pack-request-form{grid-template-columns:1fr}.pack-request-form .button{width:100%}}
.home-pack-section{padding-top:24px;padding-bottom:18px}.home-pack-card{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(250px,.8fr);gap:28px;padding:30px;border:1px solid #d6e5f7;border-radius:26px;background:linear-gradient(120deg,#f2f7ff 0%,#fff 67%,#edf5ff 100%);box-shadow:0 18px 44px #1747780d}.home-pack-kicker{display:inline-flex;align-items:center;gap:8px;color:#2875d2;font:800 10px var(--display);letter-spacing:1.3px}.home-pack-kicker i{width:8px;height:8px;border-radius:50%;background:#2c83e8;box-shadow:0 0 0 4px #2c83e81b}.home-pack-copy h2{max-width:590px;margin:13px 0 9px;color:#142b49;font:800 clamp(24px,3vw,34px)/1.13 var(--display);letter-spacing:-1.1px}.home-pack-copy>p{max-width:580px;margin:0;color:#687c97;font-size:13px;line-height:1.65}.home-pack-price-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:12px;margin-top:18px}.home-pack-price-row strong{color:#1769d2;font:800 clamp(24px,3vw,34px)/1 var(--display);letter-spacing:-.8px}.home-pack-price-row>span{color:#71839a;font-size:11px;font-weight:650}.home-pack-status{display:inline-flex;align-items:center;gap:7px;margin-top:12px;padding:7px 11px;border:1px solid #dbe6f4;border-radius:999px;background:#fff;color:#70819a;font-size:10px;font-weight:700}.home-pack-status:before{content:"";width:7px;height:7px;border-radius:50%;background:#96a8bd}.home-pack-status.is-open{border-color:#b9e6d6;background:#effbf6;color:#267557}.home-pack-status.is-open:before{background:#30a879}.home-pack-side{align-self:center;padding:19px;border:1px solid #d9e7f7;border-radius:21px;background:#fff;box-shadow:0 10px 28px #1a4c7909}.home-pack-methods{display:flex;align-items:center;gap:11px}.home-pack-method-icon{width:39px;height:39px;display:grid;place-items:center;border-radius:14px;background:#eaf3ff;color:#2875d2;font-size:20px}.home-pack-methods strong,.home-pack-methods small{display:block}.home-pack-methods strong{color:#203a5a;font:750 13px var(--display)}.home-pack-methods small{margin-top:3px;color:#8292a7;font-size:10px}.home-pack-method-options{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.home-pack-method-options span{display:flex;align-items:center;gap:7px;padding:9px 10px;border:1px solid #e1eaf5;border-radius:12px;color:#405b7a;font-size:11px;font-weight:700}.home-pack-method-options b{width:22px;height:22px;display:grid;place-items:center;border-radius:8px;background:#edf5ff;color:#226dca;font-size:10px}.home-pack-action{width:100%;min-height:45px;justify-content:center;border-radius:15px;font-size:11px}.home-pack-note{display:block;margin-top:10px;color:#8292a7;font-size:9px;line-height:1.5;text-align:center}body.mono-mode .home-pack-card{border-color:#29496d;background:linear-gradient(120deg,#0d2340,#102b4b 68%,#0c2039);box-shadow:0 18px 44px #020a1555}body.mono-mode .home-pack-copy h2{color:#edf5ff}body.mono-mode .home-pack-copy>p,body.mono-mode .home-pack-price-row>span{color:#afc2dc}body.mono-mode .home-pack-kicker,body.mono-mode .home-pack-price-row strong{color:#91c3ff}body.mono-mode .home-pack-kicker i{background:#71adf4;box-shadow:0 0 0 4px #71adf422}body.mono-mode .home-pack-status{background:#102744;border-color:#294b70;color:#b4c9e3}body.mono-mode .home-pack-status:before{background:#8aa4c2}body.mono-mode .home-pack-status.is-open{background:#123a3d;border-color:#28686b;color:#a8e4d3}body.mono-mode .home-pack-status.is-open:before{background:#63c7a2}body.mono-mode .home-pack-side{background:#0b203a;border-color:#2a4b70;box-shadow:0 10px 28px #020a1555}body.mono-mode .home-pack-methods strong{color:#edf5ff}body.mono-mode .home-pack-methods small,body.mono-mode .home-pack-note{color:#a9bdd7}body.mono-mode .home-pack-method-icon,body.mono-mode .home-pack-method-options b{background:#15375c;color:#a6ceff}body.mono-mode .home-pack-method-options span{background:#102744;border-color:#294b70;color:#d2e4f8}
.home-pack-method-options>span{min-width:0;align-items:flex-start}.home-pack-method-options>span>span{display:grid;gap:3px;min-width:0;padding:0;border:0;background:transparent;color:inherit;font-weight:650;overflow-wrap:anywhere}.home-pack-method-options>span>span>strong{font-size:10px}.home-pack-method-options>span>span>small{color:#71839a;font-size:9px;line-height:1.35;overflow-wrap:anywhere}body.mono-mode .home-pack-method-options>span>span{background:transparent;border:0;color:#d2e4f8}body.mono-mode .home-pack-method-options>span>span>small{color:#afc2dc}
.home-pack-checkout{margin-top:9px;min-width:0}.home-pack-checkout .home-pack-request-form{grid-template-columns:minmax(0,1fr);gap:9px}.home-pack-checkout .home-pack-request-form label,.home-pack-checkout .home-pack-request-form .proof-upload,.home-pack-checkout .home-pack-request-form .button{grid-column:1}.home-pack-checkout .home-pack-request-form .button{width:100%;white-space:normal}.home-pack-checkout .home-pack-request-form input[type=file]{font-size:10px}.home-pack-access-state{display:grid;gap:5px;margin:10px 0;padding:12px;border:1px solid #c7e6d9;border-radius:15px;background:#f0faf5;color:#276e52;font-size:11px;line-height:1.45;overflow-wrap:anywhere}.home-pack-access-state small,.home-pack-access-state span{font-size:10px;line-height:1.5}.home-pack-access-state.is-pending{border-color:#eed99d;background:#fff9ea;color:#77591d}body.mono-mode .home-pack-access-state{background:#123a3d;border-color:#28686b;color:#b5ead9}body.mono-mode .home-pack-access-state.is-pending{background:#40371f;border-color:#786333;color:#ffe7a7}
@media(max-width:760px){.home-pack-section{padding-top:15px;padding-bottom:10px}.home-pack-card{grid-template-columns:1fr;gap:20px;padding:21px;border-radius:22px}.home-pack-side{width:100%}.home-pack-copy h2{font-size:26px}.home-pack-copy>p{font-size:12px}}

/* Lecture intégrée des documents et confort de lecture des fiches. */
.document-viewer{width:min(1120px,calc(100vw - 28px));height:min(92dvh,1000px);max-width:none;max-height:none;padding:0;overflow:hidden;border:1px solid #d7e3f2;border-radius:24px;background:#f5f8fc;color:#17304e;box-shadow:0 24px 90px #102b4d38}
.document-viewer::backdrop{background:#09182bc2;backdrop-filter:blur(5px)}
.document-viewer-header{height:66px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px 10px 20px;border-bottom:1px solid #dce6f2;background:#fff}
.document-viewer-header>div{min-width:0;display:grid;gap:4px}.document-viewer-header strong{max-width:min(70vw,780px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:750 14px var(--display)}
.document-viewer-close{flex:none;border:1px solid #dce5f1;border-radius:999px;background:#f4f8fd;color:#315577;padding:9px 14px;font-size:11px;font-weight:750;cursor:pointer}
.document-viewer iframe{display:block;width:100%;height:calc(100% - 66px);border:0;background:#e7eef7}
.inline-document-link{border:0;background:none;color:#1769d2;text-decoration:underline;font:inherit;font-weight:700;cursor:pointer}
.curriculum-resource,.resource-card,.resource-body,.resource-meta,.admin-row,.admin-row-actions,.pack-wall,.pack-request-form{min-width:0}
.curriculum-resource h4,.curriculum-resource p,.resource-body h3,.resource-body p,.admin-row strong,.admin-row small,.admin-row-actions,.pack-wall-copy,.pack-payment-details,.pack-request-form label{overflow-wrap:anywhere;word-break:normal}
.curriculum-resource h4,.resource-body h3{line-height:1.32}
.resource-meta{flex-wrap:wrap;gap:5px 10px}
.admin-row-actions{flex-wrap:wrap;justify-content:flex-end}
.pack-request-form{grid-template-columns:repeat(2,minmax(0,1fr))}
.pack-request-form .proof-upload{grid-column:1/-1}.pack-request-form input[type=file]{width:100%;min-width:0;padding:10px;background:#f8fbff;border:1px dashed #c8d9ed;border-radius:14px;color:#49617d}
.pack-request-form .button{grid-column:1/-1;justify-content:center;white-space:normal}
body.mono-mode .document-viewer{background:#0c2039;border-color:#2c4c70;color:#edf5ff;box-shadow:0 24px 90px #010814aa}
body.mono-mode .document-viewer-header{background:#102744;border-color:#2c4c70}
body.mono-mode .document-viewer-close{background:#17375c;border-color:#315880;color:#d7e8fb}
body.mono-mode .document-viewer iframe{background:#091a30}
body.mono-mode .pack-request-form input[type=file]{background:#0a1e37;border-color:#315274;color:#d8e7f8}
@media(max-width:700px){.document-viewer{width:calc(100vw - 14px);height:calc(100dvh - 20px);border-radius:18px}.document-viewer-header{height:60px;padding:8px 10px 8px 14px}.document-viewer-header strong{max-width:58vw;font-size:12px}.document-viewer-close{padding:8px 11px;font-size:10px}.document-viewer iframe{height:calc(100% - 60px)}.pack-request-form{grid-template-columns:minmax(0,1fr)}.pack-request-form label,.pack-request-form .proof-upload,.pack-request-form .button{grid-column:1}}

/* Reader controls sized for touch, plus an optional distraction-free full screen. */
.document-viewer{width:min(1280px,calc(100vw - 24px));height:min(96dvh,1200px);}
.document-viewer-header{height:68px;gap:14px;padding:9px 14px 9px 20px}
.document-viewer-heading{flex:1;min-width:0;display:grid;gap:3px}
.document-viewer-heading .dialog-eyebrow{font:800 9px var(--display);letter-spacing:1.5px;color:#1769d2}
.document-viewer-header strong{max-width:100%;font-size:13px}
.document-viewer-tools{display:flex;align-items:center;gap:7px}
.document-viewer-tool,.document-viewer-close{width:44px;height:44px;display:grid;place-items:center;flex:none;border:1px solid #dce5f1;border-radius:15px;background:#f4f8fd;color:#315577;font:700 20px/1 var(--sans);cursor:pointer;transition:background .18s ease,transform .18s ease,border-color .18s ease}
.document-viewer-tool:hover,.document-viewer-close:hover{background:#e9f2ff;border-color:#b7d2f2;transform:translateY(-1px)}
.document-viewer-tool[aria-pressed=true]{background:#e5f0ff;border-color:#9cc4f2;color:#1769d2}
.document-viewer-close{font-size:24px}
.document-viewer-hint{min-height:34px;display:flex;align-items:center;padding:6px 18px;background:#eef5ff;color:#49617d;font:600 11px/1.4 var(--sans);overflow-wrap:anywhere}
.document-viewer-hint.is-error{background:#fff2ef;color:#a7473d}
.document-viewer iframe{height:calc(100% - 102px)}
.document-viewer.is-expanded{position:fixed;inset:0;margin:0;width:100vw;height:100dvh;max-width:none;max-height:none;border:0;border-radius:0}
.document-viewer.is-expanded .document-viewer-header{height:72px;padding-left:24px;padding-right:20px}
.document-viewer.is-expanded iframe{height:calc(100% - 106px)}
body.mono-mode .document-viewer-heading .dialog-eyebrow{color:#9bc8ff}
body.mono-mode .document-viewer-tool,body.mono-mode .document-viewer-close{background:#17375c;border-color:#315880;color:#d7e8fb}
body.mono-mode .document-viewer-tool:hover,body.mono-mode .document-viewer-close:hover,body.mono-mode .document-viewer-tool[aria-pressed=true]{background:#214a77;border-color:#4c7cac;color:#fff}
body.mono-mode .document-viewer-hint{background:#102b49;color:#b8cde7}
body.mono-mode .document-viewer-hint.is-error{background:#482e39;color:#ffc8bd}
@media(max-width:700px){
 .document-viewer{width:100vw;height:100dvh;border:0;border-radius:0}
 .document-viewer-header{height:62px;gap:6px;padding:7px 9px 7px 13px}
 .document-viewer-heading .dialog-eyebrow{font-size:8px;letter-spacing:1px}
 .document-viewer-header strong{max-width:38vw;font-size:11px}
 .document-viewer-tools{gap:4px}
 .document-viewer-tool,.document-viewer-close{width:42px;height:42px;border-radius:13px;font-size:18px}
 .document-viewer-close{font-size:23px}
 .document-viewer-hint{min-height:40px;padding:7px 12px;font-size:10px}
 .document-viewer iframe{height:calc(100% - 102px)}
 .document-viewer.is-expanded .document-viewer-header{height:62px;padding:7px 9px 7px 13px}
 .document-viewer.is-expanded iframe{height:calc(100% - 102px)}
}
