/* Expérience Paranormale — 10 thèmes payants distincts */
html[class*="ep-theme-"] body{transition:background .35s,color .35s}
html[class*="ep-theme-"] .site-header,html[class*="ep-theme-"] header{transition:background .35s,border-color .35s,box-shadow .35s}

/* VIP 1 — Forêt occulte : organique, brume, coins moussus */
html.ep-theme-vip-forest{--ink:#07110c;--ink-2:#0b1a12;--ink-3:#10261a;--ink-4:#173322;--bone:#e7f1df;--bone-dim:#a9bea4;--ash:#71856f;--ember:#83b56a;--ember-2:#b7dc8f;--ember-deep:#365d32;--line:rgba(190,230,170,.13);--line-2:rgba(190,230,170,.28)}
html.ep-theme-vip-forest body{background:radial-gradient(circle at 15% 15%,rgba(56,112,70,.32),transparent 34%),linear-gradient(135deg,#041008,#0b1b11 52%,#020805);font-family:Georgia,serif}
html.ep-theme-vip-forest .atmos{background:radial-gradient(ellipse at 50% 115%,rgba(94,143,79,.28),transparent 48%),repeating-linear-gradient(100deg,transparent 0 8%,rgba(123,166,105,.025) 9% 10%),linear-gradient(#06120b,#0b1d12)}
html.ep-theme-vip-forest .card,html.ep-theme-vip-forest article,html.ep-theme-vip-forest .grade-compare{border-radius:22px 8px 22px 8px!important;border-color:rgba(154,201,130,.28)!important;background:linear-gradient(145deg,rgba(21,54,34,.9),rgba(7,22,13,.88))!important;box-shadow:0 18px 55px rgba(0,0,0,.45),inset 0 1px rgba(210,245,190,.07)!important}
html.ep-theme-vip-forest .btn{border-radius:999px!important;background:linear-gradient(90deg,#6a9d57,#b5d58e)!important;color:#071108!important}

/* VIP 2 — Manoir victorien : velours, dorure, géométrie classique */
html.ep-theme-vip-victorian{--ink:#130a0c;--ink-2:#1c0d12;--ink-3:#2a111b;--ink-4:#3a1824;--bone:#f0e5d0;--bone-dim:#c2aa96;--ash:#8d756b;--ember:#c9a45d;--ember-2:#ead08e;--ember-deep:#76522b;--line:rgba(234,208,142,.14);--line-2:rgba(234,208,142,.34)}
html.ep-theme-vip-victorian body{background:repeating-linear-gradient(90deg,rgba(255,255,255,.015) 0 1px,transparent 1px 34px),linear-gradient(135deg,#0e0608,#2a1018);font-family:"Times New Roman",serif}
html.ep-theme-vip-victorian .atmos{background:radial-gradient(circle at 50% 0,rgba(183,119,65,.2),transparent 38%),repeating-radial-gradient(circle at 50% 50%,transparent 0 40px,rgba(201,164,93,.018) 41px 42px),linear-gradient(#18090e,#0d0608)}
html.ep-theme-vip-victorian .card,html.ep-theme-vip-victorian article,html.ep-theme-vip-victorian .grade-compare{border-radius:2px!important;border:1px solid #7d6237!important;outline:1px solid rgba(201,164,93,.25);outline-offset:-7px;background:linear-gradient(145deg,rgba(55,20,30,.96),rgba(22,8,12,.96))!important;box-shadow:0 22px 60px #070203!important}
html.ep-theme-vip-victorian h1,html.ep-theme-vip-victorian h2,html.ep-theme-vip-victorian h3{text-transform:none;letter-spacing:.035em}
html.ep-theme-vip-victorian .btn{border-radius:0!important;border:1px solid #ead08e!important;background:#5f2536!important;color:#f6e8c8!important}

/* VIP 3 — Ectoplasme : translucide, flottant, spectral */
html.ep-theme-vip-ectoplasm{--ink:#071413;--ink-2:#0a201d;--ink-3:#10312d;--ink-4:#17433c;--bone:#e7fff9;--bone-dim:#a7d8ce;--ash:#6d9f97;--ember:#70f0c8;--ember-2:#b2ffe7;--ember-deep:#247963;--line:rgba(112,240,200,.15);--line-2:rgba(112,240,200,.35)}
html.ep-theme-vip-ectoplasm body{background:radial-gradient(circle at 80% 20%,rgba(94,255,207,.19),transparent 25%),radial-gradient(circle at 15% 75%,rgba(44,180,152,.18),transparent 30%),#06100f;font-family:Arial,sans-serif}
html.ep-theme-vip-ectoplasm .atmos{background:radial-gradient(circle at 30% 20%,rgba(132,255,220,.18),transparent 22%),radial-gradient(circle at 70% 70%,rgba(77,226,190,.14),transparent 25%),linear-gradient(135deg,#061311,#0a2924)}
html.ep-theme-vip-ectoplasm .card,html.ep-theme-vip-ectoplasm article,html.ep-theme-vip-ectoplasm .grade-compare{border-radius:28px!important;background:linear-gradient(135deg,rgba(130,255,220,.13),rgba(5,28,24,.62))!important;backdrop-filter:blur(18px)!important;border:1px solid rgba(153,255,228,.35)!important;box-shadow:0 0 38px rgba(70,244,196,.13),inset 0 0 28px rgba(150,255,226,.04)!important}
html.ep-theme-vip-ectoplasm .btn{border-radius:14px!important;background:rgba(112,240,200,.18)!important;color:#dcfff5!important;border:1px solid #70f0c8!important;box-shadow:0 0 18px rgba(112,240,200,.25)}

/* VIP+ 1 — Néon spectral : cyber, lignes, néon */
html.ep-theme-plus-neon{--ink:#04030a;--ink-2:#090716;--ink-3:#100b25;--ink-4:#18103a;--bone:#f7f0ff;--bone-dim:#c6b9d8;--ash:#81738f;--ember:#00f0ff;--ember-2:#ff3bd4;--ember-deep:#006d83;--line:rgba(0,240,255,.17);--line-2:rgba(255,59,212,.38)}
html.ep-theme-plus-neon body{background:linear-gradient(rgba(0,240,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,59,212,.035) 1px,transparent 1px),radial-gradient(circle at 50% 0,#26104b,#030208 65%);background-size:34px 34px,34px 34px,auto;font-family:Arial,sans-serif}
html.ep-theme-plus-neon .atmos{background:linear-gradient(120deg,rgba(0,240,255,.08),transparent 35%,rgba(255,59,212,.08)),#05030b}
html.ep-theme-plus-neon .card,html.ep-theme-plus-neon article,html.ep-theme-plus-neon .grade-compare{border-radius:0 22px 0 22px!important;background:rgba(8,5,22,.9)!important;border:1px solid #00e4f4!important;box-shadow:-8px 8px 0 rgba(255,59,212,.16),0 0 26px rgba(0,240,255,.14)!important}
html.ep-theme-plus-neon h1,html.ep-theme-plus-neon h2,html.ep-theme-plus-neon h3{text-shadow:2px 0 #ff3bd4,-2px 0 #00f0ff}
html.ep-theme-plus-neon .btn{border-radius:2px!important;background:linear-gradient(90deg,#00e7f5,#ff42d5)!important;color:#05030a!important;text-transform:uppercase;letter-spacing:.08em}

/* VIP+ 2 — Arctique astral : lumineux, givré, bleu ciel */
html.ep-theme-plus-arctic{--ink:#071522;--ink-2:#0c2134;--ink-3:#12324d;--ink-4:#194565;--bone:#f2fbff;--bone-dim:#bdd8e8;--ash:#789cb3;--ember:#8edcff;--ember-2:#d1f3ff;--ember-deep:#2d789d;--line:rgba(190,232,255,.18);--line-2:rgba(190,232,255,.42)}
html.ep-theme-plus-arctic body{background:radial-gradient(circle at 20% 10%,rgba(220,247,255,.20),transparent 25%),linear-gradient(150deg,#06111d,#123b5a);font-family:"Trebuchet MS",sans-serif}
html.ep-theme-plus-arctic .atmos{background:radial-gradient(circle at 70% 10%,rgba(188,235,255,.24),transparent 25%),linear-gradient(160deg,#0c1e31,#07101b)}
html.ep-theme-plus-arctic .card,html.ep-theme-plus-arctic article,html.ep-theme-plus-arctic .grade-compare{border-radius:4px 38px 4px 38px!important;background:linear-gradient(145deg,rgba(207,241,255,.16),rgba(8,30,49,.82))!important;border:1px solid rgba(207,241,255,.48)!important;box-shadow:0 24px 65px rgba(0,11,24,.45),inset 0 1px rgba(255,255,255,.25)!important}
html.ep-theme-plus-arctic .btn{border-radius:999px!important;background:#d8f5ff!important;color:#0a2b42!important;box-shadow:0 0 25px rgba(142,220,255,.3)}

/* VIP+ 3 — Cathédrale pourpre : arches, vitrail, sacré */
html.ep-theme-plus-cathedral{--ink:#100817;--ink-2:#190d24;--ink-3:#28123a;--ink-4:#391b51;--bone:#f2e9f7;--bone-dim:#cbb6d5;--ash:#8d729c;--ember:#b985ff;--ember-2:#f1b7ff;--ember-deep:#69409a;--line:rgba(201,151,255,.15);--line-2:rgba(241,183,255,.35)}
html.ep-theme-plus-cathedral body{background:radial-gradient(ellipse at 50% -10%,rgba(185,133,255,.24),transparent 45%),repeating-linear-gradient(90deg,transparent 0 119px,rgba(227,187,255,.035) 120px),#0c0611;font-family:Georgia,serif}
html.ep-theme-plus-cathedral .atmos{background:conic-gradient(from 45deg at 50% 20%,rgba(211,106,255,.10),transparent 15%,rgba(80,120,255,.08),transparent 35%),linear-gradient(#160b20,#09040d)}
html.ep-theme-plus-cathedral .card,html.ep-theme-plus-cathedral article,html.ep-theme-plus-cathedral .grade-compare{border-radius:120px 120px 10px 10px/55px 55px 10px 10px!important;background:linear-gradient(180deg,rgba(65,25,92,.9),rgba(19,8,29,.96))!important;border:1px solid rgba(227,183,255,.35)!important;box-shadow:0 0 0 5px rgba(133,78,170,.08),0 25px 70px #050207!important}
html.ep-theme-plus-cathedral .btn{border-radius:999px 999px 8px 8px!important;background:linear-gradient(#d9a1ff,#71409a)!important;color:#150820!important}

/* MVP 1 — Abîme royal : noir mat, or, luxe minimal */
html.ep-theme-mvp-abyss{--ink:#000;--ink-2:#060606;--ink-3:#0d0d0d;--ink-4:#151515;--bone:#f6f1e7;--bone-dim:#bdb4a3;--ash:#756f65;--ember:#d9b65e;--ember-2:#ffe8a3;--ember-deep:#785e20;--line:rgba(217,182,94,.13);--line-2:rgba(217,182,94,.38)}
html.ep-theme-mvp-abyss body{background:radial-gradient(circle at 50% 0,rgba(217,182,94,.10),transparent 27%),#000;font-family:Arial,sans-serif}
html.ep-theme-mvp-abyss .atmos{background:linear-gradient(115deg,transparent 0 48%,rgba(217,182,94,.025) 49% 50%,transparent 51%),#000}
html.ep-theme-mvp-abyss .card,html.ep-theme-mvp-abyss article,html.ep-theme-mvp-abyss .grade-compare{border-radius:0!important;background:#050505!important;border:1px solid #5d4b20!important;border-left:4px solid #d9b65e!important;box-shadow:0 32px 90px #000!important}
html.ep-theme-mvp-abyss h1,html.ep-theme-mvp-abyss h2,html.ep-theme-mvp-abyss h3{font-family:Georgia,serif;letter-spacing:.07em;text-transform:uppercase}
html.ep-theme-mvp-abyss .btn{border-radius:0!important;background:#d9b65e!important;color:#050505!important;border:0!important;letter-spacing:.12em;text-transform:uppercase}

/* MVP 2 — Éclipse solaire : cercle, chaleur, contraste */
html.ep-theme-mvp-eclipse{--ink:#120705;--ink-2:#1e0b07;--ink-3:#32120b;--ink-4:#4a1c0f;--bone:#fff0dc;--bone-dim:#d6b9a0;--ash:#987660;--ember:#ff5a22;--ember-2:#ffc24f;--ember-deep:#9f250d;--line:rgba(255,115,49,.16);--line-2:rgba(255,194,79,.4)}
html.ep-theme-mvp-eclipse body{background:radial-gradient(circle at 50% 5%,#050505 0 90px,#ff6b22 94px,#ffbd49 99px,rgba(255,106,34,.18) 130px,transparent 240px),linear-gradient(#1c0805,#090302);font-family:"Trebuchet MS",sans-serif}
html.ep-theme-mvp-eclipse .atmos{background:radial-gradient(circle at 50% 0,rgba(255,102,31,.24),transparent 32%),linear-gradient(160deg,#210905,#080201)}
html.ep-theme-mvp-eclipse .card,html.ep-theme-mvp-eclipse article,html.ep-theme-mvp-eclipse .grade-compare{border-radius:40px 4px!important;background:linear-gradient(135deg,rgba(83,22,9,.94),rgba(20,5,3,.96))!important;border:1px solid rgba(255,133,53,.5)!important;box-shadow:0 15px 50px rgba(117,24,5,.28),inset 0 0 35px rgba(255,87,28,.04)!important}
html.ep-theme-mvp-eclipse .btn{border-radius:999px!important;background:linear-gradient(90deg,#ff4a1e,#ffcb53)!important;color:#1c0803!important;box-shadow:0 0 28px rgba(255,91,32,.36)}

/* MVP 3 — Signal interdit : CRT, terminal, scanlines */
html.ep-theme-mvp-signal{--ink:#010604;--ink-2:#03100b;--ink-3:#061b12;--ink-4:#09261a;--bone:#b9ffd4;--bone-dim:#74c794;--ash:#427759;--ember:#33ff77;--ember-2:#d6ff4d;--ember-deep:#08762c;--line:rgba(51,255,119,.15);--line-2:rgba(214,255,77,.36)}
html.ep-theme-mvp-signal body{background:repeating-linear-gradient(0deg,rgba(0,0,0,.28) 0 1px,transparent 1px 4px),radial-gradient(circle at 50% 50%,#082617,#010503 70%);font-family:"Courier New",monospace}
html.ep-theme-mvp-signal .atmos{background:linear-gradient(90deg,rgba(51,255,119,.03) 1px,transparent 1px),linear-gradient(rgba(51,255,119,.025) 1px,transparent 1px),#010604;background-size:24px 24px}
html.ep-theme-mvp-signal .card,html.ep-theme-mvp-signal article,html.ep-theme-mvp-signal .grade-compare{border-radius:3px!important;background:rgba(1,12,7,.94)!important;border:1px dashed #33ff77!important;box-shadow:0 0 0 3px #010604,0 0 0 4px rgba(51,255,119,.25),0 0 30px rgba(51,255,119,.12)!important}
html.ep-theme-mvp-signal h1,html.ep-theme-mvp-signal h2,html.ep-theme-mvp-signal h3{font-family:"Courier New",monospace;text-transform:uppercase;text-shadow:0 0 9px rgba(51,255,119,.45)}
html.ep-theme-mvp-signal .btn{border-radius:0!important;background:transparent!important;color:#33ff77!important;border:1px solid #33ff77!important;text-transform:uppercase}

/* MVP 4 — Céleste éthéré : thème clair cosmique, nacré */
html.ep-theme-mvp-celestial{--ink:#edf2ff;--ink-2:#e4eaff;--ink-3:#d5ddfa;--ink-4:#c7d1f1;--bone:#1f2340;--bone-dim:#535b7b;--ash:#77809f;--ember:#6f61d9;--ember-2:#9b72e8;--ember-deep:#493fa0;--line:rgba(61,70,127,.13);--line-2:rgba(90,77,178,.30);--glass:rgba(247,249,255,.78)}
html.ep-theme-mvp-celestial body{background:radial-gradient(circle at 15% 15%,rgba(255,255,255,.95),transparent 25%),radial-gradient(circle at 80% 10%,rgba(163,140,255,.25),transparent 30%),linear-gradient(145deg,#f7f9ff,#dbe3fb);color:#1f2340;font-family:Arial,sans-serif}
html.ep-theme-mvp-celestial .atmos{background:radial-gradient(circle at 20% 20%,rgba(255,255,255,.95),transparent 22%),radial-gradient(circle at 85% 30%,rgba(139,111,231,.18),transparent 28%),linear-gradient(#f1f5ff,#dce5fa)}
html.ep-theme-mvp-celestial .vignette{box-shadow:inset 0 0 180px rgba(82,76,145,.10)}
html.ep-theme-mvp-celestial .site-header,html.ep-theme-mvp-celestial header{background:rgba(245,248,255,.82)!important;color:#1f2340!important}
html.ep-theme-mvp-celestial .card,html.ep-theme-mvp-celestial article,html.ep-theme-mvp-celestial .grade-compare{border-radius:28px!important;background:rgba(255,255,255,.68)!important;backdrop-filter:blur(20px)!important;border:1px solid rgba(255,255,255,.92)!important;box-shadow:0 22px 70px rgba(63,70,130,.16)!important;color:#1f2340!important}
html.ep-theme-mvp-celestial a,html.ep-theme-mvp-celestial p,html.ep-theme-mvp-celestial span,html.ep-theme-mvp-celestial .compare-cell{color:inherit}
html.ep-theme-mvp-celestial .btn{border-radius:16px!important;background:linear-gradient(90deg,#6559cf,#a978e3)!important;color:white!important;box-shadow:0 12px 28px rgba(98,83,199,.24)}


/* Sélecteur global de thèmes — bouton + menu déroulant nominatif */
.ep-theme-picker{position:fixed;right:18px;bottom:18px;z-index:9998;width:min(340px,calc(100vw - 28px));font-family:Arial,sans-serif;color:#f6f0ff}
.ep-theme-trigger{width:100%;display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;gap:1px 10px;align-items:center;padding:12px 14px;border:1px solid rgba(217,184,255,.38);border-radius:16px;background:linear-gradient(145deg,rgba(29,18,43,.97),rgba(9,7,14,.97));color:#fff;box-shadow:0 14px 40px rgba(0,0,0,.45);cursor:pointer;text-align:left;backdrop-filter:blur(14px)}
.ep-theme-trigger>span{font-weight:850;font-size:.95rem}.ep-theme-trigger>small{grid-column:2;font-size:.74rem;color:#cbb9db;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ep-theme-trigger>b{grid-column:3;grid-row:1/3;font-size:1.1rem;transition:.2s}.ep-theme-picker.open .ep-theme-trigger>b{transform:rotate(180deg)}
.ep-theme-menu{position:absolute;right:0;bottom:calc(100% + 10px);width:100%;padding:16px;border:1px solid rgba(217,184,255,.32);border-radius:18px;background:rgba(12,9,18,.98);box-shadow:0 22px 65px rgba(0,0,0,.62);backdrop-filter:blur(18px)}
.ep-theme-menu-title{font-size:1.05rem;font-weight:900;margin-bottom:12px}.ep-theme-menu label{display:block;font-size:.78rem;color:#bcaecb;margin:0 0 7px}.ep-theme-menu select{width:100%;padding:12px 38px 12px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.18);background:#171020;color:#fff;font-size:.92rem;outline:none}.ep-theme-menu select:focus{border-color:#c88cff;box-shadow:0 0 0 3px rgba(200,140,255,.14)}.ep-theme-menu option:disabled{color:#77717d}.ep-theme-selected-name{min-height:20px;margin:9px 1px 11px;color:#d7c7e6;font-size:.78rem}.ep-theme-apply{width:100%;padding:11px 13px;border:0;border-radius:11px;background:linear-gradient(90deg,#b985ff,#e1afff);color:#180d20;font-weight:900;cursor:pointer}.ep-theme-apply:disabled{opacity:.65;cursor:wait}.ep-theme-all{display:block;margin-top:11px;text-align:center;color:#d9c2eb!important;text-decoration:none;font-size:.78rem}.ep-theme-all:hover{text-decoration:underline}.ep-theme-toast{position:fixed;left:50%;bottom:96px;z-index:10000;transform:translate(-50%,30px);opacity:0;pointer-events:none;padding:12px 17px;border-radius:12px;background:#ecfff5;color:#103b2b;font-weight:800;box-shadow:0 16px 45px rgba(0,0,0,.35);transition:.22s}.ep-theme-toast.error{background:#ffe7eb;color:#671827}.ep-theme-toast.show{transform:translate(-50%,0);opacity:1}
@media(max-width:620px){.ep-theme-picker{right:12px;bottom:12px;width:calc(100vw - 24px)}.ep-theme-menu{max-height:62vh;overflow:auto}.ep-theme-toast{bottom:92px;width:calc(100vw - 34px);text-align:center}}


/* Transformation complète de toute l'interface — toutes les pages */
html[class*="ep-theme-"] body,html[class*="ep-theme-"] body *{transition:background-color .22s,border-color .22s,color .22s,box-shadow .22s,transform .22s}
html[class*="ep-theme-"] :is(nav,.navbar,.site-nav,.main-nav,.nav-links,.mobile-menu,.dropdown-menu,aside,.sidebar){background:var(--ep-nav-bg,var(--glass))!important;border-color:var(--line-2)!important;color:var(--bone)!important;box-shadow:var(--ep-nav-shadow,0 12px 35px rgba(0,0,0,.25))!important}
html[class*="ep-theme-"] :is(main,.container,.content,.page,.page-shell,.profile-shell,.shop-shell,.community-shell){position:relative}
html[class*="ep-theme-"] :is(section,.panel,.box,.card,article,.offer-card,.profile-card,.member-card,.music-card,.story-card,.game-card,.modal-content,.dropdown-content,.comparison-table,.grade-compare){background:var(--ep-panel-bg,var(--glass))!important;border-color:var(--line-2)!important;color:var(--bone)!important;box-shadow:var(--ep-card-shadow,0 18px 45px rgba(0,0,0,.24))!important}
html[class*="ep-theme-"] :is(input,select,textarea,.input,.form-control){background:var(--ep-input-bg,rgba(0,0,0,.28))!important;border-color:var(--line-2)!important;color:var(--bone)!important;border-radius:var(--ep-input-radius,10px)!important}
html[class*="ep-theme-"] :is(table,thead,tbody,tr,th,td){border-color:var(--line)!important;color:var(--bone)!important}
html[class*="ep-theme-"] th{background:var(--ep-table-head,rgba(255,255,255,.07))!important}
html[class*="ep-theme-"] :is(.btn,button:not(.ep-theme-trigger):not(.ep-theme-apply),input[type="submit"],input[type="button"]){font-family:inherit;border-radius:var(--ep-button-radius,10px)!important;letter-spacing:var(--ep-button-spacing,normal);text-transform:var(--ep-button-transform,none)}
html[class*="ep-theme-"] :is(h1,h2,h3,h4,.page-title,.section-title){font-family:var(--ep-heading-font,inherit)!important;letter-spacing:var(--ep-heading-spacing,normal);text-transform:var(--ep-heading-transform,none)}
html[class*="ep-theme-"] :is(.badge,.tag,.pill,.grade-badge){border-radius:var(--ep-badge-radius,999px)!important;background:var(--ep-badge-bg,rgba(255,255,255,.1))!important;border-color:var(--line-2)!important}
html[class*="ep-theme-"] footer{background:var(--ep-footer-bg,rgba(0,0,0,.35))!important;border-color:var(--line)!important;color:var(--bone-dim)!important}

/* [VIP] Forêt occulte — bois ancien, asymétrie organique, végétation */
html.ep-theme-vip-forest{--ep-nav-bg:rgba(4,22,11,.94);--ep-panel-bg:linear-gradient(145deg,rgba(11,43,22,.93),rgba(4,24,13,.90));--ep-input-bg:rgba(2,18,9,.78);--ep-table-head:rgba(109,170,93,.18);--ep-card-shadow:0 18px 48px rgba(0,20,7,.48);--ep-button-radius:4px 18px 4px 18px;--ep-input-radius:4px 16px 4px 16px;--ep-badge-radius:4px 14px;--ep-heading-font:Georgia,serif;--ep-heading-spacing:.035em}
html.ep-theme-vip-forest :is(section,.panel,.box,.card,article,.offer-card,.profile-card,.member-card){border-radius:5px 28px 8px 24px!important;border-left:4px solid #5f9b52!important}
html.ep-theme-vip-forest :is(nav,.navbar,.site-nav,.main-nav){border-bottom:3px solid #476f3d!important}
html.ep-theme-vip-forest body:before{content:"";position:fixed;inset:0;pointer-events:none;background:repeating-linear-gradient(87deg,transparent 0 90px,rgba(119,169,95,.035) 91px 93px);z-index:-1}

/* [VIP] Manoir victorien — papier peint, cadres dorés, symétrie classique */
html.ep-theme-vip-victorian{--ep-nav-bg:linear-gradient(#2c0d17,#17080e);--ep-panel-bg:linear-gradient(145deg,rgba(55,19,31,.97),rgba(27,9,16,.97));--ep-input-bg:#200b13;--ep-table-head:rgba(208,169,91,.19);--ep-card-shadow:0 12px 0 #17070d,0 20px 45px rgba(0,0,0,.45);--ep-button-radius:0;--ep-input-radius:0;--ep-badge-radius:0;--ep-heading-font:Georgia,"Times New Roman",serif;--ep-heading-spacing:.08em;--ep-heading-transform:uppercase}
html.ep-theme-vip-victorian :is(section,.panel,.box,.card,article,.offer-card,.profile-card,.member-card){border-radius:0!important;border:4px double #b8954d!important;outline:1px solid rgba(218,183,111,.22);outline-offset:-9px}
html.ep-theme-vip-victorian :is(.btn,button:not(.ep-theme-trigger):not(.ep-theme-apply)){border:2px solid #d1ad61!important;background:linear-gradient(#6a2638,#35111e)!important;color:#f5dfac!important}

/* [VIP] Ectoplasme — verre liquide, halos flottants, formes souples */
html.ep-theme-vip-ectoplasm{--ep-nav-bg:rgba(5,37,31,.68);--ep-panel-bg:linear-gradient(135deg,rgba(157,255,226,.12),rgba(8,61,49,.62));--ep-input-bg:rgba(2,39,31,.55);--ep-table-head:rgba(144,255,222,.16);--ep-card-shadow:0 20px 65px rgba(45,255,193,.10);--ep-button-radius:999px;--ep-input-radius:999px;--ep-badge-radius:999px;--ep-heading-font:Arial,sans-serif;--ep-heading-spacing:.02em}
html.ep-theme-vip-ectoplasm :is(section,.panel,.box,.card,article,.offer-card,.profile-card,.member-card){border-radius:42px 16px 48px 20px!important;backdrop-filter:blur(18px) saturate(1.3)!important;border:1px solid rgba(158,255,226,.37)!important}
html.ep-theme-vip-ectoplasm :is(.btn,button:not(.ep-theme-trigger):not(.ep-theme-apply)){background:linear-gradient(90deg,#7ef4d0,#b6ffe9)!important;color:#073229!important}

/* [VIP+] Néon spectral — grille cyberpunk, angles coupés, signal lumineux */
html.ep-theme-plus-neon{--ep-nav-bg:rgba(5,3,15,.96);--ep-panel-bg:linear-gradient(145deg,rgba(12,7,30,.96),rgba(36,8,53,.92));--ep-input-bg:#080318;--ep-table-head:rgba(0,240,255,.12);--ep-card-shadow:8px 8px 0 rgba(255,44,208,.25),-4px -4px 0 rgba(0,240,255,.18);--ep-button-radius:0;--ep-input-radius:0;--ep-badge-radius:2px;--ep-heading-font:"Arial Black",Arial,sans-serif;--ep-heading-spacing:.11em;--ep-heading-transform:uppercase}
html.ep-theme-plus-neon :is(section,.panel,.box,.card,article,.offer-card,.profile-card,.member-card){border-radius:0!important;clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px);border:1px solid #00eaff!important}
html.ep-theme-plus-neon :is(.btn,button:not(.ep-theme-trigger):not(.ep-theme-apply)){background:#0a0617!important;color:#00efff!important;border:1px solid #ff3bd4!important;box-shadow:3px 3px 0 #00efff!important}

/* [VIP+] Arctique astral — interface claire givrée, facettes de glace */
html.ep-theme-plus-arctic{--ep-nav-bg:rgba(224,247,255,.88);--ep-panel-bg:linear-gradient(145deg,rgba(248,253,255,.88),rgba(192,229,245,.72));--ep-input-bg:rgba(255,255,255,.72);--ep-table-head:rgba(37,105,145,.11);--ep-card-shadow:0 25px 65px rgba(26,91,128,.18);--ep-button-radius:12px 2px 12px 2px;--ep-input-radius:12px 2px 12px 2px;--ep-badge-radius:12px 2px;--ep-heading-font:Arial,sans-serif;--ep-heading-spacing:.07em}
html.ep-theme-plus-arctic :is(section,.panel,.box,.card,article,.offer-card,.profile-card,.member-card){border-radius:2px 28px 2px 28px!important;border:1px solid rgba(255,255,255,.95)!important;color:#12364b!important;backdrop-filter:blur(13px)!important}
html.ep-theme-plus-arctic :is(input,select,textarea,p,a,span,td,th,label){color:#163c52!important}
html.ep-theme-plus-arctic :is(.btn,button:not(.ep-theme-trigger):not(.ep-theme-apply)){background:linear-gradient(135deg,#e8fbff,#8ec9e8)!important;color:#12364b!important;border:1px solid #73b4d6!important}

/* [VIP+] Cathédrale pourpre — arches, vitraux et composition verticale */
html.ep-theme-plus-cathedral{--ep-nav-bg:linear-gradient(90deg,#16091f,#3c1553,#16091f);--ep-panel-bg:linear-gradient(180deg,rgba(60,20,82,.93),rgba(20,7,29,.96));--ep-input-bg:#1a0825;--ep-table-head:rgba(199,92,245,.15);--ep-card-shadow:0 26px 70px rgba(29,3,45,.48);--ep-button-radius:18px 18px 4px 4px;--ep-input-radius:18px 18px 4px 4px;--ep-badge-radius:18px 18px 4px 4px;--ep-heading-font:Georgia,serif;--ep-heading-spacing:.09em;--ep-heading-transform:uppercase}
html.ep-theme-plus-cathedral :is(section,.panel,.box,.card,article,.offer-card,.profile-card,.member-card){border-radius:90px 90px 8px 8px!important;border:2px solid rgba(204,112,244,.42)!important;padding-top:max(28px,var(--original-padding,0px))}
html.ep-theme-plus-cathedral :is(.btn,button:not(.ep-theme-trigger):not(.ep-theme-apply)){background:linear-gradient(#9a45c9,#43175e)!important;color:#fff!important;border:1px solid #d48cff!important}

/* [MVP] Abîme royal — luxe noir/or, lignes fines, minimalisme */
html.ep-theme-mvp-abyss{--ep-nav-bg:#030303;--ep-panel-bg:linear-gradient(145deg,#080808,#010101);--ep-input-bg:#030303;--ep-table-head:rgba(218,183,91,.10);--ep-card-shadow:0 25px 75px rgba(0,0,0,.72);--ep-button-radius:1px;--ep-input-radius:1px;--ep-badge-radius:1px;--ep-heading-font:Georgia,serif;--ep-heading-spacing:.18em;--ep-heading-transform:uppercase}
html.ep-theme-mvp-abyss :is(section,.panel,.box,.card,article,.offer-card,.profile-card,.member-card){border-radius:1px!important;border:1px solid #b89443!important;background-image:linear-gradient(135deg,rgba(218,183,91,.06),transparent 35%)!important}
html.ep-theme-mvp-abyss :is(.btn,button:not(.ep-theme-trigger):not(.ep-theme-apply)){background:#d5b35a!important;color:#050505!important;border:0!important;letter-spacing:.12em;text-transform:uppercase}

/* [MVP] Éclipse solaire — blocs circulaires, braise et énergie */
html.ep-theme-mvp-eclipse{--ep-nav-bg:rgba(34,7,2,.96);--ep-panel-bg:radial-gradient(circle at 95% 0,rgba(255,118,42,.18),transparent 34%),linear-gradient(145deg,rgba(49,12,4,.95),rgba(10,2,1,.97));--ep-input-bg:#240702;--ep-table-head:rgba(255,120,40,.14);--ep-card-shadow:0 22px 65px rgba(117,27,2,.40);--ep-button-radius:999px;--ep-input-radius:999px;--ep-badge-radius:999px;--ep-heading-font:"Arial Black",Arial,sans-serif;--ep-heading-spacing:.04em;--ep-heading-transform:uppercase}
html.ep-theme-mvp-eclipse :is(section,.panel,.box,.card,article,.offer-card,.profile-card,.member-card){border-radius:34px!important;border:1px solid rgba(255,116,42,.48)!important}
html.ep-theme-mvp-eclipse :is(.btn,button:not(.ep-theme-trigger):not(.ep-theme-apply)){background:linear-gradient(90deg,#ff4b16,#ffc249)!important;color:#220701!important;border:0!important;box-shadow:0 0 25px rgba(255,90,20,.30)!important}

/* [MVP] Signal interdit — terminal CRT, monospace, cadres techniques */
html.ep-theme-mvp-signal{--ep-nav-bg:#010604;--ep-panel-bg:rgba(1,12,7,.95);--ep-input-bg:#000804;--ep-table-head:rgba(51,255,119,.10);--ep-card-shadow:0 0 0 3px #010604,0 0 0 4px rgba(51,255,119,.24);--ep-button-radius:0;--ep-input-radius:0;--ep-badge-radius:0;--ep-heading-font:"Courier New",monospace;--ep-heading-spacing:.08em;--ep-heading-transform:uppercase;--ep-button-spacing:.08em;--ep-button-transform:uppercase}
html.ep-theme-mvp-signal :is(section,.panel,.box,.card,article,.offer-card,.profile-card,.member-card){border-radius:0!important;border:1px dashed #33ff77!important;background-color:rgba(1,12,7,.95)!important}
html.ep-theme-mvp-signal :is(.btn,button:not(.ep-theme-trigger):not(.ep-theme-apply)){background:#020b06!important;color:#33ff77!important;border:1px solid #33ff77!important}
html.ep-theme-mvp-signal :is(a,p,span,label,td,th){font-family:"Courier New",monospace}

/* [MVP] Céleste éthéré — magazine cosmique clair, douceur nacrée */
html.ep-theme-mvp-celestial{--ep-nav-bg:rgba(250,252,255,.88);--ep-panel-bg:linear-gradient(145deg,rgba(255,255,255,.82),rgba(224,231,255,.70));--ep-input-bg:rgba(255,255,255,.82);--ep-table-head:rgba(91,78,177,.09);--ep-card-shadow:0 24px 70px rgba(70,73,140,.17);--ep-button-radius:18px;--ep-input-radius:18px;--ep-badge-radius:18px;--ep-heading-font:Georgia,serif;--ep-heading-spacing:.04em}
html.ep-theme-mvp-celestial :is(section,.panel,.box,.card,article,.offer-card,.profile-card,.member-card){border-radius:32px!important;border:1px solid rgba(255,255,255,.98)!important;color:#202442!important;backdrop-filter:blur(20px)!important}
html.ep-theme-mvp-celestial :is(input,select,textarea,p,a,span,td,th,label){color:#252a4b!important}
html.ep-theme-mvp-celestial :is(.btn,button:not(.ep-theme-trigger):not(.ep-theme-apply)){background:linear-gradient(90deg,#6258c9,#aa7ae4)!important;color:#fff!important;border:0!important}

/* ==========================================================
   MODE PERFORMANCE — PS4 / PS5 / Xbox / PC modestes
   Conserve la DA de chaque thème tout en réduisant le coût GPU.
   ========================================================== */
html[class*="ep-theme-"] body,
html[class*="ep-theme-"] body *{
  transition-property:background-color,border-color,color,opacity!important;
  transition-duration:.14s!important;
  transition-timing-function:ease-out!important;
}

/* Le navigateur ajoute cette classe automatiquement sur console ou matériel limité. */
html.ep-performance-lite,
html.ep-performance-lite body{scroll-behavior:auto!important}
html.ep-performance-lite *,
html.ep-performance-lite *::before,
html.ep-performance-lite *::after{
  animation:none!important;
  transition:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  filter:none!important;
}
html.ep-performance-lite body::before,
html.ep-performance-lite body::after,
html.ep-performance-lite .atmos::before,
html.ep-performance-lite .atmos::after{display:none!important}
html.ep-performance-lite .atmos{background-attachment:scroll!important}
html.ep-performance-lite :is(nav,.navbar,.site-nav,.main-nav,.nav-links,.mobile-menu,.dropdown-menu,aside,.sidebar){
  box-shadow:0 6px 16px rgba(0,0,0,.24)!important;
}
html.ep-performance-lite :is(section,.panel,.box,.card,article,.offer-card,.profile-card,.member-card,.music-card,.story-card,.game-card,.modal-content,.dropdown-content,.comparison-table,.grade-compare){
  box-shadow:0 8px 20px rgba(0,0,0,.26)!important;
  will-change:auto!important;
}
html.ep-performance-lite :is(.ep-theme-trigger,.ep-theme-menu){
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  box-shadow:0 8px 22px rgba(0,0,0,.34)!important;
}
html.ep-performance-lite img,
html.ep-performance-lite video,
html.ep-performance-lite canvas{transform:none!important;will-change:auto!important}

/* Versions légères propres à chaque univers : même identité, moins de calques. */
html.ep-performance-lite.ep-theme-vip-forest body{background:#07150d!important}
html.ep-performance-lite.ep-theme-vip-forest .atmos{background:linear-gradient(145deg,#07150d,#102a18)!important}
html.ep-performance-lite.ep-theme-vip-victorian body{background:#18090f!important}
html.ep-performance-lite.ep-theme-vip-victorian .atmos{background:linear-gradient(#2a1019,#10060a)!important}
html.ep-performance-lite.ep-theme-vip-ectoplasm body{background:#071916!important}
html.ep-performance-lite.ep-theme-vip-ectoplasm .atmos{background:linear-gradient(145deg,#071916,#103b32)!important}
html.ep-performance-lite.ep-theme-vip-ectoplasm :is(section,.panel,.box,.card,article,.offer-card,.profile-card,.member-card){background:rgba(9,54,44,.94)!important}
html.ep-performance-lite.ep-theme-plus-neon body{background:#080414!important}
html.ep-performance-lite.ep-theme-plus-neon .atmos{background:linear-gradient(145deg,#080414,#210c33)!important}
html.ep-performance-lite.ep-theme-plus-neon :is(section,.panel,.box,.card,article,.offer-card,.profile-card,.member-card){clip-path:none!important;border-left:3px solid #ff3bd4!important}
html.ep-performance-lite.ep-theme-plus-arctic body{background:#0d2940!important}
html.ep-performance-lite.ep-theme-plus-arctic .atmos{background:linear-gradient(145deg,#0d2940,#174d70)!important}
html.ep-performance-lite.ep-theme-plus-arctic :is(section,.panel,.box,.card,article,.offer-card,.profile-card,.member-card){background:rgba(218,242,252,.94)!important}
html.ep-performance-lite.ep-theme-plus-cathedral body{background:#12081a!important}
html.ep-performance-lite.ep-theme-plus-cathedral .atmos{background:linear-gradient(#2e103f,#0d0512)!important}
html.ep-performance-lite.ep-theme-mvp-abyss body,
html.ep-performance-lite.ep-theme-mvp-abyss .atmos{background:#000!important}
html.ep-performance-lite.ep-theme-mvp-eclipse body{background:#180603!important}
html.ep-performance-lite.ep-theme-mvp-eclipse .atmos{background:linear-gradient(#351006,#0b0201)!important}
html.ep-performance-lite.ep-theme-mvp-signal body,
html.ep-performance-lite.ep-theme-mvp-signal .atmos{background:#010704!important}
html.ep-performance-lite.ep-theme-mvp-celestial body{background:#e9ecfb!important}
html.ep-performance-lite.ep-theme-mvp-celestial .atmos{background:linear-gradient(145deg,#f7f8ff,#dfe4f8)!important}
html.ep-performance-lite.ep-theme-mvp-celestial :is(section,.panel,.box,.card,article,.offer-card,.profile-card,.member-card){background:rgba(250,251,255,.96)!important}

/* Respecte également le réglage système « réduire les animations ». */
@media (prefers-reduced-motion:reduce){
  html[class*="ep-theme-"] *,html[class*="ep-theme-"] *::before,html[class*="ep-theme-"] *::after{
    animation:none!important;transition:none!important;scroll-behavior:auto!important
  }
}

/* Petits écrans et consoles : évite les grands arrière-plans fixes coûteux. */
@media (max-width:1100px){
  html[class*="ep-theme-"] body,html[class*="ep-theme-"] .atmos{background-attachment:scroll!important}
}


/* Accès Panel universel : visible sur PC, mobile, tablette, PlayStation et Xbox */
.main-nav .panel-nav-item{display:block!important;visibility:visible!important;opacity:1!important}
.main-nav a.panel-nav-btn{
  display:flex!important;align-items:center!important;justify-content:center!important;
  min-height:42px!important;padding:.68rem 1rem!important;border:2px solid #ffd36a!important;
  border-radius:12px!important;background:#e96c19!important;color:#fff!important;
  font-weight:900!important;letter-spacing:.035em!important;text-transform:none!important;
  box-shadow:0 4px 12px rgba(0,0,0,.35)!important;white-space:nowrap!important;
}
.main-nav a.panel-nav-btn::after{display:none!important}
.ep-panel-universal{
  position:fixed!important;right:14px!important;top:88px!important;z-index:2147483000!important;
  display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
  min-width:108px!important;min-height:44px!important;padding:9px 14px!important;
  border:2px solid #ffd36a!important;border-radius:12px!important;background:#e96c19!important;
  color:#fff!important;text-decoration:none!important;font:900 15px/1 Arial,'Segoe UI',sans-serif!important;
  box-shadow:0 5px 15px rgba(0,0,0,.42)!important;visibility:visible!important;opacity:1!important;
}
@media(max-width:980px){
  .main-nav .panel-nav-item{grid-column:1/-1!important}
  .main-nav a.panel-nav-btn{min-height:54px!important;font-size:1rem!important}
  .ep-panel-universal{top:auto!important;right:10px!important;bottom:calc(12px + env(safe-area-inset-bottom))!important;min-width:96px!important;min-height:46px!important}
}
html.playstation .ep-panel-universal,html.ep-console .ep-panel-universal,html.ep-performance-lite .ep-panel-universal{
  position:fixed!important;display:flex!important;background:#d85d12!important;border-color:#ffe08a!important;
  box-shadow:0 3px 8px #000!important;filter:none!important;transform:none!important;animation:none!important;
}

/* MVP+ V3 — 5 thèmes exclusifs */
html.ep-theme-mvpplus-portal{--ink:#020705;--ink-2:#07130c;--ink-3:#0c2115;--ink-4:#12331f;--bone:#effff4;--bone-dim:#b4d8c0;--ash:#6b9879;--ember:#42cf78;--ember-2:#9cffbd;--ember-deep:#176a38;--line:rgba(66,207,120,.17);--line-2:rgba(156,255,189,.4)}
html.ep-theme-mvpplus-portal body{background:radial-gradient(circle at 78% 10%,rgba(66,207,120,.24),transparent 23%),radial-gradient(circle at 20% 75%,rgba(34,143,83,.16),transparent 26%),#020604}html.ep-theme-mvpplus-portal .card,html.ep-theme-mvpplus-portal article,html.ep-theme-mvpplus-portal .grade-compare{background:linear-gradient(145deg,rgba(8,29,17,.92),rgba(2,9,5,.96))!important;border-color:rgba(92,234,141,.38)!important;box-shadow:0 24px 70px rgba(0,0,0,.5),0 0 28px rgba(66,207,120,.09)!important}html.ep-theme-mvpplus-portal .btn{background:linear-gradient(90deg,#2fbf63,#9cffbd)!important;color:#031109!important}
html.ep-theme-mvpplus-astral{--ink:#050713;--ink-2:#0b1120;--ink-3:#111d2c;--bone:#f2fff7;--bone-dim:#b8d5c5;--ash:#79988c;--ember:#55e38a;--ember-2:#b8ffd1;--line:rgba(85,227,138,.17);--line-2:rgba(166,137,255,.34)}html.ep-theme-mvpplus-astral body{background:radial-gradient(circle at 15% 12%,rgba(167,116,255,.24),transparent 24%),radial-gradient(circle at 78% 18%,rgba(72,233,139,.21),transparent 27%),linear-gradient(145deg,#040611,#07160f)}html.ep-theme-mvpplus-astral .card,html.ep-theme-mvpplus-astral article{border-radius:26px!important;background:linear-gradient(135deg,rgba(113,98,190,.09),rgba(39,158,92,.08),rgba(5,9,17,.88))!important;backdrop-filter:blur(14px);border-color:rgba(147,239,179,.3)!important}
html.ep-theme-mvpplus-matrix{--ink:#010402;--ink-2:#030a05;--ink-3:#071509;--bone:#d8ffe4;--bone-dim:#91cba3;--ash:#4d7d5c;--ember:#38ff78;--ember-2:#8cffae;--line:rgba(56,255,120,.16);--line-2:rgba(56,255,120,.38)}html.ep-theme-mvpplus-matrix body{background:linear-gradient(rgba(56,255,120,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(56,255,120,.035) 1px,transparent 1px),#010402;background-size:26px 26px;font-family:ui-monospace,monospace}html.ep-theme-mvpplus-matrix .card,html.ep-theme-mvpplus-matrix article{border-radius:5px!important;background:rgba(1,12,5,.94)!important;border:1px solid rgba(56,255,120,.32)!important;box-shadow:inset 0 0 24px rgba(56,255,120,.04)!important}html.ep-theme-mvpplus-matrix .btn{text-transform:uppercase;letter-spacing:.08em;background:#38ff78!important;color:#011806!important;border-radius:3px!important}
html.ep-theme-mvpplus-relic{--ink:#090d0a;--ink-2:#101712;--ink-3:#17221a;--bone:#f0f6e9;--bone-dim:#bcc7b5;--ash:#7b8975;--ember:#73c88b;--ember-2:#d0e7a2;--line:rgba(208,231,162,.16);--line-2:rgba(115,200,139,.34)}html.ep-theme-mvpplus-relic body{background:repeating-radial-gradient(circle at 50% 0,transparent 0 90px,rgba(115,200,139,.025) 91px 92px),linear-gradient(150deg,#070a08,#121a13)}html.ep-theme-mvpplus-relic .card,html.ep-theme-mvpplus-relic article{border-radius:12px!important;background:linear-gradient(145deg,#141d16,#090d0a)!important;border:1px solid rgba(170,206,140,.28)!important;outline:1px solid rgba(115,200,139,.08);outline-offset:-6px}
html.ep-theme-mvpplus-aurora{--ink:#070713;--ink-2:#0d0d20;--ink-3:#15152c;--bone:#f7f5ff;--bone-dim:#c9c2da;--ash:#8b829e;--ember:#4ee88b;--ember-2:#bd8cff;--line:rgba(123,230,168,.16);--line-2:rgba(189,140,255,.36)}html.ep-theme-mvpplus-aurora body{background:linear-gradient(120deg,rgba(46,223,125,.18),transparent 28%,rgba(167,86,255,.17) 64%,transparent),linear-gradient(160deg,#06100b,#080612 65%)}html.ep-theme-mvpplus-aurora .card,html.ep-theme-mvpplus-aurora article{border-radius:24px!important;background:linear-gradient(145deg,rgba(52,194,117,.08),rgba(153,79,224,.08),rgba(8,8,18,.9))!important;border:1px solid rgba(179,164,255,.28)!important;box-shadow:0 24px 70px rgba(0,0,0,.38)!important}


/* ==========================================================
   V3 — TYPOGRAPHIE COHÉRENTE AVEC LE THÈME
   Harmonise les écritures sur toutes les pages sans écraser
   les couleurs fonctionnelles des grades, alertes et statuts.
   ========================================================== */
html.ep-theme-default{
  --ep-text-primary:#f4efe7;
  --ep-text-secondary:#bdb5aa;
  --ep-text-muted:#8e8792;
  --ep-text-link:#f1b36f;
  --ep-body-font:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  --ep-heading-font:Georgia,serif;
}
html[class*="ep-theme-"]{
  --ep-text-primary:var(--bone,#f4efe7);
  --ep-text-secondary:var(--bone-dim,#bdb5aa);
  --ep-text-muted:var(--ash,#8e8792);
  --ep-text-link:var(--ember-2,var(--ember,#f1b36f));
  --ep-body-font:Arial,system-ui,-apple-system,"Segoe UI",sans-serif;
}
html.ep-theme-vip-forest{--ep-body-font:Georgia,"Times New Roman",serif}
html.ep-theme-vip-victorian{--ep-body-font:"Times New Roman",Georgia,serif}
html.ep-theme-vip-ectoplasm{--ep-body-font:Arial,system-ui,sans-serif}
html.ep-theme-plus-neon{--ep-body-font:"Arial Narrow",Arial,sans-serif}
html.ep-theme-plus-arctic{--ep-body-font:"Trebuchet MS",Arial,sans-serif;--ep-text-primary:#12364b;--ep-text-secondary:#315d75;--ep-text-muted:#64879a;--ep-text-link:#176b98}
html.ep-theme-plus-cathedral{--ep-body-font:Georgia,"Times New Roman",serif}
html.ep-theme-mvp-abyss{--ep-body-font:Arial,system-ui,sans-serif}
html.ep-theme-mvp-eclipse{--ep-body-font:"Trebuchet MS",Arial,sans-serif}
html.ep-theme-mvp-signal{--ep-body-font:"Courier New",ui-monospace,monospace}
html.ep-theme-mvp-celestial{--ep-body-font:Arial,system-ui,sans-serif;--ep-text-primary:#202442;--ep-text-secondary:#535b7b;--ep-text-muted:#77809f;--ep-text-link:#584fc0}
html.ep-theme-mvpplus-portal{--ep-body-font:"Trebuchet MS",Arial,sans-serif;--ep-heading-font:Georgia,serif}
html.ep-theme-mvpplus-astral{--ep-body-font:Arial,system-ui,sans-serif;--ep-heading-font:Georgia,serif}
html.ep-theme-mvpplus-matrix{--ep-body-font:ui-monospace,"Courier New",monospace;--ep-heading-font:ui-monospace,"Courier New",monospace}
html.ep-theme-mvpplus-relic{--ep-body-font:Georgia,"Times New Roman",serif;--ep-heading-font:Georgia,serif}
html.ep-theme-mvpplus-aurora{--ep-body-font:"Trebuchet MS",Arial,sans-serif;--ep-heading-font:Georgia,serif}

html[class*="ep-theme-"] body{
  color:var(--ep-text-primary)!important;
  font-family:var(--ep-body-font)!important;
}
html[class*="ep-theme-"] body :is(h1,h2,h3,h4,h5,h6,.page-title,.section-title,.hero-title,.v3-hero h1,.v3-section h2){
  color:var(--ep-text-primary)!important;
  font-family:var(--ep-heading-font,var(--ep-body-font))!important;
}
html[class*="ep-theme-"] body :is(p,.subtitle,.description,.lead,.intro,.caption,.help-text,.hint,.muted,.text-muted,.v3-card p,.v3-hero p,.v3-section-head p,.grade-plan-summary,.compare-note,.grade-legend){
  color:var(--ep-text-secondary)!important;
}
html[class*="ep-theme-"] body :is(.meta,small,.review-date,.grade-plan-rank,.grade-feature-title small,.staff-empty,.community-image-warning){
  color:var(--ep-text-muted)!important;
}
html[class*="ep-theme-"] body a:not(.btn):not(.v3-btn):not(.ep-theme-trigger):not(.ep-theme-apply):not(.ep-shell-nav a):not(.ep-shell-auth a){
  color:var(--ep-text-link);
}
html[class*="ep-theme-"] body :is(input,select,textarea,button){font-family:var(--ep-body-font)!important}
html[class*="ep-theme-"] body :is(input,select,textarea){color:var(--ep-text-primary)!important}
html[class*="ep-theme-"] body :is(input,textarea)::placeholder{color:var(--ep-text-muted)!important;opacity:.82}

/* Les pages V3 suivent désormais les mêmes couleurs typographiques que le thème actif. */
html[class*="ep-theme-"] body.v3-page{
  --v3-text:var(--ep-text-primary);
  --v3-muted:var(--ep-text-secondary);
  --v3-accent:var(--ember,#d18a4e);
  --v3-accent2:var(--ember-2,var(--ember,#f1b36f));
  --v3-line:var(--line-2,rgba(255,255,255,.16));
  font-family:var(--ep-body-font)!important;
}
html[class*="ep-theme-"] .v3-kicker,
html[class*="ep-theme-"] .review-role,
html[class*="ep-theme-"] .update-version{color:var(--ep-text-link)!important}
html[class*="ep-theme-"] .review-message,
html[class*="ep-theme-"] .update-content,
html[class*="ep-theme-"] .community-image-caption{color:var(--ep-text-primary)!important}
html[class*="ep-theme-"] .review-reply{color:var(--ep-text-primary)!important}

/* Ajustements V3 supplémentaires : boutons, formulaires et textes structurés */
html.ep-theme-default{--ep-body-font:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;--ep-heading-font:Georgia,serif}
html[class*="ep-theme-"] body.v3-page :is(.grade-plan-points,.grade-plan-points li,.v3-form label,.v3-notice){color:var(--ep-text-secondary)!important}
html[class*="ep-theme-"] body.v3-page .v3-btn{font-family:var(--ep-body-font)!important;color:var(--ep-text-primary)!important;border-color:var(--line-2)!important}
html[class*="ep-theme-"] body.v3-page .v3-btn.primary{background:linear-gradient(135deg,var(--ember,#d18a4e),var(--ember-2,var(--ember,#f1b36f)))!important;color:var(--ink,#15100b)!important;border-color:transparent!important}
html.ep-theme-mvp-celestial body.v3-page .v3-btn.primary{color:#fff!important}
html[class*="ep-theme-"] body.v3-page .v3-notice{border-color:var(--line-2)!important;background:color-mix(in srgb,var(--ember,#888) 7%,transparent)!important}
html[class*="ep-theme-"] body.v3-page .review-score .stars,
html[class*="ep-theme-"] body.v3-page .review-stars{color:var(--ember-2,var(--ember,#f7b14f))!important}


/* V3 TYPOGRAPHIE GLOBALE — cohérence renforcée */
html[class*="ep-theme-"] body :is(main,section,article,.card,.panel,.box,.modal,.content,.container,.wrapper,table,thead,tbody,tfoot,tr,th,td,label,legend,summary,li,dl,dt,dd){
  font-family:var(--ep-body-font)!important;
  color:var(--ep-text-primary);
}
html[class*="ep-theme-"] body :is(label,legend,th,dt,.field-title,.form-title,.card-title){
  color:var(--ep-text-primary)!important;
}
html[class*="ep-theme-"] body :is(.secondary,.subtext,.helper,.helper-text,.note,.note-text,.card-subtitle,.table-note,.empty-state){
  color:var(--ep-text-secondary)!important;
}
html[class*="ep-theme-"] #epGlobalHeader,
html[class*="ep-theme-"] #epGlobalFooter,
html[class*="ep-theme-"] #epGlobalHeader *,
html[class*="ep-theme-"] #epGlobalFooter *{
  font-family:var(--ep-body-font)!important;
}
html[class*="ep-theme-"] #epGlobalHeader :is(.ep-brand strong,.ep-shell-nav a,.ep-shell-auth a,.ep-user-label),
html[class*="ep-theme-"] #epGlobalFooter :is(strong,a){
  color:var(--ep-text-primary)!important;
}
html[class*="ep-theme-"] #epGlobalHeader :is(.ep-brand small),
html[class*="ep-theme-"] #epGlobalFooter :is(span,.ep-footer-copy){
  color:var(--ep-text-secondary)!important;
}
html[class*="ep-theme-"] #epGlobalHeader .ep-shell-nav a:is(:hover,.is-active),
html[class*="ep-theme-"] #epGlobalFooter a:hover{
  color:var(--ep-text-link)!important;
}
html[class*="ep-theme-"] body :is(code,kbd,pre){font-family:ui-monospace,"Courier New",monospace}


/* V3.1 — pont de variables typographiques pour les anciennes pages */
html[class*="ep-theme-"]{
  /* Les anciennes pages utilisent plusieurs noms de variables pour leurs textes.
     On les aligne sur la palette du thème actif afin d'éviter les écritures figées. */
  --text:var(--ep-text-primary);
  --txt:var(--ep-text-primary);
  --light:var(--ep-text-primary);
  --muted:var(--ep-text-secondary);
  --dim:var(--ep-text-muted);
}
html[class*="ep-theme-"] body :is(.text,.copy,.body-copy,.content-text,.message-text,.profile-bio,.bio,.story-text,.music-description,.member-info,.staff-info){
  color:var(--ep-text-primary)!important;
}
html[class*="ep-theme-"] body :is(.subtitle,.sub-title,.description,.desc,.excerpt,.byline,.timestamp,.date,.info-text,.empty,.empty-message){
  color:var(--ep-text-secondary)!important;
}
html[class*="ep-theme-"] body :is(.eyebrow,.kicker,.tagline,.accent-text){
  color:var(--ep-text-link)!important;
}
/* Les cartes d'avis conservent une hiérarchie lisible quelle que soit la palette choisie. */
html[class*="ep-theme-"] .review-reply-toggle{
  font-family:var(--ep-body-font)!important;
  color:var(--ep-text-primary)!important;
  border-color:var(--line-2,rgba(255,255,255,.18))!important;
}
html[class*="ep-theme-"] .review-reply strong{color:var(--ep-text-link)!important}


/* MVP+ V3.1 — DIRECTION ARTISTIQUE PREMIUM DISTINCTE */
/* Chaque thème modifie réellement la DA : géométrie, typographie, surfaces, boutons, navigation et ambiance. */
html.ep-theme-mvpplus-portal{
  --ink:#050806;--ink-2:#0a100c;--ink-3:#111a14;--ink-4:#19251c;
  --bone:#f3f8f4;--bone-dim:#b9c8bc;--ash:#7f9484;--ember:#34d27a;--ember-2:#d8b96f;--ember-deep:#17623a;
  --line:rgba(216,185,111,.20);--line-2:rgba(52,210,122,.42);
  --ep-body-font:"Trebuchet MS",Arial,sans-serif;--ep-heading-font:Georgia,"Times New Roman",serif;
}
html.ep-theme-mvpplus-portal body{
  background:
    linear-gradient(115deg,rgba(216,185,111,.035) 0 1px,transparent 1px 92px),
    radial-gradient(ellipse at 82% 2%,rgba(39,190,104,.24),transparent 29%),
    radial-gradient(ellipse at 8% 86%,rgba(216,185,111,.10),transparent 24%),
    linear-gradient(145deg,#030504,#0a130d 58%,#050806)!important;
}
html.ep-theme-mvpplus-portal body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(90deg,transparent 49.8%,rgba(216,185,111,.07) 50%,transparent 50.2%);opacity:.65}
html.ep-theme-mvpplus-portal :is(.card,article,.v3-card,.block,.panel,.grade-compare,.ep-notif-panel){
  border-radius:4px 28px 4px 28px!important;
  background:linear-gradient(145deg,rgba(14,23,17,.96),rgba(4,8,6,.96))!important;
  border:1px solid rgba(216,185,111,.30)!important;
  box-shadow:0 26px 70px rgba(0,0,0,.45),inset 4px 0 0 rgba(52,210,122,.52)!important;
}
html.ep-theme-mvpplus-portal :is(h1,h2,h3,.section-title,.v3-hero h1){letter-spacing:.015em;text-shadow:0 2px 24px rgba(52,210,122,.10)}
html.ep-theme-mvpplus-portal :is(.btn,.v3-btn,button[type=submit],.ep-theme-apply){border-radius:2px 14px 2px 14px!important;background:linear-gradient(135deg,#d8b96f,#46dd87)!important;color:#071009!important;border:0!important;box-shadow:0 12px 28px rgba(0,0,0,.25)!important}
html.ep-theme-mvpplus-portal :is(#epGlobalHeader,.ep-global-footer){background:linear-gradient(90deg,rgba(4,8,6,.98),rgba(12,24,16,.98))!important;border-color:rgba(216,185,111,.22)!important}

html.ep-theme-mvpplus-astral{
  --ink:#eef0fb;--ink-2:#f8f8ff;--ink-3:#e8ebf8;--ink-4:#dce1f2;
  --bone:#24263d;--bone-dim:#535a78;--ash:#7a819f;--ember:#7667df;--ember-2:#2b8ca8;--ember-deep:#5549bc;
  --line:rgba(71,77,119,.16);--line-2:rgba(118,103,223,.28);
  --ep-text-primary:#24263d;--ep-text-secondary:#535a78;--ep-text-muted:#7a819f;--ep-text-link:#5b50bf;
  --ep-body-font:"Trebuchet MS",Arial,sans-serif;--ep-heading-font:Georgia,"Times New Roman",serif;
}
html.ep-theme-mvpplus-astral body{
  background:
    radial-gradient(circle at 12% 15%,rgba(255,255,255,.96) 0 1px,transparent 2px),
    radial-gradient(circle at 74% 24%,rgba(116,103,223,.18),transparent 22%),
    radial-gradient(circle at 18% 80%,rgba(43,140,168,.12),transparent 25%),
    linear-gradient(150deg,#f9f8ff,#e9edf9 58%,#f3f8fa)!important;
  background-size:auto,auto,auto,auto!important;
}
html.ep-theme-mvpplus-astral :is(.card,article,.v3-card,.block,.panel,.grade-compare,.ep-notif-panel){
  border-radius:30px!important;background:rgba(255,255,255,.70)!important;
  border:1px solid rgba(93,91,150,.18)!important;backdrop-filter:blur(22px) saturate(1.12)!important;
  box-shadow:0 22px 55px rgba(54,58,92,.12),inset 0 1px 0 rgba(255,255,255,.82)!important;
}
html.ep-theme-mvpplus-astral :is(.btn,.v3-btn,button[type=submit],.ep-theme-apply){border-radius:999px!important;background:linear-gradient(135deg,#6f65d9,#5aaec0)!important;color:#fff!important;border:0!important;box-shadow:0 10px 24px rgba(91,80,191,.18)!important}
html.ep-theme-mvpplus-astral :is(input,select,textarea){background:rgba(255,255,255,.76)!important;border-color:rgba(84,85,135,.18)!important;color:#252943!important}
html.ep-theme-mvpplus-astral :is(#epGlobalHeader,.ep-global-footer){background:rgba(248,248,255,.88)!important;color:#24263d!important;border-color:rgba(76,79,126,.14)!important;backdrop-filter:blur(24px)!important}
html.ep-theme-mvpplus-astral :is(#epGlobalHeader a,.ep-global-footer a,.ep-brand-text strong,.ep-brand-text small){color:#303552!important}

html.ep-theme-mvpplus-matrix{
  --ink:#010302;--ink-2:#020704;--ink-3:#041008;--ink-4:#06180b;
  --bone:#c8ffd6;--bone-dim:#78bd8b;--ash:#477155;--ember:#22ff66;--ember-2:#68ff93;--ember-deep:#087a2e;
  --line:rgba(34,255,102,.16);--line-2:rgba(34,255,102,.44);
  --ep-body-font:ui-monospace,"SFMono-Regular","Courier New",monospace;--ep-heading-font:ui-monospace,"SFMono-Regular","Courier New",monospace;
}
html.ep-theme-mvpplus-matrix body{
  background:
    repeating-linear-gradient(0deg,rgba(34,255,102,.024) 0 1px,transparent 1px 4px),
    linear-gradient(rgba(34,255,102,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(34,255,102,.045) 1px,transparent 1px),#010302!important;
  background-size:100% 4px,32px 32px,32px 32px,auto!important;
}
html.ep-theme-mvpplus-matrix :is(.card,article,.v3-card,.block,.panel,.grade-compare,.ep-notif-panel){
  border-radius:0!important;background:rgba(1,9,4,.95)!important;border:1px solid rgba(34,255,102,.34)!important;
  box-shadow:inset 0 0 0 1px rgba(34,255,102,.035),0 0 32px rgba(34,255,102,.045)!important;
}
html.ep-theme-mvpplus-matrix :is(.card,article,.v3-card)::before{border-radius:0!important}
html.ep-theme-mvpplus-matrix :is(h1,h2,h3,.section-title,.v3-hero h1){text-transform:uppercase!important;letter-spacing:.075em!important}
html.ep-theme-mvpplus-matrix :is(h1,h2,h3,.section-title)::before{content:"[ ";color:#22ff66}html.ep-theme-mvpplus-matrix :is(h1,h2,h3,.section-title)::after{content:" ]";color:#22ff66}
html.ep-theme-mvpplus-matrix :is(.btn,.v3-btn,button[type=submit],.ep-theme-apply){border-radius:0!important;background:#082d13!important;color:#72ff99!important;border:1px solid #22ff66!important;text-transform:uppercase!important;letter-spacing:.07em!important;box-shadow:none!important}
html.ep-theme-mvpplus-matrix :is(input,select,textarea){border-radius:0!important;background:#010b05!important;border:1px solid rgba(34,255,102,.34)!important;color:#baffcc!important}
html.ep-theme-mvpplus-matrix :is(#epGlobalHeader,.ep-global-footer){background:#010603!important;border-color:rgba(34,255,102,.28)!important}

html.ep-theme-mvpplus-relic{
  --ink:#17110b;--ink-2:#21170f;--ink-3:#2b1f15;--ink-4:#392a1c;
  --bone:#f2e5c9;--bone-dim:#c6b18d;--ash:#907d61;--ember:#bf8a49;--ember-2:#e5c88d;--ember-deep:#70441f;
  --line:rgba(229,200,141,.18);--line-2:rgba(191,138,73,.38);
  --ep-body-font:Georgia,"Times New Roman",serif;--ep-heading-font:"Times New Roman",Georgia,serif;
}
html.ep-theme-mvpplus-relic body{
  background:
    repeating-linear-gradient(90deg,rgba(229,200,141,.022) 0 1px,transparent 1px 7px),
    radial-gradient(circle at 50% -10%,rgba(191,138,73,.18),transparent 34%),
    linear-gradient(145deg,#130d08,#21170f 52%,#0d0906)!important;
}
html.ep-theme-mvpplus-relic :is(.card,article,.v3-card,.block,.panel,.grade-compare,.ep-notif-panel){
  border-radius:10px!important;background:linear-gradient(145deg,rgba(45,31,20,.97),rgba(20,13,8,.98))!important;
  border:1px solid rgba(229,200,141,.30)!important;outline:1px solid rgba(191,138,73,.11)!important;outline-offset:-7px!important;
  box-shadow:0 18px 50px rgba(0,0,0,.42)!important;
}
html.ep-theme-mvpplus-relic :is(h1,h2,h3,.section-title,.v3-hero h1){font-variant:small-caps;letter-spacing:.035em;color:#f5e4bd!important}
html.ep-theme-mvpplus-relic :is(.btn,.v3-btn,button[type=submit],.ep-theme-apply){border-radius:3px!important;background:linear-gradient(#c99a59,#8d5a2c)!important;color:#1a1008!important;border:1px solid #efd39b!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.25)!important}
html.ep-theme-mvpplus-relic :is(#epGlobalHeader,.ep-global-footer){background:linear-gradient(#21160e,#130d08)!important;border-color:rgba(229,200,141,.24)!important}

html.ep-theme-mvpplus-aurora{
  --ink:#070817;--ink-2:#0d1026;--ink-3:#151837;--ink-4:#1e2249;
  --bone:#f7f8ff;--bone-dim:#cbd0ea;--ash:#8f96bd;--ember:#39e7db;--ember-2:#ef70ff;--ember-deep:#176f88;
  --line:rgba(111,139,255,.18);--line-2:rgba(239,112,255,.36);
  --ep-body-font:Arial,system-ui,-apple-system,"Segoe UI",sans-serif;--ep-heading-font:"Trebuchet MS",Arial,sans-serif;
}
html.ep-theme-mvpplus-aurora body{
  background:
    radial-gradient(ellipse at 14% 8%,rgba(57,231,219,.24),transparent 28%),
    radial-gradient(ellipse at 88% 14%,rgba(239,112,255,.24),transparent 30%),
    radial-gradient(ellipse at 48% 100%,rgba(85,105,255,.20),transparent 36%),
    linear-gradient(155deg,#060714,#0c1027 55%,#080713)!important;
}
html.ep-theme-mvpplus-aurora body::before{content:"";position:fixed;inset:-20%;pointer-events:none;z-index:-1;background:conic-gradient(from 90deg at 50% 50%,transparent,rgba(57,231,219,.08),transparent 38%,rgba(239,112,255,.09),transparent 72%);filter:blur(55px);animation:epAuroraDrift 18s linear infinite}
@keyframes epAuroraDrift{to{transform:rotate(360deg) scale(1.08)}}
html.ep-theme-mvpplus-aurora :is(.card,article,.v3-card,.block,.panel,.grade-compare,.ep-notif-panel){
  border-radius:24px!important;background:linear-gradient(145deg,rgba(20,24,55,.76),rgba(8,10,26,.78))!important;
  border:1px solid rgba(139,149,255,.25)!important;backdrop-filter:blur(18px) saturate(1.18)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.34),0 0 28px rgba(57,231,219,.05)!important;
}
html.ep-theme-mvpplus-aurora :is(.btn,.v3-btn,button[type=submit],.ep-theme-apply){border-radius:14px!important;background:linear-gradient(115deg,#39e7db,#7e8cff 52%,#ef70ff)!important;color:#070817!important;border:0!important;box-shadow:0 10px 30px rgba(89,176,255,.19)!important}
html.ep-theme-mvpplus-aurora :is(#epGlobalHeader,.ep-global-footer){background:rgba(7,8,23,.84)!important;border-color:rgba(126,140,255,.22)!important;backdrop-filter:blur(20px)!important}

@media (prefers-reduced-motion:reduce){html.ep-theme-mvpplus-aurora body::before{animation:none!important}}
@media(max-width:700px){
  html.ep-theme-mvpplus-portal :is(.card,article,.v3-card,.block,.panel){border-radius:3px 20px 3px 20px!important}
  html.ep-theme-mvpplus-astral :is(.card,article,.v3-card,.block,.panel){border-radius:22px!important}
}
