/* MyEureka Course Directory - theme-agnostic, shortcode-scoped. */
.meph-directory,.meph-directory *{box-sizing:border-box}
.meph-directory{--mec-radius:17px;--mec-width:1540px;--mec-sidebar:270px;--mec-cols:4;--mec-banner-height:145px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:14px;line-height:1.5;color:var(--mec-ink);background:var(--mec-bg);-webkit-font-smoothing:antialiased;min-width:0;isolation:isolate;padding:0 0 55px}
.meph-directory svg{flex-shrink:0}.meph-directory a{color:inherit;text-decoration:none}.meph-directory a:hover{text-decoration:none}.meph-directory button,.meph-directory select,.meph-directory input{font:inherit}.meph-directory button{cursor:pointer}.meph-directory :focus-visible{outline:3px solid var(--me-border-brand, #626ada);outline-offset:2px}.meph-directory .mec-container{max-width:var(--mec-width);margin:auto;padding:26px 25px 0}
.meph-directory .mec-hero{height:178px;display:flex;align-items:center;position:relative;overflow:hidden;background:linear-gradient(98deg,var(--me-surface, #fafaff) 0%,var(--mec-hero) 66%,var(--me-primary-soft, #e0e2ff) 100%);border-radius:22px;margin-bottom:16px;padding:26px 36px;border:1px solid var(--me-border, #ecedf7)}
html[data-meph-theme-resolved="dark"] .meph-directory .mec-hero:after{content:"";position:absolute;right:18%;top:-120px;border:45px solid var(--me-glass-border, #fff6);width:240px;height:240px;border-radius:50%;pointer-events:none}.meph-directory .mec-hero-copy{position:relative;z-index:1;max-width:720px}.meph-directory .mec-eyebrow{display:flex;align-items:center;gap:6px;color:var(--me-highlight, #464fcd);font-size:10px;letter-spacing:2.2px;font-weight:900}.meph-directory .mec-hero h1{font-size:clamp(29px,3.1vw,44px);line-height:1.14;letter-spacing:-1.45px;font-weight:900;margin:7px 0}.meph-directory .mec-hero p{font-size:14px;color:var(--me-text-2, #6b7194);max-width:620px;margin:0;line-height:1.55}.meph-directory .mec-hero-image{position:absolute;right:0;top:0;width:38%;height:100%;object-fit:cover;object-position:55% 40%;mask-image:linear-gradient(90deg,transparent,var(--me-inverse-bg, #000) 44%);-webkit-mask-image:linear-gradient(90deg,transparent,var(--me-inverse-bg, #000) 44%)}
.meph-directory .mec-layout{display:grid;grid-template-columns:var(--mec-sidebar) minmax(0,1fr);gap:15px;align-items:start;margin:0;padding:0;border:0;background:transparent}
.meph-directory .mec-sidebar{padding:15px;background:var(--me-surface, #fff);border:1px solid var(--me-border, #eaeafb);border-radius:var(--mec-radius);box-shadow:var(--me-shadow-1, 0 10px 30px #3c326c0a);min-width:0;align-self:start}
.meph-directory .mec-filter-head{display:flex;justify-content:space-between;align-items:center;gap:4px;border-bottom:1px solid var(--me-border, #eef0f9);padding:4px 0 13px}.meph-directory .mec-filter-head h2{font-size:15px;font-weight:850;margin:0;display:flex;align-items:center;gap:7px}.meph-directory .mec-filter-head h2 svg{color:var(--me-highlight, #3741d0)}.meph-directory .mec-reset{display:inline-flex;gap:3px;align-items:center;color:var(--me-highlight, #3f48cb);font-size:11px;font-weight:800;white-space:nowrap}
.meph-directory .mec-sidebar fieldset{border:0;margin:0;padding:13px 0;border-bottom:1px solid var(--me-border, #eff0f9);min-width:0}.meph-directory .mec-sidebar fieldset:last-of-type{border-bottom:0}.meph-directory .mec-sidebar legend{padding:0;margin:0 0 7px;font-weight:800;color:var(--me-text-2, #424369);font-size:12px;width:100%}.meph-directory .mec-check{display:flex;align-items:center;gap:8px;padding:3px 0;color:var(--me-text-2, #66698d);font-size:11px;min-height:25px;cursor:pointer}.meph-directory .mec-check input{appearance:auto;accent-color:var(--me-highlight);height:15px;width:15px;padding:0;margin:0;flex:0 0 auto}.meph-directory .mec-check span{flex:1}.meph-directory .mec-check small{color:var(--me-text-3, #acacce);font-size:10px}.meph-directory .mec-pill-grid{display:flex;gap:5px;flex-wrap:wrap}.meph-directory .mec-pill input{position:absolute;opacity:0;pointer-events:none}.meph-directory .mec-pill span{display:block;background:var(--me-surface-2, #f7f7ff);border:1px solid var(--me-border, #eeeeff);padding:4px 9px;border-radius:99px;color:var(--me-text-3, #77779c);font-size:10px;cursor:pointer}.meph-directory .mec-pill input:checked+span{background:linear-gradient(125deg,var(--me-primary, #525ad6),var(--mec-primary));color:var(--me-on-primary, #fff);box-shadow:var(--me-shadow-brand, 0 5px 15px #7142f52a);border-color:transparent}.meph-directory .mec-pill:focus-within span{outline:2px solid var(--me-border-brand, #5961d7);outline-offset:2px}
.meph-directory .mec-sidebar select{display:block;background:var(--me-surface, #fafaff);border:1px solid var(--me-border, #eaebfb);border-radius:10px;font-size:11px;color:var(--me-text-2, #555a83);max-width:100%;width:100%;padding:8px 10px;min-height:35px}.meph-directory .mec-toggle{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--me-text-2, #4a4e7e);font-weight:650;cursor:pointer}.meph-directory .mec-toggle>input{appearance:none;width:27px;height:16px;border-radius:20px;background:var(--me-surface-3, #d4d6ed);position:relative;transition:background .2s;margin:0;flex:0 0 27px;border:0;padding:0}.meph-directory .mec-toggle>input:after{content:"";position:absolute;top:2px;left:2px;background:var(--me-surface, #fff);width:12px;height:12px;border-radius:50%;transition:transform .2s}.meph-directory .mec-toggle>input:checked{background:var(--mec-primary)}.meph-directory .mec-toggle>input:checked:after{transform:translateX(11px)}.meph-directory .mec-toggle>span:empty{display:none}.meph-directory .mec-apply{width:100%;border:0;border-radius:12px;padding:12px 10px;color:var(--me-on-primary, #fff);background:linear-gradient(105deg,var(--me-primary, #4e57d6),var(--me-primary, #363fbd));box-shadow:var(--me-shadow-brand, 0 8px 16px #7144f522);display:flex;align-items:center;justify-content:center;gap:9px;font-weight:800;margin-top:13px;font-size:12px}.meph-directory .mec-apply:hover{filter:brightness(1.08)}
.meph-directory .mec-results{min-width:0}.meph-directory .mec-toolbar{background:var(--me-surface, #fff);border:1px solid var(--me-border, #eeeeff);border-radius:17px;padding:11px;box-shadow:var(--me-shadow-brand, 0 8px 25px #3d30770a);margin-bottom:13px}.meph-directory .mec-search{display:flex;align-items:center;gap:10px;background:var(--me-surface, #fafaff);border:1px solid var(--me-border, #ecedf7);border-radius:13px;padding:0 7px 0 14px;margin-bottom:10px;min-height:44px;color:var(--me-highlight, #3c46d1)}.meph-directory .mec-search input{border:0!important;outline:0!important;min-width:0;width:100%;flex:1;background:transparent!important;color:var(--me-text, #242753);font-size:12px;box-shadow:none!important;padding:7px 0!important}.meph-directory .mec-search input::placeholder{color:var(--me-text-3, #9498b3)}.meph-directory .mec-search button{border:0;border-radius:9px;background:var(--me-primary-soft, #e8e9f9);color:var(--me-highlight);height:32px;width:34px;display:grid;place-items:center}.meph-directory .mec-chips{display:flex;gap:8px;flex-wrap:wrap}.meph-directory .mec-chip{border:1px solid var(--me-border, #eaebfa);background:var(--me-surface, #fcfcff);padding:8px 14px;border-radius:999px;display:inline-flex;align-items:center;gap:6px;color:var(--me-text-2, #6b6d90);font-size:11px;font-weight:800;transition:color .2s,background .2s,transform .2s;line-height:1.1}.meph-directory .mec-chip svg{color:var(--me-highlight, #414bd3)}.meph-directory .mec-chip.is-active,.meph-directory .mec-chip:hover{background:var(--mec-primary);color:var(--me-on-primary, #fff);border-color:var(--mec-primary);transform:translateY(-1px)}.meph-directory .mec-chip.is-active svg,.meph-directory .mec-chip:hover svg{color:var(--me-on-primary, #fff)}
.meph-directory .mec-feature{min-height:var(--mec-banner-height);display:grid;grid-template-columns:minmax(185px,32%) minmax(0,1fr) auto;align-items:center;gap:15px;background:linear-gradient(110deg,var(--me-surface-2, #f7f8fd),var(--me-surface-2, #ecedff));border:1px solid var(--me-border, #e3e5fb);border-radius:18px;padding:9px;margin-bottom:15px;box-shadow:var(--me-shadow-brand, 0 8px 22px #3625610b)}.meph-directory .mec-feature-art{height:calc(var(--mec-banner-height) - 18px);border-radius:14px;background:linear-gradient(115deg,var(--me-primary, #4750c7),var(--me-success, #aedbc3));position:relative;overflow:hidden}.meph-directory .mec-feature-art img{height:100%;width:100%;object-fit:cover}.meph-directory .mec-feature-art>span{position:absolute;top:10px;right:9px;background:var(--me-surface, #fff);color:var(--me-highlight, #3a44cc);padding:6px 9px;border-radius:99px;font-size:9px;font-weight:900;white-space:nowrap;display:flex;align-items:center;gap:4px}.meph-directory .mec-feature-copy h2{font-size:19px;letter-spacing:-.55px;margin:0 0 4px;line-height:1.24;font-weight:850}.meph-directory .mec-feature-copy>div{font-size:11px;color:var(--me-highlight, #4149c4);font-weight:800}.meph-directory .mec-feature-copy p{color:var(--me-text-3, #777b98);font-size:11px;line-height:1.5;margin:5px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.meph-directory .mec-feature-btn{border-radius:999px;background:linear-gradient(120deg,var(--me-primary, #4851d1),var(--me-primary, #353ec3));color:var(--me-on-primary, #fff)!important;display:flex;align-items:center;gap:9px;font-size:11px;font-weight:820;padding:12px 16px;margin-right:8px;white-space:nowrap;transition:transform .2s,box-shadow .2s}.meph-directory .mec-feature-btn:hover{transform:translateY(-2px);box-shadow:var(--me-shadow-brand, 0 10px 23px #6840ce44)}
.meph-directory .mec-results-line{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin:12px 2px;color:var(--me-text-2, #646b93);font-size:12px}.meph-directory .mec-results-line strong{font-weight:850;color:var(--me-info-text, #3b4473)}.meph-directory .mec-results-line>div{display:flex;gap:17px;align-items:center;flex-wrap:wrap}.meph-directory .mec-sort{display:flex;gap:9px;align-items:center;font-size:11px;font-weight:700}.meph-directory .mec-sort select{background:var(--me-surface, white);border:1px solid var(--me-border, #e7e8f7);border-radius:9px;padding:7px 9px;color:var(--me-text-2, #535880);font-size:11px}.meph-directory .mec-view-switch{display:flex;border:1px solid var(--me-border, #ebecfb);background:var(--me-surface, #fff);border-radius:10px;padding:3px;gap:2px}.meph-directory .mec-view-switch button{border:0;background:var(--me-surface, #fff);color:var(--me-text-3, #74729a);width:28px;height:26px;display:grid;place-items:center;border-radius:7px;padding:0}.meph-directory .mec-view-switch button.is-active{background:var(--mec-primary);color:var(--me-on-primary, #fff)}
.meph-directory .mec-courses{display:grid;grid-template-columns:repeat(var(--mec-columns),minmax(0,1fr));gap:13px;align-items:stretch}.meph-directory .mec-card{background:var(--me-surface, #fff);min-width:0;border-radius:var(--mec-radius);overflow:hidden;border:1px solid var(--me-border, #ebecfa);box-shadow:var(--me-shadow-brand, 0 7px 24px #34256b09);display:flex;flex-direction:column;transition:transform .24s,box-shadow .24s,border-color .24s}.meph-directory .mec-card:hover{transform:translateY(-4px);box-shadow:var(--me-shadow-brand, 0 18px 32px #3026751f);border-color:var(--me-border-brand, #cccfff)}.meph-directory .mec-card-cover{position:relative;aspect-ratio:16/9;background:var(--me-primary-soft, #dcdeff);overflow:hidden}.meph-directory .mec-card-cover>a{position:absolute;inset:0}.meph-directory .mec-card-cover img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.meph-directory .mec-card:hover img{transform:scale(1.045)}.meph-directory .mec-cover-fallback{display:grid;place-items:center;width:100%;height:100%;color:var(--me-highlight, #3f49d1);background:linear-gradient(125deg,var(--me-primary-soft-2, #cfd2ff),var(--me-surface-2, #eaebff))}.meph-directory .mec-category{position:absolute;bottom:10px;left:10px;display:flex;align-items:center;gap:5px;color:var(--me-highlight, #3841b7);background:var(--me-surface, #fff);box-shadow:var(--me-shadow-1, 0 4px 15px #5a45921c);border-radius:99px;padding:6px 10px;font-size:9px;font-weight:900;max-width:88%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.meph-directory .mec-percent{position:absolute;top:9px;right:9px;background:var(--me-overlay, #3c346ac9);color:var(--me-on-primary, #fff);border-radius:50px;padding:4px 9px;font-size:10px;font-weight:900}.meph-directory .mec-save-course{position:absolute;right:9px;top:9px;display:grid;place-items:center;width:29px;height:29px;padding:0;background:var(--me-surface, #fff);color:var(--me-highlight, #3e48d2);border:1px solid var(--me-border, #e6e8ff);border-radius:9px;box-shadow:var(--me-shadow-brand, 0 4px 12px #211b4917)}.meph-directory .mec-save-course.is-saved{background:var(--me-primary, #3943d1);color:var(--me-on-primary, #fff)}.meph-directory .mec-percent:has(~ .mec-save-course){right:43px}
.meph-directory .mec-card-body{padding:12px 12px 13px;flex:1;display:flex;flex-direction:column;gap:9px}.meph-directory .mec-card-body h3{font-size:14px;line-height:1.3;font-weight:870;letter-spacing:-.3px;margin:0;min-height:37px}.meph-directory .mec-card-body h3 a:hover{color:var(--me-highlight)}.meph-directory .mec-card-body>p{font-size:11px;color:var(--me-text-3, #737595);margin:0;line-height:1.5}.meph-directory .mec-card-meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--me-text-3, #777d9a);font-size:10.5px;margin-top:auto}.meph-directory .mec-card-meta span{display:inline-flex;align-items:center;gap:4px}.meph-directory .mec-card-meta svg{color:var(--me-highlight)}.meph-directory .mec-card-foot{display:flex;align-items:center;justify-content:space-between;gap:5px;min-height:28px}.meph-directory .mec-rating{color:var(--me-warning, #f4ac03);font-weight:900;font-size:11px}.meph-directory .mec-rating small{color:var(--me-text-3, #8283a3);font-weight:550}.meph-directory .mec-free{background:var(--me-success-soft, #e9f8f1);color:var(--me-success-text, #23966b);padding:3px 8px;border-radius:99px;font-size:10px;font-weight:800}.meph-directory .mec-card-foot>a{padding:7px 10px;border-radius:99px;border:1px solid var(--me-border-brand, #5861d8);color:var(--me-highlight, #3842cd);font-size:10.5px;font-weight:850;white-space:nowrap;display:flex;gap:6px;align-items:center;transition:background .18s,color .18s}.meph-directory .mec-card-foot>a:hover{background:var(--mec-primary);color:var(--me-on-primary, #fff)}
.meph-directory .mec-courses.mec-list{grid-template-columns:1fr}.meph-directory .mec-list .mec-card{display:grid;grid-template-columns:minmax(180px,28%) 1fr}.meph-directory .mec-list .mec-card-cover{aspect-ratio:auto;min-height:170px}.meph-directory .mec-list .mec-card-body{padding:22px 25px}.meph-directory .mec-list .mec-card-body h3{font-size:18px;min-height:0}.meph-directory .mec-list .mec-card-meta{margin-top:12px}.meph-directory .mec-list .mec-card-foot{margin-top:12px}.meph-directory .mec-pagination{display:flex;justify-content:center;gap:8px;margin-top:28px}.meph-directory .mec-pagination a{display:grid;place-items:center;height:36px;min-width:36px;background:var(--me-surface, #fff);border:1px solid var(--me-border-brand, #e1e2f7);border-radius:10px;color:var(--me-text-2, #434891);font-size:12px;font-weight:800}.meph-directory .mec-pagination a:hover,.meph-directory .mec-pagination a.is-current{background:var(--mec-primary);color:var(--me-on-primary, #fff)}.meph-directory .mec-empty{grid-column:1/-1;background:var(--me-surface, #fff);border:1px dashed var(--me-border-brand, #bbbff9);padding:26px;color:var(--me-text-2, #5e668e);border-radius:14px}.meph-directory .mec-empty a{color:var(--me-highlight);text-decoration:underline}.meph-directory .mec-toast{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);background:var(--me-inverse-bg, #202052);color:var(--me-inverse-text, #fff);border-radius:12px;padding:10px 17px;z-index:5000;box-shadow:var(--me-shadow-brand, 0 10px 32px #27205233)}
@media(max-width:1250px){.meph-directory .mec-container{padding:18px}.meph-directory .mec-layout{grid-template-columns:240px minmax(0,1fr)}.meph-directory .mec-courses{grid-template-columns:repeat(3,minmax(0,1fr))}.meph-directory .mec-feature{grid-template-columns:30% 1fr}.meph-directory .mec-feature-btn{grid-column:2;justify-self:start;margin-bottom:10px}}
@media(max-width:900px){.meph-directory .mec-layout{display:block}.meph-directory .mec-sidebar{margin-bottom:14px}.meph-directory .mec-sidebar fieldset{display:inline-block;vertical-align:top;width:47%;margin-right:2%}.meph-directory .mec-courses{grid-template-columns:repeat(3,minmax(0,1fr))}.meph-directory .mec-feature{grid-template-columns:32% 1fr}.meph-directory .mec-hero-image{width:48%}}
@media(max-width:650px){.meph-directory .mec-container{padding:12px 12px 24px}.meph-directory .mec-hero{height:auto;min-height:192px;padding:23px 20px}.meph-directory .mec-hero-copy{max-width:92%}.meph-directory .mec-hero h1{font-size:29px}.meph-directory .mec-hero p{font-size:12px}.meph-directory .mec-hero-image{opacity:.17;width:80%}.meph-directory .mec-sidebar fieldset{display:block;width:100%;margin-right:0}.meph-directory .mec-courses{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.meph-directory .mec-card-body{padding:10px;gap:7px}.meph-directory .mec-card-body h3{font-size:12px;min-height:34px}.meph-directory .mec-card-meta{gap:5px;font-size:9px}.meph-directory .mec-category{font-size:8px;padding:4px 6px}.meph-directory .mec-card-foot>a{font-size:9px;padding:6px 8px}.meph-directory .mec-feature{display:block}.meph-directory .mec-feature-art{height:130px}.meph-directory .mec-feature-copy{padding:14px 8px}.meph-directory .mec-feature-btn{margin:5px 8px 11px;width:max-content;max-width:95%}.meph-directory .mec-results-line>div{gap:9px}.meph-directory .mec-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding:2px 0 7px}.meph-directory .mec-chip{white-space:nowrap}.meph-directory .mec-list .mec-card{grid-template-columns:120px 1fr}.meph-directory .mec-list .mec-card-cover{min-height:135px}.meph-directory .mec-list .mec-card-body{padding:10px}.meph-directory .mec-list .mec-card-body h3{font-size:12px}}
@media(prefers-reduced-motion:reduce){.meph-directory *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* Édition NEXA : masterclasses dans le répertoire des cours (MyEureka_Masterclass). */
.mec-card-cover .mec-mc-badge{position:absolute;left:12px;bottom:12px;z-index:2;display:inline-flex;align-items:center;gap:6px;padding:5px 11px 5px 9px;border-radius:999px;background:linear-gradient(110deg,var(--me-brand,#6a3cf0),var(--me-brand-strong,#4b22c4));color:var(--me-on-brand,#fff);font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;line-height:1.2;box-shadow:0 6px 14px rgba(0,0,0,.18);pointer-events:none}
.mec-card-cover .mec-mc-play{position:absolute;left:50%;top:50%;z-index:2;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.92);color:var(--me-brand,#6a3cf0);transform:translate(-50%,-50%);box-shadow:0 10px 22px rgba(0,0,0,.22);pointer-events:none;transition:transform .25s ease}
.mec-card-cover .mec-mc-play svg{margin-left:2px}
.mec-card:hover .mec-card-cover .mec-mc-play{transform:translate(-50%,-50%) scale(1.08)}
/* 3.18.1-nexa : « Trier par » et « Cours disponibles uniquement » sur une seule ligne. */
.meph-directory .mec-sort,.meph-directory .mec-results-line .mec-toggle{flex-wrap:nowrap;white-space:nowrap}
.meph-directory .mec-sort select{width:auto;min-width:0;flex:0 0 auto}
