:root{--bg:#080808;--panel:#111111;--panel2:#171717;--line:#352326;--pink:#ff2f45;--pink2:#ff5366;--purple:#79d64b;--text:#f7f7f7;--muted:#a7a7a7;--danger:#ff5366;--ok:#79d64b;--ft-red:#ff2f45;--ft-red-dark:#b91628;--ft-green:#79d64b;--ft-black:#070707;--ft-panel:#111111;--ft-panel-2:#181818}*{box-sizing:border-box}html,body{margin:0;background:radial-gradient(circle at 60% -10%,#1d090c 0,#0a0a0a 42%,#050505 100%);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body{min-height:100vh;padding-bottom:112px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.topbar{height:72px;display:grid;grid-template-columns:220px 1fr 420px 220px;align-items:center;gap:18px;padding:0 34px;background:rgba(12,6,19,.88);border-bottom:1px solid #2c1a1c;position:sticky;top:0;z-index:20;backdrop-filter:blur(18px)}.logo{font-weight:900;font-size:30px;letter-spacing:-1px}.logo span{color:var(--pink)}.tagline{font-size:9px;color:#998ba4;display:block;margin-top:-4px}.nav{display:flex;gap:28px;font-size:14px;font-weight:700}.nav a.active,.nav a:hover{color:var(--pink2)}.search{height:42px;border:1px solid #43262a;border-radius:10px;background:#151515;color:#eee;padding:0 16px;width:100%}.userbox{display:flex;justify-content:flex-end;align-items:center;gap:12px}.avatar{width:40px;height:40px;border-radius:50%;border:2px solid var(--pink);background:linear-gradient(145deg,#6f2029,#111111);display:grid;place-items:center;font-weight:900;cursor:pointer}.studio{border:1px solid var(--pink);border-radius:10px;background:#241012;padding:11px 14px;color:white;font-weight:800;cursor:pointer}.hero{min-height:320px;margin:0;position:relative;overflow:hidden;border-bottom:1px solid #321b1e;background:radial-gradient(circle at 58% 30%,rgba(255,85,185,.35),transparent 23%),linear-gradient(90deg,rgba(10,5,17,.98) 0%,rgba(19,8,30,.82) 33%,rgba(51,16,69,.4) 58%,rgba(8,5,15,.9) 100%),linear-gradient(155deg,#10071b,#431319 52%,#111325)}.hero:after{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 70% 55%,transparent 0 18%,rgba(10,3,17,.12) 35%,rgba(7,4,11,.55) 100%),repeating-linear-gradient(115deg,transparent 0 90px,rgba(255,255,255,.012) 91px 92px)}.skyline{position:absolute;right:11%;bottom:0;width:58%;height:68%;opacity:.75;filter:drop-shadow(0 0 35px #ff2f4538)}.hero-content{position:relative;z-index:2;width:min(1450px,96%);margin:auto;padding:48px 22px}.eyebrow{color:var(--pink);font-weight:800;font-size:14px;letter-spacing:.04em}.hero h1{font-size:48px;line-height:.98;margin:10px 0 14px;max-width:540px;text-shadow:0 0 18px rgba(255,43,194,.2)}.hero p{color:#d8cedd;max-width:590px;font-size:17px}.meta{display:flex;gap:22px;color:#dedede;font-size:13px;margin:20px 0}.btnrow{display:flex;gap:14px}.btn{border:1px solid #60333a;border-radius:24px;padding:12px 22px;background:#161616;color:white;font-weight:800;cursor:pointer}.btn.primary{background:linear-gradient(90deg,#ff2f45,#d91f35);border:none;box-shadow:0 0 24px #ff2f4555}.quick{width:min(1500px,97%);margin:14px auto;display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.quickcard{min-height:80px;padding:18px;border:1px solid #3f2529;border-radius:10px;background:linear-gradient(135deg,#161616,#231113);display:flex;gap:14px;align-items:center}.quickcard b{display:block}.quickcard small{color:var(--muted)}.ico{font-size:26px}.content{width:min(1500px,97%);margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px}.section{margin:22px 0}.section h2{margin:0;font-size:24px}.subtitle{color:var(--muted);font-size:13px;margin:3px 0 14px}.cards{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.card{background:linear-gradient(180deg,#21122b,#160c20);border:1px solid #3b2529;border-radius:10px;overflow:hidden;min-width:0}.cover{aspect-ratio:2/3;background:linear-gradient(140deg,#4b1a20,#0e1b2b);position:relative;overflow:hidden}.cover:before{content:"";position:absolute;width:90px;height:90px;border-radius:50%;background:#ff2f4530;filter:blur(18px);left:20%;top:15%}.cover:after{content:"";position:absolute;left:12%;right:12%;bottom:0;height:48%;clip-path:polygon(0 100%,15% 55%,30% 82%,48% 35%,62% 67%,80% 20%,100% 100%);background:#08060d}.card-body{padding:10px}.card-title{font-weight:800;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card small{color:var(--muted)}.play-dot{float:right;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--pink);color:#150719}.worlds{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}.world{height:108px;border-radius:10px;border:1px solid #3a2528;padding:12px;display:flex;align-items:flex-end;font-weight:800;background:linear-gradient(145deg,#31151a,#0f1110)}.side .box{margin:22px 0;background:linear-gradient(145deg,#151515,#0d0d0d);border:1px solid #3b2529;border-radius:12px;padding:16px}.box h3{margin:0 0 12px}.event{display:grid;grid-template-columns:48px 1fr auto;gap:10px;padding:10px 0;border-bottom:1px solid #312022;align-items:center}.date{background:#261315;border-radius:8px;padding:7px;text-align:center;color:var(--pink2);font-weight:900}.pill{border:1px solid var(--pink);border-radius:18px;padding:7px 11px;background:transparent;color:white}.merch{height:130px;border-radius:8px;background:radial-gradient(circle at 70% 35%,#ff2f4530,transparent 35%),linear-gradient(140deg,#2c1115,#100b18);display:flex;align-items:end;padding:16px}.creator-cta{background:linear-gradient(135deg,#4a161d,#190b0d)!important}.city-footer{height:150px;margin-top:24px;background:linear-gradient(180deg,transparent,#1d0a0d),repeating-linear-gradient(90deg,#0d0d0d 0 18px,#131313 19px 25px);mask-image:linear-gradient(to bottom,transparent 0,#000 52%);opacity:.7}.player{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);width:min(1120px,92vw);height:86px;border:1px solid #5a2b31;border-radius:46px;background:rgba(25,10,34,.95);z-index:30;box-shadow:0 0 36px #ff2f4524;backdrop-filter:blur(20px);display:grid;grid-template-columns:310px 1fr 220px;gap:20px;align-items:center;padding:12px 24px}.now{display:flex;gap:12px;align-items:center}.thumb{width:58px;height:58px;border-radius:8px;background:linear-gradient(135deg,#5a242c,#151515)}.controls{text-align:center}.controls-main{display:flex;justify-content:center;gap:20px;align-items:center}.pause{width:48px;height:48px;border-radius:50%;border:0;background:var(--pink2);font-size:22px}.progress{height:4px;border-radius:3px;background:#393939;margin-top:8px;position:relative}.progress:before{content:"";position:absolute;left:0;top:0;bottom:0;width:38%;background:var(--pink2);border-radius:3px}.volume{display:flex;gap:10px;align-items:center}.menu-pop{position:absolute;right:22px;top:64px;width:250px;background:#111111;border:1px solid #3f272a;border-radius:12px;padding:10px;display:none;box-shadow:0 18px 45px #0008}.menu-pop.show{display:block}.menu-pop button,.menu-pop a{width:100%;padding:11px;text-align:left;border:0;background:transparent;color:white;border-radius:8px;display:block}.menu-pop button:hover,.menu-pop a:hover{background:#251215}.modal{position:fixed;inset:0;background:#000000d9;z-index:60;display:none;align-items:center;justify-content:center;padding:20px}.modal.show{display:flex}.modal-card{width:min(500px,95vw);background:#111111;border:1px solid #4a292e;border-radius:18px;padding:24px;box-shadow:0 28px 80px #000}.modal-card h2{margin-top:0}.formgrid{display:grid;gap:12px}.field label{display:block;color:#d2d2d2;font-size:12px;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;border:1px solid #40262a;border-radius:9px;background:#0b0b0b;color:white;padding:11px}.muted{color:var(--muted)}.close{float:right;background:transparent;border:0;color:white;font-size:22px}.toast{position:fixed;right:20px;bottom:125px;z-index:100;background:#1b1012;border:1px solid #573037;border-radius:10px;padding:12px 16px;display:none}.toast.show{display:block}.danger{color:var(--danger)}
@media(max-width:1100px){.topbar{grid-template-columns:180px 1fr 300px 70px}.studio,.userbox .name{display:none}.cards{grid-template-columns:repeat(3,1fr)}.worlds{grid-template-columns:repeat(4,1fr)}.content{grid-template-columns:1fr}.side{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.quick{grid-template-columns:repeat(2,1fr)}.player{grid-template-columns:260px 1fr}.volume{display:none}}

.brand{display:block}.brand img{width:160px;height:52px;object-fit:contain;object-position:left center}.search-wrap{display:flex;position:relative}.search-wrap button{position:absolute;right:4px;top:4px;height:34px;width:36px;border:0;background:transparent;color:#d9cce0}.page-hero{min-height:240px;padding:56px max(4vw,30px);border-bottom:1px solid #31193e;background:radial-gradient(circle at 75% 20%,#a11e2d55,transparent 28%),linear-gradient(120deg,#0c0c0c,#151010)}.page-hero h1{font-size:48px;margin:8px 0 10px}.page-hero p{color:#c9bdcf;max-width:720px;font-size:17px}.page-content{width:min(1460px,94%);margin:0 auto;padding:34px 0 100px}.catalog-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:15px}.filterbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.chip{padding:9px 14px;border-radius:999px;border:1px solid #4a2857;background:#160c20;color:#d9ccdf}.chip.active,.chip:hover{border-color:var(--pink);color:white}.universe-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.universe-tile{min-height:210px;border:1px solid #43244e;border-radius:14px;padding:22px;background:linear-gradient(145deg,#271114,#101010);transition:.2s}.universe-tile:hover{transform:translateY(-3px);border-color:#d93b4d}.universe-tile span{color:var(--pink)}.universe-tile h2{font-size:26px}.creator-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.creator-pill{border:1px solid #3a2528;background:#101010;border-radius:14px;padding:12px;display:flex;gap:12px;align-items:center}.creator-pill small{display:block;color:var(--muted)}.creator-avatar{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#bb45d8,#3d2a75);font-weight:900}.creator-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.creator-card{text-align:center;border:1px solid #402249;border-radius:15px;background:#101010;padding:26px}.creator-big-avatar{width:100px;height:100px;border-radius:50%;margin:auto;display:grid;place-items:center;background:linear-gradient(135deg,#d450c7,#31306c);font-size:34px;font-weight:900}.event-list{display:grid;gap:12px}.event-card{display:flex;justify-content:space-between;align-items:center;border:1px solid #3b2047;background:#101010;border-radius:13px;padding:20px}.empty-state,.panel-public{border:1px solid #3b2047;border-radius:15px;background:#101010;padding:28px}.studio-dashboard{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:20px}.shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.shop-card{border:1px solid #3b2047;border-radius:14px;background:#101010;padding:14px}.shop-art{height:180px;border-radius:10px;background:radial-gradient(circle,#ff3dbb55,transparent 35%),linear-gradient(145deg,#40174e,#0c0e19)}.video-hero{min-height:430px;background:radial-gradient(circle at 75% 30%,#7f2f7444,transparent 30%),linear-gradient(120deg,#100719,#2c1238);background-size:cover;background-position:center}.video-detail{width:min(1420px,94%);margin:auto;padding:62px 0;display:grid;grid-template-columns:250px 1fr;gap:34px;align-items:end}.video-cover{aspect-ratio:2/3;border-radius:14px;border:1px solid #6a3877;background:linear-gradient(145deg,#573166,#111827);background-size:cover;background-position:center;box-shadow:0 20px 50px #0008}.video-detail h1{font-size:54px;margin:8px 0}.video-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px}.video-layout aside{display:grid;gap:15px;align-content:start}.long-copy{line-height:1.7;color:#d0c5d5}.episode-list{display:grid;gap:8px}.episode-list article{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:12px;border-bottom:1px solid #2d1736;padding:13px}.episode-play{width:38px;height:38px;border-radius:50%;border:0;background:var(--pink);color:#160819}.admin-side .btn{border-radius:10px}@media(max-width:1100px){.catalog-grid{grid-template-columns:repeat(3,1fr)}.universe-grid,.creator-grid{grid-template-columns:repeat(2,1fr)}.creator-row{grid-template-columns:repeat(2,1fr)}.shop-grid{grid-template-columns:repeat(2,1fr)}.video-layout{grid-template-columns:1fr}.video-detail{grid-template-columns:180px 1fr}.page-hero h1,.video-detail h1{font-size:38px}}

/* Build 5 — header account menu & instant search */
.topbar{grid-template-columns:200px minmax(430px,1fr) minmax(300px,420px) max-content;column-gap:20px;padding-left:28px;padding-right:28px}
.userbox{position:relative;min-width:max-content;overflow:visible;flex-wrap:nowrap}
.avatar{flex:0 0 40px;min-width:40px;overflow:hidden}
.userbox .name{white-space:nowrap;cursor:pointer}
.menu-pop{right:0;top:58px;z-index:80}
.search-wrap{position:relative;min-width:0;z-index:70}
.search{padding-right:48px}
.search-results{display:none;position:absolute;left:0;right:0;top:50px;max-height:470px;overflow:auto;background:rgba(19,10,27,.985);border:1px solid #5a2c68;border-radius:14px;box-shadow:0 24px 70px #000b,0 0 30px #b825a822;backdrop-filter:blur(20px);padding:7px;z-index:90}
.search-results.show{display:block}
.search-result{display:grid;grid-template-columns:44px minmax(0,1fr) 24px;gap:11px;align-items:center;padding:9px;border-radius:10px}
.search-result:hover,.search-result:focus{background:#32143f;outline:none}
.search-result-cover{width:44px;height:44px;border-radius:7px;background:linear-gradient(145deg,#6b327d,#111111);background-size:cover;background-position:center}
.search-result b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.search-result small{display:block;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.search-result-arrow{color:var(--pink2);font-size:20px;text-align:center}
.search-empty{padding:16px;color:var(--muted)}
.search-empty a{display:block;color:var(--pink2);font-weight:800;margin-top:10px}
@media(max-width:1350px){.topbar{grid-template-columns:180px minmax(350px,1fr) minmax(260px,340px) max-content;gap:14px;padding-left:20px;padding-right:20px}.nav{gap:16px}.studio{padding:10px}.brand img{width:145px}.userbox{gap:8px}}
@media(max-width:1100px){.topbar{grid-template-columns:180px 1fr 300px 70px}.userbox{min-width:0}.menu-pop{right:0}.avatar{overflow:visible}}


/* Build 6 — saisons, épisodes, médias */
.upload-preview{background-repeat:no-repeat;background-size:cover;background-position:center;overflow:hidden}
.cover-preview{aspect-ratio:2/3;min-height:0;max-width:260px;width:100%;margin-top:10px}
.banner-preview{aspect-ratio:21/9;min-height:0;width:100%;margin-top:10px}
.video-cover,.cover,.search-result-cover{background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important}
.content-manager{margin-top:22px}.inline-editor{margin:16px 0;padding:18px;border:1px solid #563064;border-radius:14px;background:#0f0815}.inline-editor h3{margin-top:0}.media-pickers{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:12px 0}.media-pickers label{display:grid;gap:7px;color:#d2d2d2}.season-admin-list,.episode-admin-list{display:grid;gap:10px;margin-top:16px}.season-admin-card,.episode-admin-card{display:grid;grid-template-columns:86px minmax(0,1fr) auto;gap:14px;align-items:center;padding:11px;border:1px solid #31203a;border-radius:12px;background:#0b0b0b}.season-admin-thumb,.episode-admin-thumb{width:86px;aspect-ratio:16/9;border-radius:8px;background:#201129 center/contain no-repeat}.season-admin-card small,.episode-admin-card small{display:block;color:var(--muted);margin-top:4px}.season-thumb-preview,.episode-thumb-preview{width:240px;aspect-ratio:16/9;min-height:0;margin:12px 0}.season-list{display:grid;gap:14px}.season-block{border:1px solid #3a2045;border-radius:14px;background:#0d0d0d;overflow:hidden}.season-block summary{cursor:pointer;display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:16px;align-items:center;padding:13px 16px;list-style:none}.season-block summary::-webkit-details-marker{display:none}.season-public-thumb{width:120px;aspect-ratio:16/9;border-radius:9px;background:#291633 center/cover no-repeat}.season-block summary b{display:block;font-size:18px}.season-block summary small{display:block;color:var(--muted);margin-top:5px}.season-chevron{font-size:22px;color:var(--pink2);transition:.2s}.season-block[open] .season-chevron{transform:rotate(180deg)}.season-block .episode-list{padding:0 14px 14px}.episode-row{grid-template-columns:86px 42px minmax(0,1fr) auto!important;border:1px solid #2d1736!important;border-radius:10px!important;margin-top:8px;background:#0b0b0b}.episode-thumb{width:86px;aspect-ratio:16/9;border-radius:8px;background:#281630 center/cover no-repeat}.episode-row.locked{opacity:.52}.episode-row.locked b{color:#a79aa9}.episode-play:disabled{background:#3b3040;color:#8b818e;cursor:not-allowed}.release-badge{display:inline-block;margin-top:5px;padding:4px 8px;border-radius:999px;border:1px solid #5a4960;color:#bdb2c1}.season-empty{padding:14px}.player .thumb{background-size:cover;background-position:center}
@media(max-width:900px){.season-admin-card,.episode-admin-card{grid-template-columns:70px 1fr}.season-admin-card .actions,.episode-admin-card .actions{grid-column:1/-1}.season-block summary{grid-template-columns:90px 1fr auto}.season-public-thumb{width:90px}.episode-row{grid-template-columns:70px 36px 1fr!important}.episode-row>span:last-child{display:none}.media-pickers{grid-template-columns:1fr}}

/* Build 6 — correction finale du header public */
.topbar{grid-template-columns:200px minmax(430px,1fr) minmax(300px,420px) max-content}
.userbox{padding-left:4px;padding-right:2px;overflow:visible!important;min-width:170px}
.avatar{width:40px!important;height:40px!important;min-width:40px!important;max-width:40px!important;flex:0 0 40px!important;border-radius:50%;overflow:hidden!important;line-height:1;position:relative;z-index:2}
.userbox .name{max-width:180px;overflow:hidden;text-overflow:ellipsis}
@media(max-width:1350px){.topbar{grid-template-columns:180px minmax(360px,1fr) minmax(260px,340px) max-content}.userbox{min-width:145px}.userbox .name{max-width:135px}}
@media(max-width:1100px){.topbar{grid-template-columns:170px 1fr minmax(220px,300px) 52px}.userbox{min-width:52px}.userbox .name{display:none}.avatar{overflow:hidden!important}}

/* Build 7 — fiche Vidéo repliable, switches et Studio Créateur */
.video-edit-sections{display:grid;gap:16px}
.video-collapsible{border:1px solid #382427;border-radius:16px;background:#130a1c;overflow:hidden}
.video-collapsible>summary{min-height:64px;padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:18px;cursor:pointer;list-style:none;user-select:none;background:linear-gradient(180deg,#1a0d24,#140a1c)}
.video-collapsible>summary::-webkit-details-marker{display:none}
.video-collapsible>summary h3{margin:0;font-size:20px}
.video-collapsible .collapse-chevron{font-size:24px;color:var(--pink2);transition:transform .18s ease}
.video-collapsible[open] .collapse-chevron{transform:rotate(180deg)}
.video-collapsible .collapse-body{padding:22px;border-top:1px solid #32193e}
.video-collapsible.panel{padding:0}
.content-manager.video-collapsible{margin-top:22px}
.content-manager.video-collapsible .toolbar{margin:0 0 12px}
.switch-stack{display:grid;gap:10px;margin-top:12px}
.switch-row{display:flex!important;align-items:center;justify-content:space-between;gap:24px;padding:14px 16px;border:1px solid #35203f;border-radius:12px;background:#0b0b0b;cursor:pointer}
.switch-row>span:first-child{min-width:0}
.switch-row b{display:block;color:#f8f4fb;font-size:15px}
.switch-row small{display:block;color:var(--muted);font-size:12px;line-height:1.35;margin-top:4px}
.switch-control{position:relative;flex:0 0 52px;width:52px;height:28px}
.switch-control input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
.switch-slider{position:absolute;inset:0;border-radius:999px;background:#33233a;border:1px solid #5b3a66;transition:.18s ease;box-shadow:inset 0 0 0 1px #0003}
.switch-slider:after{content:"";position:absolute;width:20px;height:20px;left:3px;top:3px;border-radius:50%;background:#b6abbc;transition:.18s ease;box-shadow:0 2px 6px #0008}
.switch-control input:checked+.switch-slider{background:linear-gradient(90deg,#c321a2,#ff2f45);border-color:#ff62d5;box-shadow:0 0 16px #ff2f4544}
.switch-control input:checked+.switch-slider:after{transform:translateX(24px);background:white}
.switch-control input:focus-visible+.switch-slider{outline:2px solid #ff5366;outline-offset:3px}
.sticky-actions{position:sticky;bottom:12px;z-index:10;margin-top:18px;padding:12px;border:1px solid #44234f;border-radius:14px;background:rgba(18,9,25,.94);backdrop-filter:blur(12px)}
.topbar{grid-template-columns:200px minmax(390px,1fr) minmax(280px,400px) max-content!important}
.userbox{min-width:max-content!important;overflow:visible!important}
.studio{display:inline-flex!important;align-items:center;white-space:nowrap}
.avatar{flex-shrink:0!important}
@media(max-width:1100px){.studio{display:none!important}.userbox{min-width:52px!important}}
.video-layout:has(aside:empty){grid-template-columns:minmax(0,1fr)}
.video-collapsible.panel{padding:0!important}
/* Build 8 — lecteur audio et saisons enrichies */
.player{grid-template-columns:minmax(240px,330px) minmax(360px,1fr) 190px}
.player .now{min-width:0}.player-meta{min-width:0;overflow:hidden}.player-title-wrap{overflow:hidden;white-space:nowrap;position:relative;max-width:100%}#playerTitle{display:inline-block;font-size:13px;line-height:1.15;white-space:nowrap;max-width:none}.player-title-wrap.marquee #playerTitle{padding-left:100%;animation:playerMarquee 10s linear infinite}@keyframes playerMarquee{0%,12%{transform:translateX(0)}88%,100%{transform:translateX(-100%)}}
#playerEpisode{display:block;font-size:11px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}.controls-main button.player-icon,.volume button.player-icon{border:0;background:transparent;color:#fff;cursor:pointer;padding:5px 7px;border-radius:8px}.controls-main button.player-icon:hover,.volume button.player-icon:hover{background:#ffffff12}.pause{cursor:pointer;color:#160719}.progress-row{display:grid;grid-template-columns:42px 1fr 42px;gap:8px;align-items:center;margin-top:5px;font-size:10px;color:var(--muted)}.progress-range,.volume input[type=range]{width:100%;accent-color:var(--pink2);cursor:pointer}.volume{min-width:0}.volume input[type=range]{max-width:125px}.season-public-info{padding:0 16px 12px 152px;margin-top:-4px}.season-public-info p{margin:4px 0 0;color:#c3b7c8;line-height:1.45}.season-duration{color:var(--pink2);font-weight:700}.episode-row{align-items:center}
@media(max-width:1100px){.player{grid-template-columns:240px 1fr}.volume{display:none}}
@media(max-width:700px){.player{width:96vw;grid-template-columns:1fr;height:auto;min-height:88px;padding:10px 16px}.player .now{display:none}.progress-row{grid-template-columns:35px 1fr 35px}}

/* Build 9 — créateurs, profils et formats image */
.creator-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.creator-card{display:flex;gap:16px;align-items:flex-start;padding:18px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(145deg,#161616,#130a1b)}.creator-avatar.big{width:88px;height:88px;flex:0 0 88px;font-size:28px}.creator-profile-head{display:flex;align-items:center;gap:20px;margin-bottom:28px}.creator-profile-head>div{display:flex;gap:10px;flex-wrap:wrap}.upload-preview.cover-preview{aspect-ratio:2/3;min-height:0;max-width:260px}.upload-preview.banner-preview{aspect-ratio:21/9;min-height:0}.season-thumb-preview,.episode-thumb-preview{aspect-ratio:16/9;min-height:0}.avatar{background-size:cover;background-position:center;background-repeat:no-repeat}.modal.show{display:flex}.event-card{background-size:cover;background-position:center}.card .cover{background-size:cover;background-position:center}.video-hero{background-size:cover;background-position:center}.creator-avatar{background-size:cover;background-position:center;background-repeat:no-repeat}
@media(max-width:900px){.creator-grid{grid-template-columns:1fr}.creator-profile-head{align-items:flex-start}}

/* Build 11 — pièces jointes et édition d'épisode en place */
.episode-admin-wrap{border:1px solid #31203a;border-radius:12px;background:#0b0b0b;overflow:hidden}.episode-admin-wrap .episode-admin-card{border:0;border-radius:0;background:transparent}.episode-inline-slot:empty{display:none}.episode-inline-slot .inline-editor{margin:0;border-width:1px 0 0;border-radius:0;background:#0d0712}.attachment-current{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;margin:10px 0;padding:10px;border:1px solid #3a2444;border-radius:10px;background:#0d0712}.attachment-current.empty{display:block}.attachment-thumb{width:86px;aspect-ratio:16/9;border-radius:8px;background:#201129 center/contain no-repeat}.attachment-preview{min-width:0}.attachment-meta{min-width:0}.attachment-meta b,.attachment-meta small{display:block}.attachment-meta small{color:var(--muted);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attachment-audio{width:min(360px,100%);height:38px}.attachment-file-icon{font-size:24px}.attachment-remove{white-space:nowrap}@media(max-width:900px){.attachment-current{grid-template-columns:1fr}.attachment-thumb{width:120px}.attachment-audio{width:100%}}

/* Build 12 — lecteur persistant, Top Univers et responsive mobile */
.player-idle .player{position:fixed;top:76px;right:18px;bottom:auto;left:auto;width:auto;min-width:210px;height:48px;padding:7px 10px;grid-template-columns:1fr auto;border-radius:14px;transform:none;z-index:80}
.player-idle .player .now{display:flex!important}.player-idle .player .thumb{width:34px;height:34px}.player-idle .player .player-meta{display:none}.player-idle .player .controls-main>*:not(#playPauseBtn){display:none}.player-idle .player .progress-row,.player-idle .player .volume{display:none}.player-idle .player #playPauseBtn:after{content:" Lecteur FraiseTUBE";font-size:12px;font-weight:700}.player-idle .player #playPauseBtn{display:flex;align-items:center;gap:6px;width:auto;padding:7px 10px;border-radius:10px}
.stats-four{grid-template-columns:repeat(4,minmax(0,1fr))}.listen-stat{text-align:left;color:inherit;cursor:pointer}.listen-stat small{display:block;color:var(--muted);margin-top:5px}.analytics-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.analytics-grid section{border:1px solid #35203f;border-radius:12px;padding:14px;background:#0b0b0b}.analytics-row{display:grid;grid-template-columns:28px minmax(120px,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #2a1733}.analytics-row:last-child{border-bottom:0}.analytics-bar{grid-column:2/4;height:7px;background:#27142f;border-radius:999px;overflow:hidden}.analytics-bar i{display:block;height:100%;background:linear-gradient(90deg,#9138e5,#ff28bd);border-radius:999px}.row-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.universe-tile p{color:#c8bbcf}.universe-tile span{color:var(--pink2)}
@media(max-width:1100px){.stats-four{grid-template-columns:repeat(2,1fr)}.analytics-grid{grid-template-columns:1fr}}
@media(max-width:760px){
 body{overflow-x:hidden;padding-bottom:92px}.topbar{display:grid!important;grid-template-columns:1fr auto!important;gap:10px;padding:10px 12px;height:auto!important;align-items:center}.brand{min-width:0}.brand img{max-width:145px}.tagline{display:none}.userbox{grid-column:2;grid-row:1;min-width:44px!important}.userbox>span:first-child,.userbox .name,.studio{display:none!important}.nav{grid-column:1/-1;grid-row:3;display:flex!important;overflow-x:auto;gap:6px;padding:4px 0 2px;scrollbar-width:none}.nav::-webkit-scrollbar{display:none}.nav a{white-space:nowrap;flex:0 0 auto;padding:9px 11px;border:1px solid #33203d;border-radius:999px}.search-wrap{grid-column:1/-1;grid-row:2;width:100%;min-width:0}.search-wrap .search{width:100%;font-size:16px}.search-results{position:absolute;left:0;right:0;max-height:55vh;overflow:auto}.page-hero,.hero{padding-left:18px!important;padding-right:18px!important}.hero{min-height:420px}.hero h1,.page-hero h1{font-size:clamp(30px,9vw,46px)}.page-content{padding-left:14px!important;padding-right:14px!important}.cards,.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px}.card .card-body{padding:10px}.card-title{font-size:14px}.universe-grid{grid-template-columns:1fr!important}.creator-grid{grid-template-columns:1fr!important}.video-detail{grid-template-columns:110px minmax(0,1fr)!important;gap:14px}.video-cover{width:110px!important}.video-layout{grid-template-columns:1fr!important}.video-layout aside{display:grid;grid-template-columns:1fr;gap:10px}.season-block summary{grid-template-columns:72px 1fr auto!important;padding:10px}.season-public-thumb{width:72px!important}.season-public-info{padding:0 10px 10px!important}.episode-row{grid-template-columns:64px 36px minmax(0,1fr)!important;padding:9px!important}.episode-thumb{width:64px!important}.episode-row>span:last-child{display:none}.btn{min-height:44px}.player{left:8px!important;right:8px!important;bottom:8px!important;width:auto!important;transform:none!important;grid-template-columns:minmax(0,1fr) auto!important;min-height:76px!important;padding:9px 11px!important;border-radius:16px!important}.player .now{display:flex!important;min-width:0}.player .thumb{width:48px;height:48px;flex:0 0 48px}.player .controls{min-width:150px}.player .controls-main{justify-content:flex-end}.player .volume{display:none!important}.player .progress-row{grid-column:1/-1}.player-idle .player{top:72px!important;bottom:auto!important;left:auto!important;right:10px!important;width:auto!important;min-width:170px!important;grid-template-columns:auto!important;min-height:44px!important}.player-idle .player .now{display:none!important}.modal-card{width:calc(100vw - 20px)!important;max-height:90vh;overflow:auto}.filterbar{overflow-x:auto;flex-wrap:nowrap!important}.chip{white-space:nowrap}.event-card{grid-template-columns:1fr!important}
}
@media(max-width:430px){.cards,.catalog-grid{grid-template-columns:1fr!important}.video-detail{grid-template-columns:90px minmax(0,1fr)!important}.video-cover{width:90px!important}.player #shuffleBtn,.player #restartBtn{display:none}.player .now{max-width:48%}.player .controls{min-width:140px}}

/* Build 13 — reprise, lecteur plein écran, mobile et illustrations multiples */
.episode-play,.episode-play button,[data-play-episode],.player button,.player .thumb,.video-creator-link,.queue-item{cursor:pointer}.creator-avatar.tiny{width:30px;height:30px;flex:0 0 30px;font-size:12px}.video-creator-link{display:inline-flex;align-items:center;gap:8px;color:#e9dff0;text-decoration:none}.video-creator-link:hover span:last-child{text-decoration:underline;color:#ff5366}.player .thumb{outline:none}.player .thumb:focus-visible{outline:2px solid #ff5366;outline-offset:3px}
.mobile-nav-toggle{display:none}.full-player{position:fixed;inset:0;z-index:300;background:radial-gradient(circle at 30% 10%,#361146,#09060d 55%);display:none;overflow:auto}.full-player.show{display:block}.full-player-close{position:fixed;top:18px;right:22px;z-index:2;width:46px;height:46px;border-radius:50%;border:1px solid #61316d;background:#111111;color:#fff;font-size:28px;cursor:pointer}.full-player-inner{min-height:100vh;display:grid;grid-template-columns:minmax(280px,420px) minmax(320px,1fr) minmax(300px,420px);gap:42px;align-items:center;padding:70px max(5vw,30px)}.full-player-art{width:100%;aspect-ratio:16/9;border-radius:24px;background:#180d20 center/contain no-repeat;box-shadow:0 30px 80px #0009}.full-player-main h1{font-size:clamp(36px,5vw,72px);margin:8px 0 10px}.full-player-controls{display:flex;gap:18px;align-items:center;margin:26px 0}.full-player-controls button{cursor:pointer}.full-player-controls .pause{width:76px;height:76px;border-radius:50%;border:0;background:#ff4dcc;font-size:28px}.full-progress{max-width:720px}.queue-panel{align-self:stretch;padding-top:70px}.queue-panel h2{margin-top:0}.queue-item{width:100%;display:grid;grid-template-columns:62px 1fr;gap:12px;align-items:center;text-align:left;border:0;border-bottom:1px solid #34203f;background:transparent;color:#fff;padding:12px 0}.queue-thumb{width:62px;aspect-ratio:16/9;border-radius:10px;background:#201129 center/contain no-repeat}.queue-item small{display:block;color:var(--muted);margin-top:5px}.full-player-open{overflow:hidden}
.multi-media{margin:14px 0}.multi-media-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-end;margin-bottom:10px}.multi-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.multi-media-item{border:1px solid #3a2444;border-radius:12px;padding:9px;background:#0d0712}.multi-media-thumb{aspect-ratio:16/9;border-radius:8px;background:#21122b center/cover no-repeat;margin-bottom:8px}.media-default{display:flex;align-items:center;gap:7px;font-size:12px;margin:7px 0}.media-add{display:inline-flex;margin-top:10px;cursor:pointer}
@media(max-width:760px){.mobile-nav-toggle{display:flex;grid-column:1;grid-row:1;width:44px;height:44px;border:1px solid #40262a;border-radius:12px;background:#111111;color:#fff;align-items:center;justify-content:center;font-size:22px;cursor:pointer}.topbar{grid-template-columns:auto 1fr auto!important}.brand{grid-column:2;grid-row:1}.userbox{grid-column:3!important}.nav{display:none!important;position:fixed;left:10px;right:10px;top:66px;z-index:150;background:#130a1b;border:1px solid #40262a;border-radius:16px;padding:10px!important;box-shadow:0 24px 70px #000c;overflow:visible!important;flex-direction:column}.mobile-nav-open .nav{display:flex!important}.nav a{width:100%;border:0!important;border-radius:10px!important;padding:12px 14px!important}.search-wrap{grid-row:2!important}.full-player-inner{display:flex;flex-direction:column;gap:20px;padding:72px 16px 120px;align-items:stretch}.full-player-art{width:min(78vw,360px);align-self:center}.full-player-main{text-align:center}.full-player-main .video-creator-link{justify-content:center}.full-player-controls{justify-content:center}.queue-panel{padding-top:10px}.full-player-main h1{font-size:32px}.full-player-close{top:12px;right:12px}.content .section .cards{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:8px}.content .section .cards .card{flex:0 0 78vw;max-width:320px;scroll-snap-align:start}.hero{min-height:340px!important}.hero h1{font-size:clamp(28px,10vw,42px)!important}.player{min-height:68px!important}.player .progress-row{display:none}.player .controls{min-width:auto!important}.player .now{max-width:62%!important}.player .thumb{width:44px;height:44px;flex-basis:44px}.player-idle .player{min-height:42px!important}.multi-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Build 14 — fiche Vidéo pixel-reference, progression et événements */
.video-showcase{max-width:1540px;margin:0 auto;padding:28px 30px 120px;display:grid;grid-template-columns:420px minmax(0,1fr);gap:30px}.video-info{min-width:0}.video-poster{width:100%;aspect-ratio:2/3;border-radius:16px;background:#101010 center/cover no-repeat;border:1px solid #34203e}.video-info h1{font-size:30px;margin:18px 0 10px}.video-tags{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.video-intro{color:#c8bdce;line-height:1.55}.video-stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #34203e;border-radius:15px;margin:20px 0;padding:18px 10px}.video-stats span{text-align:center}.video-stats b,.video-stats small{display:block}.video-stats small{font-size:11px;color:var(--muted);margin-top:5px}.video-info .follow{width:100%;background:transparent;border-color:#ff39c7;color:#ff5366}.video-banner{width:100%;aspect-ratio:21/5;max-height:260px;border-radius:16px;background:center/cover no-repeat;border:1px solid #34203e;margin-bottom:6px}.video-tabs{display:flex;gap:24px;border-bottom:1px solid #26152f;margin-bottom:14px}.video-tabs button{border:0;background:transparent;color:#b8a9c0;padding:16px 8px 12px;font-weight:700;cursor:pointer;border-bottom:2px solid transparent}.video-tabs button.active{color:#fff;border-bottom-color:#ff39c7}.video-about{border:1px solid #34203e;border-radius:14px;padding:18px;margin-bottom:14px;color:#c8bdce;line-height:1.6}.video-season-card{border:1px solid #35203f;border-radius:16px;background:#0b0b0b;margin-bottom:14px;overflow:hidden}.video-season-card>summary{list-style:none;display:grid;grid-template-columns:94px minmax(250px,1fr) 110px 135px 58px 28px;gap:16px;align-items:center;padding:14px 16px;cursor:pointer;position:relative}.video-season-card>summary::-webkit-details-marker{display:none}.video-season-card .season-public-thumb{width:94px;aspect-ratio:16/9;border-radius:10px;background:#21122b center/cover no-repeat}.season-main b,.season-main small{display:block}.season-main b{font-size:20px}.season-main small{color:var(--muted);margin-top:8px;line-height:1.35}.season-count,.season-time{color:#b8a9c0;text-align:center}.season-percent,.episode-percent{color:#ff47ce}.season-progress{grid-column:3/6;position:absolute;left:0;right:0;bottom:-8px}.progress-track{display:block;height:8px;background:#291633;border-radius:999px;overflow:hidden}.progress-track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#b234ff,#ff38c9)}.video-season-card[open] .season-chevron{transform:rotate(180deg)}.season-chevron{transition:transform .25s ease}.video-episode{display:grid;grid-template-columns:34px 76px minmax(220px,1fr) 80px 150px 50px 54px;gap:14px;align-items:center;padding:10px 16px;border-top:1px solid #291733;transition:background .2s ease}.video-episode:hover{background:#1b0d23}.video-episode .episode-thumb{width:76px;aspect-ratio:16/9;border-radius:8px}.episode-copy b,.episode-copy small{display:block}.episode-copy small{color:var(--muted);margin-top:5px;line-height:1.25}.episode-duration{color:#b8a9c0}.episode-progress{width:100%}.video-episode .episode-play{width:44px;height:44px;border-radius:50%;border:0;background:#ff3ac9;color:#09050d;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.video-episode .episode-play:hover{transform:scale(1.08);box-shadow:0 0 24px #ff35c766}.public-events{display:grid;gap:14px}.public-event{display:grid;grid-template-columns:240px 1fr;gap:20px;border:1px solid #35203f;border-radius:16px;padding:14px;background:#0b0b0b}.public-event-art{aspect-ratio:16/9;border-radius:11px;background:#21122b center/cover no-repeat}.scene-creator{margin-bottom:36px}.scene-creator-head{display:flex;align-items:center;gap:14px;color:#fff;text-decoration:none;margin-bottom:14px}.scene-creator-head h2{margin:0}.manga-avatar:not([style*="background-image"]){background:radial-gradient(circle at 45% 35%,#70405e 0 18%,#281323 19% 42%,#100811 43%);box-shadow:inset 0 0 0 2px #6d326f;color:#fff}.events-title{margin-top:32px}
@media(max-width:1050px){.video-showcase{grid-template-columns:320px 1fr}.video-season-card>summary{grid-template-columns:78px minmax(180px,1fr) 90px 110px 48px 24px}.video-season-card .season-public-thumb{width:78px}.video-episode{grid-template-columns:28px 62px minmax(160px,1fr) 65px 100px 42px 46px}.video-episode .episode-thumb{width:62px}}
@media(max-width:760px){.video-showcase{display:block;padding:16px 12px 100px}.video-info{margin-bottom:24px}.video-poster{width:min(78vw,360px);margin:auto}.video-info h1{text-align:center}.video-info .video-creator-link{justify-content:center}.video-banner{aspect-ratio:16/7}.video-season-card>summary{grid-template-columns:68px 1fr 42px;gap:10px}.video-season-card .season-public-thumb{width:68px}.season-count,.season-time{grid-column:2;font-size:12px;text-align:left}.season-percent{grid-column:3;grid-row:2}.season-progress{grid-column:2/4;position:static}.video-episode{grid-template-columns:24px 58px 1fr 44px;padding:10px;gap:9px}.video-episode .episode-thumb{width:58px}.episode-duration{grid-column:3;font-size:12px}.episode-progress{grid-column:3}.episode-percent{grid-column:3;font-size:12px}.video-episode .episode-play{grid-column:4;grid-row:1/5}.public-event{grid-template-columns:1fr}.public-event-art{width:100%}}
.header-player{display:none;align-items:center;border:1px solid #57305f;border-radius:999px;overflow:hidden;margin-left:8px;width:36px;height:36px;flex:0 0 auto;transition:width .22s ease,transform .25s ease,opacity .25s ease,box-shadow .25s ease}.header-player.active{display:flex;animation:playerDock .28s ease}.player-docked .header-player.active{width:72px}.header-player button{width:35px;height:35px;min-width:35px;flex:0 0 35px;border:0;background:transparent;color:#fff;cursor:pointer;padding:0;display:grid;place-items:center;font-weight:700;font-size:14px;line-height:1;transition:background .18s ease,transform .18s ease,color .18s ease}.header-player button:hover{background:#32133c;color:#ff55cf}.header-player button:active{transform:scale(.9)}.header-player button+button{border-left:1px solid #57305f}.player-docked .player,.player-idle .player{display:none!important}@keyframes playerDock{from{opacity:0;transform:translateY(5px) scale(.9)}to{opacity:1;transform:none}}@media(max-width:760px){.header-player{grid-column:auto;grid-row:auto;justify-self:auto;margin:0;width:36px;height:36px}.player-docked .header-player.active{width:72px}.header-player button{width:35px;height:35px;min-width:35px}.topbar .nav{grid-row:4}}

/* Build 15 — video showcase exact layout refinements */
.header-player{height:30px;margin-left:6px;border-radius:999px;flex:0 0 auto}
.header-player button{height:30px;min-width:34px;padding:0 9px;font-size:12px;line-height:1}
.header-player button span{display:none}
.header-player button+button{min-width:34px;padding:0 8px}

@media(min-width:761px){
  .video-showcase{height:calc(100vh - 96px);overflow:hidden;align-items:stretch;padding-bottom:24px}
  .video-info,.video-seasons{height:100%;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#6c2d7b transparent}
  .video-info{padding-right:10px}
  .video-seasons{padding-right:8px;position:relative}
  .video-right-sticky{position:sticky;top:0;z-index:12;background:linear-gradient(180deg,#09050f 0%,#09050ff5 88%,#09050f00 100%);padding-bottom:2px}
  .video-seasons.no-banner .video-right-sticky{top:0}
}

.video-poster-wrap{position:relative}
.video-cover-overlay{position:absolute;left:16px;right:16px;bottom:16px;display:grid;gap:10px;z-index:3}
.video-poster-wrap:after{content:"";position:absolute;inset:auto 0 0;height:42%;border-radius:0 0 16px 16px;background:linear-gradient(180deg,transparent,#08040de8 62%,#08040df8);pointer-events:none;z-index:1}
.video-cover-overlay .video-stats{position:relative;z-index:2;margin:0;background:#0b0610d9;backdrop-filter:blur(8px);border-color:#54305f;padding:12px 8px}
.video-cover-overlay .follow{position:relative;z-index:2;margin:0;background:#0b0610de!important;backdrop-filter:blur(8px);min-height:46px}
.video-info>.video-stats,.video-info>.follow{display:none}

.video-about.always-visible{display:block!important;margin:0 0 14px;background:#0b0b0b}
.video-tabs .tab-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;margin-left:5px;border-radius:999px;background:#ff39c7;color:#0b0b0b;font-size:11px}
.video-panel[hidden]{display:none!important}

.season-main{min-width:0}
.season-summary-description{display:-webkit-box!important;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;line-height:1.35;max-height:4.05em}
.season-see-more{display:inline-block;margin-top:5px;color:#ff49ce;font-size:12px;font-style:normal;font-weight:700;cursor:pointer}
.video-season-card[open] .season-summary-description,.video-season-card[open] .season-see-more{display:none!important}
.season-full-description{display:none;padding:16px 18px 14px;color:#c9bdd0;line-height:1.55;border-top:1px solid #291733;border-bottom:1px solid #291733;background:#0d0d0d}
.video-season-card[open] .season-full-description{display:block}
.video-season-card[open]>summary{padding-bottom:16px}

@media(max-width:760px){
  .header-player{height:34px;grid-column:2;grid-row:1;justify-self:start;margin-left:4px}
  .header-player button{height:34px;min-width:36px;padding:0 9px}
  .video-showcase{height:auto;overflow:visible}
  .video-info,.video-seasons{height:auto;overflow:visible;padding-right:0}
  .video-right-sticky{position:static;background:none}
  .video-poster-wrap{width:min(78vw,360px);margin:auto}
  .video-poster{width:100%;margin:0}
  .video-cover-overlay{left:10px;right:10px;bottom:10px;gap:8px}
  .video-cover-overlay .video-stats{padding:9px 5px}
  .video-cover-overlay .video-stats b{font-size:15px}
  .video-cover-overlay .video-stats small{font-size:9px}
  .video-cover-overlay .follow{min-height:40px;padding:8px 10px}
  .video-about.always-visible{margin-top:8px}
  .season-full-description{padding:13px 12px}
}

/* Build 17 — restore the desktop header to a single row now that the mini-player is icon-only */
@media(min-width:1101px){
  .topbar{height:72px!important;display:grid!important;grid-template-columns:220px 42px minmax(430px,1fr) minmax(300px,420px) max-content!important;align-items:center!important;gap:16px!important;padding:0 34px!important}
  .brand{grid-column:1;grid-row:1;min-width:0}
  .header-player{grid-column:2;grid-row:1;justify-self:center;margin:0!important}
  .nav{grid-column:3;grid-row:1;display:flex!important;justify-content:flex-end;align-items:center;gap:28px!important;min-width:0}
  .search-wrap{grid-column:4;grid-row:1;min-width:0;width:100%}
  .userbox{grid-column:5;grid-row:1;display:flex!important;align-items:center;justify-content:flex-end;gap:12px;min-width:max-content}
}
@media(min-width:1101px) and (max-width:1500px){
  .topbar{grid-template-columns:180px 38px minmax(390px,1fr) minmax(250px,330px) max-content!important;gap:12px!important;padding-left:20px!important;padding-right:20px!important}
  .nav{gap:16px!important;font-size:13px}
  .studio{padding:10px 11px}
  .userbox{gap:8px}
}

/* Build 18: playback/event/analytics refinements */
.home-event{display:grid!important;grid-template-columns:minmax(145px,1.2fr) auto minmax(120px,1fr) auto!important;gap:10px!important;align-items:center}.home-event-creator{display:flex;align-items:center;gap:8px;color:inherit;text-decoration:none;min-width:0}.home-event-creator span:last-child{min-width:0}.home-event-creator b,.home-event-creator small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-event-copy b,.home-event-copy small{display:block}.public-event{grid-template-columns:240px minmax(0,1fr) auto!important;align-items:center}.public-event-copy{min-width:0}.public-event-action{display:flex;align-items:center;justify-content:flex-end;min-width:150px}.public-event-action .btn{white-space:nowrap}.episode-play.is-playing{box-shadow:0 0 0 2px #ff76dd55,0 0 22px #ff35c755}.analytics-video{border-bottom:1px solid #2a1733}.analytics-video>summary{list-style:none;cursor:pointer}.analytics-video>summary::-webkit-details-marker{display:none}.analytics-video[open]>summary{background:#1a0b22}.analytics-episode-list{padding:5px 0 12px 38px}.analytics-episode-row{display:grid;grid-template-columns:70px minmax(120px,1fr) auto;gap:10px;align-items:center;padding:8px 0;color:#cdbfd3}.analytics-episode-row .analytics-bar{grid-column:2/4}.creator-event-list{display:grid;gap:12px}.creator-event-block{display:grid;gap:0}.creator-event-card{grid-template-columns:100px minmax(0,1fr) auto}.creator-event-thumb{width:100px;aspect-ratio:16/9;border-radius:9px;background:#24122d center/cover no-repeat;border:1px solid #3a2344}.event-inline-slot:not(:empty){margin-top:0}.event-inline-slot .inline-editor{margin-top:0;border-top-left-radius:0;border-top-right-radius:0}.creator-event-block:has(.event-inline-slot:not(:empty)) .creator-event-card{border-bottom-left-radius:0;border-bottom-right-radius:0}
@media(max-width:760px){.home-event{grid-template-columns:1fr auto!important}.home-event-creator,.home-event-copy{grid-column:1/-1}.public-event{grid-template-columns:1fr!important}.public-event-action{justify-content:stretch;min-width:0}.public-event-action .btn{width:100%;text-align:center}.analytics-episode-list{padding-left:12px}.analytics-episode-row{grid-template-columns:58px 1fr auto}.creator-event-card{grid-template-columns:78px 1fr}.creator-event-thumb{width:78px}.creator-event-card .actions{grid-column:1/-1}}

/* Build 19 — homepage density, featured carousel, full video cards and admin alignment */
.hero.hero-compact{min-height:275px}.hero.hero-compact .hero-content{padding:30px 22px 28px}.hero.hero-compact h1{font-size:42px;line-height:1.02;max-width:620px;margin:8px 0 10px}.hero.hero-compact p{max-width:620px;font-size:15px;margin:0 0 8px}.hero.hero-compact .meta{margin:14px 0}.hero-nav{position:absolute;z-index:5;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;border:1px solid #6a347b;background:#160b20cc;color:#fff;font-size:28px;cursor:pointer;transition:.2s ease}.hero-nav:hover{border-color:var(--pink);color:var(--pink2);transform:translateY(-50%) scale(1.06)}.hero-nav.prev{left:16px}.hero-nav.next{right:16px}.hero-dots{position:absolute;z-index:5;left:50%;bottom:12px;transform:translateX(-50%);display:flex;gap:8px}.hero-dot{width:9px;height:9px;border:0;border-radius:50%;padding:0;background:#d8cadc;opacity:.75;cursor:pointer}.hero-dot.active{width:24px;border-radius:999px;background:var(--pink);opacity:1}.quick.quick-six{grid-template-columns:repeat(6,minmax(0,1fr));max-width:1500px}.quick.quick-six .quickcard{min-width:0}.quick-avatar{width:46px;height:46px;flex:0 0 46px}.creator-discovery b,.creator-discovery small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-video-cards{grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch}.video-card-full{display:flex;flex-direction:column;height:100%;overflow:visible}.video-card-full .cover{width:100%;aspect-ratio:2/3;flex:0 0 auto}.video-card-full .card-body{min-height:112px}.video-card-full .card-title{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.2;min-height:34px}.card-creator{display:flex;align-items:center;gap:7px;margin:7px 0 4px;min-width:0}.creator-avatar.micro{width:26px;height:26px;flex:0 0 26px;font-size:11px}.card-creator small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.box-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.box-head h3{margin:0 0 12px}.box-head a{color:var(--pink2);font-size:12px;font-weight:800}.home-event{grid-template-columns:minmax(150px,1.15fr) 72px minmax(150px,1fr) auto!important;column-gap:14px!important;padding:12px 0!important}.home-event-creator{min-width:0}.home-event-creator b{white-space:normal!important;line-height:1.1}.home-event .date{min-width:64px;text-align:center;padding:10px 7px;font-size:12px}.home-event-copy{min-width:0}.home-event-copy b{font-size:14px}.home-event .pill{justify-self:end;white-space:nowrap}.merch-image{display:block;overflow:hidden;border-radius:12px;background:#1d1026}.merch-image img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.merch-image span{display:block;padding:10px}.merch-image small{display:block;color:var(--muted);margin-top:3px}.placeholder-merch{background-size:cover!important;background-repeat:no-repeat!important}.table td{vertical-align:middle}.row-actions{display:flex;align-items:center;gap:10px;min-height:66px;flex-wrap:wrap}.featured-admin{display:flex;align-items:center;justify-content:space-between;gap:20px}.featured-admin h3{margin:0}.featured-admin p{margin:4px 0 0}.featured-mode{display:flex;align-items:center;gap:10px}.featured-mode select{min-width:190px}.featured-badge{display:inline-block;margin-left:10px;padding:3px 8px;border-radius:999px;background:#5d164d;color:#ff8be0;font-weight:800}.creator-event-card .actions{display:flex;align-items:center;gap:10px;justify-content:flex-end;flex-wrap:wrap}
@media(max-width:1180px){.quick.quick-six{grid-template-columns:repeat(3,minmax(0,1fr))}.home-video-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.hero.hero-compact{min-height:300px}.hero.hero-compact .hero-content{padding:24px 18px 34px}.hero.hero-compact h1{font-size:clamp(28px,9vw,40px)}.hero-nav{display:none}.quick.quick-six{display:flex!important;overflow-x:auto;grid-template-columns:none!important;padding-bottom:5px}.quick.quick-six .quickcard{flex:0 0 76vw;max-width:300px}.home-video-cards{display:flex!important;overflow-x:auto}.home-video-cards .video-card-full{flex:0 0 72vw;max-width:280px}.home-event{grid-template-columns:1fr!important}.home-event-creator,.home-event .date,.home-event-copy,.home-event .pill{grid-column:1}.home-event .date{justify-self:start}.home-event .pill{justify-self:stretch;text-align:center}.featured-admin{align-items:stretch;flex-direction:column}.featured-mode{flex-direction:column;align-items:stretch}.row-actions{min-height:0}.creator-event-card .actions{grid-column:1/-1;justify-content:flex-start}}


/* Build 20 — strict approved homepage density/model */
.hero.hero-compact{min-height:248px!important;max-height:300px;background-position:center 45%!important}
.hero.hero-compact .hero-content{padding:25px 72px 26px!important;width:min(1500px,98%)}
.hero.hero-compact .eyebrow{font-size:12px!important}
.hero.hero-compact h1{font-size:clamp(30px,2.45vw,40px)!important;line-height:1.01!important;max-width:600px!important;margin:7px 0 9px!important}
.hero.hero-compact p{max-width:600px!important;font-size:13px!important;line-height:1.35!important;margin:0 0 7px!important}
.hero.hero-compact .meta{margin:11px 0 12px!important;gap:18px!important;font-size:12px!important}
.hero.hero-compact .btn{padding:10px 20px!important;font-size:13px!important}
.hero.hero-compact .hero-dots{bottom:8px!important}
.hero.hero-compact .hero-nav{width:38px!important;height:38px!important;font-size:24px!important}
.quick.quick-six{width:min(1500px,97.5%)!important;margin:12px auto 18px!important;gap:10px!important}
.quick.quick-six .quickcard{min-height:70px!important;padding:13px 14px!important;gap:11px!important;border-radius:11px!important}
.quick.quick-six .quickcard b{font-size:13px!important;line-height:1.08!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.quick.quick-six .quickcard small{font-size:10.5px!important;line-height:1.15!important;display:block;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.quick.quick-six .ico{font-size:23px!important;flex:0 0 auto}
.quick.quick-six .quick-avatar{width:38px!important;height:38px!important;flex-basis:38px!important}
.content{width:min(1500px,97.5%)!important;grid-template-columns:minmax(0,1fr) 360px!important;gap:20px!important}
.home-new-section{margin-top:14px!important}
.section-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:11px}
.section-title-row h2{font-size:22px!important}
.section-title-row .subtitle{margin:2px 0 0!important}
.section-more{color:var(--pink2);font-size:12px;font-weight:900;white-space:nowrap}
.home-video-cards{gap:12px!important}
.home-video-cards .video-card-full{border-radius:10px!important;overflow:hidden!important;min-width:0}
.home-video-cards .video-card-full .cover{aspect-ratio:2/3!important;background-position:center!important;background-size:cover!important}
.home-video-cards .video-card-full .card-body{min-height:82px!important;padding:8px 9px 9px!important;position:relative}
.home-video-cards .card-title{font-size:12px!important;line-height:1.15!important;min-height:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;padding-right:32px}
.home-video-cards .card-creator{margin:5px 0 2px!important;gap:5px!important;padding-right:30px}
.home-video-cards .card-creator small,.home-video-cards .card-body>small{font-size:10px!important;line-height:1.1!important}
.home-video-cards .creator-avatar.micro{width:22px!important;height:22px!important;flex-basis:22px!important;font-size:9px!important}
.home-video-cards .play-dot{position:absolute;right:8px;bottom:14px;width:28px!important;height:28px!important;font-size:11px!important;float:none!important}
.side .box{margin:14px 0 16px!important;padding:14px!important}
.side .box h3{font-size:16px!important}
.home-event{grid-template-columns:minmax(130px,1fr) 58px minmax(115px,1fr) auto!important;gap:9px!important;padding:8px 0!important}
.home-event-creator b{font-size:11.5px!important}.home-event-creator small,.home-event-copy small{font-size:9.5px!important}.home-event-copy b{font-size:12px!important}.home-event .date{min-width:54px!important;padding:7px 5px!important;font-size:10px!important}.home-event .pill{padding:6px 10px!important;font-size:11px!important}
.merch-image span{font-size:12px!important}.merch-image small{font-size:10px!important}
@media(max-width:1180px){.content{grid-template-columns:minmax(0,1fr) 300px!important}.hero.hero-compact .hero-content{padding-left:46px!important;padding-right:46px!important}.quick.quick-six .quickcard b{font-size:12px!important}.quick.quick-six .quickcard small{font-size:10px!important}}
@media(max-width:760px){.hero.hero-compact{max-height:none!important;min-height:300px!important}.hero.hero-compact .hero-content{padding:24px 18px 34px!important}.content{grid-template-columns:1fr!important}.section-title-row{align-items:center}.quick.quick-six .quickcard b{font-size:13px!important}.quick.quick-six .quickcard small{font-size:11px!important}}

/* Build 21 — tighter approved homepage and real temporary shop illustrations */
.hero.hero-compact{min-height:218px!important;max-height:246px!important;background-position:center 48%!important}
.hero.hero-compact .hero-content{padding:18px 72px 22px!important}
.hero.hero-compact .eyebrow{font-size:11px!important}
.hero.hero-compact h1{font-size:clamp(27px,2.15vw,35px)!important;max-width:560px!important;margin:5px 0 7px!important}
.hero.hero-compact p{max-width:560px!important;font-size:12px!important;line-height:1.28!important;margin-bottom:5px!important}
.hero.hero-compact .meta{font-size:11px!important;margin:8px 0 9px!important;gap:15px!important}
.hero.hero-compact .btn{font-size:12px!important;padding:8px 17px!important}
.hero.hero-compact .hero-dots{bottom:6px!important}
.quick.quick-six{margin:10px auto 14px!important;gap:9px!important}
.quick.quick-six .quickcard{min-height:62px!important;padding:10px 12px!important;gap:9px!important}
.quick.quick-six .quickcard b{font-size:11.5px!important}
.quick.quick-six .quickcard small{font-size:9.5px!important;margin-top:2px!important}
.quick.quick-six .ico{font-size:20px!important}.quick.quick-six .quick-avatar{width:34px!important;height:34px!important;flex-basis:34px!important}
.content{grid-template-columns:minmax(0,1fr) 340px!important;gap:18px!important}
.home-new-section{margin-top:10px!important}.section-title-row h2{font-size:20px!important}.section-title-row .subtitle{font-size:11px!important}
.home-video-cards{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(145px,165px))!important;justify-content:start!important;gap:10px!important}
.home-video-cards .video-card-full{width:165px!important;max-width:165px!important}
.home-video-cards .video-card-full .card-body{min-height:70px!important;padding:7px 8px 8px!important}
.home-video-cards .card-title{font-size:11px!important;padding-right:27px!important}
.home-video-cards .card-creator{margin:4px 0 1px!important;padding-right:25px!important}
.home-video-cards .card-creator small,.home-video-cards .card-body>small{font-size:9px!important}
.home-video-cards .creator-avatar.micro{width:19px!important;height:19px!important;flex-basis:19px!important}
.home-video-cards .play-dot{width:25px!important;height:25px!important;right:6px!important;bottom:10px!important}
.side .box{padding:12px!important;margin:10px 0 14px!important}.side .box h3{font-size:15px!important}
.home-event{grid-template-columns:minmax(115px,1fr) 50px minmax(105px,1fr) auto!important;gap:7px!important}.home-event-creator b{font-size:10.5px!important}.home-event-copy b{font-size:11px!important}.home-event-creator small,.home-event-copy small{font-size:8.8px!important}.home-event .date{min-width:48px!important;font-size:9px!important;padding:6px 4px!important}.home-event .pill{font-size:10px!important;padding:5px 8px!important}
.shop-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.shop-mini-card{display:block;min-width:0;border:1px solid #42204f;border-radius:9px;overflow:hidden;background:#160c20}.shop-mini-card img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}.shop-mini-card span{display:block;padding:6px}.shop-mini-card b,.shop-mini-card small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shop-mini-card b{font-size:9.5px}.shop-mini-card small{font-size:9px;color:var(--pink2);margin-top:2px}.shop-card .shop-art{background-size:cover!important;background-position:center!important}
@media(max-width:1180px){.hero.hero-compact .hero-content{padding-left:44px!important;padding-right:44px!important}.content{grid-template-columns:minmax(0,1fr) 290px!important}.home-video-cards{grid-template-columns:repeat(auto-fill,minmax(140px,155px))!important}.home-video-cards .video-card-full{width:155px!important;max-width:155px!important}}
@media(max-width:760px){.hero.hero-compact{min-height:278px!important;max-height:none!important}.hero.hero-compact .hero-content{padding:20px 16px 30px!important}.home-video-cards{display:flex!important;overflow-x:auto!important}.home-video-cards .video-card-full{flex:0 0 158px!important;width:158px!important;max-width:158px!important}.shop-mini-grid{grid-template-columns:repeat(3,minmax(90px,1fr))}}


/* Build 22 — fluid large-desktop / QHD layout */
@media (min-width:1600px){
  .topbar{grid-template-columns:minmax(220px,260px) minmax(560px,1fr) minmax(360px,520px) minmax(220px,280px);padding-inline:clamp(32px,2.6vw,64px);gap:clamp(16px,1.4vw,28px)}
  .nav{gap:clamp(22px,1.65vw,38px);font-size:clamp(14px,.78vw,16px)}
  .brand img{width:clamp(160px,9vw,205px);height:auto}
  .hero.hero-compact{min-height:clamp(245px,15vw,330px)!important;max-height:330px!important}
  .hero.hero-compact .hero-content{width:min(2100px,94vw)!important;padding:clamp(22px,1.7vw,38px) clamp(42px,3.2vw,78px)!important}
  .hero.hero-compact h1{font-size:clamp(34px,2vw,47px)!important;max-width:720px!important;line-height:1.02!important}
  .hero.hero-compact p{max-width:720px!important;font-size:clamp(13px,.72vw,16px)!important;line-height:1.35!important}
  .hero.hero-compact .eyebrow{font-size:clamp(11px,.64vw,14px)!important}
  .hero.hero-compact .meta{font-size:clamp(11px,.64vw,14px)!important;gap:clamp(15px,1.2vw,26px)!important}
  .hero.hero-compact .btn{font-size:clamp(12px,.68vw,15px)!important;padding:clamp(8px,.58vw,12px) clamp(17px,1.25vw,26px)!important}
  .quick.quick-six{width:min(2250px,95vw)!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:clamp(10px,.75vw,16px)!important;margin:clamp(12px,.8vw,18px) auto clamp(16px,1vw,22px)!important}
  .quick.quick-six .quickcard{min-height:clamp(66px,4.6vw,92px)!important;padding:clamp(11px,.9vw,18px)!important;gap:clamp(9px,.75vw,15px)!important}
  .quick.quick-six .quickcard b{font-size:clamp(12px,.72vw,15px)!important}
  .quick.quick-six .quickcard small{font-size:clamp(10px,.58vw,12px)!important}
  .quick.quick-six .ico{font-size:clamp(20px,1.35vw,28px)!important}
  .quick.quick-six .quick-avatar{width:clamp(34px,2.2vw,46px)!important;height:clamp(34px,2.2vw,46px)!important;flex-basis:clamp(34px,2.2vw,46px)!important}
  .content{width:min(2250px,95vw)!important;grid-template-columns:minmax(0,1fr) clamp(360px,20vw,470px)!important;gap:clamp(20px,1.6vw,34px)!important}
  .section-title-row h2,.section h2{font-size:clamp(22px,1.3vw,30px)!important}
  .section-title-row .subtitle,.subtitle{font-size:clamp(11px,.68vw,14px)!important}
  .home-video-cards{grid-template-columns:repeat(auto-fill,minmax(168px,195px))!important;gap:clamp(12px,.9vw,18px)!important}
  .home-video-cards .video-card-full{width:100%!important;max-width:195px!important}
  .home-video-cards .video-card-full .card-body{min-height:78px!important;padding:9px 10px 10px!important}
  .home-video-cards .card-title{font-size:clamp(11px,.66vw,14px)!important}
  .home-video-cards .card-creator small,.home-video-cards .card-body>small{font-size:clamp(9px,.55vw,11px)!important}
  .home-video-cards .creator-avatar.micro{width:22px!important;height:22px!important;flex-basis:22px!important}
  .home-video-cards .play-dot{width:29px!important;height:29px!important}
  .side .box{padding:clamp(15px,1vw,22px)!important;margin:clamp(16px,1vw,22px) 0!important}
  .box h3{font-size:clamp(17px,1vw,21px)!important}
  .home-event{grid-template-columns:minmax(130px,1.05fr) 58px minmax(120px,1fr) auto!important;gap:10px!important}
  .home-event-creator b,.home-event-copy b{font-size:clamp(10.5px,.62vw,13px)!important}
  .home-event-creator small,.home-event-copy small{font-size:clamp(8.8px,.52vw,11px)!important}
  .shop-mini-card b{font-size:clamp(9.5px,.58vw,12px)!important}.shop-mini-card small{font-size:clamp(9px,.52vw,11px)!important}
  .worlds{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;gap:clamp(10px,.8vw,16px)!important}
  .world{height:clamp(108px,7vw,145px)!important;font-size:clamp(14px,.78vw,17px)!important}
  .page-content{width:min(2200px,94vw)!important}
  .catalog-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))!important}
  .city-footer{width:min(2250px,95vw);margin-inline:auto}
}
@media (min-width:2100px){
  .hero.hero-compact .hero-content{width:min(2280px,94vw)!important}
  .quick.quick-six,.content{width:min(2300px,95vw)!important}
  .home-video-cards{grid-template-columns:repeat(auto-fill,minmax(180px,205px))!important}
  .home-video-cards .video-card-full{max-width:205px!important}
  .page-content{width:min(2260px,94vw)!important}
}

/* Build 23 — resilient desktop header and real temporary shop visuals */
.topbar{min-width:0}
.topbar>*{min-width:0}
.topbar .nav{min-width:0;flex-wrap:nowrap}
.topbar .nav a{white-space:nowrap;flex:0 0 auto}
.topbar .search{min-width:0}
#userName{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:110px}
.studio-link,.topbar .btn{white-space:nowrap;flex-shrink:0}
@media (min-width:1000px) and (max-width:1550px){
  .topbar{grid-template-columns:minmax(150px,190px) minmax(430px,1fr) minmax(220px,340px) auto!important;gap:12px!important;padding-inline:18px!important}
  .nav{gap:16px!important;font-size:13px!important}
  .brand img{width:140px!important}
  #userName{display:none!important}
}
@media (min-width:1000px) and (max-width:1280px){
  .topbar{grid-template-columns:145px minmax(390px,1fr) 52px auto!important}
  .topbar .search{width:44px!important;min-width:44px!important;padding-inline:0!important;text-indent:-9999px!important;overflow:hidden!important}
  .topbar .search::before{content:'⌕';display:block;text-indent:0;text-align:center;font-size:18px}
}
.shop-grid-rich{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.shop-card-rich{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(180px,.95fr);min-height:300px;padding:0;overflow:hidden;background:linear-gradient(145deg,#22102d,#130a1b)}
.shop-art-img{width:100%;height:100%;min-height:300px;object-fit:cover;display:block}
.shop-card-copy{padding:24px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.shop-card-copy h3{font-size:24px;margin:0 0 12px}
.shop-price{font-size:30px;font-weight:900;color:var(--pink2);margin-bottom:12px}
.shop-card-copy p{color:#cfc2d3;line-height:1.45;margin:0 0 20px}
.shop-action{align-self:flex-start}
@media(max-width:1180px){.shop-card-rich{grid-template-columns:1fr}.shop-art-img{min-height:240px;max-height:320px}.shop-grid-rich{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.shop-grid-rich{grid-template-columns:1fr}.shop-card-copy{padding:18px}.shop-card-copy h3{font-size:21px}.shop-price{font-size:26px}}


/* Build 24 — episode availability/action UI */
.video-episode{grid-template-columns:34px 76px minmax(220px,1fr) 80px 150px 50px minmax(205px,auto)}
.episode-action{display:flex;align-items:center;gap:14px;min-width:0}
.episode-action.is-available{color:#fff;font-weight:800;white-space:nowrap}
.video-episode .episode-play{width:54px;height:54px;flex:0 0 54px;display:grid;place-items:center;padding:0;overflow:hidden}
.episode-play-icon{display:block;font-size:26px;line-height:1;transform:translateX(2px);font-weight:900}
.video-episode .episode-play.is-playing .episode-play-icon{font-size:25px;transform:none;letter-spacing:-4px;padding-right:4px}
.episode-action-label{font-size:15px;line-height:1.15}
.episode-action.is-upcoming{grid-column:7;display:flex;align-items:center;gap:12px;color:#a99bad;font-weight:500;white-space:nowrap}
.episode-release-icon{width:54px;height:54px;flex:0 0 54px;border-radius:50%;display:grid;place-items:center;background:#28152f;color:#ff45ce;font-size:25px;font-weight:900}
.episode-release-label{font-size:14px}.episode-release-label strong{color:#ff45ce;font-size:15px}
.video-episode.locked{opacity:1}.video-episode.locked .episode-copy,.video-episode.locked .episode-duration,.video-episode.locked .episode-progress,.video-episode.locked .episode-percent,.video-episode.locked .episode-num,.video-episode.locked .episode-thumb{opacity:.58}
@media(max-width:1050px){.video-episode{grid-template-columns:28px 62px minmax(160px,1fr) 65px 90px 42px minmax(170px,auto)}.video-episode .episode-play,.episode-release-icon{width:48px;height:48px;flex-basis:48px}.episode-play-icon{font-size:23px}.episode-action-label,.episode-release-label,.episode-release-label strong{font-size:12px}}
@media(max-width:760px){.video-episode{grid-template-columns:24px 58px minmax(0,1fr);gap:9px}.episode-duration,.episode-progress,.episode-percent{grid-column:3}.episode-action,.episode-action.is-upcoming{grid-column:1/-1!important;grid-row:auto!important;margin:5px 0 2px 73px;justify-content:flex-start}.video-episode .episode-play,.episode-release-icon{width:52px;height:52px;flex-basis:52px}.episode-play-icon{font-size:25px}.episode-action-label{font-size:14px}.episode-release-label,.episode-release-label strong{font-size:13px;white-space:normal}}

/* Build 25 — ratings, episode state rows, adaptive docked player, roomier discovery */
@media(min-width:1000px){
  .topbar{grid-template-columns:minmax(150px,210px) 38px minmax(500px,1fr) minmax(220px,400px) max-content!important;gap:14px!important}
  .header-player{grid-column:2;grid-row:1}
  .nav{grid-column:3;grid-row:1}
  .search-wrap{grid-column:4;grid-row:1}
  .userbox{grid-column:5;grid-row:1}
}
@media(min-width:1500px){
  .topbar{grid-template-columns:minmax(180px,230px) minmax(38px,280px) minmax(510px,1fr) minmax(250px,390px) max-content!important}
  .player-docked .header-player.active{width:100%;max-width:280px}
  .header-now{display:flex;align-items:center;gap:8px;min-width:0;flex:1;padding:0 7px 0 4px;overflow:hidden;white-space:nowrap}
  .header-track{min-width:0;max-width:165px;overflow:hidden;text-overflow:ellipsis;font-size:12px;font-weight:800}
  .header-chrono{font-size:10px;color:var(--muted);flex:0 0 auto}
  .header-player.has-details .header-track{animation:none}
}
@media(min-width:1850px){
  .topbar{grid-template-columns:minmax(200px,250px) minmax(38px,360px) minmax(560px,1fr) minmax(300px,440px) max-content!important}
  .player-docked .header-player.active{max-width:360px}
  .header-track{max-width:235px}
}
@media(min-width:1000px) and (max-width:1499px){.header-now{display:none!important}.player-docked .header-player.active{width:72px!important}}
.header-player{justify-self:start}.header-player.has-details{transition:width .22s ease}.header-now[hidden]{display:none!important}
.quick.quick-six .quickcard{min-height:76px!important}.creator-discovery{min-width:0}.creator-discovery b{font-size:12.5px!important}.creator-discovery small{font-size:10.5px!important}
@media(min-width:1600px){.quick.quick-six .quickcard{min-height:82px!important}.creator-discovery b{font-size:clamp(13px,.75vw,16px)!important}.creator-discovery small{font-size:clamp(10.5px,.6vw,13px)!important}}

.video-season-card>summary{grid-template-columns:94px minmax(250px,1fr) 105px 130px 58px minmax(150px,200px) 28px!important}
.season-rating{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;flex-wrap:wrap}.season-rating small{display:block;color:var(--muted);font-size:10px;width:100%;text-align:center}.season-rating strong{font-size:12px;white-space:nowrap}
.rating-stars{display:inline-flex;gap:2px;align-items:center}.rating-star{color:#49304f;font-size:16px;line-height:1}.rating-star.on{color:var(--pink2)}button.rating-star{border:0;background:transparent;padding:2px;cursor:pointer;font-size:19px}button.rating-star:hover,button.rating-star:focus{color:var(--pink2);transform:scale(1.08)}
.video-episode{grid-template-columns:34px 76px minmax(220px,1fr) 80px 150px 50px!important}
.episode-action,.episode-action.is-upcoming{grid-column:1/-1!important;display:flex!important;align-items:center;gap:14px;margin:4px 0 3px 0;white-space:normal!important}
.episode-release-icon{background:var(--pink)!important;color:#160819!important}.episode-release-icon svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.episode-release-label{font-size:15px}.episode-release-label strong{font-size:16px}
.episode-rating-box{grid-column:3/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:3px 0 8px}.episode-rating-box>div{border:1px solid #34203e;border-radius:10px;padding:8px 10px;display:flex;align-items:center;gap:8px;min-width:0}.episode-rating-box>div>span:first-child{font-size:11px;color:var(--muted);min-width:78px}.episode-rating-box small{color:var(--muted);font-size:10px}.rating-login{color:var(--pink2);font-size:11px}
@media(max-width:1150px){.video-season-card>summary{grid-template-columns:82px minmax(180px,1fr) 90px 112px 48px 130px 24px!important}.season-rating .rating-star{font-size:12px}.season-rating strong{font-size:10px}}
@media(max-width:760px){.video-season-card>summary{grid-template-columns:70px minmax(0,1fr) auto!important}.season-count,.season-time,.season-percent,.season-rating{grid-column:2;justify-content:flex-start;text-align:left}.season-progress{grid-column:2!important}.episode-rating-box{grid-column:1/-1;grid-template-columns:1fr;margin-left:73px}.episode-action,.episode-action.is-upcoming{margin-left:73px}.episode-release-icon svg{width:27px;height:27px}}

.media-upload-zone{border:1px dashed #684075;border-radius:14px;padding:18px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;background:#0b0b0b;cursor:pointer}.media-upload-zone:hover{border-color:var(--pink);background:#160b20}.media-upload-zone .media-upload-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#2a1434;color:var(--pink2);font-size:26px}.media-upload-zone b,.media-upload-zone small{display:block}.media-upload-zone small{color:var(--muted);margin-top:4px}.media-upload-zone input{display:none}.media-upload-preview{width:120px;aspect-ratio:16/9;border-radius:9px;background:#21122b center/cover no-repeat}@media(max-width:760px){.media-upload-zone{grid-template-columns:auto 1fr}.media-upload-preview{grid-column:1/-1;width:100%}}
/* hide legacy replace picker once unified gallery uploader is available */
.multi-media:not(:empty)+.field{display:none!important}


/* Build 26 — non-shifting docked player + product image uploader polish */
@media(min-width:1000px){
  .topbar{grid-template-columns:minmax(150px,210px) 72px minmax(500px,1fr) minmax(220px,400px) max-content!important}
  .header-player{grid-column:2;grid-row:1;overflow:hidden;z-index:3}
  .nav{grid-column:3;grid-row:1;position:relative;z-index:4}
  .search-wrap{grid-column:4;grid-row:1}.userbox{grid-column:5;grid-row:1}
  .player-docked .header-player.active{width:72px!important;max-width:none!important}
  .header-now{display:none!important}
}
@media(min-width:1700px){
  .topbar{grid-template-columns:minmax(180px,230px) 72px minmax(560px,1fr) minmax(280px,430px) max-content!important}
  .player-docked .header-player.active.has-details{width:min(330px,18vw)!important;max-width:330px!important;overflow:hidden}
  .header-now:not([hidden]){display:flex!important;align-items:center;gap:8px;min-width:0;flex:1;padding:0 7px 0 4px;overflow:hidden;white-space:nowrap}
  .header-track{display:block;min-width:0;max-width:205px;overflow:hidden;text-overflow:ellipsis;font-size:12px;font-weight:800;white-space:nowrap}
  .header-chrono{font-size:10px;color:var(--muted);flex:0 0 auto;white-space:nowrap}
}
@media(min-width:2050px){.player-docked .header-player.active.has-details{width:380px!important;max-width:380px!important}.header-track{max-width:250px}}
.header-track.scrolling{display:inline-block;max-width:none!important;width:max-content;animation:headerTrackScroll 8s linear infinite;padding-right:24px}
@keyframes headerTrackScroll{0%,12%{transform:translateX(0)}88%,100%{transform:translateX(var(--header-scroll-distance,-80px))}}
@media(prefers-reduced-motion:reduce){.header-track.scrolling{animation:none!important;max-width:205px!important;overflow:hidden;text-overflow:ellipsis}}
.shop-product-media{grid-column:1/-1}.shop-product-media .media-upload-zone{width:100%;min-height:116px}.shop-product-media .media-upload-preview{width:150px;aspect-ratio:1/1;background-size:cover;background-position:center}.shop-product-media>.btn{margin-top:8px}
@media(max-width:760px){.shop-product-media .media-upload-preview{width:100%}}

/* Build 27 — validated homepage/shop/admin fixes */
.hero.hero-compact{overflow:hidden;padding-bottom:8px}
.hero.hero-compact .hero-content{padding-bottom:42px!important}
.hero.hero-compact .btnrow{position:relative;z-index:6;margin-top:10px;margin-bottom:4px;display:flex;flex-wrap:wrap;gap:10px}


@keyframes heroSoftIn{from{opacity:.15;filter:blur(2px)}to{opacity:1;filter:blur(0)}}
.quick.quick-six{grid-template-columns:repeat(6,minmax(190px,1fr))!important;max-width:1680px!important;overflow-x:auto;scrollbar-width:thin}
.quick.quick-six .quickcard{padding:14px 16px!important;gap:12px!important;overflow:hidden}
.creator-discovery>div{min-width:0;overflow:hidden}.creator-discovery b,.creator-discovery small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-product-cell{display:flex;align-items:center;gap:14px;min-width:240px}.admin-product-thumb{width:54px;height:54px;flex:0 0 54px;border-radius:9px;object-fit:cover;border:1px solid #4b2858;background:#211029;display:grid;place-items:center}.admin-product-copy{display:flex;flex-direction:column;gap:6px;min-width:0}.admin-product-copy b{line-height:1.15}.admin-product-copy small{display:block;color:var(--muted);font-size:12px;line-height:1.15}.shop-art-placeholder,.shop-mini-placeholder{display:grid!important;place-items:center;background:linear-gradient(145deg,#351341,#14091c);color:#ff42ca;font-weight:900}.shop-mini-placeholder{aspect-ratio:1/1}.empty-shop{text-align:center;padding:48px}
@media(max-width:1250px){.hero.hero-compact .hero-content{padding-bottom:48px!important}.quick.quick-six{grid-template-columns:repeat(6,minmax(205px,1fr))!important}}
.btn.follow.followed{border-color:#38d996;color:#dfffee;background:rgba(42,190,128,.12)}
.player-device-btn{border:1px solid #60333a;border-radius:18px;background:#161616;color:#fff;padding:7px 10px;font-size:12px;font-weight:800;white-space:nowrap}.device-menu{display:none;position:absolute;right:130px;bottom:74px;width:280px;padding:12px;background:#111111;border:1px solid #5b2c6b;border-radius:14px;box-shadow:0 18px 50px #000a;text-align:left}.device-menu.show{display:grid;gap:7px}.device-row{display:grid;grid-template-columns:28px 1fr 14px;gap:8px;align-items:center;border:0;border-radius:9px;padding:9px;background:#171717;color:#fff;text-align:left}.device-row small{display:block;color:#a7a7a7}.device-row i{color:#62e6ab}.device-row.active{outline:1px solid #62e6ab}
@media(max-width:700px){.device-menu{position:fixed;left:12px;right:12px;bottom:88px;width:auto}.player-device-btn{padding:6px 8px;font-size:11px}}

/* Build 29 — complete commerce, resilient hero, shared playback */
.city-footer{display:none!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;background:none!important}
.hero.hero-compact{overflow:visible!important;min-height:clamp(300px,26vw,430px)!important;height:auto!important;padding-bottom:10px!important}
.hero.hero-compact .hero-content{position:relative!important;bottom:auto!important;max-width:min(760px,62%)!important;padding-bottom:52px!important}
.hero.hero-compact .btnrow{position:relative!important;z-index:3!important;display:flex!important;flex-wrap:wrap!important;gap:10px!important;margin-top:18px!important;padding-bottom:4px!important}
.quick.quick-six .quickcard{min-width:0!important;overflow:hidden!important}.quick.quick-six .quickcard>div{min-width:0}.quick.quick-six .quickcard b,.quick.quick-six .quickcard small{display:block;overflow:hidden;text-overflow:ellipsis}.creator-discovery{min-width:190px!important}
.cart-head{position:relative;display:inline-grid;place-items:center;width:34px;height:34px;border:1px solid #3d2348;border-radius:50%;color:#fff}.cart-head b{position:absolute;right:-5px;top:-6px;min-width:17px;height:17px;border-radius:9px;background:var(--pink2);color:#150918;font-size:10px;display:grid;place-items:center;padding:0 3px}
.stock-chip{display:inline-block;width:max-content;max-width:100%;margin:0 0 12px;padding:5px 9px;border-radius:999px;background:#153425;color:#75eab4;font-size:11px;font-weight:800}.stock-chip.out{background:#3a1721;color:#ff8099}
.cart-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:20px;align-items:start}.cart-lines,.cart-summary{margin:0}.cart-line{display:grid;grid-template-columns:72px minmax(0,1fr) 90px 110px auto;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid #35203e}.cart-line img,.cart-thumb-placeholder{width:72px;height:72px;border-radius:10px;object-fit:cover;background:#211028;display:grid;place-items:center}.cart-line h3{margin:0 0 4px}.cart-line label{font-size:11px;color:var(--muted)}.cart-qty{width:72px;margin-top:4px}.cart-summary{position:sticky;top:88px}.cart-summary>div{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid #31203a}.cart-summary .cart-total{font-size:20px;border-top:1px solid #6f3c7b;border-bottom:0;margin-top:8px;padding-top:16px}.cart-summary .btn{width:100%;margin-top:16px}.order-summary{max-width:760px;margin:0 auto}.order-status{display:grid;grid-template-columns:1fr auto;gap:8px 20px;padding-bottom:12px;border-bottom:1px solid #34203e}.order-line{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #2f1b39}.block{display:block;margin-top:4px}
.full-player-close{z-index:30!important;position:fixed!important;top:max(14px,env(safe-area-inset-top))!important;right:max(14px,env(safe-area-inset-right))!important;width:46px!important;height:46px!important;border-radius:50%!important;font-size:30px!important;display:grid!important;place-items:center!important;cursor:pointer!important}
.player .thumb{cursor:pointer!important}
@media(max-width:900px){.cart-layout{grid-template-columns:1fr}.cart-summary{position:static}.cart-line{grid-template-columns:58px minmax(0,1fr) 70px}.cart-line img,.cart-thumb-placeholder{width:58px;height:58px}.cart-line>strong,.cart-line>.btn{grid-column:2/-1}.hero.hero-compact .hero-content{max-width:100%!important;padding-bottom:42px!important}}
@media(max-width:560px){.cart-line{grid-template-columns:54px minmax(0,1fr)}.cart-line label,.cart-line>strong,.cart-line>.btn{grid-column:2}.full-player{overflow:auto!important;-webkit-overflow-scrolling:touch}.full-player-inner{padding-top:72px!important}}
.profile-orders{margin-top:18px}.order-history-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid #33203c;color:#fff}.order-history-row small{display:block;color:var(--muted);margin-top:4px}
.media-upload-zone.drag-over{border-color:var(--pink2)!important;background:#23102d!important;box-shadow:0 0 0 3px #ff2f4522 inset}

/* Build 31: featured video content stays left-aligned; carousel swaps instantly. */
.hero.hero-compact .hero-content{text-align:left!important;margin-left:0!important;margin-right:auto!important}
.hero.hero-compact .hero-content h1,.hero.hero-compact .hero-content p,.hero.hero-compact .hero-content .meta,.hero.hero-compact .hero-content .btnrow{margin-left:0!important;margin-right:auto!important;justify-content:flex-start!important;text-align:left!important}
.library-followed-grid{align-items:stretch}
.order-editor{margin-top:18px}.order-total-box{margin:18px 0 8px auto;max-width:360px;display:flex;justify-content:space-between;align-items:center;padding:18px;border:1px solid #5a2869;border-radius:14px;background:#180c21}.order-total-box strong{font-size:22px;color:#ff56d0}.order-doc-actions{margin-top:20px;padding-top:18px;border-top:1px solid #34203d}.order-history{display:grid;gap:8px}.order-history-row{display:flex;justify-content:space-between;gap:16px;padding:10px 12px;border:1px solid #312039;border-radius:10px;background:#111111}.order-history-row small{color:#9e8da7;white-space:nowrap}@media(max-width:760px){.order-history-row{display:grid}.order-history-row small{white-space:normal}.order-doc-actions .btn{width:100%;text-align:center}}

/* Build 36 — mobile-only layout/player repair. Desktop rules intentionally untouched. */
.mobile-player-expand,.mobile-progress-track{display:none}
@media (max-width: 760px){
  html,body{max-width:100%;overflow-x:hidden}
  body{padding-bottom:108px!important}
  .topbar{width:100%!important;max-width:100vw!important;box-sizing:border-box!important;padding:12px 12px 10px!important;gap:10px!important;grid-template-columns:48px minmax(0,1fr) auto!important;grid-template-rows:auto auto!important}
  .brand{min-width:0!important}.brand img{max-width:122px!important;width:auto!important}.tagline{display:none!important}
  .userbox{gap:7px!important;min-width:0!important}.userbox .name{display:none!important}.cart-head{flex:0 0 auto}.avatar{flex:0 0 auto}
  .search-wrap{grid-column:1/-1!important;grid-row:2!important;width:100%!important;max-width:none!important;margin:0!important}.search{width:100%!important;min-width:0!important}
  #pageRoot,.hero,.quick,.content,.page-content{max-width:100vw!important;box-sizing:border-box!important}
  .hero.hero-compact{width:100%!important;min-height:330px!important;max-height:none!important;background-position:center!important}
  .hero.hero-compact .hero-content{width:100%!important;max-width:none!important;padding:22px 18px 44px!important;box-sizing:border-box!important;text-align:left!important}
  .hero.hero-compact h1{max-width:100%!important;font-size:clamp(28px,8.6vw,38px)!important;line-height:1.02!important;overflow-wrap:anywhere!important}
  .hero.hero-compact p{max-width:100%!important;font-size:14px!important;line-height:1.35!important;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
  .hero.hero-compact .actions{display:flex!important;flex-wrap:wrap!important;gap:10px!important}.hero.hero-compact .actions .btn{flex:1 1 145px!important;min-width:0!important;text-align:center!important;white-space:nowrap!important}
  .quick.quick-six{width:100%!important;max-width:100%!important;margin:10px 0 14px!important;padding:0 12px 6px!important;display:flex!important;gap:10px!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;box-sizing:border-box!important}
  .quick.quick-six .quickcard{flex:0 0 min(78vw,300px)!important;max-width:min(78vw,300px)!important;min-width:0!important;scroll-snap-align:start!important}
  .content{width:100%!important;max-width:100%!important;margin:0!important;padding:0 12px 28px!important;display:flex!important;flex-direction:column!important;gap:14px!important;box-sizing:border-box!important}
  .content>main,.content>.side{width:100%!important;max-width:100%!important;min-width:0!important;display:block!important}
  .content .section{width:100%!important;max-width:100%!important;min-width:0!important;margin:14px 0!important}
  .section-title-row{align-items:flex-start!important}.section-title-row h2{font-size:24px!important;line-height:1.08!important;max-width:72vw!important}
  .home-video-cards{display:flex!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;gap:12px!important;scroll-snap-type:x mandatory!important;padding-bottom:8px!important}
  .home-video-cards .video-card-full{flex:0 0 170px!important;width:170px!important;max-width:170px!important;scroll-snap-align:start!important}
  .side{order:2!important}.side .box{width:100%!important;max-width:100%!important;box-sizing:border-box!important;margin:12px 0!important;overflow:hidden!important}
  .home-event{display:grid!important;grid-template-columns:1fr!important;min-width:0!important}.home-event>*{max-width:100%!important;min-width:0!important}
  .shop-mini-grid{display:flex!important;grid-template-columns:none!important;gap:10px!important;overflow-x:auto!important;padding-bottom:6px!important;scroll-snap-type:x mandatory!important}.shop-mini-card{flex:0 0 42vw!important;max-width:170px!important;scroll-snap-align:start!important}
  .worlds{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.world{min-width:0!important;overflow:hidden!important}

  /* Mobile player: compact but complete, with visible seek/progress and explicit collapse. */
  .player{left:10px!important;right:10px!important;bottom:max(10px,env(safe-area-inset-bottom))!important;width:auto!important;max-width:none!important;transform:none!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;gap:8px 10px!important;min-height:92px!important;padding:10px 12px 12px!important;border-radius:18px!important;box-sizing:border-box!important}
  .player .now{display:flex!important;grid-column:1!important;grid-row:1!important;max-width:none!important;min-width:0!important;gap:9px!important}.player .thumb{width:48px!important;height:48px!important;flex:0 0 48px!important;border-radius:9px!important}.player-meta{min-width:0!important}.player-title-wrap,#playerEpisode{max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
  .player .controls{display:flex!important;grid-column:2!important;grid-row:1!important;align-items:center!important;min-width:0!important}.player .controls-main{display:flex!important;align-items:center!important;gap:6px!important}.player .controls-main #shuffleBtn,.player .controls-main #restartBtn,.player .controls-main #deviceBtn{display:none!important}.player .controls-main #dockPlayerBtn{display:grid!important;font-size:16px!important}.player .controls-main .player-icon{width:34px!important;height:34px!important}.player #playPauseBtn{width:48px!important;height:48px!important;min-width:48px!important}
  .player .progress-row{display:grid!important;position:absolute!important;left:12px!important;right:12px!important;bottom:8px!important;grid-template-columns:34px minmax(0,1fr) 34px!important;gap:6px!important;font-size:9px!important}.player .progress-range{width:100%!important;min-width:0!important}
  .player .volume{display:none!important}.mobile-progress-track{display:none!important}
  .mobile-player-expand{display:none;position:absolute;right:8px;top:7px;width:32px;height:32px;border-radius:50%;border:1px solid #5d326a;background:#161616;color:#fff;z-index:3}
  body.mobile-player-minimized .player{height:56px!important;min-height:56px!important;padding:6px 52px 6px 8px!important;grid-template-columns:1fr!important;grid-template-rows:1fr!important}
  body.mobile-player-minimized .player .now{grid-column:1!important;grid-row:1!important}.mobile-player-minimized .player .thumb{width:42px!important;height:42px!important;flex-basis:42px!important}.mobile-player-minimized .player .controls,.mobile-player-minimized .player .volume,.mobile-player-minimized .player .progress-row{display:none!important}.mobile-player-minimized .mobile-player-expand{display:grid!important;place-items:center!important}.mobile-player-minimized .mobile-progress-track{display:block!important;position:absolute;left:0;right:0;bottom:0;height:3px;background:#3a1a45;overflow:hidden;border-radius:0 0 18px 18px}.mobile-player-minimized .mobile-progress-track i{display:block;height:100%;width:0;background:var(--pink)}
  .player-docked .player{display:grid!important}.player-docked .header-player{display:none!important}

  /* Fullscreen state always mirrors the audio element. */
  .full-player{width:100vw!important;max-width:100vw!important}.full-player-inner{min-height:100dvh!important;box-sizing:border-box!important;padding:72px 18px calc(36px + env(safe-area-inset-bottom))!important}.full-player-art{width:min(74vw,330px)!important;max-height:42vh!important}.full-player-main{width:100%!important;min-width:0!important}.full-player-main h1{font-size:clamp(28px,8vw,36px)!important;overflow-wrap:anywhere!important}.full-progress{display:grid!important;width:100%!important;grid-template-columns:42px minmax(0,1fr) 42px!important;gap:8px!important}.full-progress input{width:100%!important;min-width:0!important}.full-player-controls #fullPlay{width:64px!important;height:64px!important;min-width:64px!important;font-size:26px!important}
}
@media (max-width: 390px){
  .hero.hero-compact .actions{display:grid!important;grid-template-columns:1fr!important}.hero.hero-compact .actions .btn{width:100%!important}
  .worlds{grid-template-columns:1fr!important}.shop-mini-card{flex-basis:58vw!important}.player{left:6px!important;right:6px!important}.player .now{max-width:145px!important}.player .controls-main{gap:2px!important}.player .controls-main .player-icon{width:30px!important;height:30px!important}.player #playPauseBtn{width:44px!important;height:44px!important;min-width:44px!important}
}


/* Build 37 — FraiseTUBE startup splash (initial full-page load only) */
.video-splash{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;background:radial-gradient(circle at 50% 45%,#24102d 0,#100617 38%,#07030b 78%);overflow:hidden;opacity:1;visibility:visible;pointer-events:all;transition:opacity .4s ease,visibility 0s linear .4s}
.video-splash::before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(180deg,rgba(255,255,255,.018) 0,rgba(255,255,255,.018) 1px,transparent 1px,transparent 4px);mix-blend-mode:screen;opacity:.55;animation:sagaSplashScan 1.9s linear infinite}
.video-splash::after{content:"";position:absolute;left:0;right:0;height:2px;top:-4px;background:linear-gradient(90deg,transparent,rgba(255,38,190,.6),rgba(255,255,255,.85),rgba(123,59,255,.65),transparent);box-shadow:0 0 18px rgba(255,42,190,.55);animation:sagaSplashBeam 1.35s linear infinite}
.video-splash.is-leaving{opacity:0;visibility:hidden;pointer-events:none}
.video-splash-glitch{position:relative;width:min(58vw,560px);aspect-ratio:3.2/1;display:grid;place-items:center;filter:drop-shadow(0 0 26px rgba(255,41,190,.18))}
.video-splash-logo{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none}
.video-splash-logo-base{animation:sagaGlitchBase 1.1s steps(1,end) infinite}
.video-splash-logo-r{opacity:.48;filter:hue-rotate(300deg) saturate(1.8) brightness(1.2);mix-blend-mode:screen;animation:sagaGlitchR .82s steps(1,end) infinite;clip-path:polygon(0 7%,100% 7%,100% 28%,0 28%)}
.video-splash-logo-b{opacity:.42;filter:hue-rotate(145deg) saturate(2) brightness(1.3);mix-blend-mode:screen;animation:sagaGlitchB .93s steps(1,end) infinite;clip-path:polygon(0 55%,100% 55%,100% 78%,0 78%)}
@keyframes sagaGlitchBase{0%,6%,12%,58%,64%,100%{transform:translate(0,0) skew(0)}7%{transform:translate(-3px,1px) skew(-.7deg)}8%{transform:translate(4px,-1px) skew(.9deg)}59%{transform:translate(2px,0)}60%{transform:translate(-2px,1px)}}
@keyframes sagaGlitchR{0%,17%,19%,53%,55%,100%{transform:translate(0,0)}18%{transform:translate(10px,-2px)}54%{transform:translate(-8px,2px)}}
@keyframes sagaGlitchB{0%,31%,33%,71%,73%,100%{transform:translate(0,0)}32%{transform:translate(-9px,1px)}72%{transform:translate(7px,-1px)}}
@keyframes sagaSplashScan{from{transform:translateY(-6px)}to{transform:translateY(6px)}}
@keyframes sagaSplashBeam{from{transform:translateY(0)}to{transform:translateY(100vh)}}
@media(max-width:760px){.video-splash-glitch{width:min(78vw,420px)}}
@media(prefers-reduced-motion:reduce){.video-splash::before,.video-splash::after,.video-splash-logo{animation:none!important}.video-splash{transition:opacity .35s ease,visibility 0s linear .35s}}

/* Build 38 — player episode artwork keeps the defined 16:9 ratio without cropping. */
.cart-head[hidden]{display:none!important}
.player .thumb{aspect-ratio:16/9!important;width:92px!important;height:auto!important;flex:0 0 92px!important;background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important;background-color:#130b19!important}
.full-player-art{aspect-ratio:16/9!important;background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important;background-color:#0b0b0b!important;max-width:min(720px,45vw)!important}
.queue-thumb{aspect-ratio:16/9!important;background-size:contain!important;background-repeat:no-repeat!important;background-color:#130b19!important}
@media(max-width:760px){.player .thumb{width:64px!important;flex-basis:64px!important}.full-player-art{width:min(92vw,560px)!important;max-width:92vw!important;max-height:40vh!important}.video-cover-overlay .video-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px 4px!important}}

/* Build 39 — event containment without changing the established layout */
@media(min-width:761px){.side .box{min-width:0}.home-event{width:100%!important;box-sizing:border-box!important;grid-template-columns:minmax(0,1.15fr) 72px minmax(0,1fr) max-content!important}.home-event>*{min-width:0}.home-event .pill{justify-self:end;max-width:100%;box-sizing:border-box}}
.studio-video-logo{width:58px;aspect-ratio:2/3;border-radius:8px;background:#24122d center/contain no-repeat;border:1px solid #432126}.studio-creator-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.studio-creator-tabs button.active{border-color:var(--pink);color:var(--pink2)}

/* Build 43 — Studio Créateur intégré à la charte publique FraiseTUBE */
.studio-site-body{padding-bottom:0;background:radial-gradient(circle at 72% 8%,#2a0d12 0,transparent 25%),radial-gradient(circle at 28% 45%,#190b0d 0,transparent 34%),#050505;color:#fff;min-height:100vh}
.studio-topbar{grid-template-columns:190px minmax(440px,1fr) max-content!important;padding-inline:max(3vw,28px)!important}.studio-topbar .brand img{width:154px}.studio-public-nav{justify-content:center}.studio-head-actions{display:flex;gap:14px;align-items:center;justify-content:flex-end}.studio-site-link{white-space:nowrap}.studio-user-badge{display:flex;flex-direction:column;align-items:flex-end;line-height:1.1}.studio-user-badge small{color:var(--pink2);font-size:11px;margin-top:4px}.studio-user-name{font-weight:800}
.studio-site-shell{width:min(1450px,94%);margin:0 auto;padding:54px 0 100px}.studio-site-hero{min-height:190px;display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:34px 38px;margin-bottom:22px;border:1px solid #4a2857;border-radius:24px;background:radial-gradient(circle at 80% 20%,#8a2f7666,transparent 30%),linear-gradient(125deg,#151010,#1a0c0e 60%,#0d0d0d);box-shadow:0 24px 80px #0005}.studio-site-hero .eyebrow{color:var(--pink2);font-weight:900;letter-spacing:.08em}.studio-site-hero h1{font-size:clamp(34px,4vw,58px);margin:8px 0}.studio-site-hero p{margin:0;color:#c9bdcf;max-width:760px;font-size:16px}.studio-local-nav{display:flex;justify-content:flex-end;margin-bottom:18px}.studio-view{min-height:320px}
.studio-site-body .creator-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.studio-site-body .creator-card{display:flex;align-items:center;gap:18px;text-align:left!important;min-height:150px;padding:24px;border-radius:20px;background:linear-gradient(145deg,#171010,#0d0d0d);box-shadow:0 14px 42px #0004;transition:transform .16s ease,border-color .16s ease}.studio-site-body .creator-card:hover{transform:translateY(-3px);border-color:var(--pink)}.studio-site-body .creator-avatar.big{width:84px;height:84px;flex:0 0 84px;background-size:cover;background-position:center;font-size:28px}.studio-site-body .creator-card h3{font-size:22px;margin:0 0 7px}.studio-site-body .panel{border-radius:20px;background:linear-gradient(145deg,#151010,#100716);border-color:#40262a;box-shadow:0 16px 48px #0004}.studio-site-body .table th{color:#c5b8cd}.studio-site-body .table tr:hover td{background:#171010}.studio-site-body .video-editor-shell{padding:24px}.studio-site-body .video-collapsible{border-radius:16px;overflow:hidden}.studio-site-body .video-collapsible>summary{background:#171010}.studio-site-body .video-form-card{background:#111111}.studio-site-body .field input,.studio-site-body .field select,.studio-site-body .field textarea{background:#0d0d0d;border-color:#432126}.studio-site-body .btn.primary{box-shadow:0 0 0 1px #ff42c355 inset,0 8px 24px #c2228e22}
@media(max-width:980px){.studio-topbar{grid-template-columns:150px 1fr!important}.studio-public-nav{grid-column:1/-1;grid-row:2;overflow-x:auto;justify-content:flex-start}.studio-head-actions{grid-column:2;grid-row:1}.studio-site-shell{padding-top:26px}.studio-site-hero{min-height:160px;padding:26px}}
@media(max-width:760px){.studio-topbar{display:grid!important;grid-template-columns:1fr auto!important;padding:10px 12px!important}.studio-topbar .brand img{width:138px}.studio-public-nav{display:flex!important;grid-column:1/-1;grid-row:2}.studio-head-actions{grid-column:2;grid-row:1}.studio-site-link{font-size:0;padding:10px 12px}.studio-site-link:after{content:'← Site';font-size:13px}.studio-user-badge{display:none}.studio-site-shell{width:calc(100% - 24px);padding:18px 0 80px}.studio-site-hero{align-items:flex-start;flex-direction:column;padding:22px 18px;border-radius:18px}.studio-site-hero h1{font-size:32px}.studio-local-nav{justify-content:stretch}.studio-local-nav .btn{width:100%}.studio-site-body .creator-grid{grid-template-columns:1fr}.studio-site-body .creator-card{min-height:120px;padding:18px}.studio-site-body .panel{padding:13px}.studio-site-body .table{display:block;overflow-x:auto;white-space:nowrap}}

/* Build 44 — Studio UX + panneau contextuel Vidéo redimensionnable */
.studio-site-body .creator-card{cursor:pointer}.studio-site-body .creator-card h3{color:#fff!important;text-shadow:0 1px 10px #000}.studio-video-panel{width:100%;max-width:none!important}.studio-video-toolbar{align-items:flex-end}.studio-table-wrap{width:100%;overflow-x:auto}.studio-video-table{width:100%;table-layout:auto}.studio-video-table .studio-video-name{min-width:330px}.studio-row-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;white-space:nowrap}.studio-row-actions .btn:disabled{opacity:.38;cursor:not-allowed;filter:saturate(.25)}
.video-showcase.has-context-panel{--context-width:360px;width:100%;max-width:none;grid-template-columns:minmax(260px,360px) minmax(0,1fr) 12px var(--context-width);gap:24px;padding-left:max(3vw,28px);padding-right:0}.video-context-panel{min-width:300px;width:var(--context-width);height:calc(100vh - 92px);position:sticky;top:92px;overflow:auto;padding:18px 18px 120px 0;display:grid;align-content:start;gap:14px}.video-context-card{border:1px solid #54255f;border-radius:18px;background:linear-gradient(145deg,#190b21,#100714);padding:20px;box-shadow:0 14px 40px #0004}.video-context-card h3{margin:0 0 10px;font-size:19px}.video-context-card p{color:#c7bacd;line-height:1.45}.context-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.context-head a{color:var(--pink2);font-weight:800}.context-action{width:100%;justify-content:center}.context-creator{display:flex;gap:14px;align-items:center}.context-creator .creator-avatar.big{width:72px;height:72px;flex:0 0 72px}.context-creator p{margin:6px 0 0}.context-events .public-event,.context-events .event-card{padding:12px!important}.video-context-resizer{position:sticky;top:92px;height:calc(100vh - 92px);cursor:col-resize;display:grid;place-items:center;border-left:1px solid #6b286f;border-right:1px solid #35153c;background:#100714;z-index:5;touch-action:none}.video-context-resizer span{display:grid;place-items:center;width:26px;height:42px;border:1px solid var(--pink);border-radius:12px;background:#24102c;color:var(--pink2);font-weight:900}.resizing-video-context{cursor:col-resize!important;user-select:none!important}
@media(max-width:1200px) and (min-width:769px){.video-showcase.has-context-panel{grid-template-columns:240px minmax(0,1fr) 10px var(--context-width);gap:16px}.video-context-panel{min-width:280px}}
@media(max-width:768px){.video-showcase.has-context-panel{display:block!important;width:100%!important;padding:0 14px!important}.video-context-resizer{display:none!important}.video-context-panel{position:static!important;width:100%!important;min-width:0!important;height:auto!important;padding:16px 0 100px!important}.studio-row-actions{justify-content:flex-start}.studio-video-table .studio-video-name{min-width:260px}}


/* Build 45 — panneau Vidéo réellement responsive à sa largeur + liens publics raccordés */
.video-context-panel{
  container-type:inline-size;
  box-sizing:border-box;
  min-width:0!important;
  max-width:100%;
  overflow-x:hidden!important;
}
.video-context-panel,.video-context-panel *{box-sizing:border-box;min-width:0}
.video-context-card{width:100%;max-width:100%;overflow:hidden}
.video-context-card h3,.video-context-card p,.video-context-card b,.video-context-card small,.video-context-card a{overflow-wrap:anywhere;word-break:normal}
.video-context-card img,.video-context-card video,.video-context-card iframe{max-width:100%;height:auto}
.video-context-card .btn{max-width:100%;white-space:normal;text-align:center}
.context-head{flex-wrap:wrap;align-items:flex-start}
.context-head h3{flex:1 1 150px}
.context-head>a{flex:0 1 auto;white-space:normal;text-align:right}
.context-creator>div{min-width:0;flex:1 1 auto}
.context-events{display:grid;gap:10px;min-width:0}
.context-events .public-event{width:100%!important;max-width:100%!important;grid-template-columns:96px minmax(0,1fr)!important;gap:10px!important;align-items:start!important;overflow:hidden!important}
.context-events .public-event-art{width:96px!important;max-width:100%!important}
.context-events .public-event-copy{min-width:0!important}
.context-events .public-event-copy h3,.context-events .public-event-copy p{margin-right:0;overflow-wrap:anywhere}
.context-events .public-event-action{grid-column:1/-1;min-width:0!important;width:100%;justify-content:stretch!important}
.context-events .public-event-action .btn{width:100%;max-width:100%}
.video-context-links .context-link-list{display:grid;gap:9px}
.context-link{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;padding:12px 13px;border:1px solid #4d2858;border-radius:13px;background:#0d0d0d;color:#fff;text-decoration:none;transition:border-color .18s ease,background .18s ease}
.context-link:hover{border-color:var(--pink);background:#1c0a24}
.context-link-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#32103a;color:var(--pink2);font-weight:900}
.context-link b{color:var(--pink2)}
@container (max-width:360px){
  .video-context-card{padding:15px}
  .context-creator{align-items:flex-start}
  .context-creator .creator-avatar.big{width:58px;height:58px;flex-basis:58px}
  .context-events .public-event{grid-template-columns:1fr!important}
  .context-events .public-event-art{width:100%!important}
  .context-head>a{width:100%;text-align:left}
  .context-link{grid-template-columns:26px minmax(0,1fr) auto;padding:11px}
}
@container (max-width:320px){
  .context-creator{display:grid;grid-template-columns:52px minmax(0,1fr);gap:10px}
  .context-creator .creator-avatar.big{width:52px;height:52px;flex-basis:52px}
  .video-context-card h3{font-size:17px}
}
@media(min-width:769px){
  .video-showcase.has-context-panel{grid-template-columns:minmax(240px,360px) minmax(360px,1fr) 12px minmax(300px,var(--context-width));overflow-x:hidden}
  .video-context-panel{width:min(var(--context-width),calc(100vw - 660px))!important;min-width:300px!important}
}
@media(max-width:1100px) and (min-width:769px){
  .video-showcase.has-context-panel{grid-template-columns:220px minmax(330px,1fr) 10px minmax(280px,var(--context-width));gap:14px;padding-left:18px}
  .video-context-panel{min-width:280px!important;width:min(var(--context-width),calc(100vw - 610px))!important;padding-right:10px}
}
@media(max-width:900px) and (min-width:769px){
  .video-showcase.has-context-panel{display:grid;grid-template-columns:200px minmax(300px,1fr);padding-right:18px}
  .video-context-resizer{display:none!important}
  .video-context-panel{grid-column:1/-1;position:static!important;width:100%!important;min-width:0!important;height:auto!important;padding:4px 0 100px!important;grid-template-columns:repeat(2,minmax(0,1fr));container-type:inline-size}
}
@media(max-width:768px){
  .video-context-panel{overflow-x:hidden!important}
  .video-context-card{width:100%!important;max-width:100%!important}
  .context-events .public-event{grid-template-columns:1fr!important}
  .context-events .public-event-art{width:100%!important}
}

/* Build 47 — Studio Créateur compact season/episode editors */
.studio-site-body .studio-compact-editor{padding:16px 18px}
.studio-site-body .studio-editor-split{display:grid;grid-template-columns:minmax(250px,30%) minmax(0,1fr);gap:18px;align-items:start}
.studio-site-body .studio-editor-fields{min-width:0;display:grid;gap:12px}
.studio-site-body .studio-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}
.studio-site-body .studio-field-grid .field{min-width:0}
.studio-site-body .studio-span-2{grid-column:1/-1}
.studio-site-body .studio-media-card,.studio-site-body .studio-audio-card{padding:14px;margin:0;min-width:0}
.studio-site-body .studio-media-card h3,.studio-site-body .studio-audio-card h3{margin:0 0 10px}
.studio-site-body .studio-thumb-preview{width:100%;aspect-ratio:16/9;min-height:0;border:1px solid #432126;border-radius:10px;background-color:#0b0610;background-size:contain;background-position:center;background-repeat:no-repeat;margin:0 0 12px}
.studio-site-body .studio-editor-media-stack{display:grid;gap:12px;min-width:0}
.studio-site-body .studio-current-file{overflow-wrap:anywhere;font-size:12px}
.studio-site-body .studio-compact-editor textarea{resize:vertical;min-height:104px}
.studio-site-body .studio-compact-editor .form-actions{margin-top:14px}
@media(max-width:900px){.studio-site-body .studio-editor-split{grid-template-columns:1fr}.studio-site-body .studio-media-card{max-width:520px}.studio-site-body .studio-editor-media-stack{grid-template-columns:1fr 1fr}.studio-site-body .studio-field-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.studio-site-body .studio-editor-media-stack,.studio-site-body .studio-field-grid{grid-template-columns:1fr}.studio-site-body .studio-span-2{grid-column:auto}}

/* Build 48 — compact editors shared by Backoffice and Studio */
.admin-site-body .studio-compact-editor{padding:16px 18px}
.admin-site-body .studio-editor-split{display:grid;grid-template-columns:minmax(250px,30%) minmax(0,1fr);gap:18px;align-items:start}
.admin-site-body .studio-editor-fields{min-width:0;display:grid;gap:12px}
.admin-site-body .studio-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}
.admin-site-body .studio-field-grid .field{min-width:0}
.admin-site-body .studio-span-2{grid-column:1/-1}
.admin-site-body .studio-media-card,.admin-site-body .studio-audio-card{padding:14px;margin:0;min-width:0}
.admin-site-body .studio-media-card h3,.admin-site-body .studio-audio-card h3{margin:0 0 10px}
.admin-site-body .studio-thumb-preview{width:100%!important;aspect-ratio:16/9;min-height:0!important;max-height:none!important;border:1px solid #432126;border-radius:10px;background-color:#0b0610;background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important;margin:0 0 12px}
.admin-site-body .studio-editor-media-stack{display:grid;gap:12px;min-width:0}
.admin-site-body .studio-compact-editor textarea{resize:vertical;min-height:104px}
.admin-site-body .studio-compact-editor .form-actions{margin-top:14px}
.admin-site-body .video-editor-shell .media-pickers{grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);align-items:start}
.admin-site-body .video-editor-shell .cover-preview{max-height:360px;background-size:contain!important;background-repeat:no-repeat!important}
.admin-site-body .video-editor-shell .banner-preview{aspect-ratio:4/1;min-height:0!important;max-height:230px;background-size:contain!important;background-repeat:no-repeat!important}
@media(max-width:900px){.admin-site-body .studio-editor-split{grid-template-columns:1fr}.admin-site-body .studio-media-card{max-width:520px}.admin-site-body .studio-editor-media-stack{grid-template-columns:1fr 1fr}.admin-site-body .studio-field-grid{grid-template-columns:1fr 1fr}.admin-site-body .video-editor-shell .media-pickers{grid-template-columns:1fr}}
@media(max-width:620px){.admin-site-body .studio-editor-media-stack,.admin-site-body .studio-field-grid{grid-template-columns:1fr}.admin-site-body .studio-span-2{grid-column:auto}}
/* Build 49 — profile notification preferences */
.profile-notifications{grid-column:1/-1;padding:18px;border:1px solid #40262a;border-radius:16px;background:linear-gradient(145deg,rgba(53,24,64,.72),rgba(22,12,31,.82));display:grid;gap:10px}.profile-notifications h2{margin:0}.notification-choice{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border:1px solid #3b2145;border-radius:12px;background:#101010;cursor:pointer}.notification-choice input{margin-top:4px;accent-color:#d946ef}.notification-choice span{display:grid;gap:3px}.notification-choice small{color:#9e8da7;line-height:1.35}

/* v1.0.0 build50 — unified notification controls */
.profile-switch-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 15px;border:1px solid #3b2145;border-radius:14px;background:#101010;cursor:pointer}.profile-switch-row>span:first-child{display:grid;gap:4px}.profile-switch-row small{color:#9e8da7;line-height:1.35}.sagacity-switch{position:relative;display:inline-flex;width:72px;height:38px;flex:0 0 72px}.sagacity-switch input{position:absolute;opacity:0;pointer-events:none}.sagacity-switch i{position:absolute;inset:0;border-radius:999px;background:#25132f;border:1px solid #4d2a59;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02);transition:.2s ease}.sagacity-switch i:after{content:"";position:absolute;width:30px;height:30px;left:3px;top:3px;border-radius:50%;background:#f7f3fa;box-shadow:0 3px 12px rgba(0,0,0,.35);transition:.2s ease}.sagacity-switch input:checked+i{background:linear-gradient(90deg,#c61bb1,#e229c8);border-color:#ef56df;box-shadow:0 0 18px rgba(226,41,200,.32)}.sagacity-switch input:checked+i:after{transform:translateX(34px)}.notify-content-btn{font-size:12px;white-space:nowrap}.season-notify{margin-left:auto;margin-right:8px}.episode-action.is-upcoming{flex-wrap:wrap;gap:7px}.episode-action .notify-content-btn{margin-top:4px}.inherit-date-row{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid #3b2145;border-radius:10px;background:#101010;color:#eadfec;font-size:13px}.creator-profile-head [data-follow-creator]{font-weight:750}
@media(max-width:700px){.profile-switch-row{align-items:flex-start}.sagacity-switch{width:64px;flex-basis:64px;height:34px}.sagacity-switch i:after{width:26px;height:26px}.sagacity-switch input:checked+i:after{transform:translateX(30px)}.season-notify{margin:6px 0}}

/* Build 51 — héritage de date explicite et saisie de date spécifique */
.inherit-date-switch{justify-content:space-between;gap:18px;cursor:pointer}.inherit-date-switch>span:first-child{display:grid;gap:3px;min-width:0}.inherit-date-switch b{font-size:13px;color:#f7edf9}.inherit-date-switch small{font-size:11px;color:#9e8da7;line-height:1.3}.inherit-date-switch .sagacity-switch{width:64px;height:34px;flex-basis:64px}.inherit-date-switch .sagacity-switch i:after{width:26px;height:26px}.inherit-date-switch .sagacity-switch input:checked+i:after{transform:translateX(30px)}.field-disabled{opacity:.52}.field-disabled input{cursor:not-allowed}.studio-editor-fields input[type="datetime-local"]:not(:disabled){border-color:#6b376f;box-shadow:0 0 0 1px rgba(226,41,200,.08)}

/* v1.1.0 build52 — compact video editor aligned with season/episode editors */
.video-primary-editor{padding:18px;border:1px solid #40214d;border-radius:16px;background:linear-gradient(180deg,rgba(34,13,45,.72),rgba(18,9,27,.72));margin-bottom:18px}
.video-primary-editor>h3{margin:0 0 16px}
.video-editor-split{grid-template-columns:minmax(250px,320px) minmax(0,1fr);align-items:start}
.video-editor-media-stack{gap:14px}
.video-primary-editor .studio-media-card{padding:14px}
.video-primary-editor .video-cover-compact{width:100%;aspect-ratio:2/3;max-height:260px;background-size:contain;background-repeat:no-repeat;background-position:center}
.video-primary-editor .video-banner-compact{width:100%;aspect-ratio:4/1;min-height:72px;max-height:100px;background-size:contain;background-repeat:no-repeat;background-position:center}
.video-primary-editor .studio-editor-fields textarea{resize:vertical}
@media(max-width:760px){.video-editor-split{grid-template-columns:1fr}.video-primary-editor{padding:12px}.video-primary-editor .video-cover-compact{max-height:230px}.video-primary-editor .video-banner-compact{max-height:90px}}

/* v1.2.0 build53 — public sharing */
.share-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap}
.share-btn span{font-size:1.05em}.video-cover-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.video-cover-actions .follow{flex:1 1 145px}.video-cover-actions .video-share{flex:0 0 auto}
.season-share{padding:7px 10px;font-size:.78rem;align-self:center}.episode-share{padding:6px 9px;font-size:.75rem}
.share-sheet{display:grid;gap:8px;margin-top:10px}.share-option{display:flex;align-items:center;gap:12px;width:100%;padding:13px 14px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.045);color:#fff;text-decoration:none;text-align:left;font:inherit;cursor:pointer;transition:.18s ease}.share-option:hover{background:rgba(217,70,239,.13);border-color:rgba(217,70,239,.55);transform:translateY(-1px)}.share-option>span{flex:1}.shared-target{outline:2px solid rgba(217,70,239,.7);box-shadow:0 0 0 5px rgba(217,70,239,.08)}
@media(max-width:760px){.season-share{font-size:0;width:38px;height:38px;padding:0;border-radius:999px}.season-share span{font-size:18px}.episode-share{font-size:0;width:34px;height:34px;padding:0;border-radius:999px}.episode-share span{font-size:16px}.video-cover-actions{justify-content:stretch}.video-cover-actions .video-share{flex:1 1 auto}}

/* v1.3.0 build54 — compact seasons/episodes, unified share, qualified listens */
.share-icon-btn{width:46px;height:46px;display:inline-grid;place-items:center;border-radius:50%;border:1px solid #7b3a87;background:#1a0c22;color:#f4eafa;cursor:pointer;flex:0 0 46px}.share-icon-btn:hover{border-color:var(--pink2);background:#2a1033}.share-icon-btn svg,.share-option svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2}.share-option svg{width:32px;height:32px;stroke:none;flex:0 0 32px}.share-sheet{display:grid;gap:10px}.share-option{display:flex;align-items:center;gap:16px;min-height:64px;padding:12px 18px;border:1px solid #49344f;border-radius:16px;background:#211528;color:#fff;text-decoration:none;font-size:17px}.share-option:hover{border-color:#c633ca;background:#35123c}.share-generic{font-size:25px;width:32px;text-align:center}.video-cover-actions .share-icon-btn,.creator-profile-head .share-icon-btn{align-self:center}.video-season-card>summary{grid-template-columns:120px minmax(260px,1fr) auto auto auto auto auto;gap:15px}.season-main small{display:block;color:var(--muted);margin-top:5px}.season-progress{grid-column:2/7;width:100%;height:7px}.season-rating{white-space:nowrap}.season-rating small{display:block}.video-episode{border:1px solid #35203e;border-radius:12px;background:#0b0b0b;overflow:hidden;margin-top:8px}.video-episode>summary{display:grid;grid-template-columns:42px 86px minmax(180px,1fr) auto auto auto minmax(130px,220px) auto auto auto;gap:12px;align-items:center;padding:10px 12px;list-style:none;cursor:pointer}.video-episode>summary::-webkit-details-marker{display:none}.video-episode .episode-progress{height:7px}.episode-listens{color:#bcaec2;white-space:nowrap;font-size:12px}.episode-chevron{color:var(--pink2);font-size:20px;transition:.2s}.video-episode[open] .episode-chevron{transform:rotate(180deg)}.episode-expanded{padding:18px 20px 20px;border-top:1px solid #32183b}.episode-full-description{color:#c7bacb;line-height:1.55;margin-bottom:16px}.episode-expanded .episode-action{display:flex;align-items:center;gap:12px}.episode-expanded .episode-rating-box{margin-top:16px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.episode-restart{width:46px;height:46px;border-radius:50%;border:1px solid #74407e;background:#171010;color:#fff;font-size:25px;cursor:pointer}.episode-restart:hover{border-color:var(--pink2)}
@media(max-width:900px){.video-season-card>summary{grid-template-columns:82px 1fr auto}.season-count,.season-time,.season-rating{grid-column:2}.season-progress{grid-column:1/-1}.video-episode>summary{grid-template-columns:34px 70px 1fr auto}.episode-duration,.episode-listens,.episode-progress,.episode-percent{grid-column:3}.episode-expanded .episode-rating-box{grid-template-columns:1fr}.share-icon-btn{width:42px;height:42px;flex-basis:42px}}

/* v1.3.1 build55 — pixel reference: compact/open seasons + inline episodes */
.share-sheet{justify-items:stretch}.share-option{justify-content:flex-start!important;text-align:left!important}.share-option>span{flex:0 0 auto!important;text-align:left!important}.share-option svg,.share-option .share-generic{margin:0!important}
.video-season-card{border:1px solid #4a2358;border-radius:15px;background:linear-gradient(110deg,#0b0b0b,#0c0712);overflow:hidden}
.video-season-card>summary{display:grid!important;grid-template-columns:154px minmax(330px,1fr) 92px 82px 84px 150px 50px 50px!important;grid-template-rows:auto auto!important;gap:10px 16px!important;align-items:start!important;padding:13px 14px 16px!important;cursor:pointer}
.video-season-card .season-public-thumb{width:154px!important;aspect-ratio:1/1!important;grid-row:1/3;border-radius:10px;background-size:cover!important}
.season-main{min-width:0}.season-main b{font-size:18px!important}.season-main>small{margin-top:3px!important}.season-description-preview{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;color:#bcaec2;font-size:12px;line-height:1.35;margin-top:10px;max-width:650px}.season-more{display:block;color:#ff39c7;font-style:normal;font-size:12px;font-weight:800;margin-top:2px}.video-season-card[open] .season-description-preview,.video-season-card[open] .season-more{display:none}
.season-time,.season-percent,.season-listens,.season-rating{display:grid!important;justify-items:center;align-content:start;gap:2px;text-align:center!important;color:#f4eafa!important;font-size:13px}.season-time strong,.season-percent strong,.season-listens strong{font-size:13px}.season-time small,.season-percent small,.season-listens small,.season-rating small{font-size:10px;color:#a99caf!important}.season-percent strong{color:#ff42cf}.season-rating .rating-star{font-size:16px}.season-rating strong{font-size:11px}
.season-share{width:46px!important;height:46px!important;padding:0!important;border-radius:50%!important}.season-toggle{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;border:1px solid #55405e;background:#0b0b0b;color:#fff;align-self:start}.season-chevron{font-size:21px!important;color:#fff!important;line-height:1}.video-season-card[open] .season-chevron{transform:rotate(180deg)}
.season-progress{position:static!important;grid-column:2/7!important;grid-row:2!important;width:100%!important;height:7px!important;align-self:end;margin-top:auto}.video-season-card[open]>.season-full-description{display:block;padding:0 18px 14px 184px;color:#c8bdce;line-height:1.5;font-size:13px}.video-season-card:not([open])>.season-full-description{display:none}
.video-season-card>.episode-list{padding:0 14px 14px!important}.video-episode{margin-top:0!important;border-radius:0!important;border-left:1px solid #35203e!important;border-right:1px solid #35203e!important}.video-episode:first-child{border-radius:11px 11px 0 0!important}.video-episode:last-child{border-radius:0 0 11px 11px!important}.video-episode:only-child{border-radius:11px!important}.video-episode>summary{grid-template-columns:42px 86px minmax(180px,1fr) 72px 120px minmax(120px,180px) 72px 46px 46px 40px!important;padding:8px 12px!important}.episode-copy small{display:none!important}.episode-expanded{padding:14px 16px 16px 74px!important}.episode-expanded .episode-full-description{margin:0!important;color:#c7bacb;line-height:1.5}.episode-expanded .episode-action,.episode-expanded .episode-rating-box{display:none!important}
@media(max-width:1200px){.video-season-card>summary{grid-template-columns:120px minmax(250px,1fr) 78px 70px 72px 120px 44px 44px!important}.video-season-card .season-public-thumb{width:120px!important}.video-season-card[open]>.season-full-description{padding-left:150px}.season-rating .rating-star{font-size:13px}}
@media(max-width:760px){.video-season-card>summary{grid-template-columns:76px minmax(0,1fr) 42px 42px!important;grid-template-rows:auto auto auto!important}.video-season-card .season-public-thumb{width:76px!important;grid-row:1/2}.season-main{grid-column:2}.season-time,.season-percent,.season-listens,.season-rating{grid-row:2;grid-column:auto!important;justify-items:start;text-align:left!important}.season-share{grid-column:3;grid-row:1}.season-toggle{grid-column:4;grid-row:1}.season-progress{grid-column:1/-1!important;grid-row:3!important}.video-season-card[open]>.season-full-description{padding:0 12px 12px}.video-episode>summary{grid-template-columns:30px 62px minmax(0,1fr) 40px!important}.episode-duration,.episode-listens,.episode-progress,.episode-percent{grid-column:3!important}.episode-expanded{padding:12px!important}}
.video-episode>summary{grid-template-columns:42px 86px minmax(180px,1fr) 70px minmax(90px,150px) 50px minmax(120px,170px) 80px 46px 46px 46px 40px!important}.episode-rating-compact{display:grid;justify-items:center;white-space:nowrap}.episode-rating-compact .rating-star{font-size:13px}.episode-rating-compact strong{font-size:10px}.episode-rating-compact small,.episode-listens small{display:block;color:#a99caf;font-size:9px}.episode-listens{text-align:center!important}.compact-play{width:42px!important;height:42px!important;min-width:42px!important;border-radius:50%!important;padding:0!important}.compact-restart{width:40px!important;height:40px!important;font-size:21px!important}.episode-share{width:40px!important;height:40px!important;flex-basis:40px!important}.episode-toggle{width:38px;height:38px;border:1px solid #55405e;border-radius:50%;display:grid;place-items:center}.video-episode[open] .episode-chevron{transform:rotate(180deg)}
@media(max-width:1200px){.video-episode>summary{grid-template-columns:34px 70px minmax(150px,1fr) 60px 100px 45px 120px 70px 40px 40px 40px 36px!important}}
\n\n/* v1.3.2 build56 — strict validated video layout, no duplicate episode player */\n@media(min-width:761px){\n  .video-right-sticky{position:static!important;top:auto!important;background:transparent!important;padding-bottom:0!important}\n}\n.episode-expanded{padding:12px 16px 14px 74px!important;background:transparent!important}\n.episode-expanded .episode-full-description{margin:0!important;color:#c7bacb!important;line-height:1.48!important;font-size:13px!important}\n.episode-expanded .episode-action,.episode-expanded .episode-rating-box,.episode-expanded audio,.episode-expanded .progress-row,.episode-expanded .player,.episode-expanded .volume{display:none!important}\n@media(min-width:1201px) and (max-width:1700px){\n  .video-showcase.has-context-panel{grid-template-columns:minmax(300px,360px) minmax(760px,1fr)!important;gap:24px!important;padding-right:24px!important;overflow:visible!important}\n  .video-showcase.has-context-panel .video-context-resizer{display:none!important}\n  .video-showcase.has-context-panel .video-context-panel{grid-column:2!important;position:static!important;width:100%!important;min-width:0!important;height:auto!important;padding:0 0 120px!important}\n}\n
/* v1.3.3 build57 — restore normal page scroll and validated video proportions */
@media(min-width:761px){
  .video-showcase,.video-showcase.has-context-panel{
    height:auto!important;min-height:0!important;overflow:visible!important;align-items:start!important;
  }
  .video-info,.video-seasons{
    height:auto!important;max-height:none!important;overflow:visible!important;overscroll-behavior:auto!important;
  }
  .video-seasons{position:relative!important;min-width:0!important;padding-right:0!important}
  .video-right-sticky{position:static!important;inset:auto!important;z-index:auto!important;background:transparent!important;padding-bottom:0!important}
}
@media(min-width:761px) and (max-width:1700px){
  .video-showcase.has-context-panel{
    grid-template-columns:minmax(300px,360px) minmax(0,1fr)!important;
    gap:28px!important;padding-left:max(3vw,28px)!important;padding-right:max(3vw,28px)!important;
  }
  .video-showcase.has-context-panel .video-context-resizer{display:none!important}
  .video-showcase.has-context-panel .video-context-panel{
    grid-column:1/-1!important;position:static!important;width:100%!important;min-width:0!important;height:auto!important;
    padding:0 0 120px!important;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))!important;
  }
  .video-season-card>summary{
    grid-template-columns:120px minmax(250px,1fr) 72px 68px 72px 118px 46px 46px!important;
    gap:9px 10px!important;padding:12px 12px 15px!important;
  }
  .video-season-card .season-public-thumb{width:120px!important}
  .season-progress{grid-column:2/7!important}
  .video-season-card[open]>.season-full-description{padding-left:142px!important}
  .video-episode>summary{
    grid-template-columns:30px 66px minmax(130px,1fr) 58px minmax(80px,120px) 42px 104px 60px 38px 38px 38px 34px!important;
    gap:7px!important;padding:8px 9px!important;
  }
  .video-episode .episode-thumb{width:66px!important}
  .compact-play{width:38px!important;height:38px!important;min-width:38px!important}
  .compact-restart,.episode-share{width:36px!important;height:36px!important;min-width:36px!important;flex-basis:36px!important}
  .episode-toggle{width:34px!important;height:34px!important}
}


/* v1.3.4 build58 — verified video scroll + expanded episode grid repair */
@media(min-width:761px){
  /* The video page uses the document scroll only. Banner/tabs must never pin. */
  .video-showcase,.video-showcase.has-context-panel{
    height:auto!important;max-height:none!important;min-height:0!important;
    overflow:visible!important;align-items:start!important;
  }
  .video-info,.video-seasons{
    height:auto!important;max-height:none!important;min-height:0!important;
    overflow:visible!important;overscroll-behavior:auto!important;
  }
  .video-right-sticky,.video-seasons .video-right-sticky,
  .video-seasons.has-banner .video-right-sticky,.video-seasons.no-banner .video-right-sticky{
    position:static!important;top:auto!important;inset:auto!important;
    height:auto!important;max-height:none!important;overflow:visible!important;
    z-index:auto!important;background:transparent!important;transform:none!important;
  }
  .video-banner,.video-tabs{position:static!important;top:auto!important;transform:none!important}
}
/* Details used to inherit an old display:grid rule: when opened its description
   became another grid cell and collapsed to a few characters wide. */
.video-episode{display:block!important;min-width:0!important;width:100%!important}
.video-episode>summary{width:100%!important;min-width:0!important}
.video-episode>.episode-expanded{
  display:block!important;width:100%!important;min-width:0!important;max-width:none!important;
  grid-column:1/-1!important;clear:both!important;padding:14px 16px 16px 74px!important;
  border-top:1px solid #32183b!important;background:transparent!important;
}
.video-episode>.episode-expanded .episode-full-description{
  display:block!important;width:100%!important;max-width:none!important;min-width:0!important;
  white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important;
  margin:0!important;color:#c7bacb!important;line-height:1.5!important;font-size:13px!important;
}
.season-percent{display:grid!important;grid-template-columns:22px auto!important;grid-template-rows:auto auto!important;column-gap:5px!important;align-items:center!important;justify-content:center!important;text-align:left!important;color:#ff47ce!important}
.season-percent-icon{grid-row:1/3;width:20px;height:20px;fill:currentColor;filter:drop-shadow(0 0 5px rgba(255,71,206,.22))}
.season-percent strong{grid-column:2;line-height:1!important}.season-percent small{grid-column:2;line-height:1!important;color:#a99caf!important;font-size:9px!important;margin-top:2px!important}
@media(max-width:760px){
 .video-episode>.episode-expanded{padding:12px!important}
 .season-percent{justify-content:start!important}
}


/* v1.3.5 build59 — restore future availability dates */
.availability-date{display:flex;align-items:center;gap:7px;margin-top:6px;color:#ff47ce;min-width:0}
.availability-date .availability-calendar{font-size:14px;line-height:1;opacity:.95}
.availability-date>span:last-child{display:flex;align-items:baseline;gap:5px;min-width:0;flex-wrap:wrap}
.availability-date small{display:inline!important;margin:0!important;color:#b9aabd!important;font-size:10px!important;line-height:1.2!important}
.availability-date strong{font-size:11px;line-height:1.2;color:#ff47ce;white-space:normal}
.episode-copy .episode-availability{margin-top:4px}
.video-episode.locked .episode-availability{opacity:1!important}
@media(max-width:760px){.availability-date>span:last-child{display:block}.availability-date strong{display:block;margin-top:2px}}
\n/* v1.3.6 build60 — notification bells inline with future availability */
.notify-bell{position:relative;display:inline-grid;place-items:center;width:30px;height:30px;min-width:30px;padding:0;margin-left:6px;border:0;background:transparent;color:#ff47ce;cursor:pointer;border-radius:50%;vertical-align:middle;transition:background .15s ease,color .15s ease,transform .15s ease}
.notify-bell svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.notify-bell:hover,.notify-bell:focus-visible{background:#2c1234;transform:translateY(-1px);outline:none}
.notify-bell.is-active{background:#ff2f45;color:#0b0b0b;box-shadow:0 0 16px rgba(255,43,194,.28)}
.notify-bell::after{content:attr(data-tooltip);position:absolute;left:50%;top:calc(100% + 7px);transform:translateX(-50%) translateY(-2px);z-index:40;background:#2b2630;color:#fff;border:1px solid #453a4b;border-radius:7px;padding:6px 9px;font-size:11px;font-weight:600;line-height:1;white-space:nowrap;opacity:0;pointer-events:none;transition:.15s ease}
.notify-bell:hover::after,.notify-bell:focus-visible::after{opacity:1;transform:translateX(-50%) translateY(0)}
.availability-date{overflow:visible}.availability-date>span:last-of-type{min-width:0}
.season-main .availability-date{width:max-content;max-width:100%}
.episode-copy .episode-availability{width:max-content;max-width:100%}
.notify-content-btn.season-notify{display:none!important}
@media(max-width:760px){.notify-bell{width:28px;height:28px;min-width:28px;margin-left:3px}.notify-bell svg{width:19px;height:19px}.notify-bell::after{display:none}}
\n/* v1.3.7 build61 — integrated notification bell UX */
.availability-date{display:flex!important;align-items:center!important;gap:7px!important;margin-top:6px!important;color:#ff47ce!important;overflow:visible!important;width:max-content!important;max-width:100%!important}
.availability-date .availability-calendar{display:none!important}
.availability-date>span:not(.notify-bell){display:contents!important}
.availability-date small{display:none!important}
.availability-date strong{font-size:11px!important;line-height:1.2!important;color:#ff47ce!important;white-space:normal!important;font-weight:800!important}
.notify-bell{position:relative!important;display:inline-grid!important;place-items:center!important;width:20px!important;height:20px!important;min-width:20px!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;color:#ff47ce!important;cursor:pointer!important;border-radius:4px!important;vertical-align:middle!important;box-shadow:none!important;transform:none!important;transition:color .15s ease,filter .15s ease,transform .15s ease!important}
.notify-bell svg{width:18px!important;height:18px!important;fill:transparent!important;stroke:currentColor!important;stroke-width:1.9!important;stroke-linecap:round!important;stroke-linejoin:round!important;transition:fill .15s ease,stroke .15s ease,filter .15s ease!important}
.notify-bell:hover,.notify-bell:focus-visible{background:transparent!important;color:#ff66d7!important;filter:drop-shadow(0 0 5px rgba(255,71,206,.35));outline:none!important;transform:translateY(-1px)!important}
.notify-bell.is-active{background:transparent!important;color:#ff47ce!important;box-shadow:none!important;filter:drop-shadow(0 0 6px rgba(255,71,206,.45))!important}
.notify-bell.is-active svg{fill:currentColor!important;stroke:currentColor!important}
.notify-bell::after{content:attr(data-tooltip)!important;position:absolute!important;left:50%!important;top:calc(100% + 7px)!important;transform:translateX(-50%) translateY(-2px)!important;z-index:80!important;background:#2b2630!important;color:#fff!important;border:1px solid #453a4b!important;border-radius:7px!important;padding:6px 9px!important;font-size:11px!important;font-weight:600!important;line-height:1!important;white-space:nowrap!important;opacity:0!important;pointer-events:none!important;transition:.15s ease!important}
.notify-bell:hover::after,.notify-bell:focus-visible::after{opacity:1!important;transform:translateX(-50%) translateY(0)!important}
.episode-copy .episode-availability{margin-top:4px!important}
@media(max-width:760px){.notify-bell{width:18px!important;height:18px!important;min-width:18px!important}.notify-bell svg{width:17px!important;height:17px!important}.notify-bell::after{display:none!important}.availability-date strong{font-size:10px!important}}

/* v1.3.8 build62 — tooltip unclipped */
.video-season-card,.video-episode,.video-episode>summary,.episode-list,.season-main,.episode-copy{overflow:visible!important}
.notify-bell::after{z-index:9999!important;top:auto!important;bottom:calc(100% + 7px)!important}

/* v1.3.9 build63 — statistics filters and caller IP */
.stats-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:16px 0}.stats-filters input,.stats-filters select{min-width:0}.log-ip{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#c7b2d0;white-space:nowrap}.log-line{grid-template-columns:170px 70px 145px minmax(260px,1fr) 60px 80px!important}@media(max-width:900px){.log-line{grid-template-columns:1fr!important}.log-ip{white-space:normal}}

/* Build 65 - BackOffice user follow tree */
.follow-tree-overlay{position:fixed;inset:0;z-index:10000;background:rgba(10,5,15,.76);display:flex;align-items:center;justify-content:center;padding:24px;backdrop-filter:blur(5px)}
.follow-tree-dialog{width:min(900px,96vw);max-height:88vh;background:#111111;border:1px solid #4a3157;border-radius:20px;box-shadow:0 24px 70px rgba(0,0,0,.5);display:flex;flex-direction:column;overflow:hidden}
.follow-tree-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:22px 24px 14px;border-bottom:1px solid rgba(255,255,255,.08)}
.follow-tree-head h2{margin:0 0 5px}.follow-tree-head p{margin:0;color:#a99ab1}.follow-tree-close{appearance:none;border:0;background:transparent;color:#fff;font-size:30px;line-height:1;cursor:pointer;padding:0 4px}
.follow-tree-search{padding:14px 24px;border-bottom:1px solid rgba(255,255,255,.07)}.follow-tree-search input{width:100%}
.follow-tree-body{overflow:auto;padding:14px 20px 18px}.follow-tree-node{margin:2px 0}.follow-tree-node.search-hide{display:none}
.follow-tree-line{min-height:40px;display:flex;align-items:center;gap:7px;border-radius:10px;padding:3px 8px}.follow-tree-line:hover{background:rgba(255,255,255,.035)}
.follow-tree-toggle,.follow-tree-spacer{width:27px;min-width:27px;height:27px}.follow-tree-toggle{border:0;border-radius:7px;background:rgba(255,255,255,.07);color:#dacde0;cursor:pointer;font-size:19px;display:grid;place-items:center}.follow-tree-spacer{display:block}
.follow-tree-children{margin-left:22px;padding-left:15px;border-left:1px solid rgba(217,70,239,.23)}.follow-tree-children.collapsed{display:none}
.follow-tree-check{display:flex;align-items:center;gap:9px;min-width:0;cursor:pointer;flex:1}.follow-tree-check input{width:17px;height:17px;accent-color:#d946ef;flex:0 0 auto}.follow-tree-check span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.follow-tree-check small{margin-left:auto;color:#8f7e99;font-size:11px}.follow-tree-check.disabled{opacity:.48;cursor:not-allowed}
.follow-tree-node[data-depth="0"]>.follow-tree-line .follow-tree-check span,.follow-tree-node[data-depth="0"]>.follow-tree-line>b{font-weight:800;color:#fff}.follow-tree-node[data-depth="1"]>.follow-tree-line .follow-tree-check span{font-weight:700;color:#ecdff0}.follow-tree-node[data-depth="2"]>.follow-tree-line .follow-tree-check span{color:#d7c5dd}
.follow-tree-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 24px;border-top:1px solid rgba(255,255,255,.08);background:#130d1c}.follow-tree-foot>div{display:flex;gap:9px}
@media(max-width:720px){.follow-tree-overlay{padding:8px}.follow-tree-dialog{max-height:94vh}.follow-tree-head,.follow-tree-search,.follow-tree-foot{padding-left:15px;padding-right:15px}.follow-tree-body{padding-left:8px;padding-right:8px}.follow-tree-children{margin-left:15px;padding-left:8px}.follow-tree-foot{align-items:stretch;flex-direction:column}.follow-tree-foot>div{justify-content:flex-end}}

/* Build 66 — inline season editor + compact date/time picker */
.season-admin-wrap,.episode-admin-wrap{display:grid;gap:0}.season-inline-slot:empty,.episode-inline-slot:empty{display:none}.season-inline-slot .inline-editor,.episode-inline-slot .inline-editor{margin:10px 0 4px;border-color:#6a3879;box-shadow:0 14px 34px #0004}.compact-datetime{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:stretch;border:1px solid #432126;border-radius:9px;background:#0d0d0d;overflow:hidden}.compact-datetime input{border:0!important;border-radius:0!important;background:transparent!important;min-width:0}.datetime-open{border:0;border-left:1px solid #432126;background:#171010;color:#f1dff1;font-size:18px;cursor:pointer}.datetime-open:hover{background:#2a1235;color:#ff42c3}.compact-datetime:focus-within{border-color:#a74aa6;box-shadow:0 0 0 2px #a74aa622}.compact-datetime input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.75}

/* Build 67 — compact brand column: docked mini-player can sit immediately after the real logo width. */
@media(min-width:1000px){
  .topbar{grid-template-columns:max-content 72px minmax(500px,1fr) minmax(220px,400px) max-content!important;column-gap:10px!important}
  .brand{display:inline-flex!important;flex-direction:column;align-items:flex-start;width:max-content!important;max-width:max-content!important;min-width:0!important}
  .brand img{display:block!important;width:160px!important;max-width:160px!important}
  .header-player{margin-left:0!important}
}
@media(min-width:1700px){.topbar{grid-template-columns:max-content 72px minmax(560px,1fr) minmax(280px,430px) max-content!important}}

/* v1.4.5 build69 — configuration mail & backup polish */
.mail-config-form{display:grid;gap:16px}.mail-card{padding:22px 24px}.mail-card-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}.mail-card-head h2,.backup-hero h2{margin:0 0 5px}.mail-card-head p,.backup-hero p{margin:0}.mail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px}.mail-grid-3{grid-template-columns:minmax(0,1.5fr) minmax(120px,.45fr) minmax(210px,.8fr)}.mail-save-row{display:flex;justify-content:flex-end;padding:0 2px 6px}.mail-save-row .btn{min-width:240px}.mail-help{align-self:end}.mail-hint{min-height:42px;display:flex;align-items:center;padding:10px 12px;border:1px solid #3b2145;border-radius:10px;background:#100813;color:var(--muted);font-size:12px;line-height:1.35}.mail-test-row{display:grid;grid-template-columns:minmax(280px,1fr) auto;gap:14px;align-items:end}.mail-test-row .field{margin:0}.mail-test-row .btn{height:42px;white-space:nowrap}.backup-hero{display:flex;justify-content:space-between;align-items:center;gap:24px}.backup-hero>div{max-width:850px}.backup-hero .btn{flex:0 0 auto}.backup-import-row{display:grid;grid-template-columns:minmax(280px,1fr) auto;gap:14px;align-items:center}.backup-import-row input[type=file]{width:100%;padding:9px;border:1px solid #472351;border-radius:10px;background:#0d0d0d;color:#fff}.backup-account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;margin:18px 0 24px}.backup-key-field{grid-column:1/-1}.backup-key-picker{display:flex;align-items:center;gap:12px;min-height:42px}.backup-account-submit{grid-column:1/-1;justify-content:flex-end}.backup-account-submit .btn{min-width:220px}
@media(max-width:900px){.mail-grid,.mail-grid-3,.backup-account-grid{grid-template-columns:1fr}.mail-test-row,.backup-import-row{grid-template-columns:1fr}.mail-save-row .btn,.mail-test-row .btn,.backup-import-row .btn{width:100%}.backup-hero{align-items:stretch;flex-direction:column}.backup-hero .btn{width:100%}.backup-key-field,.backup-account-submit{grid-column:auto}}

/* Build 71 — gestion Evènements calquée sur Vidéos */
.studio-event-panel{margin-top:18px}.studio-event-logo{aspect-ratio:16/9;width:82px}.creator-event-thumb{display:inline-block;width:72px;height:44px;border-radius:8px;background:#24132d center/cover no-repeat;border:1px solid #442551}.event-preview{min-height:220px;background-position:center;background-size:cover}.studio-event-panel .table td{vertical-align:middle}

/* v1.4.8 build72 — Creator Studio header + inline season editor */
@media(min-width:981px){.studio-topbar{grid-template-columns:max-content minmax(420px,1fr) max-content!important}.studio-head-actions{justify-self:end!important;margin-left:auto!important}.studio-site-link{order:2}.studio-user-badge{order:1}}
.season-admin-wrap{border:1px solid #31203a;border-radius:12px;background:#0b0b0b;overflow:hidden}.season-admin-wrap .season-admin-card{border:0;border-radius:0;background:transparent}.season-admin-wrap .season-inline-slot .inline-editor{margin:0;border-width:1px 0 0;border-radius:0;background:#0d0712}.season-admin-wrap:has(.season-inline-slot:not(:empty)) .season-admin-card{border-bottom-left-radius:0;border-bottom-right-radius:0}

/* v1.4.9 build73 — restore episode star voting in compact video rows */
.episode-rating-compact .rating-stars.interactive{position:relative;z-index:3;pointer-events:auto}
.episode-rating-compact button.rating-star{pointer-events:auto;touch-action:manipulation}
.episode-rating-compact button.rating-star:focus-visible{outline:2px solid var(--pink2);outline-offset:2px;border-radius:4px}

/* v1.4.10 build74 — mobile landscape fullscreen player: one viewport, no page scroll */
@media (orientation:landscape) and (max-height:600px) and (max-width:1200px){
  body.full-player-open{overflow:hidden!important;height:100dvh!important}
  .full-player{inset:0!important;width:100vw!important;height:100dvh!important;min-height:0!important;overflow:hidden!important;overscroll-behavior:none!important}
  .full-player-inner{
    width:100%!important;height:100dvh!important;min-height:0!important;box-sizing:border-box!important;
    display:grid!important;grid-template-columns:minmax(180px,30vw) minmax(0,1fr) minmax(190px,27vw)!important;
    grid-template-rows:1fr!important;gap:clamp(14px,2.2vw,28px)!important;align-items:center!important;
    padding:max(14px,env(safe-area-inset-top)) max(52px,calc(env(safe-area-inset-right) + 18px)) max(14px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left))!important;
    overflow:hidden!important;
  }
  .full-player-art{width:100%!important;max-width:none!important;max-height:72dvh!important;aspect-ratio:16/9!important;border-radius:16px!important;align-self:center!important}
  .full-player-main{min-width:0!important;width:100%!important;text-align:left!important;align-self:center!important;overflow:hidden!important}
  .full-player-main .eyebrow{font-size:clamp(10px,1.3vw,14px)!important;margin-bottom:4px!important}
  .full-player-main h1{font-size:clamp(24px,4vw,46px)!important;line-height:1.05!important;margin:4px 0 8px!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:3!important;overflow:hidden!important;overflow-wrap:anywhere!important}
  #fullPlayerEpisode{font-size:clamp(12px,1.7vw,18px)!important;line-height:1.25!important;margin:0 0 6px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  #fullPlayerCreator{font-size:12px!important;max-height:26px!important;overflow:hidden!important}
  .full-player-controls{gap:10px!important;margin:10px 0 8px!important;justify-content:flex-start!important}
  .full-player-controls .pause{width:52px!important;height:52px!important;min-width:52px!important;font-size:21px!important}
  .full-player-controls .player-icon{width:42px!important;height:42px!important;min-width:42px!important}
  .full-progress{display:grid!important;grid-template-columns:40px minmax(0,1fr) 40px!important;gap:7px!important;max-width:none!important;width:100%!important;font-size:11px!important}
  .full-progress input{width:100%!important;min-width:0!important}
  .queue-panel{align-self:center!important;padding-top:0!important;min-width:0!important;max-height:78dvh!important;overflow:hidden!important}
  .queue-panel h2{font-size:clamp(18px,2.4vw,28px)!important;margin:0 0 8px!important}
  #fullQueue{overflow:hidden!important;max-height:calc(78dvh - 42px)!important}
  .queue-item{grid-template-columns:54px minmax(0,1fr)!important;gap:9px!important;padding:8px 0!important}
  .queue-thumb{width:54px!important;border-radius:7px!important}
  .queue-item b{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important;font-size:clamp(10px,1.35vw,14px)!important;line-height:1.15!important}
  .queue-item small{font-size:10px!important;margin-top:3px!important}
  #fullQueue .queue-item:nth-of-type(n+4){display:none!important}
  .full-player-close{top:max(8px,env(safe-area-inset-top))!important;right:max(8px,env(safe-area-inset-right))!important;width:40px!important;height:40px!important;font-size:25px!important}
}

/* v1.5.0 build75 — resources + iOS safe area/player refinements */
html,body{background:#09060d!important}html{min-height:100%;min-height:100dvh}.resource-toolbar{justify-content:flex-start!important;margin-bottom:14px}.resource-toolbar input{min-width:280px;flex:1}.resource-thumb{width:88px;height:54px;object-fit:cover;border-radius:8px;border:1px solid #3b2047}.resource-replace{cursor:pointer}.resource-table code{font-size:11px;white-space:normal;overflow-wrap:anywhere}
body.full-player-open{background:#09060d!important}.full-player{background:radial-gradient(circle at 30% 10%,#361146,#09060d 55%)!important;padding-top:env(safe-area-inset-top);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);box-sizing:border-box}.full-player-main h1{-webkit-line-clamp:4!important}.full-progress{max-width:none!important;width:min(100%,980px)!important}
@supports(height:100dvh){.full-player{height:100dvh!important}}
@media(max-width:760px){.player{min-height:58px!important;padding:8px 10px!important}.player .thumb{width:48px!important;height:48px!important;flex-basis:48px!important}.player .now b{font-size:13px!important}.player .now small{font-size:11px!important}.player .controls button{width:38px!important;height:38px!important}.player .controls .pause{width:48px!important;height:48px!important}.player .progress-row{display:grid!important;grid-template-columns:38px minmax(0,1fr) 38px!important;gap:6px!important;font-size:10px!important}}
@media(orientation:landscape) and (max-height:600px){html,body{width:100%;height:100%;height:100dvh;overflow:hidden;background:#09060d!important}.full-player{inset:0!important;width:100%!important;height:100dvh!important;padding:calc(8px + env(safe-area-inset-top)) calc(10px + env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) calc(10px + env(safe-area-inset-left))!important}.full-player-inner{height:100%!important;min-height:0!important}.full-player-main h1{-webkit-line-clamp:4!important;font-size:clamp(22px,3.5vw,42px)!important}.full-progress{width:100%!important;max-width:none!important;grid-template-columns:42px minmax(0,1fr) 42px!important}.full-progress input{width:100%!important}.full-player-close{top:calc(8px + env(safe-area-inset-top))!important;right:calc(8px + env(safe-area-inset-right))!important}}


/* v1.5.1 build76 — resource previews, sticky mobile player, orientation fullscreen and iOS metadata polish */
.resource-thumb-button{border:0;background:transparent;padding:0;cursor:pointer;border-radius:10px}.resource-thumb-button:focus-visible{outline:2px solid var(--pink)}
.resource-preview-overlay{position:fixed;inset:0;z-index:1000;background:rgba(5,2,9,.86);display:grid;place-items:center;padding:24px;backdrop-filter:blur(12px)}
.resource-preview-dialog{width:min(980px,96vw);max-height:92vh;overflow:hidden;background:#160c20;border:1px solid #5d2d6d;border-radius:20px;box-shadow:0 30px 90px #000b;display:flex;flex-direction:column}
.resource-preview-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:20px 22px;border-bottom:1px solid #34203e}.resource-preview-head h2{margin:0 0 4px}.resource-preview-head p{margin:0}.resource-preview-close{width:42px;height:42px;border-radius:50%;border:1px solid #633571;background:#171717;color:#fff;font-size:28px;cursor:pointer}
.resource-preview-body{padding:22px;overflow:auto}.resource-audio-player{width:100%}.resource-image-preview{display:block;max-width:100%;max-height:70vh;margin:auto;object-fit:contain;border-radius:12px;background:#09060d}.resource-preview-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.resource-preview-meta span{padding:7px 10px;border:1px solid #43262a;border-radius:999px;background:#171717;color:#d8cddd;font-size:12px}
@media(max-width:760px){
  body:not(.full-player-open):not(.player-idle) .player{position:fixed!important;top:calc(env(safe-area-inset-top) + 8px)!important;bottom:auto!important;left:10px!important;right:10px!important;width:auto!important;z-index:190!important;transform:none!important;box-shadow:0 12px 38px #000a,0 0 28px #ff2f4524!important;background:rgba(22,10,31,.96)!important;backdrop-filter:blur(22px)!important}
  body:not(.full-player-open):not(.player-idle){padding-top:82px!important}
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle){padding-top:66px!important}
  .topbar{z-index:180!important}
  body:not(.full-player-open):not(.player-idle) .topbar{margin-top:70px!important}
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .topbar{margin-top:58px!important}
}
@media(orientation:landscape) and (max-height:600px){
  .full-player-main{overflow:visible!important}
  .full-progress{width:calc(100vw - 41vw - max(18px,env(safe-area-inset-right)))!important;max-width:none!important;min-width:560px!important;position:relative!important;z-index:4!important}
  .full-progress input{width:100%!important;min-width:0!important}
}

/* v1.5.2 build77 — mobile player in document flow, landscape total time, iOS artwork refresh */
@media(max-width:760px){
  /* The mobile player is a real page component: it sits after the header and reserves its own space. */
  body:not(.full-player-open):not(.player-idle) .player{
    position:sticky!important;
    top:var(--mobile-player-top,0px)!important;
    left:auto!important;right:auto!important;bottom:auto!important;
    width:calc(100% - 20px)!important;
    margin:8px 10px 10px!important;
    z-index:19!important;
    transform:none!important;
    box-shadow:0 12px 32px #0008,0 0 22px #b325a72b!important;
    background:rgba(22,10,31,.97)!important;
    backdrop-filter:blur(22px)!important;
  }
  body:not(.full-player-open):not(.player-idle),
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle){padding-top:0!important}
  body:not(.full-player-open):not(.player-idle) .topbar,
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .topbar{margin-top:0!important}
  .topbar{z-index:20!important}
}
@media(orientation:landscape) and (max-height:600px){
  .full-progress{
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    width:calc(100vw - 40vw - 34px - env(safe-area-inset-right))!important;
    min-width:0!important;
    max-width:none!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }
  .full-progress #fullCurrent{flex:0 0 48px!important;text-align:left!important}
  .full-progress #fullProgress{flex:1 1 0!important;width:0!important;min-width:0!important;max-width:none!important}
  .full-progress #fullTotal{display:block!important;visibility:visible!important;opacity:1!important;flex:0 0 54px!important;text-align:right!important;white-space:nowrap!important}
}

/* v1.5.3 build78 — final mobile player states: bottom expanded, top in-flow sticky minimized */
@media(max-width:760px){
  /* Never show a player before an episode has actually been launched. */
  body.player-idle .player,
  body.player-idle .header-player{display:none!important}

  /* Expanded/normal mobile player: preserve the classic bottom placement. */
  body:not(.player-idle):not(.full-player-open):not(.mobile-player-minimized) .player{
    position:fixed!important;
    left:10px!important;right:10px!important;
    top:auto!important;bottom:max(10px,env(safe-area-inset-bottom))!important;
    width:auto!important;margin:0!important;
    z-index:190!important;transform:none!important;
    min-height:96px!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-rows:auto 24px!important;
    gap:6px 8px!important;
    padding:9px 10px 12px!important;
    border-radius:18px!important;
    box-shadow:0 14px 42px #000a,0 0 26px #ff2f4524!important;
  }
  body:not(.player-idle):not(.full-player-open):not(.mobile-player-minimized) .player .now{
    grid-column:1!important;grid-row:1!important;min-width:0!important;max-width:none!important
  }
  body:not(.player-idle):not(.full-player-open):not(.mobile-player-minimized) .player .controls{
    grid-column:2!important;grid-row:1!important;min-width:0!important
  }
  body:not(.player-idle):not(.full-player-open):not(.mobile-player-minimized) .player .progress-row{
    display:grid!important;position:static!important;grid-column:1/-1!important;grid-row:2!important;
    grid-template-columns:38px minmax(0,1fr) 38px!important;gap:6px!important;
    width:100%!important;align-items:center!important;font-size:10px!important
  }
  body:not(.player-idle):not(.full-player-open):not(.mobile-player-minimized) .player .player-meta{min-width:0!important;width:100%!important}
  body:not(.player-idle):not(.full-player-open):not(.mobile-player-minimized) .player-title-wrap,
  body:not(.player-idle):not(.full-player-open):not(.mobile-player-minimized) #playerEpisode{
    min-width:0!important;max-width:100%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important
  }
  body:not(.player-idle):not(.full-player-open):not(.mobile-player-minimized) .player-title-wrap.marquee #playerTitle{
    padding-left:0!important;animation:none!important;transform:none!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important
  }

  /* Reduced player: a genuine page/menu row located directly under the sticky header. */
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player{
    position:sticky!important;
    top:var(--mobile-player-top,0px)!important;
    left:auto!important;right:auto!important;bottom:auto!important;
    width:100%!important;height:64px!important;min-height:64px!important;
    margin:0!important;padding:7px 56px 7px 12px!important;
    border-left:0!important;border-right:0!important;border-radius:0!important;
    z-index:19!important;transform:none!important;
    grid-template-columns:minmax(0,1fr)!important;grid-template-rows:1fr!important;
    background:rgba(17,8,24,.985)!important;
    box-shadow:0 1px 0 #4c235c,0 10px 26px #0007!important;
    backdrop-filter:blur(18px)!important;
  }
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player .now{
    width:100%!important;max-width:100%!important;min-width:0!important;gap:10px!important
  }
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player .thumb{
    width:46px!important;height:46px!important;flex:0 0 46px!important;border-radius:7px!important
  }
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player-meta{min-width:0!important;width:100%!important;overflow:hidden!important}
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player-title-wrap,
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) #playerEpisode{
    display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;
    white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important
  }
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) #playerTitle{font-size:13px!important;max-width:100%!important}
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) #playerEpisode{font-size:11px!important;margin-top:3px!important}
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player-title-wrap.marquee #playerTitle{
    padding-left:0!important;animation:none!important;transform:none!important;overflow:hidden!important;text-overflow:ellipsis!important
  }
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-player-expand{
    display:grid!important;place-items:center!important;right:12px!important;top:14px!important;width:36px!important;height:36px!important
  }
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-progress-track{
    display:block!important;left:0!important;right:0!important;bottom:0!important;height:3px!important;border-radius:0!important
  }
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .controls,
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .volume,
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .progress-row{display:none!important}

  /* The header mini-control is a desktop-only dock; on mobile the reduced player itself is the menu. */
  .topbar .header-player{display:none!important}
}
@media(max-width:390px){
  body:not(.player-idle):not(.full-player-open):not(.mobile-player-minimized) .player{
    left:6px!important;right:6px!important;padding-left:8px!important;padding-right:8px!important
  }
  body:not(.player-idle):not(.full-player-open):not(.mobile-player-minimized) .player .thumb{width:42px!important;height:42px!important;flex-basis:42px!important}
  body:not(.player-idle):not(.full-player-open):not(.mobile-player-minimized) .player .controls-main{gap:1px!important}
  body:not(.player-idle):not(.full-player-open):not(.mobile-player-minimized) .player .controls-main .player-icon{width:28px!important;height:28px!important}
  body:not(.player-idle):not(.full-player-open):not(.mobile-player-minimized) .player #playPauseBtn{width:42px!important;height:42px!important;min-width:42px!important}
}

/* v1.6.0 build79 — validated mobile Vidéo layout + professional listening analytics */
@media(max-width:760px){
  html,body{max-width:100%;overflow-x:hidden!important}
  .video-showcase,.video-showcase.has-context-panel{display:block!important;width:100%!important;max-width:100%!important;padding:14px 14px 150px!important;box-sizing:border-box!important;overflow:visible!important}
  .video-info,.video-seasons{width:100%!important;max-width:100%!important;min-width:0!important;overflow:visible!important}
  .video-poster-wrap{width:100%!important;max-width:none!important;margin:0 auto 22px!important}
  .video-poster{width:100%!important;aspect-ratio:16/9!important;border-radius:18px!important;background-size:cover!important;background-position:center!important}
  .video-cover-overlay{position:static!important;margin-top:12px!important;display:grid!important;gap:10px!important}
  .video-poster-wrap:after{display:none!important}
  .video-cover-overlay .video-stats{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important;padding:12px 6px!important;border-radius:16px!important;background:#160c20!important}
  .video-cover-overlay .video-stats b{font-size:15px!important}.video-cover-overlay .video-stats small{font-size:9px!important;line-height:1.2!important}
  .video-cover-actions{display:grid!important;grid-template-columns:minmax(0,1fr) 74px!important;gap:10px!important}.video-cover-actions .follow{min-width:0!important}
  .video-info h1{font-size:clamp(28px,8vw,42px)!important;line-height:1.06!important;text-align:left!important;margin:18px 0 10px!important;overflow-wrap:anywhere!important}
  .video-info .video-creator-link{justify-content:flex-start!important}.video-intro{font-size:16px!important;line-height:1.55!important}.video-tags{gap:8px!important}.video-tags>*{max-width:100%!important}
  .video-banner{aspect-ratio:16/9!important;border-radius:16px!important}
  .video-season-card{width:100%!important;max-width:100%!important;margin:0 0 14px!important;border-radius:18px!important;overflow:hidden!important;background:linear-gradient(145deg,#160a1e,#0d0712)!important}
  .video-season-card>summary{display:flex!important;flex-wrap:wrap!important;align-items:flex-start!important;gap:10px!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;padding:14px!important;overflow:hidden!important}
  .video-season-card .season-public-thumb{width:84px!important;flex:0 0 84px!important;aspect-ratio:1/1!important;border-radius:12px!important;background-size:cover!important}
  .season-main{flex:1 1 calc(100% - 142px)!important;min-width:0!important}.season-main b{font-size:19px!important;line-height:1.15!important;overflow-wrap:anywhere!important}.season-main small{font-size:13px!important;margin-top:4px!important}.season-description-preview{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important;font-size:12px!important;line-height:1.35!important;margin-top:7px!important}.season-more{font-size:12px!important}
  .season-share,.season-toggle{position:static!important;flex:0 0 38px!important;width:38px!important;height:38px!important;min-width:38px!important}
  .season-time,.season-percent,.season-listens,.season-rating{flex:1 1 calc(25% - 8px)!important;min-width:68px!important;display:grid!important;justify-items:center!important;text-align:center!important;gap:2px!important;font-size:11px!important;margin-top:6px!important}.season-rating{min-width:112px!important}.season-rating .rating-stars{white-space:nowrap!important}.season-rating .rating-star{font-size:12px!important}.season-time strong,.season-percent strong,.season-listens strong,.season-rating strong{font-size:13px!important}.season-time small,.season-percent small,.season-listens small,.season-rating small{font-size:9px!important;color:#aa9caf!important}
  .season-progress{position:static!important;flex:1 0 100%!important;width:100%!important;height:7px!important;margin-top:2px!important}
  .video-season-card[open]>.season-full-description{padding:12px 14px!important;font-size:14px!important;line-height:1.5!important;border-top:1px solid #31173b!important}
  .episode-list{width:100%!important;max-width:100%!important;overflow:hidden!important}
  .video-episode{display:block!important;width:100%!important;max-width:100%!important;padding:0!important;margin:0!important;border-top:1px solid #2c1735!important;overflow:hidden!important}
  .video-episode>summary{display:grid!important;grid-template-columns:30px 70px minmax(0,1fr) 48px!important;grid-template-rows:auto auto auto auto!important;gap:8px 10px!important;align-items:center!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;padding:13px 12px!important;overflow:hidden!important}
  .episode-num{grid-column:1!important;grid-row:1!important;font-size:18px!important}.episode-thumb{grid-column:2!important;grid-row:1/3!important;width:70px!important;max-width:70px!important;aspect-ratio:16/9!important;border-radius:9px!important}.episode-copy{grid-column:3!important;grid-row:1!important;min-width:0!important}.episode-copy b{font-size:15px!important;line-height:1.2!important;white-space:normal!important;overflow-wrap:anywhere!important}.episode-copy small{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important;font-size:11px!important}
  .compact-play{grid-column:4!important;grid-row:1/3!important;width:46px!important;height:46px!important;min-width:46px!important}
  .episode-duration{grid-column:3!important;grid-row:2!important;font-size:11px!important}.episode-progress{grid-column:2/4!important;grid-row:3!important;width:100%!important;height:7px!important}.episode-percent{grid-column:4!important;grid-row:3!important;font-size:11px!important;text-align:right!important}
  .episode-rating-compact{grid-column:2!important;grid-row:4!important;justify-self:start!important;white-space:nowrap!important}.episode-listens{grid-column:3!important;grid-row:4!important;justify-self:start!important;font-size:11px!important}.compact-restart{grid-column:4!important;grid-row:4!important;width:34px!important;height:34px!important;min-width:34px!important}.episode-share{grid-column:1!important;grid-row:4!important;width:32px!important;height:32px!important;min-width:32px!important}.episode-toggle{display:none!important}
  .episode-expanded{padding:12px 14px!important}.episode-full-description{font-size:13px!important;line-height:1.5!important}

  /* Expanded player: title/meta, controls, then a full-width timeline. */
  body:not(.player-idle):not(.full-player-open):not(.mobile-player-minimized) .player{left:10px!important;right:10px!important;bottom:max(10px,env(safe-area-inset-bottom))!important;min-height:132px!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto auto!important;gap:7px!important;padding:10px 12px 12px!important;border-radius:20px!important}
  body:not(.player-idle):not(.full-player-open):not(.mobile-player-minimized) .player .now{grid-column:1!important;grid-row:1!important;width:100%!important;max-width:100%!important;display:flex!important;gap:10px!important;align-items:center!important}.player .now .thumb{width:48px!important;height:48px!important;flex:0 0 48px!important}.player-meta{min-width:0!important;overflow:hidden!important}.player-title-wrap,#playerEpisode{width:100%!important;max-width:100%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.player-title-wrap #playerTitle{font-size:13px!important}.player #playerEpisode{font-size:11px!important;margin-top:3px!important}
  body:not(.player-idle):not(.full-player-open):not(.mobile-player-minimized) .player .controls{grid-column:1!important;grid-row:2!important;width:100%!important;justify-content:center!important;gap:12px!important}.player .controls-main{justify-content:center!important;gap:8px!important}.player .controls .player-icon{width:36px!important;height:36px!important}.player .controls .pause{width:50px!important;height:50px!important;min-width:50px!important}
  body:not(.player-idle):not(.full-player-open):not(.mobile-player-minimized) .player .progress-row{grid-column:1!important;grid-row:3!important;display:grid!important;grid-template-columns:42px minmax(0,1fr) 42px!important;width:100%!important;gap:8px!important;font-size:10px!important}.player .progress-row input{width:100%!important;min-width:0!important}
  body:not(.player-idle):not(.full-player-open):not(.mobile-player-minimized) .player .volume{display:none!important}

  /* Minimized mode = real top menu row and sticky during page scroll. */
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player{position:sticky!important;top:0!important;z-index:85!important;width:calc(100% + 28px)!important;margin:0 -14px 12px!important;height:66px!important;min-height:66px!important;border-radius:0!important;border-left:0!important;border-right:0!important;padding:7px 56px 7px 14px!important;background:rgba(15,7,21,.985)!important;box-shadow:0 1px 0 #4b292d,0 12px 30px #0009!important}
  body.mobile-player-minimized .mobile-player-expand{right:13px!important;top:14px!important}.mobile-progress-track{height:4px!important}.topbar{position:relative!important;z-index:90!important}
}

/* Backoffice — Statistics / Listening, FraiseTUBE visual language */
.listen-analytics-page{max-width:1500px;margin:auto}.listen-analytics-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;background:radial-gradient(circle at 15% 0,#3b1348,#150a1d 58%);padding:26px!important}.listen-analytics-hero h2{font-size:30px;margin:4px 0 5px}.eyebrow{font-size:11px;font-weight:900;letter-spacing:.15em;color:#ff48cb}.listen-export{min-height:46px}.listen-controls{padding:16px!important}.listen-periods{display:flex;gap:8px;flex-wrap:wrap}.listen-periods button{border:1px solid #4b2858;background:#180d20;color:#d9ccdf;border-radius:999px;padding:9px 14px;font-weight:800;cursor:pointer}.listen-periods button.active{background:linear-gradient(90deg,#9f35ff,#ff39bd);color:#fff;border-color:transparent}.listen-custom{display:flex;align-items:end;gap:10px;margin-top:14px;flex-wrap:wrap}.listen-custom label{display:grid;gap:6px;color:#aa9daf;font-size:12px}.listen-date-field{display:grid;grid-template-columns:minmax(210px,1fr) 42px;border:1px solid #4b2858;border-radius:10px;overflow:hidden;background:#0d0d0d}.listen-date-field input{border:0!important;background:transparent!important}.listen-date-field button{border:0;border-left:1px solid #4b2858;background:#21112b;color:#ff54ce;cursor:pointer;font-size:17px}.listen-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr)) auto;gap:10px;margin-top:14px;align-items:end}.listen-filter-grid label{display:grid;gap:6px;font-size:11px;color:#ad9fba}.listen-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px}.listen-kpi{border:1px solid #452351;border-radius:16px;background:linear-gradient(145deg,#190c22,#100715);padding:19px}.listen-kpi small,.listen-kpi span{display:block;color:#aa9caf}.listen-kpi strong{display:block;font-size:27px;margin:7px 0;color:#fff}.listen-kpi span{font-size:10px}.listen-section-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.listen-section-head h2{margin:0}.listen-section-head p{margin:4px 0 0}.listen-chart{height:300px;margin-top:18px;border:1px solid #34203f;border-radius:16px;background:linear-gradient(180deg,#090909,#15091d);padding:16px;box-sizing:border-box}.listen-chart svg{width:100%;height:235px;overflow:visible}.listen-chart-labels{display:flex;justify-content:space-between;gap:12px;font-size:10px;color:#a99caf}.listen-chart-labels b{color:#ff4acb}.listen-hierarchy{display:grid;gap:10px}.listen-tree{border:1px solid #3b2047;border-radius:13px;background:#0b0b0b;overflow:hidden}.listen-tree>summary{list-style:none;display:grid;grid-template-columns:34px minmax(220px,1fr) 130px 90px;gap:12px;align-items:center;padding:13px 15px;cursor:pointer}.listen-tree>summary::-webkit-details-marker{display:none}.listen-tree.creator>summary{background:#1a0b24}.listen-tree.video>summary{background:#150a1d}.listen-tree-children{padding:8px 10px 10px 24px;display:grid;gap:7px}.listen-episode-line{display:grid;grid-template-columns:40px minmax(220px,1fr) 130px 90px;gap:12px;text-align:left;align-items:center;padding:10px 12px;border:1px solid #34203e;border-radius:9px;background:#0d0712;color:#eee;cursor:pointer}.listen-episode-line:hover{border-color:#a541a8;background:#180b20}.listen-empty,.listen-loading{padding:32px;text-align:center;color:#a99caf}.listen-date-popover{position:fixed;z-index:1500;width:290px;padding:14px;border:1px solid #653470;border-radius:16px;background:#150a1e;box-shadow:0 24px 70px #000c}.listen-date-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.listen-date-close{border:0;background:transparent;color:#fff;font-size:25px;cursor:pointer}.listen-calendar-date{width:100%;box-sizing:border-box}.listen-time-row{display:grid;grid-template-columns:1fr 20px 1fr;gap:6px;align-items:center;text-align:center;margin:10px 0}.listen-time-row select{width:100%}.listen-date-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}
@media(max-width:1000px){.listen-filter-grid{grid-template-columns:repeat(2,1fr)}.listen-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.listen-analytics-hero{align-items:stretch;flex-direction:column}.listen-export{width:100%}.listen-filter-grid,.listen-kpis{grid-template-columns:1fr}.listen-custom{display:grid;grid-template-columns:1fr}.listen-custom>span{display:none}.listen-tree>summary,.listen-episode-line{grid-template-columns:28px minmax(0,1fr);gap:6px}.listen-tree>summary span:nth-last-child(-n+2),.listen-tree>summary small,.listen-episode-line>span:nth-last-child(2),.listen-episode-line>small{grid-column:2}.listen-tree-children{padding-left:8px}.listen-chart{height:250px}.listen-chart svg{height:185px}.listen-date-popover{left:10px!important;right:10px!important;top:auto!important;bottom:max(10px,env(safe-area-inset-bottom))!important;width:auto!important}}

/* v1.6.1 build80 — analytics polish + dedicated mobile portrait/landscape navigation */
.listen-custom[hidden]{display:none!important}
.listen-controls{border:1px solid #3b2047!important;background:linear-gradient(145deg,#150a1e,#0d0712)!important}
.listen-periods{gap:10px!important}.listen-periods button{min-height:42px;padding:10px 18px!important;font-size:14px!important;letter-spacing:.01em;box-shadow:inset 0 0 0 1px #0000}.listen-periods button:hover{border-color:#9d43b0;color:#fff}.listen-periods button.active{box-shadow:0 8px 24px #b227a42b}
.listen-custom{margin-top:16px!important;padding:16px!important;border:1px solid #43244e;border-radius:16px;background:#120819!important;display:grid!important;grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr)!important;gap:14px!important;align-items:end!important}.listen-custom>span{align-self:center;text-align:center;color:#ff4acb;font-size:20px;font-weight:900}.listen-custom label{font-size:12px!important;font-weight:800;color:#d4c5d9!important;letter-spacing:.02em}.listen-date-field{min-height:48px!important;border-radius:12px!important;background:#0c0610!important;border:1px solid #563065!important}.listen-date-field:focus-within{border-color:#ff47c8!important;box-shadow:0 0 0 3px #ff47c81c}.listen-date-field input{color:#fff!important;font-size:14px!important;padding:0 14px!important;color-scheme:dark}.listen-date-field button{width:48px!important;background:#21112b!important;color:#ff54ce!important;font-size:20px!important}.listen-date-field button:hover{background:#32143f!important}
.listen-filter-grid{padding:16px!important;border:1px solid #3d2148;border-radius:16px;background:#100716!important;grid-template-columns:repeat(4,minmax(170px,1fr)) minmax(170px,auto)!important;gap:14px!important}.listen-filter-grid label{position:relative;gap:7px!important;font-size:11px!important;font-weight:800!important;color:#c3b3c9!important}.listen-filter-grid select{appearance:none!important;-webkit-appearance:none!important;width:100%!important;min-height:46px!important;padding:0 42px 0 14px!important;border:1px solid #563065!important;border-radius:12px!important;background:linear-gradient(180deg,#1b0e24,#13091a)!important;color:#fff!important;font-size:14px!important;outline:none!important;cursor:pointer!important;background-image:linear-gradient(45deg,transparent 50%,#ff48c8 50%),linear-gradient(135deg,#ff48c8 50%,transparent 50%),linear-gradient(180deg,#1b0e24,#13091a)!important;background-position:calc(100% - 19px) 20px,calc(100% - 13px) 20px,0 0!important;background-size:6px 6px,6px 6px,100% 100%!important;background-repeat:no-repeat!important}.listen-filter-grid select:focus{border-color:#ff48c8!important;box-shadow:0 0 0 3px #ff48c819!important}.listen-filter-grid select option{background:#160a1e;color:#fff}.listen-filter-grid #listenReset{min-height:46px!important;border-radius:12px!important;border-color:#673874!important;background:#1a0b23!important;color:#fff!important;font-weight:800!important}.listen-filter-grid #listenReset:hover{border-color:#ff48c8!important;background:#2b1035!important}
.listen-date-popover{width:320px!important;padding:16px!important;border-radius:18px!important;background:linear-gradient(160deg,#1c0c27,#100714)!important;border-color:#70407d!important;box-shadow:0 28px 80px #000d!important}.listen-calendar-date,.listen-time-row select{min-height:44px!important;border:1px solid #52305e!important;border-radius:11px!important;background:#0d0712!important;color:#fff!important;padding:0 10px!important;color-scheme:dark}.listen-date-head b{font-size:16px}.listen-date-actions .btn{min-height:40px!important}
.listen-chart{height:auto!important;min-height:350px!important;padding:14px 14px 10px!important;position:relative!important}.listen-chart-canvas{position:relative!important;width:100%!important;min-height:310px!important}.listen-chart svg{display:block!important;width:100%!important;height:auto!important;min-height:300px!important;overflow:visible!important}.listen-grid-line{stroke:#402349;stroke-width:1;stroke-dasharray:5 7;opacity:.62}.listen-axis{stroke:#72507b;stroke-width:1.3}.listen-axis-text{fill:#b9a9bf;font-size:13px;font-family:system-ui,-apple-system,sans-serif}.listen-chart-point{fill:#ff49c9;stroke:#120819;stroke-width:5;cursor:pointer;opacity:.01;transition:opacity .15s,r .15s}.listen-chart-point:hover,.listen-chart-point:focus{opacity:1;r:7;outline:none}.listen-chart-tooltip{position:absolute;z-index:5;min-width:170px;max-width:230px;padding:10px 12px;border:1px solid #744081;border-radius:12px;background:#160a1ef2;color:#fff;box-shadow:0 16px 40px #000b;pointer-events:none}.listen-chart-tooltip b,.listen-chart-tooltip span{display:block}.listen-chart-tooltip b{font-size:12px}.listen-chart-tooltip span{margin-top:4px;color:#ff61d4;font-weight:800;font-size:12px}.listen-chart-summary{display:flex!important;justify-content:space-between!important;gap:12px!important;flex-wrap:wrap!important;color:#a99caf!important;font-size:11px!important;padding:2px 8px 4px}.listen-chart-summary b{color:#ff4acb}

/* Portrait mobile: strict single-column cards, aligned and readable. */
@media (max-width:760px) and (orientation:portrait){
  .video-season-card>summary{display:grid!important;grid-template-columns:78px minmax(0,1fr) 38px 38px!important;grid-template-rows:auto auto auto auto!important;gap:10px!important;padding:13px!important}
  .video-season-card .season-public-thumb{grid-column:1!important;grid-row:1!important;width:78px!important;height:78px!important;flex:none!important}.season-main{grid-column:2!important;grid-row:1!important}.season-share{grid-column:3!important;grid-row:1!important}.season-toggle{grid-column:4!important;grid-row:1!important}.season-description-preview{display:none!important}.season-more{display:none!important}
  .season-time,.season-percent,.season-listens,.season-rating{grid-row:2!important;grid-column:auto!important;min-width:0!important;margin:2px 0 0!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;text-align:left!important}.season-time{grid-column:1!important}.season-percent{grid-column:2!important}.season-listens{grid-column:3!important}.season-rating{grid-column:4!important;overflow:hidden!important}.season-rating .rating-stars{display:flex!important;gap:0!important;transform:scale(.82);transform-origin:left center}.season-rating .rating-star{font-size:12px!important}.season-progress{grid-column:1/-1!important;grid-row:3!important;margin-top:2px!important}.video-season-card[open]>.season-full-description{grid-column:1/-1!important;padding:14px!important;font-size:14px!important;line-height:1.48!important}
  .video-episode>summary{grid-template-columns:28px 64px minmax(0,1fr) 46px!important;grid-template-rows:auto auto auto auto!important;gap:8px 10px!important;padding:12px!important}.episode-num{grid-column:1!important;grid-row:1!important}.episode-thumb{grid-column:2!important;grid-row:1!important;width:64px!important}.episode-copy{grid-column:3!important;grid-row:1!important}.compact-play{grid-column:4!important;grid-row:1!important}.episode-duration{grid-column:3!important;grid-row:2!important}.episode-progress{grid-column:2/4!important;grid-row:3!important}.episode-percent{grid-column:4!important;grid-row:3!important}.episode-share{grid-column:1!important;grid-row:4!important}.episode-rating-compact{grid-column:2!important;grid-row:4!important;max-width:118px!important;overflow:hidden!important}.episode-rating-compact .rating-stars{display:flex!important;transform:scale(.82);transform-origin:left center}.episode-listens{grid-column:3!important;grid-row:4!important}.compact-restart{grid-column:4!important;grid-row:4!important}
}

/* Dedicated mobile landscape navigation and video composition. */
@media (orientation:landscape) and (max-width:950px) and (max-height:560px){
  body{padding-bottom:94px!important}
  .mobile-nav-toggle{display:none!important}.topbar{position:sticky!important;top:0!important;z-index:95!important;display:grid!important;grid-template-columns:112px minmax(0,1fr) 190px auto!important;grid-template-rows:58px!important;align-items:center!important;padding:4px 10px!important;gap:8px!important;background:#0d0712f7!important;backdrop-filter:blur(14px)!important;border-bottom:1px solid #3a1f44!important}.brand{grid-column:1!important;grid-row:1!important}.brand img{max-width:104px!important}.nav{grid-column:2!important;grid-row:1!important;display:flex!important;align-items:center!important;gap:6px!important;overflow-x:auto!important;white-space:nowrap!important;padding:0 2px!important}.nav a{display:block!important;padding:9px 10px!important;border-radius:999px!important;font-size:12px!important;color:#d8ccdc!important}.nav a:hover,.nav a.active{background:#23102d!important;color:#fff!important}.search-wrap{grid-column:3!important;grid-row:1!important;width:100%!important;min-width:0!important;margin:0!important}.search-wrap input{height:38px!important;font-size:12px!important;padding-left:12px!important}.userbox{grid-column:4!important;grid-row:1!important}.userbox .name,.cart-head{display:none!important}
  .video-showcase,.video-showcase.has-context-panel{display:grid!important;grid-template-columns:minmax(250px,34vw) minmax(0,1fr)!important;gap:20px!important;padding:16px 18px 110px!important;align-items:start!important}.video-poster-wrap{grid-column:1!important;position:sticky!important;top:74px!important;margin:0!important}.video-poster{width:100%!important;aspect-ratio:4/5!important;max-height:calc(100vh - 110px)!important;background-size:cover!important}.video-cover-overlay{position:static!important;margin-top:8px!important}.video-cover-overlay .video-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}.video-cover-actions{grid-template-columns:1fr 58px!important}.video-info,.video-seasons{grid-column:2!important;min-width:0!important}.video-info h1{font-size:clamp(26px,4.6vw,40px)!important;margin-top:0!important}.video-intro{font-size:13px!important;line-height:1.45!important}.video-banner{display:none!important}.video-season-card>summary{grid-template-columns:70px minmax(0,1fr) repeat(2,38px)!important}.video-season-card .season-public-thumb{width:70px!important}.season-description-preview{display:none!important}.season-time,.season-percent,.season-listens,.season-rating{font-size:10px!important}.video-episode>summary{grid-template-columns:28px 58px minmax(0,1fr) 44px!important}.episode-thumb{width:58px!important}
}

@media(max-width:1000px){.listen-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.listen-filter-grid #listenReset{grid-column:1/-1!important}.listen-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.listen-custom{grid-template-columns:1fr!important}.listen-custom>span{display:none!important}.listen-filter-grid{grid-template-columns:1fr!important}.listen-filter-grid #listenReset{grid-column:1!important}.listen-chart{min-height:310px!important}.listen-chart-canvas{min-height:260px!important;overflow-x:auto!important}.listen-chart svg{min-width:660px!important;height:260px!important}.listen-chart-summary{font-size:10px!important}.listen-date-popover{width:auto!important}.listen-axis-text{font-size:12px}}


/* v1.7.0 build82 — inherited reduced mobile player host, listen-volume bars, compact episode metadata */
.mobile-player-sticky-host{display:none}
.listen-chart-bar{fill:url(#listenBarGradient);cursor:pointer;opacity:.9;transition:opacity .15s,filter .15s}.listen-chart-bar:hover,.listen-chart-bar:focus{opacity:1;filter:drop-shadow(0 0 7px #ff3fbd88);outline:none}
.episode-play-meta{display:flex;align-items:center;gap:10px;min-width:0;color:#b8a9c0;white-space:nowrap}.episode-play-meta .episode-listens{font-size:inherit;text-align:left!important;color:#bcaec2}.episode-play-meta .episode-listens small{display:none!important}
@media(max-width:760px){
  .mobile-player-sticky-host.active{display:block!important;position:sticky!important;top:0!important;z-index:120!important;width:100%!important;min-height:66px!important;margin:0!important;padding:0!important;background:#090909!important;box-shadow:0 1px 0 #4b292d,0 12px 30px #0009!important;isolation:isolate}
  .mobile-player-sticky-host.active .player{position:relative!important;inset:auto!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:100%!important;max-width:none!important;margin:0!important;height:66px!important;min-height:66px!important;border-radius:0!important;border-left:0!important;border-right:0!important;padding:7px 56px 7px 14px!important;background:rgba(15,7,21,.99)!important;box-sizing:border-box!important}
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player{position:relative!important;top:auto!important;width:100%!important;margin:0!important}
  .episode-play-meta{grid-column:3!important;grid-row:2!important;gap:8px!important;font-size:11px!important}.episode-play-meta .episode-duration{grid-column:auto!important;grid-row:auto!important}.episode-play-meta .episode-listens{grid-column:auto!important;grid-row:auto!important;font-size:11px!important}
  .episode-rating-compact{grid-column:2/4!important;grid-row:4!important;max-width:none!important;overflow:visible!important}.episode-share{grid-column:1!important;grid-row:4!important}.compact-restart{grid-column:4!important;grid-row:4!important}
}


/* v1.7.0 build82 — mobile structural fix: persistent reduced player + usable landscape navigation */
@media (max-width:760px) and (orientation:portrait){
  .topbar{position:sticky!important;top:0!important;z-index:180!important;background:rgba(12,6,19,.985)!important;backdrop-filter:blur(18px)!important}
  .mobile-player-sticky-host.active{display:block!important;position:sticky!important;top:var(--mobile-header-height,74px)!important;z-index:179!important;width:100%!important;min-height:66px!important;background:#090909!important;margin:0!important;box-shadow:0 8px 24px #0008!important}
  .mobile-player-sticky-host.active .player{position:relative!important;inset:auto!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:100%!important;max-width:none!important;margin:0!important;transform:none!important;height:66px!important;min-height:66px!important;border-radius:0!important;border-left:0!important;border-right:0!important;padding:7px 56px 7px 12px!important;z-index:auto!important}
}
@media (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  body{overflow-x:hidden!important;padding-bottom:96px!important}
  .topbar{position:sticky!important;top:0!important;z-index:180!important;height:auto!important;min-height:88px!important;display:grid!important;grid-template-columns:110px minmax(0,1fr) 48px!important;grid-template-rows:44px 40px!important;gap:0 8px!important;padding:4px 10px!important;background:#0d0712fa!important;border-bottom:1px solid #40204c!important;backdrop-filter:blur(18px)!important}
  .mobile-nav-toggle{display:none!important}.brand{grid-column:1!important;grid-row:1!important;align-self:center!important}.brand img{width:100px!important;max-width:100px!important;height:38px!important}.tagline{display:none!important}
  .userbox{grid-column:3!important;grid-row:1!important;display:flex!important;justify-content:flex-end!important}.userbox .name,.studio,.cart-head{display:none!important}.avatar{width:38px!important;height:38px!important}
  .nav{grid-column:1/-1!important;grid-row:2!important;display:flex!important;gap:6px!important;align-items:center!important;overflow-x:auto!important;overflow-y:hidden!important;white-space:nowrap!important;padding:2px 0 4px!important;scrollbar-width:none!important}.nav::-webkit-scrollbar{display:none!important}.nav a{display:block!important;flex:0 0 auto!important;padding:8px 12px!important;border:1px solid #3f204c!important;border-radius:999px!important;background:#160b1e!important;color:#e0d4e5!important;font-size:12px!important;font-weight:800!important}.nav a.active{border-color:#ff3fc4!important;background:#2a1035!important;color:#fff!important}
  .search-wrap{grid-column:2!important;grid-row:1!important;width:100%!important;display:flex!important}.search-wrap .search{height:36px!important;font-size:12px!important}.search-results{top:40px!important}
  .mobile-player-sticky-host.active{position:sticky!important;top:88px!important;z-index:179!important;display:block!important;width:100%!important;background:#090909!important}.mobile-player-sticky-host.active .player{position:relative!important;inset:auto!important;width:100%!important;margin:0!important;transform:none!important;border-radius:0!important}
  .video-showcase,.video-showcase.has-context-panel{display:grid!important;grid-template-columns:minmax(180px,28vw) minmax(0,1fr)!important;gap:16px!important;padding:12px 14px 115px!important;align-items:start!important}.video-poster-wrap{grid-column:1!important;position:sticky!important;top:104px!important;margin:0!important}.video-poster{aspect-ratio:4/5!important;max-height:calc(100dvh - 130px)!important;border-radius:14px!important}.video-cover-overlay{position:static!important;margin-top:8px!important}.video-info,.video-seasons{grid-column:2!important;min-width:0!important}.video-info h1{font-size:clamp(22px,4.4vw,36px)!important}.video-intro{font-size:12px!important;line-height:1.4!important}.video-banner{display:none!important}
}

@media(max-width:760px){html,body{overflow-x:clip!important}.mobile-player-sticky-host.active{-webkit-position:sticky;position:sticky!important}.listen-chart-canvas{overflow-x:auto!important;overscroll-behavior-inline:contain!important}.listen-bar-chart svg{max-width:none!important}}


/* Build 83 — Profil / FraiseTUBETV */
.profile-page{display:grid;gap:16px}.profile-subnav{display:flex;gap:8px;flex-wrap:wrap;padding:7px;border:1px solid #3b2145;border-radius:16px;background:#130a1b}.profile-subnav button{min-height:44px;padding:10px 16px;border:1px solid transparent;border-radius:11px;background:transparent;color:#cbbbd0;font:inherit;font-weight:750;cursor:pointer}.profile-subnav button:hover{background:#21112c;color:#fff}.profile-subnav button.active{background:linear-gradient(135deg,#401146,#2b0e36);border-color:#a93ca8;color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)}.profile-tab-panel[hidden]{display:none!important}.profile-tv-panel{display:grid;gap:18px}.profile-tv-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.profile-tv-head h2{margin:3px 0 7px}.profile-tv-kicker{font-size:11px;font-weight:900;letter-spacing:.17em;color:#e852df}.profile-tv-devices{display:grid;gap:11px}.profile-tv-section-title{display:flex;align-items:center;gap:9px;color:#f4eaf6;margin-top:2px}.profile-tv-section-title span{display:inline-grid;place-items:center;min-width:25px;height:25px;border-radius:99px;background:#32143c;color:#ef9be8;font-size:12px;font-weight:900}.profile-tv-card{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:15px;align-items:center;padding:15px;border:1px solid #3b2344;border-radius:15px;background:linear-gradient(145deg,#190d21,#110916)}.profile-tv-card.is-active{border-color:#63306e}.profile-tv-card.is-revoked{opacity:.67;background:#100b14}.profile-tv-icon{display:grid;place-items:center;width:58px;height:48px;border-radius:11px;background:#26132f;border:1px solid #51305a;font-size:25px}.profile-tv-copy{min-width:0;display:grid;gap:6px}.profile-tv-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.profile-tv-title strong{font-size:17px;overflow-wrap:anywhere}.tv-status{padding:4px 8px;border-radius:99px;font-size:10px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.tv-status.online{background:#143924;border:1px solid #277f4d;color:#7ce5a5}.tv-status.revoked{background:#2a1b25;border:1px solid #57404e;color:#ad9aa8}.profile-tv-meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:4px}.profile-tv-meta span{display:grid;gap:2px;color:#c9b8ce;font-size:12px}.profile-tv-meta b{color:#826f8b;font-size:10px;text-transform:uppercase;letter-spacing:.05em}.profile-tv-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.profile-tv-history{margin-top:7px;border-top:1px solid #321c39;padding-top:12px}.profile-tv-history summary{cursor:pointer;color:#bca8c5;font-weight:750;margin-bottom:10px}.profile-tv-history .profile-tv-card{margin-top:9px}.profile-tv-empty{display:grid;gap:6px;padding:28px 18px;text-align:center;border:1px dashed #493052;border-radius:15px;color:#d8cbdc}.profile-tv-empty span{color:#97869f;font-size:13px}.tv-confirm{text-align:center;display:grid;gap:15px}.tv-confirm-icon{font-size:46px}.tv-confirm p{line-height:1.55;color:#d9cddd}.tv-confirm-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
@media(max-width:700px){.profile-subnav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.profile-subnav button{padding:8px 6px;font-size:12px}.profile-tv-head{display:grid}.profile-tv-head .btn{width:100%}.profile-tv-card{grid-template-columns:48px minmax(0,1fr)}.profile-tv-icon{width:48px;height:42px;font-size:21px}.profile-tv-actions{grid-column:1/-1;justify-content:stretch}.profile-tv-actions .btn{flex:1}.profile-tv-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px}.profile-tv-title strong{font-size:15px}}


/* v1.7.2 build84 — desktop-only episode progress layout + player dock transitions */
@media(min-width:901px){
  .video-episode>summary{
    grid-template-columns:42px 86px minmax(180px,1fr) minmax(150px,220px) minmax(120px,170px) 46px 46px 46px 40px!important;
    grid-template-rows:auto 8px!important;
    column-gap:12px!important;
    row-gap:9px!important;
    align-items:center!important;
    padding:10px 12px 12px!important;
  }
  .video-episode>summary>.episode-num{grid-column:1!important;grid-row:1!important}
  .video-episode>summary>.episode-thumb{grid-column:2!important;grid-row:1!important}
  .video-episode>summary>.episode-copy{grid-column:3!important;grid-row:1!important;min-width:0!important}
  .video-episode>summary>.episode-play-meta{grid-column:4!important;grid-row:1!important;justify-self:start!important;min-width:0!important}
  .video-episode>summary>.episode-rating-compact{grid-column:5!important;grid-row:1!important}
  .video-episode>summary>.compact-play{grid-column:6!important;grid-row:1!important}
  .video-episode>summary>.compact-restart{grid-column:7!important;grid-row:1!important}
  .video-episode>summary>.episode-share{grid-column:8!important;grid-row:1!important}
  .video-episode>summary>.episode-toggle{grid-column:9!important;grid-row:1!important}
  .video-episode>summary>.episode-progress{grid-column:3/5!important;grid-row:2!important;align-self:center!important;width:100%!important;height:7px!important;margin:0!important}
  .video-episode>summary>.episode-percent{grid-column:5!important;grid-row:2!important;justify-self:center!important;align-self:center!important;font-size:11px!important;line-height:1!important}
}
@media(min-width:761px){
  #headerExpand{position:relative!important;z-index:12!important;pointer-events:auto!important;touch-action:manipulation}
  body.player-transition-docking .header-player.active{animation:desktopMiniPlayerIn .22s ease-out both!important}
  body.player-transition-undocking:not(.player-docked) .player{animation:desktopFullPlayerIn .24s ease-out both!important}
  @keyframes desktopMiniPlayerIn{from{opacity:.35;transform:translateY(4px) scale(.96)}to{opacity:1;transform:none}}
  @keyframes desktopFullPlayerIn{from{opacity:.35;transform:translateX(-50%) translateY(8px) scale(.985)}to{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}
}
@media(prefers-reduced-motion:reduce) and (min-width:761px){
  body.player-transition-docking .header-player.active,body.player-transition-undocking:not(.player-docked) .player{animation:none!important}
}

/* v1.8.0 build85 — functional mobile fixes, collapsible search and featured carousel */
.hero-carousel-enter .hero-content{animation:sagacityHeroEnter .34s ease both}.hero-carousel-enter:after{animation:sagacityHeroFade .34s ease both}.hero-carousel-leave{animation:sagacityHeroLeave .24s ease both;pointer-events:none}
@keyframes sagacityHeroEnter{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}
@keyframes sagacityHeroFade{from{opacity:.35}to{opacity:1}}
@keyframes sagacityHeroLeave{from{opacity:1;transform:none}to{opacity:0;transform:translateX(-10px)}}
@media(prefers-reduced-motion:reduce){.hero-carousel-enter .hero-content,.hero-carousel-enter:after,.hero-carousel-leave{animation:none!important}}
.mobile-search-toggle{display:none;border:1px solid #40262a;background:#111111;color:#fff;border-radius:50%;width:40px;height:40px;place-items:center;font-size:22px;cursor:pointer}
@media(max-width:760px){
  .mobile-search-toggle{display:grid!important;flex:0 0 40px}
  .userbox{display:flex!important;align-items:center!important;gap:8px!important}
  .search-wrap{display:none!important;grid-column:1/-1!important;grid-row:2!important;opacity:0;transform:translateY(-5px);transform-origin:top center}
  body.mobile-search-open .search-wrap{display:flex!important;animation:sagacityMobileSearchOpen .2s ease both}
  body.mobile-search-open .topbar{grid-template-rows:auto auto!important}
  .search-wrap .search{height:44px!important;padding-right:44px!important}
  @keyframes sagacityMobileSearchOpen{from{opacity:0;transform:translateY(-5px) scaleY(.96)}to{opacity:1;transform:none}}
}
/* Landscape phones: always use the reliable hamburger navigation rather than the former desktop-like strip. */
@media (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  .topbar{height:58px!important;min-height:58px!important;grid-template-columns:50px 116px minmax(0,1fr) auto!important;grid-template-rows:50px auto!important;padding:4px 10px!important;gap:0 8px!important;overflow:visible!important}
  .mobile-nav-toggle{display:flex!important;grid-column:1!important;grid-row:1!important;position:relative!important;z-index:205!important}
  .brand{grid-column:2!important;grid-row:1!important}.brand img{width:106px!important;max-width:106px!important}
  .userbox{grid-column:4!important;grid-row:1!important;display:flex!important;position:relative!important;z-index:205!important}
  .mobile-search-toggle{display:grid!important}
  .search-wrap{display:none!important;grid-column:2/5!important;grid-row:2!important;position:absolute!important;left:58px!important;right:10px!important;top:55px!important;z-index:210!important;background:#0b0b0b!important;padding:7px!important;border:1px solid #40262a!important;border-radius:12px!important;box-shadow:0 18px 45px #000b!important}
  body.mobile-search-open .search-wrap{display:flex!important}
  .nav{display:none!important;position:fixed!important;left:10px!important;right:10px!important;top:62px!important;z-index:204!important;flex-direction:column!important;align-items:stretch!important;gap:4px!important;max-height:calc(100vh - 74px)!important;overflow-y:auto!important;overflow-x:hidden!important;white-space:normal!important;padding:10px!important;background:#130a1bf7!important;border:1px solid #40262a!important;border-radius:16px!important;box-shadow:0 24px 70px #000d!important;pointer-events:auto!important}
  body.mobile-nav-open .nav{display:flex!important}
  .nav a{width:100%!important;min-height:42px!important;padding:11px 14px!important;border:0!important;border-radius:10px!important;background:transparent!important;pointer-events:auto!important}
  .nav a.active{background:#2a1035!important;color:#fff!important}
  .mobile-player-sticky-host.active{top:58px!important}
  .video-poster-wrap{top:72px!important}
}

/* v1.8.1 build86 — landscape mobile navigation bugfix + larger desktop expand hit target */
@media (orientation:landscape) and (max-width:1100px){
  /* Build74's fullscreen rule used to freeze the entire page in landscape. Keep scrolling available unless the real fullscreen player is open. */
  html{height:auto!important;min-height:100%!important;overflow-x:hidden!important;overflow-y:auto!important}
  body:not(.full-player-open){height:auto!important;min-height:100vh!important;overflow-x:hidden!important;overflow-y:auto!important}
  .topbar{position:sticky!important;top:0!important;z-index:240!important;height:58px!important;min-height:58px!important;display:grid!important;grid-template-columns:50px 116px minmax(0,1fr) auto!important;grid-template-rows:50px auto!important;align-items:center!important;padding:4px 10px!important;gap:0 8px!important;overflow:visible!important;background:rgba(12,6,19,.985)!important;backdrop-filter:blur(18px)!important}
  .mobile-nav-toggle{display:flex!important;grid-column:1!important;grid-row:1!important;align-items:center!important;justify-content:center!important;position:relative!important;z-index:252!important;width:44px!important;height:44px!important;pointer-events:auto!important;touch-action:manipulation!important}
  .brand{grid-column:2!important;grid-row:1!important;min-width:0!important}.brand img{width:106px!important;max-width:106px!important}
  .userbox{grid-column:4!important;grid-row:1!important;display:flex!important;align-items:center!important;position:relative!important;z-index:252!important}
  .mobile-search-toggle{display:grid!important}
  .search-wrap{display:none!important;position:fixed!important;left:68px!important;right:10px!important;top:62px!important;z-index:254!important;background:#0b0b0b!important;padding:7px!important;border:1px solid #40262a!important;border-radius:12px!important;box-shadow:0 18px 45px #000b!important}
  body.mobile-search-open .search-wrap{display:flex!important}
  .nav{display:none!important;position:fixed!important;left:10px!important;right:10px!important;top:64px!important;z-index:253!important;grid-column:auto!important;grid-row:auto!important;flex-direction:column!important;align-items:stretch!important;gap:4px!important;max-height:calc(100dvh - 74px)!important;overflow-y:auto!important;overflow-x:hidden!important;white-space:normal!important;padding:10px!important;background:#130a1bf7!important;border:1px solid #57305f!important;border-radius:16px!important;box-shadow:0 24px 70px #000d!important;pointer-events:auto!important;-webkit-overflow-scrolling:touch!important}
  body.mobile-nav-open .nav{display:flex!important}
  .nav a{display:flex!important;align-items:center!important;width:100%!important;min-height:44px!important;padding:11px 14px!important;border:0!important;border-radius:10px!important;background:transparent!important;pointer-events:auto!important;touch-action:manipulation!important}
  .nav a.active{background:#2a1035!important;color:#fff!important}
}
@media (min-width:761px){
  #headerExpand{width:56px!important;min-width:56px!important;height:38px!important;padding:0 14px!important;cursor:pointer!important;touch-action:manipulation}
  #headerExpand::before{content:"";position:absolute;inset:-4px}
  #headerExpand{position:relative!important}
  .player-docked .header-player.active:not(.has-details){width:94px!important;min-width:94px!important}
}

/* v1.8.2 build87 — mobile landscape presentation repair + explicit desktop expand affordance */
@media (min-width:761px){
  #headerExpand{
    width:58px!important;min-width:58px!important;height:38px!important;
    padding:0 15px!important;cursor:pointer!important;pointer-events:auto!important;
    border-left:1px solid #57305f!important;border-radius:0 999px 999px 0!important;
  }
  #headerExpand:hover{background:#32133c!important;color:#ff55cf!important;box-shadow:inset 0 0 0 1px #81428e55!important}
  #headerExpand:focus-visible{outline:2px solid #ff55cf!important;outline-offset:-3px!important}
  #headerExpand:active{transform:scale(.94)!important}
  .player-docked .header-player.active{overflow:visible!important}
  .player-docked .header-player.active:not(.has-details){width:98px!important;min-width:98px!important}
}

/* Landscape on phones is a dedicated layout, not the portrait layout squeezed sideways. */
@media (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  html,body{overflow-x:hidden!important;overflow-y:auto!important;min-height:100%!important}
  body:not(.full-player-open){height:auto!important;min-height:100%!important}

  /* Compact header. The drawer lives above page content and never captures taps while closed. */
  .topbar{
    position:sticky!important;top:0!important;z-index:500!important;
    height:56px!important;min-height:56px!important;
    grid-template-columns:48px 108px minmax(0,1fr) auto!important;
    grid-template-rows:48px!important;
    padding:4px 10px!important;gap:0 8px!important;
    overflow:visible!important;background:rgba(12,6,19,.985)!important;
  }
  .mobile-nav-toggle{grid-column:1!important;grid-row:1!important;width:44px!important;height:44px!important;z-index:505!important;cursor:pointer!important}
  .brand{grid-column:2!important;grid-row:1!important}.brand img{width:102px!important;max-width:102px!important;height:40px!important}.tagline{display:none!important}
  .header-player{display:none!important}
  .userbox{grid-column:4!important;grid-row:1!important;display:flex!important;align-items:center!important;gap:7px!important;z-index:505!important}
  .mobile-search-toggle{display:grid!important;width:40px!important;height:40px!important}
  .search-wrap{display:none!important;position:fixed!important;left:66px!important;right:12px!important;top:60px!important;z-index:520!important;padding:7px!important;background:#0b0b0b!important;border:1px solid #51285d!important;border-radius:12px!important;box-shadow:0 18px 48px #000c!important}
  body.mobile-search-open .search-wrap{display:flex!important}

  .nav{display:none!important;position:fixed!important;left:10px!important;right:10px!important;top:62px!important;z-index:515!important;
    flex-direction:row!important;align-items:center!important;gap:7px!important;
    width:auto!important;max-width:none!important;max-height:none!important;
    padding:8px!important;overflow-x:auto!important;overflow-y:hidden!important;
    white-space:nowrap!important;background:#130a1bfa!important;border:1px solid #57305f!important;
    border-radius:14px!important;box-shadow:0 20px 55px #000d!important;-webkit-overflow-scrolling:touch!important;
    pointer-events:none!important;visibility:hidden!important;opacity:0!important;transform:translateY(-6px)!important;
    transition:opacity .16s ease,transform .16s ease,visibility 0s linear .16s!important}
  body.mobile-nav-open .nav{display:flex!important;pointer-events:auto!important;visibility:visible!important;opacity:1!important;transform:none!important;transition:opacity .16s ease,transform .16s ease!important}
  .nav a{flex:0 0 auto!important;width:auto!important;min-height:40px!important;padding:9px 14px!important;border:1px solid #3d2048!important;border-radius:999px!important;background:#160c20!important;pointer-events:auto!important;touch-action:manipulation!important}
  .nav a.active{background:#32123d!important;border-color:#d337c0!important}

  /* General page rhythm in landscape. */
  .page-hero,.hero{min-height:0!important;padding:22px 28px!important}
  .page-hero h1,.hero h1{font-size:clamp(28px,5vw,42px)!important;margin:5px 0 8px!important}
  .page-hero p,.hero p{font-size:14px!important;line-height:1.4!important;max-width:780px!important}
  .page-content{width:calc(100% - 28px)!important;padding:18px 0 90px!important}
  .cards,.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
  .filterbar{margin-bottom:14px!important}

  /* Vidéo detail: two real columns. The left rail is compact and does not become a giant portrait card. */
  .video-showcase,.video-showcase.has-context-panel{
    width:100%!important;max-width:100%!important;box-sizing:border-box!important;
    display:grid!important;grid-template-columns:190px minmax(0,1fr)!important;
    grid-template-rows:auto!important;gap:16px!important;
    padding:14px 16px 100px!important;align-items:start!important;overflow:visible!important;
  }
  .video-context-resizer,.video-context-panel{display:none!important}
  .video-info{grid-column:1!important;grid-row:1!important;width:190px!important;min-width:0!important;align-self:start!important}
  .video-poster-wrap{position:static!important;top:auto!important;width:190px!important;max-width:190px!important;margin:0!important}
  .video-poster{width:190px!important;height:218px!important;max-height:218px!important;aspect-ratio:auto!important;border-radius:13px!important;background-size:cover!important;background-position:center!important}
  .video-cover-overlay{position:static!important;margin-top:7px!important}
  .video-cover-overlay .video-stats{display:grid!important;grid-template-columns:1fr 1fr!important;gap:3px!important;margin:0 0 7px!important;padding:7px!important;border-radius:11px!important}
  .video-cover-overlay .video-stats span{padding:2px!important;font-size:10px!important}.video-cover-overlay .video-stats b{font-size:11px!important}.video-cover-overlay .video-stats small{font-size:8px!important;margin-top:1px!important}
  .video-cover-actions{display:grid!important;grid-template-columns:minmax(0,1fr) 42px!important;gap:6px!important}.video-cover-actions .btn{min-height:38px!important;padding:7px 9px!important;font-size:11px!important}
  .video-info h1{font-size:22px!important;line-height:1.08!important;margin:10px 0 6px!important;overflow-wrap:anywhere!important}
  .video-creator-link{font-size:11px!important}.video-tags{gap:5px!important;margin:8px 0!important}.video-tags .chip{font-size:10px!important;padding:5px 8px!important}
  .video-intro{font-size:11px!important;line-height:1.4!important;margin:7px 0 0!important;display:-webkit-box!important;-webkit-line-clamp:4!important;-webkit-box-orient:vertical!important;overflow:hidden!important}

  .video-seasons{grid-column:2!important;grid-row:1!important;width:100%!important;min-width:0!important;overflow:visible!important}
  .video-right-sticky{position:static!important;top:auto!important}.video-banner{display:none!important}.video-tabs{margin-bottom:8px!important}.video-tabs button{padding:7px 8px!important;font-size:12px!important}
  .video-about{font-size:11px!important;line-height:1.42!important;padding:10px 12px!important;margin-bottom:9px!important;max-height:76px!important;overflow:auto!important}

  /* Seasons become short horizontal rows; episodes use two compact lines. */
  .video-season-card{margin-bottom:9px!important;border-radius:12px!important}
  .video-season-card>summary{display:grid!important;grid-template-columns:64px minmax(0,1fr) 34px 34px!important;grid-template-rows:auto auto auto!important;gap:6px 8px!important;padding:9px 10px!important;align-items:center!important}
  .video-season-card .season-public-thumb{grid-column:1!important;grid-row:1/3!important;width:64px!important;height:54px!important;aspect-ratio:auto!important;border-radius:9px!important}
  .season-main{grid-column:2!important;grid-row:1!important;min-width:0!important}.season-main b{font-size:14px!important;line-height:1.15!important}.season-main small,.season-description-preview,.season-more{display:none!important}
  .season-share{grid-column:3!important;grid-row:1!important;width:34px!important;height:34px!important;min-height:34px!important;padding:0!important}.season-toggle{grid-column:4!important;grid-row:1!important;width:34px!important;height:34px!important}
  .season-time{grid-column:2!important;grid-row:2!important}.season-percent{grid-column:3!important;grid-row:2!important}.season-listens{grid-column:4!important;grid-row:2!important}.season-rating{display:none!important}
  .season-time,.season-percent,.season-listens{font-size:9px!important;white-space:nowrap!important;text-align:left!important}
  .season-progress{grid-column:2/5!important;grid-row:3!important;position:static!important;margin:0!important}.season-progress .progress-track{height:5px!important}
  .video-season-card[open]>.season-full-description{padding:8px 10px!important;font-size:11px!important;line-height:1.4!important}

  .video-episode>summary{display:grid!important;grid-template-columns:24px 54px minmax(0,1fr) 42px!important;grid-template-rows:auto auto auto!important;gap:5px 8px!important;padding:8px 9px!important;align-items:center!important}
  .episode-num{grid-column:1!important;grid-row:1!important;font-size:11px!important}.episode-thumb{grid-column:2!important;grid-row:1/3!important;width:54px!important;height:42px!important;border-radius:8px!important}
  .episode-copy{grid-column:3!important;grid-row:1!important;min-width:0!important}.episode-copy b{font-size:12px!important;line-height:1.15!important;display:block!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.episode-copy small{font-size:9px!important}
  .compact-play{grid-column:4!important;grid-row:1/3!important;width:40px!important;height:40px!important;min-width:40px!important}
  .episode-play-meta{grid-column:3!important;grid-row:2!important;font-size:9px!important;gap:6px!important;white-space:nowrap!important}.episode-play-meta .episode-listens{font-size:9px!important}
  .episode-progress{grid-column:2/4!important;grid-row:3!important;height:5px!important;margin:0!important}.episode-percent{grid-column:4!important;grid-row:3!important;font-size:9px!important}
  .episode-rating-compact,.episode-share,.compact-restart,.episode-toggle{display:none!important}
  .episode-expanded{padding:8px 10px!important}.episode-full-description{font-size:11px!important;line-height:1.4!important}

  /* The compact player never blocks the landscape header/menu. */
  .mobile-player-sticky-host.active{top:56px!important;z-index:490!important}
  body.mobile-player-minimized .mobile-player-sticky-host.active .player{height:58px!important;min-height:58px!important}
}

@media (prefers-reduced-motion:reduce){
  @media (orientation:landscape) and (max-width:1100px) and (max-height:650px){.nav{transition:none!important}}
}

/* v1.8.3 build88 — mobile landscape audit: stable compact player, normalized seasons, safer spacing */
@media (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  :root{--landscape-player-h:54px}
  body:not(.full-player-open){padding-bottom:calc(var(--landscape-player-h) + 24px + env(safe-area-inset-bottom))!important}

  /* The landscape mini-player is one compact, predictable bar. It never occupies flow space
     and never overlays the header/navigation. */
  .mobile-player-sticky-host.active{
    position:static!important;top:auto!important;width:0!important;height:0!important;min-height:0!important;
    margin:0!important;padding:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;
  }
  body:not(.full-player-open):not(.player-idle) .player,
  body.mobile-player-minimized:not(.full-player-open) .mobile-player-sticky-host.active .player{
    position:fixed!important;left:10px!important;right:10px!important;top:auto!important;
    bottom:max(8px,env(safe-area-inset-bottom))!important;width:auto!important;max-width:none!important;
    height:var(--landscape-player-h)!important;min-height:var(--landscape-player-h)!important;margin:0!important;
    transform:none!important;z-index:620!important;border:1px solid #5a2b31!important;border-radius:18px!important;
    display:grid!important;grid-template-columns:minmax(130px,1fr) auto!important;grid-template-rows:1fr!important;
    gap:8px!important;align-items:center!important;padding:5px 48px 5px 7px!important;
    background:rgba(20,8,28,.985)!important;box-shadow:0 10px 30px #0009!important;overflow:visible!important;
  }
  body:not(.full-player-open):not(.player-idle) .player .now{display:flex!important;min-width:0!important;gap:8px!important;align-items:center!important}
  body:not(.full-player-open):not(.player-idle) .player .thumb{display:block!important;width:40px!important;height:40px!important;min-width:40px!important;flex:0 0 40px!important;border-radius:8px!important}
  body:not(.full-player-open):not(.player-idle) .player .player-meta{display:block!important;min-width:0!important;overflow:hidden!important}
  body:not(.full-player-open):not(.player-idle) .player .player-title-wrap,
  body:not(.full-player-open):not(.player-idle) .player #playerTitle{max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
  body:not(.full-player-open):not(.player-idle) .player #playerTitle{display:block!important;font-size:11px!important;line-height:1.15!important}
  body:not(.full-player-open):not(.player-idle) .player #playerEpisode{display:block!important;font-size:9px!important;line-height:1.2!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;margin-top:2px!important}
  body:not(.full-player-open):not(.player-idle) .player .controls{display:block!important;min-width:0!important;text-align:right!important}
  body:not(.full-player-open):not(.player-idle) .player .controls-main{display:flex!important;gap:4px!important;align-items:center!important;justify-content:flex-end!important}
  body:not(.full-player-open):not(.player-idle) .player .controls-main>*{display:none!important}
  body:not(.full-player-open):not(.player-idle) .player #prevBtn,
  body:not(.full-player-open):not(.player-idle) .player #playPauseBtn,
  body:not(.full-player-open):not(.player-idle) .player #nextBtn{display:grid!important;place-items:center!important}
  body:not(.full-player-open):not(.player-idle) .player #prevBtn,
  body:not(.full-player-open):not(.player-idle) .player #nextBtn{width:30px!important;height:30px!important;min-width:30px!important;font-size:12px!important;padding:0!important}
  body:not(.full-player-open):not(.player-idle) .player #playPauseBtn{width:38px!important;height:38px!important;min-width:38px!important;font-size:16px!important;padding:0!important}
  body:not(.full-player-open):not(.player-idle) .player .progress-row,
  body:not(.full-player-open):not(.player-idle) .player .volume{display:none!important}
  body:not(.full-player-open):not(.player-idle) .player .mobile-progress-track{
    display:block!important;position:absolute!important;left:8px!important;right:8px!important;bottom:2px!important;
    height:3px!important;border-radius:999px!important;overflow:hidden!important;background:#3d2945!important;margin:0!important;
  }
  body:not(.full-player-open):not(.player-idle) .player #mobileProgressFill{height:100%!important;border-radius:999px!important}
  body:not(.full-player-open):not(.player-idle) .player .mobile-player-expand{
    display:grid!important;place-items:center!important;position:absolute!important;right:7px!important;top:7px!important;
    width:38px!important;height:38px!important;border-radius:12px!important;z-index:3!important;cursor:pointer!important;
  }

  /* Reserve enough content room so the last season/episode can always scroll fully above the player. */
  .page-content,.video-showcase,.video-showcase.has-context-panel{
    padding-bottom:calc(var(--landscape-player-h) + 34px + env(safe-area-inset-bottom))!important;
  }

  /* Normalize every season row, including season 1, regardless of open/collapsed state. */
  .video-season-card{width:100%!important;min-width:0!important;margin:0 0 8px!important;overflow:hidden!important;border-radius:12px!important}
  .video-season-card>summary{
    min-height:76px!important;display:grid!important;
    grid-template-columns:58px minmax(0,1fr) 34px 34px!important;
    grid-template-rows:minmax(32px,auto) 20px 6px!important;
    column-gap:8px!important;row-gap:4px!important;padding:8px 9px!important;align-items:center!important;
  }
  .video-season-card .season-public-thumb{
    grid-column:1!important;grid-row:1/4!important;width:58px!important;height:58px!important;min-width:58px!important;
    align-self:center!important;border-radius:9px!important;background-size:cover!important;background-position:center!important;
  }
  .video-season-card .season-main{grid-column:2!important;grid-row:1!important;min-width:0!important;align-self:center!important}
  .video-season-card .season-main b{
    display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;
    overflow:hidden!important;font-size:13px!important;line-height:1.15!important;overflow-wrap:anywhere!important;
  }
  .video-season-card .season-main small,.video-season-card .season-description-preview,.video-season-card .season-more{display:none!important}
  .video-season-card .season-share{grid-column:3!important;grid-row:1!important;width:34px!important;height:34px!important;min-height:34px!important;padding:0!important;align-self:center!important}
  .video-season-card .season-toggle{grid-column:4!important;grid-row:1!important;width:34px!important;height:34px!important;align-self:center!important}
  .video-season-card .season-time{grid-column:2!important;grid-row:2!important}
  .video-season-card .season-percent{grid-column:3!important;grid-row:2!important}
  .video-season-card .season-listens{grid-column:4!important;grid-row:2!important}
  .video-season-card .season-time,.video-season-card .season-percent,.video-season-card .season-listens{
    min-width:0!important;margin:0!important;font-size:9px!important;line-height:1!important;white-space:nowrap!important;
    display:flex!important;flex-direction:row!important;gap:2px!important;align-items:center!important;justify-content:flex-start!important;
  }
  .video-season-card .season-time small,.video-season-card .season-percent small,.video-season-card .season-listens small,
  .video-season-card .season-percent-icon,.video-season-card .season-rating{display:none!important}
  .video-season-card .season-progress{grid-column:2/5!important;grid-row:3!important;position:static!important;width:100%!important;height:5px!important;margin:0!important;align-self:end!important}
  .video-season-card[open]>summary{border-bottom:1px solid #34203f!important;background:linear-gradient(90deg,rgba(255,43,194,.035),transparent)!important}
  .video-season-card[open]>.season-full-description{display:none!important}
  .video-season-card>.episode-list{padding:6px!important;display:grid!important;gap:6px!important;background:#0d0d0d!important}

  /* Episode rows stay the same height and never collide with the player. */
  .video-episode{margin:0!important;border-radius:10px!important;overflow:hidden!important}
  .video-episode>summary{min-height:58px!important;padding:6px 8px!important;grid-template-columns:22px 50px minmax(0,1fr) 38px!important;gap:4px 7px!important}
  .episode-thumb{width:50px!important;height:38px!important}.compact-play{width:36px!important;height:36px!important;min-width:36px!important}
  .episode-copy b{font-size:11px!important}.episode-copy small{display:none!important}
  .episode-play-meta{font-size:8px!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .episode-progress{height:4px!important}.episode-percent{font-size:8px!important}

  /* No nested scroll area for the about text in landscape: clamp instead, page remains the only scroller. */
  .video-about{max-height:none!important;overflow:hidden!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:4!important}
  .video-intro{-webkit-line-clamp:3!important}
}

/* v1.8.4 build89 — fullscreen mobile chrome, landscape season stacking, desktop expand button */
@media (max-width:1100px){
  /* In the real full-player view the application chrome must disappear entirely. */
  body.full-player-open .topbar,
  body.full-player-open .nav,
  body.full-player-open .search-wrap,
  body.full-player-open .mobile-nav-toggle,
  body.full-player-open .userbox{display:none!important}
  body.full-player-open .full-player{z-index:1000!important;top:0!important}
  body.full-player-open .full-player-close{
    display:grid!important;place-items:center!important;z-index:1100!important;
    top:calc(10px + env(safe-area-inset-top))!important;
    right:calc(10px + env(safe-area-inset-right))!important;
    width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;
    margin:0!important;padding:0!important;border:1px solid rgba(255,255,255,.28)!important;
    border-radius:50%!important;background:rgba(12,6,19,.78)!important;color:#fff!important;
    box-shadow:0 8px 30px #0008!important;backdrop-filter:blur(12px)!important;
    cursor:pointer!important;touch-action:manipulation!important
  }
}

@media (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  /* Each season is its own opaque stacking context. This avoids the first row being visually covered by the block above it. */
  .video-tabs{position:relative!important;z-index:1!important;margin-bottom:8px!important}
  .video-about{position:relative!important;z-index:1!important;margin:0 0 12px!important}
  .video-season-card,
  .video-season-card:first-of-type{
    position:relative!important;z-index:3!important;isolation:isolate!important;
    opacity:1!important;filter:none!important;background:#0b0b0b!important;
    border-color:#45264f!important;color:#f8f4fb!important
  }
  .video-season-card>summary,
  .video-season-card:first-of-type>summary{
    position:relative!important;z-index:1!important;opacity:1!important;filter:none!important;
    background:#0b0b0b!important;color:#f8f4fb!important
  }
  .video-season-card>summary>*{opacity:1!important;filter:none!important}
  .video-season-card .season-main b{color:#f8f4fb!important}
  .video-season-card .season-time,
  .video-season-card .season-percent,
  .video-season-card .season-listens{opacity:1!important}
  .video-season-card .season-progress{z-index:2!important;background:#291633!important}
}

@media (min-width:761px){
  /* A genuine button: one single hit box, including directly over the icon. */
  #headerExpand{
    position:relative!important;z-index:30!important;
    width:46px!important;min-width:46px!important;height:36px!important;min-height:36px!important;
    margin:0 5px 0 3px!important;padding:0!important;
    border:1px solid #74407e!important;border-radius:12px!important;
    background:#1d0e26!important;color:#f8f4fb!important;
    box-shadow:none!important;cursor:pointer!important;pointer-events:auto!important;
    touch-action:manipulation!important;line-height:1!important;
    text-align:center!important;user-select:none!important;-webkit-user-select:none!important
  }
  #headerExpand::before,#headerExpand::after{content:none!important;display:none!important;pointer-events:none!important}
  #headerExpand:hover{background:#32133c!important;border-color:#ff55cf!important;color:#ff72d8!important;box-shadow:0 0 0 2px rgba(255,85,207,.10)!important}
  #headerExpand:focus-visible{outline:2px solid #ff55cf!important;outline-offset:2px!important}
  #headerExpand:active{background:#451747!important;transform:translateY(1px)!important}
  .player-docked .header-player.active{overflow:visible!important;pointer-events:auto!important}
  .player-docked .header-player.active:not(.has-details){width:92px!important;min-width:92px!important}
}


/* v1.8.5 build90 — desktop dock control rebuilt from play/pause button + reliable mobile fullscreen close */
@media (min-width:761px){
  /* The expand control deliberately uses exactly the same control geometry as #headerPlay. */
  .player-docked .header-player.active{
    overflow:hidden!important;
    pointer-events:auto!important;
  }
  #headerPlay,
  #headerExpand{
    position:relative!important;
    z-index:auto!important;
    width:34px!important;
    min-width:34px!important;
    height:30px!important;
    min-height:30px!important;
    flex:0 0 34px!important;
    margin:0!important;
    padding:0 8px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:#fff!important;
    box-shadow:none!important;
    display:grid!important;
    place-items:center!important;
    font-size:12px!important;
    font-weight:700!important;
    line-height:1!important;
    cursor:pointer!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
    user-select:none!important;
    -webkit-user-select:none!important;
    transition:background .18s ease,color .18s ease,transform .18s ease!important;
  }
  #headerExpand{border-left:1px solid #57305f!important}
  #headerPlay::before,#headerPlay::after,#headerExpand::before,#headerExpand::after{
    content:none!important;display:none!important
  }
  #headerPlay:hover,#headerExpand:hover{background:#32133c!important;color:#ff55cf!important}
  #headerPlay:active,#headerExpand:active{transform:scale(.9)!important}
  #headerPlay:focus-visible,#headerExpand:focus-visible{outline:2px solid #ff55cf!important;outline-offset:-3px!important}
  .player-docked .header-player.active:not(.has-details){width:69px!important;min-width:69px!important}
}

/* v1.8.7 build92 — desktop-only hotfix. Mobile layout intentionally unchanged from validated build91 behavior. */
@media (min-width:761px){
  .header-player{overflow:hidden!important;pointer-events:auto!important}
  .header-player > #headerPlay,
  .header-player > #headerExpand{
    position:relative!important;z-index:1!important;
    width:35px!important;min-width:35px!important;max-width:35px!important;
    height:30px!important;min-height:30px!important;max-height:30px!important;
    flex:0 0 35px!important;margin:0!important;padding:0!important;
    border:0!important;border-radius:0!important;
    background:transparent!important;color:#fff!important;box-shadow:none!important;
    display:grid!important;place-items:center!important;
    font:700 12px/1 inherit!important;text-align:center!important;
    cursor:pointer!important;pointer-events:auto!important;touch-action:manipulation!important;
    user-select:none!important;-webkit-user-select:none!important;
    transition:background .18s ease,color .18s ease,transform .18s ease!important;
  }
  .header-player > #headerPlay::before,.header-player > #headerPlay::after,
  .header-player > #headerExpand::before,.header-player > #headerExpand::after{content:none!important;display:none!important}
  .header-player > #headerPlay:hover,.header-player > #headerExpand:hover{background:#32133c!important;color:#ff55cf!important}
  .header-player > #headerPlay:active,.header-player > #headerExpand:active{transform:scale(.9)!important}
  .header-player > #headerPlay:focus-visible,.header-player > #headerExpand:focus-visible{outline:2px solid #ff55cf!important;outline-offset:-3px!important}
  .player-docked .header-player.active:not(.has-details){width:72px!important;min-width:72px!important;max-width:72px!important}
}

/* v1.8.8 build93 — responsive desktop alignment for season cards. Mobile rules intentionally untouched. */
@media (min-width:761px) and (min-height:651px){
  .video-seasons{min-width:0!important}
  .video-season-card{width:100%!important;max-width:100%!important;box-sizing:border-box!important}
  .video-season-card>summary{
    display:grid!important;
    grid-template-columns:clamp(88px,10vw,120px) minmax(180px,1.9fr) minmax(62px,.58fr) minmax(72px,.68fr) minmax(58px,.52fr) minmax(118px,.95fr) 48px!important;
    column-gap:clamp(8px,1vw,16px)!important;
    row-gap:8px!important;
    align-items:center!important;
    width:100%!important;max-width:100%!important;box-sizing:border-box!important;
    padding:14px 16px 18px!important;
  }
  .video-season-card .season-public-thumb{width:100%!important;max-width:120px!important;min-width:0!important;justify-self:start!important}
  .season-main{min-width:0!important;overflow:hidden!important}
  .season-main b{display:block!important;min-width:0!important;white-space:normal!important;overflow-wrap:anywhere!important;line-height:1.15!important}
  .season-main small{white-space:normal!important}
  .season-time,.season-percent,.season-listens,.season-rating{min-width:0!important;width:100%!important;justify-self:stretch!important;text-align:center!important;align-self:center!important}
  .season-rating{overflow:hidden!important}.season-rating .rating-stars{justify-content:center!important;white-space:nowrap!important}
  .season-share,.season-toggle{justify-self:center!important;align-self:center!important}
  .season-progress{grid-column:2/7!important;left:0!important;right:0!important;bottom:-8px!important}
  .video-season-card[open]>.season-full-description{padding-left:calc(clamp(88px,10vw,120px) + clamp(8px,1vw,16px) + 16px)!important;padding-right:16px!important}
}

@media (min-width:761px) and (max-width:1100px) and (min-height:651px){
  .video-season-card>summary{
    grid-template-columns:92px minmax(160px,1fr) 64px 74px 54px minmax(96px,.8fr) 44px!important;
    column-gap:8px!important;padding:12px 12px 16px!important
  }
  .season-main b{font-size:15px!important}.season-main small{font-size:11px!important}
  .season-time,.season-percent,.season-listens,.season-rating{font-size:10px!important}
  .season-rating .rating-star{font-size:12px!important}
  .season-progress{grid-column:2/7!important}
  .video-season-card[open]>.season-full-description{padding-left:112px!important;padding-right:12px!important}
}

/* v1.8.9 build94 — desktop mini-player: real expand button beside play, full visible hit surface */
@media (min-width:761px){
  /* Keep the compact player as an ordinary flex row: Play -> Expand -> optional track details. */
  .header-player{
    display:none;
    align-items:center!important;
    isolation:isolate!important;
  }
  .header-player.active{display:flex!important}
  .header-player > #headerPlay,
  .header-player > #headerExpand{
    position:relative!important;
    inset:auto!important;
    z-index:2!important;
    box-sizing:border-box!important;
    width:35px!important;
    min-width:35px!important;
    max-width:35px!important;
    height:30px!important;
    min-height:30px!important;
    max-height:30px!important;
    flex:0 0 35px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:#fff!important;
    box-shadow:none!important;
    display:grid!important;
    place-items:center!important;
    font:700 12px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
    cursor:pointer!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
    user-select:none!important;
    -webkit-user-select:none!important;
    transform:none!important;
    transition:background .16s ease,color .16s ease,transform .12s ease!important;
  }
  .header-player > #headerPlay::before,
  .header-player > #headerPlay::after,
  .header-player > #headerExpand::before,
  .header-player > #headerExpand::after{
    content:none!important;
    display:none!important;
  }
  .header-player > #headerExpand{
    border-left:1px solid #57305f!important;
  }
  .header-player > #headerPlay:hover,
  .header-player > #headerExpand:hover{
    background:#32133c!important;
    color:#ff55cf!important;
  }
  .header-player > #headerPlay:active,
  .header-player > #headerExpand:active{
    transform:scale(.92)!important;
  }
  .header-player > #headerPlay:focus-visible,
  .header-player > #headerExpand:focus-visible{
    outline:2px solid #ff55cf!important;
    outline-offset:-3px!important;
  }
  .header-player > .header-now{
    position:relative!important;
    z-index:1!important;
    pointer-events:none!important;
  }
  .player-docked .header-player.active:not(.has-details){
    width:72px!important;
    min-width:72px!important;
    max-width:72px!important;
    overflow:hidden!important;
  }
  /* Wide desktop can append the track text after the two real buttons. */
  @media (min-width:1700px){
    .player-docked .header-player.active.has-details{
      width:min(365px,20vw)!important;
      max-width:365px!important;
      min-width:190px!important;
      overflow:hidden!important;
    }
  }
}

/* v1.8.10 build95 — mobile landscape only: hard-isolate episode artwork from copy. Desktop intentionally untouched. */
@media (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  .video-episode>summary{
    display:grid!important;
    grid-template-columns:24px 72px minmax(0,1fr) 44px!important;
    grid-template-rows:minmax(42px,auto) auto 5px!important;
    column-gap:10px!important;row-gap:5px!important;
    align-items:center!important;
  }
  .video-episode .episode-num{grid-column:1!important;grid-row:1!important;align-self:start!important;padding-top:4px!important}
  .video-episode .episode-thumb{
    grid-column:2!important;grid-row:1/3!important;
    width:72px!important;height:44px!important;min-width:72px!important;max-width:72px!important;
    margin:0!important;position:relative!important;inset:auto!important;transform:none!important;
    overflow:hidden!important;z-index:1!important
  }
  .video-episode .episode-copy{
    grid-column:3!important;grid-row:1!important;
    min-width:0!important;width:100%!important;max-width:100%!important;
    margin:0!important;padding:0!important;position:relative!important;left:auto!important;right:auto!important;
    overflow:hidden!important;z-index:2!important
  }
  .video-episode .episode-copy b{
    display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;
    white-space:normal!important;overflow:hidden!important;text-overflow:ellipsis!important;
    max-width:100%!important;overflow-wrap:anywhere!important;word-break:normal!important
  }
  .video-episode .episode-play-meta{grid-column:3!important;grid-row:2!important;min-width:0!important;margin:0!important}
  .video-episode .compact-play{grid-column:4!important;grid-row:1/3!important;justify-self:center!important}
  .video-episode .episode-progress{grid-column:2/4!important;grid-row:3!important;width:100%!important;min-width:0!important}
  .video-episode .episode-percent{grid-column:4!important;grid-row:3!important}
}

/* v1.8.11 build96 — mobile-only episode action alignment. Desktop intentionally frozen. */
@media (max-width:760px) and (orientation:portrait){
  .video-episode>summary{
    grid-template-columns:28px 64px minmax(0,1fr) 38px 38px!important;
    grid-template-rows:auto auto auto auto!important;
    column-gap:8px!important;row-gap:8px!important;
    align-items:center!important;
  }
  .video-episode .episode-num{grid-column:1!important;grid-row:1!important}
  .video-episode .episode-thumb{grid-column:2!important;grid-row:1!important;width:64px!important}
  .video-episode .episode-copy{grid-column:3!important;grid-row:1!important;min-width:0!important}
  .video-episode .compact-play{grid-column:4/6!important;grid-row:1/3!important;justify-self:center!important;align-self:center!important}
  .video-episode .episode-play-meta{grid-column:3!important;grid-row:2!important;min-width:0!important;overflow:hidden!important}
  .video-episode .episode-progress{grid-column:2/5!important;grid-row:3!important;min-width:0!important;width:100%!important}
  .video-episode .episode-percent{grid-column:5!important;grid-row:3!important;justify-self:end!important;text-align:right!important}
  .video-episode .episode-rating-compact{grid-column:2/4!important;grid-row:4!important;justify-self:start!important;max-width:100%!important;overflow:visible!important}
  .video-episode .episode-share{grid-column:4!important;grid-row:4!important;justify-self:center!important;align-self:center!important;width:36px!important;height:36px!important;min-width:36px!important}
  .video-episode .compact-restart{grid-column:5!important;grid-row:4!important;justify-self:center!important;align-self:center!important;width:36px!important;height:36px!important;min-width:36px!important}
  .video-episode .episode-toggle{display:none!important}
}

@media (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  .video-episode>summary{
    grid-template-columns:24px 72px minmax(0,1fr) 38px 38px!important;
    grid-template-rows:minmax(42px,auto) auto 5px auto!important;
    column-gap:9px!important;row-gap:5px!important;
    align-items:center!important;
  }
  .video-episode .episode-num{grid-column:1!important;grid-row:1!important;align-self:start!important;padding-top:4px!important}
  .video-episode .episode-thumb{grid-column:2!important;grid-row:1/3!important;width:72px!important;height:44px!important;min-width:72px!important;max-width:72px!important}
  .video-episode .episode-copy{grid-column:3!important;grid-row:1!important;min-width:0!important;overflow:hidden!important}
  .video-episode .episode-copy b{max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .video-episode .compact-play{grid-column:4/6!important;grid-row:1/3!important;justify-self:center!important;align-self:center!important}
  .video-episode .episode-play-meta{grid-column:3!important;grid-row:2!important;min-width:0!important;overflow:hidden!important}
  .video-episode .episode-progress{grid-column:2/5!important;grid-row:3!important;width:100%!important;min-width:0!important}
  .video-episode .episode-percent{grid-column:5!important;grid-row:3!important;justify-self:end!important;text-align:right!important}
  .video-episode .episode-rating-compact{grid-column:2/4!important;grid-row:4!important;justify-self:start!important;max-width:100%!important;overflow:hidden!important}
  .video-episode .episode-share{display:grid!important;grid-column:4!important;grid-row:4!important;justify-self:center!important;align-self:center!important;width:34px!important;height:34px!important;min-width:34px!important}
  .video-episode .compact-restart{display:grid!important;grid-column:5!important;grid-row:4!important;justify-self:center!important;align-self:center!important;width:34px!important;height:34px!important;min-width:34px!important}
  .video-episode .episode-toggle{display:none!important}
}

/* v1.8.12 build97 — mobile episode hierarchy: rating right of copy, actions below, progress last. Desktop frozen. */
@media (max-width:760px) and (orientation:portrait){
  .video-episode>summary{
    grid-template-columns:28px 64px minmax(0,1fr) minmax(108px,auto)!important;
    grid-template-rows:auto auto auto auto!important;
    column-gap:9px!important;row-gap:8px!important;
    align-items:center!important;
  }
  .video-episode .episode-num{grid-column:1!important;grid-row:1!important}
  .video-episode .episode-thumb{grid-column:2!important;grid-row:1!important;width:64px!important}
  .video-episode .episode-copy{grid-column:3!important;grid-row:1!important;min-width:0!important}
  .video-episode .episode-rating-compact{display:grid!important;grid-column:4!important;grid-row:1!important;justify-self:end!important;align-self:center!important;max-width:118px!important;overflow:visible!important;text-align:center!important}
  .video-episode .episode-rating-compact .rating-stars{display:flex!important;justify-content:flex-end!important;transform:scale(.9);transform-origin:right center}
  .video-episode .episode-play-meta{grid-column:3!important;grid-row:2!important;min-width:0!important;overflow:hidden!important}
  .video-episode .compact-play{display:grid!important;grid-column:2!important;grid-row:3!important;justify-self:start!important;align-self:center!important;width:38px!important;height:38px!important;min-width:38px!important}
  .video-episode .episode-share{display:grid!important;grid-column:3!important;grid-row:3!important;justify-self:start!important;align-self:center!important;width:36px!important;height:36px!important;min-width:36px!important}
  .video-episode .compact-restart{display:grid!important;grid-column:4!important;grid-row:3!important;justify-self:start!important;align-self:center!important;width:36px!important;height:36px!important;min-width:36px!important}
  .video-episode .episode-progress{grid-column:2/4!important;grid-row:4!important;width:100%!important;min-width:0!important;margin:0!important}
  .video-episode .episode-percent{grid-column:4!important;grid-row:4!important;justify-self:end!important;text-align:right!important}
  .video-episode .episode-toggle{display:none!important}
}
@media (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  .video-episode>summary{
    grid-template-columns:24px 72px minmax(0,1fr) minmax(104px,auto)!important;
    grid-template-rows:auto auto auto auto!important;
    column-gap:9px!important;row-gap:5px!important;
    align-items:center!important;
  }
  .video-episode .episode-num{grid-column:1!important;grid-row:1!important;align-self:start!important;padding-top:4px!important}
  .video-episode .episode-thumb{grid-column:2!important;grid-row:1!important;width:72px!important;height:44px!important;min-width:72px!important;max-width:72px!important}
  .video-episode .episode-copy{grid-column:3!important;grid-row:1!important;min-width:0!important;overflow:hidden!important}
  .video-episode .episode-copy b{max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .video-episode .episode-rating-compact{display:grid!important;grid-column:4!important;grid-row:1!important;justify-self:end!important;align-self:center!important;max-width:112px!important;overflow:visible!important;text-align:center!important}
  .video-episode .episode-rating-compact .rating-stars{display:flex!important;justify-content:flex-end!important;transform:scale(.84);transform-origin:right center}
  .video-episode .episode-play-meta{grid-column:3!important;grid-row:2!important;min-width:0!important;overflow:hidden!important}
  .video-episode .compact-play{display:grid!important;grid-column:2!important;grid-row:3!important;justify-self:start!important;align-self:center!important;width:34px!important;height:34px!important;min-width:34px!important}
  .video-episode .episode-share{display:grid!important;grid-column:3!important;grid-row:3!important;justify-self:start!important;align-self:center!important;width:32px!important;height:32px!important;min-width:32px!important}
  .video-episode .compact-restart{display:grid!important;grid-column:4!important;grid-row:3!important;justify-self:start!important;align-self:center!important;width:32px!important;height:32px!important;min-width:32px!important}
  .video-episode .episode-progress{grid-column:2/4!important;grid-row:4!important;width:100%!important;min-width:0!important;margin:0!important}
  .video-episode .episode-percent{grid-column:4!important;grid-row:4!important;justify-self:end!important;text-align:right!important}
  .video-episode .episode-toggle{display:none!important}
}

/* Build 98 — mobile episode actions aligned with desktop order and unified controls. */
.mobile-action-icon{display:none}
@media (max-width:760px), (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  .video-episode .compact-restart,
  .video-episode .episode-share{
    box-sizing:border-box!important;
    border:1.5px solid #b52bd6!important;
    border-radius:999px!important;
    background:rgba(17,10,22,.72)!important;
    color:#f8effb!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    line-height:1!important;
    box-shadow:0 0 0 1px rgba(181,43,214,.08),0 0 12px rgba(181,43,214,.12)!important;
  }
  .video-episode .compact-restart:hover,
  .video-episode .episode-share:hover,
  .video-episode .compact-restart:focus-visible,
  .video-episode .episode-share:focus-visible{
    border-color:#ef39ba!important;
    background:rgba(239,57,186,.10)!important;
    box-shadow:0 0 14px rgba(239,57,186,.22)!important;
  }
  .video-episode .desktop-restart-icon,
  .video-episode .episode-share>.desktop-share-icon{display:none!important}
  .video-episode .mobile-action-icon{
    display:block!important;
    width:54%!important;
    height:54%!important;
    overflow:visible!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:2!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
    margin:0!important;
    transform:none!important;
    pointer-events:none!important;
  }
  .video-episode .episode-share>.mobile-share-icon{width:55%!important;height:55%!important}
  .video-episode .compact-restart>.mobile-restart-icon{width:58%!important;height:58%!important}
}
@media (max-width:760px) and (orientation:portrait){
  .video-episode .compact-play{grid-column:2!important;grid-row:3!important}
  .video-episode .compact-restart{grid-column:3!important;grid-row:3!important;justify-self:start!important}
  .video-episode .episode-share{grid-column:4!important;grid-row:3!important;justify-self:start!important}
}
@media (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  .video-episode .compact-play{grid-column:2!important;grid-row:3!important}
  .video-episode .compact-restart{grid-column:3!important;grid-row:3!important;justify-self:start!important}
  .video-episode .episode-share{grid-column:4!important;grid-row:3!important;justify-self:start!important}
}

/* Build 99 — desktop episode actions use the same validated control language as mobile. */
@media (min-width:761px) and (min-height:651px){
  .video-episode .compact-play,
  .video-episode .compact-restart,
  .video-episode .episode-share{
    box-sizing:border-box!important;
    border-radius:999px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    line-height:1!important;
    cursor:pointer!important;
  }
  .video-episode .compact-play{
    width:38px!important;height:38px!important;min-width:38px!important;
    border:0!important;
    background:#ff39c7!important;
    color:#160819!important;
    box-shadow:0 0 14px rgba(255,57,199,.18)!important;
  }
  .video-episode .compact-restart,
  .video-episode .episode-share{
    width:36px!important;height:36px!important;min-width:36px!important;
    border:1.5px solid #b52bd6!important;
    background:rgba(17,10,22,.72)!important;
    color:#f8effb!important;
    box-shadow:0 0 0 1px rgba(181,43,214,.08),0 0 12px rgba(181,43,214,.12)!important;
  }
  .video-episode .compact-restart:hover,
  .video-episode .episode-share:hover,
  .video-episode .compact-restart:focus-visible,
  .video-episode .episode-share:focus-visible{
    border-color:#ef39ba!important;
    background:rgba(239,57,186,.10)!important;
    box-shadow:0 0 14px rgba(239,57,186,.22)!important;
    outline:none!important;
  }
  .video-episode .desktop-restart-icon,
  .video-episode .episode-share>.desktop-share-icon{display:none!important}
  .video-episode .mobile-action-icon{
    display:block!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:2!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
    margin:0!important;
    transform:none!important;
    pointer-events:none!important;
    overflow:visible!important;
  }
  .video-episode .compact-restart>.mobile-restart-icon{width:58%!important;height:58%!important}
  .video-episode .episode-share>.mobile-share-icon{width:55%!important;height:55%!important}
}


/* Build 100 — unified share icon and + / − disclosure controls on public cards. */
.video-season-card .season-toggle,
.video-episode .episode-toggle{
  box-sizing:border-box!important;
  border:1.5px solid #b52bd6!important;
  border-radius:999px!important;
  background:rgba(17,10,22,.72)!important;
  color:#f8effb!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  line-height:1!important;
  box-shadow:0 0 0 1px rgba(181,43,214,.08),0 0 12px rgba(181,43,214,.12)!important;
}
.video-season-card .season-toggle:hover,
.video-episode .episode-toggle:hover{
  border-color:#ef39ba!important;
  background:rgba(239,57,186,.10)!important;
  box-shadow:0 0 14px rgba(239,57,186,.22)!important;
}
.video-season-card .season-chevron,
.video-episode .episode-chevron{
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:100%!important;
  color:#f8effb!important;
  font-size:0!important;
  transform:none!important;
  transition:none!important;
  line-height:1!important;
}
.video-season-card .season-chevron::before,
.video-episode .episode-chevron::before{
  content:'+';
  display:block;
  font:500 27px/1 Arial,sans-serif;
  transform:translateY(-1px);
}
.video-season-card[open] .season-chevron,
.video-episode[open] .episode-chevron{
  transform:none!important;
}
.video-season-card[open] .season-chevron::before,
.video-episode[open] .episode-chevron::before{
  content:'−';
  font-size:29px;
  transform:translateY(-2px);
}
.share-icon-btn svg,
.share-option svg{
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
@media(max-width:760px), (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  .video-season-card .season-chevron::before,
  .video-episode .episode-chevron::before{font-size:23px!important}
  .video-season-card[open] .season-chevron::before,
  .video-episode[open] .episode-chevron::before{font-size:25px!important}
}

/* v1.8.16 build101 — mobile-only episode action geometry. Desktop intentionally untouched. */
@media (max-width:760px) and (orientation:portrait){
  .video-episode>summary{position:relative!important}
  .video-episode .compact-play{grid-column:2!important;grid-row:3!important;justify-self:start!important;transform:none!important}
  .video-episode .compact-restart{grid-column:3!important;grid-row:3!important;justify-self:start!important;transform:none!important}
  .video-episode .episode-share{grid-column:3!important;grid-row:3!important;justify-self:start!important;transform:translateX(46px)!important}
  .video-episode .episode-toggle{display:grid!important;grid-column:4!important;grid-row:3!important;justify-self:end!important;align-self:center!important;width:36px!important;height:36px!important;min-width:36px!important;transform:none!important}
}
@media (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  .video-episode>summary{position:relative!important}
  .video-episode .compact-play{grid-column:2!important;grid-row:3!important;justify-self:start!important;transform:none!important}
  .video-episode .compact-restart{grid-column:3!important;grid-row:3!important;justify-self:start!important;transform:none!important}
  .video-episode .episode-share{grid-column:3!important;grid-row:3!important;justify-self:start!important;transform:translateX(42px)!important}
  .video-episode .episode-toggle{display:grid!important;grid-column:4!important;grid-row:3!important;justify-self:end!important;align-self:center!important;width:34px!important;height:34px!important;min-width:34px!important;transform:none!important}
}


/* v1.8.17 build102 — desktop floating search header + portrait season action alignment. */
.desktop-search-toggle{display:none}
@media (min-width:1101px){
  .topbar{position:sticky!important;overflow:visible!important}
  .nav{display:flex!important;align-items:center!important;gap:22px!important;min-width:0!important}
  .desktop-search-toggle{
    display:grid!important;place-items:center!important;flex:0 0 40px!important;width:40px!important;height:40px!important;
    padding:0!important;margin:0 0 0 -4px!important;border:1px solid #4a2857!important;border-radius:50%!important;
    background:#111111!important;color:#fff!important;font-size:22px!important;line-height:1!important;cursor:pointer!important;
    transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease!important
  }
  .desktop-search-toggle:hover,.desktop-search-toggle[aria-expanded="true"]{border-color:#ef39ba!important;background:#241012!important;color:#ff5366!important}
  .desktop-search-toggle:active{transform:scale(.95)!important}
  .search-wrap{
    display:none!important;position:fixed!important;left:var(--desktop-search-left,250px)!important;top:var(--desktop-search-top,78px)!important;
    width:min(460px,calc(100vw - 40px))!important;z-index:320!important;padding:8px!important;border:1px solid #4a2857!important;
    border-radius:14px!important;background:rgba(16,8,23,.98)!important;box-shadow:0 20px 55px #000b,0 0 24px rgba(255,43,194,.08)!important;
    opacity:0;transform:translateY(-8px) scale(.985);transform-origin:top left;backdrop-filter:blur(18px)!important
  }
  body.desktop-search-open .search-wrap{display:flex!important;animation:sagacityDesktopSearchOpen .2s ease forwards}
  .search-wrap .search{height:44px!important;padding:0 46px 0 14px!important}
  .search-results{top:58px!important;left:0!important;right:0!important}
  .userbox{display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:10px!important;white-space:nowrap!important}
  .userbox .name{display:inline-block!important;order:1!important;max-width:180px!important;overflow:hidden!important;text-overflow:ellipsis!important;cursor:pointer!important}
  .userbox .avatar{order:2!important;flex:0 0 40px!important}
  .userbox .studio{order:3!important;margin-left:2px!important}
  .userbox .cart-head{order:0!important}
}
@keyframes sagacityDesktopSearchOpen{from{opacity:0;transform:translateY(-8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}

@media (max-width:760px) and (orientation:portrait){
  .video-season-card>summary{position:relative!important}
  .video-season-card .season-share{
    grid-column:3!important;grid-row:1!important;justify-self:end!important;align-self:center!important;
    width:38px!important;height:38px!important;min-width:38px!important;transform:none!important
  }
  .video-season-card .season-toggle{
    grid-column:4!important;grid-row:1!important;justify-self:end!important;align-self:center!important;
    width:38px!important;height:38px!important;min-width:38px!important;transform:none!important
  }
}


/* v1.9.2 build105 — compact desktop search popover + creator events in video left column */
@media (min-width:1101px){
  #searchForm.search-wrap{
    display:none!important;
    position:fixed!important;
    left:var(--desktop-search-left,16px)!important;
    right:auto!important;
    top:var(--desktop-search-top,72px)!important;
    width:360px!important;
    max-width:calc(100vw - 32px)!important;
    min-width:0!important;
    grid-column:auto!important;
    grid-row:auto!important;
    margin:0!important;
    padding:7px!important;
    border:1px solid #4b2758!important;
    border-radius:12px!important;
    background:rgba(15,7,21,.985)!important;
    box-shadow:0 14px 38px rgba(0,0,0,.62),0 0 18px rgba(255,43,194,.06)!important;
    backdrop-filter:blur(16px)!important;
    overflow:visible!important;
    z-index:520!important;
    opacity:0;
    transform:translateY(-6px) scale(.99);
    transform-origin:top left;
  }
  body.desktop-search-open #searchForm.search-wrap{display:flex!important;animation:sagacityDesktopSearchOpen .16s ease forwards!important}
  #searchForm.search-wrap .search{
    width:100%!important;height:40px!important;min-width:0!important;
    padding:0 42px 0 13px!important;margin:0!important;
    border:1px solid #51285d!important;border-radius:9px!important;
    background:#160b1e!important;color:#fff!important;
    outline:none!important;box-shadow:none!important;font-size:13px!important;
  }
  #searchForm.search-wrap .search:focus{border-color:#cf36ad!important;outline:none!important;box-shadow:0 0 0 2px rgba(255,43,194,.08)!important}
  #searchForm.search-wrap>button{position:absolute!important;right:12px!important;top:50%!important;transform:translateY(-50%)!important;width:30px!important;height:30px!important;border:0!important;background:transparent!important;color:#d8cadc!important;padding:0!important;display:grid!important;place-items:center!important;cursor:pointer!important}
  #searchForm.search-wrap .search-results{top:52px!important;left:0!important;right:0!important;width:100%!important;max-height:min(58vh,430px)!important;border-radius:10px!important;overflow:auto!important}
}

/* Creator events shown inside the existing video-info column only. */
.video-info .video-creator-events-inline{
  width:100%!important;max-width:100%!important;min-width:0!important;
  margin:18px 0 0!important;padding:14px!important;overflow:hidden!important;
  box-sizing:border-box!important;
}
.video-info .video-creator-events-inline .context-head{gap:8px!important;align-items:center!important}
.video-info .video-creator-events-inline .context-head h3{font-size:15px!important;margin:0!important;min-width:0!important}
.video-info .video-creator-events-inline .context-head a{font-size:11px!important;white-space:nowrap!important}
.video-info .video-creator-events-inline .context-events{display:grid!important;gap:10px!important;margin-top:10px!important;min-width:0!important}
.video-info .video-creator-events-inline .public-event{
  display:grid!important;grid-template-columns:64px minmax(0,1fr)!important;gap:10px!important;
  width:100%!important;max-width:100%!important;min-width:0!important;padding:9px!important;
  border:1px solid #3d2147!important;border-radius:11px!important;background:#111111!important;
  overflow:hidden!important;align-items:start!important;
}
.video-info .video-creator-events-inline .public-event-art{width:64px!important;height:64px!important;aspect-ratio:1!important;border-radius:8px!important;background-size:cover!important;background-position:center!important}
.video-info .video-creator-events-inline .public-event-copy{min-width:0!important;overflow:hidden!important}
.video-info .video-creator-events-inline .public-event-copy .eyebrow{font-size:9px!important;line-height:1.2!important}
.video-info .video-creator-events-inline .public-event-copy h3{font-size:13px!important;line-height:1.2!important;margin:3px 0!important;overflow-wrap:anywhere!important}
.video-info .video-creator-events-inline .public-event-copy p{font-size:10.5px!important;line-height:1.3!important;margin:2px 0!important;overflow-wrap:anywhere!important}
.video-info .video-creator-events-inline .public-event-copy p.muted{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important}
.video-info .video-creator-events-inline .public-event-action{grid-column:2!important;justify-content:flex-start!important;min-width:0!important;margin-top:2px!important}
.video-info .video-creator-events-inline .public-event-action .btn{padding:6px 10px!important;font-size:10px!important;white-space:nowrap!important}
@media(max-width:760px){
  .video-info .video-creator-events-inline .public-event{grid-template-columns:70px minmax(0,1fr)!important}
  .video-info .video-creator-events-inline .public-event-art{width:70px!important;height:70px!important}
}

/* Build 106 — strict Creator Studio visibility guard */
.studio[hidden]{display:none!important}
/* FraiseTUBE Connect — v1.10.1 build109 */
.device-menu{width:340px;padding:0;overflow:hidden;background:#100c13;border:1px solid #35283c;border-radius:18px;z-index:140}.device-menu.show{display:block}.connect-head{display:flex;align-items:center;justify-content:space-between;padding:18px 18px 12px}.connect-head b{font-size:18px}.connect-head small{display:block;color:#a99eae;margin-top:3px}.connect-head button{border:0;background:transparent;color:#aaa;font-size:27px;cursor:pointer}.connect-current{width:calc(100% - 28px);margin:0 14px 14px;padding:14px;display:grid;border:0;color:#fff;text-align:left;cursor:pointer;grid-template-columns:34px 1fr 16px;gap:9px;align-items:center;border-radius:13px;background:#211b24}.connect-current strong{color:#35dc82}.connect-current small{display:block;color:#a7a7a7;margin-top:3px}.connect-current i,.device-row i{color:#35dc82}.connect-label{padding:4px 18px 8px;color:#a7a7a7;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.device-row{width:calc(100% - 20px);margin:3px 10px;background:transparent;padding:12px 10px;cursor:pointer}.device-row:hover{background:#211b24}.device-row em{font-size:25px;color:#aaa;font-style:normal}.connect-empty{padding:12px 18px 20px;color:#a7a7a7;font-size:13px;line-height:1.45}.connect-empty .connect-login{margin-top:12px}.connect-current em{font-size:25px;color:#aaa;font-style:normal}.connect-current.active{cursor:default}.player-device-btn{cursor:pointer}.player-device-btn:hover{border-color:#35dc82}
@media(max-width:700px){.device-menu{left:10px;right:10px;bottom:86px;width:auto;max-height:70vh;overflow:auto;border-radius:20px}}


/* FraiseTUBE Connect — v1.10.2 build110: mobile access + resilient device payload */
.mobile-connect-btn{display:none}
@media(max-width:760px), (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  .player{position:relative}
  .mobile-connect-btn{
    display:grid!important;place-items:center!important;position:absolute!important;z-index:8!important;
    width:36px!important;height:36px!important;min-width:36px!important;padding:0!important;
    border:1px solid #70417d!important;border-radius:50%!important;background:#171717!important;color:#fff!important;
    font-size:18px!important;line-height:1!important;cursor:pointer!important;box-shadow:0 5px 16px #0008!important
  }
  body:not(.mobile-player-minimized) .mobile-connect-btn{right:8px!important;top:-45px!important}
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player{padding-right:100px!important}
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-connect-btn{right:54px!important;top:14px!important}
  .device-menu.show{
    display:block!important;position:fixed!important;left:10px!important;right:10px!important;bottom:max(12px,env(safe-area-inset-bottom))!important;
    top:auto!important;width:auto!important;max-height:min(72vh,560px)!important;overflow:auto!important;z-index:1000!important;
    border-radius:22px!important;box-shadow:0 28px 90px #000d!important
  }
}

/* FraiseTUBE Connect — v1.10.5 build113: mobile bottom sheet polish */
@media(max-width:760px), (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  .device-menu.show{
    box-sizing:border-box!important;
    position:fixed!important;
    left:0!important;right:0!important;bottom:0!important;top:auto!important;
    width:100vw!important;max-width:none!important;
    max-height:min(62dvh,620px)!important;
    overflow-y:auto!important;overflow-x:hidden!important;
    padding:0 0 calc(14px + env(safe-area-inset-bottom))!important;
    margin:0!important;
    border-left:0!important;border-right:0!important;border-bottom:0!important;
    border-radius:24px 24px 0 0!important;
    background:#100c13!important;
    box-shadow:0 -24px 80px #000d!important;
    z-index:5000!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .device-menu.show .connect-head{
    box-sizing:border-box!important;
    position:sticky!important;top:0!important;z-index:3!important;
    min-height:74px!important;
    padding:18px 20px 14px!important;
    background:#100c13!important;
    border-bottom:1px solid #241a29!important;
    gap:12px!important;
  }
  .device-menu.show .connect-head>div{min-width:0!important}
  .device-menu.show .connect-head b{display:block!important;font-size:20px!important;line-height:1.15!important}
  .device-menu.show .connect-head small{font-size:13px!important;line-height:1.25!important;white-space:normal!important;overflow-wrap:anywhere!important}
  .device-menu.show .connect-head button{
    flex:0 0 44px!important;width:44px!important;height:44px!important;
    display:grid!important;place-items:center!important;
    margin:-6px -8px -6px 0!important;padding:0!important;
    font-size:32px!important;line-height:1!important;
  }
  .device-menu.show .connect-current{
    box-sizing:border-box!important;
    width:calc(100% - 32px)!important;
    min-height:88px!important;
    margin:16px 16px 18px!important;
    padding:16px!important;
    grid-template-columns:46px minmax(0,1fr) 20px!important;
    gap:12px!important;
    align-items:center!important;
    border-radius:18px!important;
    background:#211b24!important;
  }
  .device-menu.show .connect-current>span:nth-child(2){min-width:0!important;display:block!important}
  .device-menu.show .connect-current strong{display:block!important;font-size:18px!important;line-height:1.2!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .device-menu.show .connect-current small{display:block!important;font-size:14px!important;line-height:1.25!important;margin-top:5px!important;white-space:normal!important}
  .device-menu.show .connect-current .connect-device-icon,
  .device-menu.show .connect-current>span:first-child{
    display:grid!important;place-items:center!important;
    width:46px!important;height:46px!important;
    font-size:28px!important;line-height:1!important;
  }
  .device-menu.show .connect-current i,.device-menu.show .connect-current em{justify-self:end!important;align-self:center!important}
  .device-menu.show .connect-label{
    box-sizing:border-box!important;
    padding:2px 20px 10px!important;
    margin:0!important;
    font-size:12px!important;line-height:1.2!important;
  }
  .device-menu.show .device-row{
    box-sizing:border-box!important;
    width:calc(100% - 24px)!important;
    min-height:72px!important;
    margin:4px 12px!important;
    padding:12px 14px!important;
    grid-template-columns:42px minmax(0,1fr) 20px!important;
    gap:12px!important;
    border-radius:15px!important;
    background:#171219!important;
  }
  .device-menu.show .device-row>span:nth-child(2){min-width:0!important}
  .device-menu.show .device-row strong{display:block!important;font-size:16px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .device-menu.show .device-row small{font-size:13px!important;margin-top:3px!important}
  .device-menu.show .connect-empty{
    box-sizing:border-box!important;
    margin:0!important;
    padding:14px 20px 24px!important;
    font-size:14px!important;line-height:1.5!important;
  }
  .device-menu.show .connect-login{min-height:44px!important;padding:10px 16px!important}
}
/* Build 113 — FraiseTUBE Connect diagnostics/presence */
.device-row.offline{opacity:.58;filter:saturate(.55);cursor:default}
.device-row.offline em{color:#8f8798}
.connect-head small{max-width:min(560px,72vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:760px){.connect-head small{max-width:72vw;font-size:11px}.device-row small,.connect-current small{overflow-wrap:anywhere}}

/* FraiseTUBE Connect — v1.10.8 build116: remote control + mobile control placement */
@media(max-width:760px), (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  /* Connect prend la place du bouton de réduction dans la rangée principale. */
  body:not(.mobile-player-minimized) .player .controls-main #deviceBtn{display:grid!important;place-items:center!important;width:36px!important;height:36px!important;min-width:36px!important;padding:0!important;font-size:0!important;border-radius:50%!important}
  body:not(.mobile-player-minimized) .player .controls-main #deviceBtn::before{content:'▣';font-size:18px!important;line-height:1!important}
  body:not(.mobile-player-minimized) .player .controls-main #dockPlayerBtn{display:grid!important;place-items:center!important;position:absolute!important;right:10px!important;top:8px!important;z-index:7!important;width:30px!important;height:30px!important;background:#1b1022cc!important;border:1px solid #543060!important;border-radius:50%!important;font-size:14px!important}
  body:not(.mobile-player-minimized) .mobile-connect-btn{display:none!important}
  /* En mini-lecteur: Connect à droite, agrandissement juste à sa gauche. */
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-connect-btn{display:grid!important;right:12px!important;top:10px!important}
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-player-expand{right:54px!important;top:10px!important}
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player{padding-right:96px!important}
}


/* FraiseTUBE Connect — v1.10.9 build117: synchronized presentation + immersive fullscreen */
.full-player{isolation:isolate;--full-player-bg:none}
.full-player::before{content:"";position:fixed;inset:-5%;z-index:-2;background-image:linear-gradient(rgba(9,6,13,.60),rgba(9,6,13,.88)),var(--full-player-bg);background-position:center;background-size:cover;filter:blur(34px) saturate(.85);opacity:.48;transform:scale(1.08);transition:opacity 1.2s ease,filter 1.2s ease}
.full-player::after{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(circle at 48% 42%,rgba(255,43,194,.13),transparent 44%),linear-gradient(180deg,rgba(7,4,11,.08),rgba(7,4,11,.72));pointer-events:none}
.full-connect-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:0 14px;border:1px solid #70417d;border-radius:999px;background:#1b1022cc;color:#fff;font-size:12px;font-weight:800;cursor:pointer}
.full-connect-btn:hover{border-color:#ff47ce;color:#ff8ddd}
.full-player.immersive::before{opacity:.78;filter:blur(26px) saturate(1.05);animation:sagacityAmbientBg 20s ease-in-out infinite alternate}
.full-player.immersive .full-player-art{animation:sagacityAmbientArt 18s ease-in-out infinite alternate;box-shadow:0 32px 110px #000c,0 0 80px rgba(255,43,194,.10)}
.full-player.immersive .queue-panel{opacity:0;transform:translateX(34px);pointer-events:none}
.full-player.immersive .full-player-close{opacity:.12}
.full-player.immersive .full-player-main{transform:translateX(-2vw) scale(1.025)}
.full-player .queue-panel,.full-player .full-player-close,.full-player .full-player-main{transition:opacity .8s ease,transform 1.1s ease}
@keyframes sagacityAmbientArt{0%{transform:scale(1) translate3d(0,0,0)}100%{transform:scale(1.055) translate3d(1.2%,-1%,0)}}
@keyframes sagacityAmbientBg{0%{transform:scale(1.08) translate3d(-1%,0,0)}100%{transform:scale(1.16) translate3d(1.5%,-1%,0)}}
@media(max-width:760px), (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  body:not(.mobile-player-minimized) .player .controls-main{position:relative!important;justify-content:center!important;padding-right:38px!important}
  body:not(.mobile-player-minimized) .player .controls-main #deviceBtn{display:grid!important;place-items:center!important;align-self:center!important;width:38px!important;height:38px!important;min-width:38px!important;padding:0!important;margin:0 2px!important;line-height:1!important;font-size:0!important}
  body:not(.mobile-player-minimized) .player .controls-main #deviceBtn::before{content:'▣';display:block;font-size:18px!important;line-height:1!important;transform:none!important}
  body:not(.mobile-player-minimized) .player .controls-main #dockPlayerBtn{right:4px!important;top:50%!important;transform:translateY(-50%)!important;width:30px!important;height:30px!important;min-width:30px!important}
  .full-connect-btn{min-width:44px!important;height:44px!important;padding:0 12px!important;border-radius:50%!important;font-size:0!important}
  .full-connect-btn::before{content:'▣';font-size:19px!important;line-height:1!important}
  .full-connect-btn span{display:none!important}
}
@media(orientation:landscape) and (max-width:1100px) and (max-height:650px){
  .full-player.immersive .queue-panel{display:none!important}
  .full-player.immersive .full-player-inner{grid-template-columns:minmax(160px,31vw) minmax(0,1fr)!important}
  .full-player.immersive .full-player-main{transform:none!important}
}

.full-player>.device-menu.show{position:fixed!important;right:24px!important;bottom:24px!important;left:auto!important;top:auto!important;z-index:6000!important;width:min(360px,calc(100vw - 48px))!important;max-height:min(70vh,620px)!important;overflow:auto!important}
@media(max-width:760px), (orientation:landscape) and (max-width:1100px) and (max-height:650px){.full-player>.device-menu.show{left:0!important;right:0!important;bottom:0!important;width:100vw!important;max-width:none!important}}

/* FraiseTUBE v1.10.10 build118 — Connect polish + mobile player rebuild */
.connect-glyph{
  display:inline-block;width:22px;height:22px;flex:0 0 22px;
  background:currentColor;
  -webkit-mask:url('/assets/sagacity-connect.svg') center/contain no-repeat;
  mask:url('/assets/sagacity-connect.svg') center/contain no-repeat;
}
.sagacity-connect-button{color:#d8d3dc!important;transition:color .18s ease,filter .18s ease,border-color .18s ease,background .18s ease}
.sagacity-connect-button[data-connect-active="true"],.sagacity-connect-button.connect-active{
  color:#ff4fc8!important;border-color:#d53cb7!important;
  filter:drop-shadow(0 0 7px rgba(255,79,200,.34));
}
#deviceBtn{display:inline-flex;align-items:center;justify-content:center;gap:7px}
#deviceBtn .connect-label-text{display:inline}
.full-connect-btn::before{content:none!important}
.full-connect-btn .connect-glyph{width:21px;height:21px}
.device-row.offline{display:none!important}

/* Portrait mobile: un lecteur en vraies zones tactiles, plus de barre compressée. */
@media (max-width:760px) and (orientation:portrait){
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player{
    display:grid!important;grid-template-columns:1fr!important;gap:10px!important;
    min-height:172px!important;height:auto!important;padding:12px 14px 14px!important;
    border-radius:20px 20px 0 0!important;box-sizing:border-box!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .now{
    width:100%!important;max-width:none!important;min-width:0!important;padding-right:48px!important;
    display:grid!important;grid-template-columns:76px minmax(0,1fr)!important;gap:12px!important;align-items:center!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .thumb{
    width:76px!important;min-width:76px!important;flex-basis:76px!important;border-radius:10px!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #playerTitle{font-size:16px!important;line-height:1.2!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #playerEpisode{font-size:12px!important;line-height:1.35!important;margin-top:4px!important;white-space:normal!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .controls{display:grid!important;gap:10px!important;width:100%!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .controls-main{
    display:grid!important;grid-template-columns:44px 56px 44px 1fr 44px 44px!important;gap:8px!important;align-items:center!important;padding:0!important;position:static!important;width:100%!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .controls-main>*{position:static!important;transform:none!important;margin:0!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #shuffleBtn,
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #restartBtn{display:none!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #prevBtn{grid-column:1!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #playPauseBtn{grid-column:2!important;width:56px!important;height:56px!important;min-width:56px!important;font-size:22px!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #nextBtn{grid-column:3!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #deviceBtn{grid-column:5!important;width:44px!important;height:44px!important;min-width:44px!important;padding:0!important;border-radius:50%!important;font-size:0!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #deviceBtn .connect-label-text{display:none!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #deviceBtn .connect-glyph{width:24px!important;height:24px!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #dockPlayerBtn{grid-column:6!important;width:44px!important;height:44px!important;min-width:44px!important;border-radius:50%!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .progress-row{
    display:grid!important;grid-template-columns:42px minmax(0,1fr) 42px!important;gap:8px!important;align-items:center!important;width:100%!important;font-size:11px!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .volume{display:none!important}
}

/* Paysage mobile : 2 lignes et timeline basse, jamais sous « À suivre ». */
@media (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player{
    display:grid!important;grid-template-columns:minmax(220px,1fr) auto!important;grid-template-rows:auto 24px!important;
    column-gap:18px!important;row-gap:8px!important;height:92px!important;min-height:92px!important;
    padding:10px 16px 12px!important;box-sizing:border-box!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .now{grid-column:1!important;grid-row:1!important;max-width:none!important;min-width:0!important;gap:10px!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .thumb{width:58px!important;min-width:58px!important;flex-basis:58px!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .controls{grid-column:2!important;grid-row:1!important;display:flex!important;align-items:center!important;min-width:0!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .controls-main{display:flex!important;gap:8px!important;align-items:center!important;padding:0!important;position:static!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .controls-main>*{position:static!important;transform:none!important;margin:0!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #shuffleBtn,
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #restartBtn{display:none!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #prevBtn,
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #nextBtn,
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #deviceBtn,
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #dockPlayerBtn{display:grid!important;width:44px!important;height:44px!important;min-width:44px!important;place-items:center!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #playPauseBtn{display:grid!important;width:50px!important;height:50px!important;min-width:50px!important;place-items:center!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #deviceBtn{font-size:0!important;border-radius:50%!important;padding:0!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #deviceBtn .connect-label-text{display:none!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .progress-row{
    grid-column:1/3!important;grid-row:2!important;display:grid!important;grid-template-columns:46px minmax(0,1fr) 46px!important;gap:8px!important;width:100%!important;align-items:center!important;font-size:10px!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .volume{display:none!important}

  /* Mini-player paysage : commandes séparées, aucune superposition. */
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-player-sticky-host.active .player{
    display:grid!important;grid-template-columns:minmax(230px,1fr) auto 102px!important;gap:12px!important;
    height:72px!important;min-height:72px!important;padding:8px 12px!important;align-items:center!important;box-sizing:border-box!important;
  }
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player .now{grid-column:1!important;min-width:0!important;max-width:none!important}
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player .controls{grid-column:2!important;display:block!important}
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player .controls-main{display:flex!important;gap:6px!important;align-items:center!important;justify-content:center!important}
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player .controls-main>*{display:none!important}
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player #prevBtn,
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player #playPauseBtn,
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player #nextBtn{display:grid!important;place-items:center!important}
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-player-expand,
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-connect-btn{
    display:grid!important;position:absolute!important;top:14px!important;width:44px!important;height:44px!important;min-width:44px!important;place-items:center!important;border-radius:50%!important;
  }
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-player-expand{right:12px!important}
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-connect-btn{right:62px!important}
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-connect-btn .connect-glyph{width:23px!important;height:23px!important}
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-progress-track{height:4px!important;bottom:0!important}
}

/* Plein écran mobile paysage : la timeline descend sous les contrôles et ne traverse jamais la file. */
@media (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  .full-player:not(.immersive) .full-player-inner{padding-bottom:28px!important}
  .full-player:not(.immersive) .full-player-main{padding-bottom:52px!important;position:relative!important}
  .full-player:not(.immersive) .full-progress{position:absolute!important;left:0!important;right:0!important;bottom:2px!important;width:100%!important;margin:0!important;z-index:2!important}
}


/* FraiseTUBE v1.10.11 build119 — Connect exclusivity + visual regression fixes */
/* SVG rendu directement plutôt que via mask : fiabilise Safari/iOS et évite les cercles vides. */
.connect-glyph{
  display:inline-block!important;width:24px;height:24px;flex:0 0 24px!important;
  background-color:transparent!important;-webkit-mask:none!important;mask:none!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 72 72' fill='none'%3E%3Cg stroke='%23d8d3dc' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='13' y='13' width='46' height='34' rx='6'/%3E%3Cpath d='M29 56h14M36 47v9'/%3E%3Cpath d='M18 37c4.5 0 8 3.5 8 8M18 29c9 0 16 7 16 16'/%3E%3Ccircle cx='18' cy='45' r='2.4' fill='%23d8d3dc' stroke='none'/%3E%3C/g%3E%3C/svg%3E")!important;
  background-position:center!important;background-repeat:no-repeat!important;background-size:contain!important;
}
.sagacity-connect-button[data-connect-active="true"] .connect-glyph,.sagacity-connect-button.connect-active .connect-glyph{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 72 72' fill='none'%3E%3Cg stroke='%23ff4fc8' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='13' y='13' width='46' height='34' rx='6'/%3E%3Cpath d='M29 56h14M36 47v9'/%3E%3Cpath d='M18 37c4.5 0 8 3.5 8 8M18 29c9 0 16 7 16 16'/%3E%3Ccircle cx='18' cy='45' r='2.4' fill='%23ff4fc8' stroke='none'/%3E%3C/g%3E%3C/svg%3E")!important;
}
.full-connect-btn .connect-glyph{display:inline-block!important}
.full-connect-btn .connect-label-text{display:inline!important}

/* Desktop: géométrie stable. L'état actif ne change jamais la taille/position. */
@media (min-width:761px){
  #deviceBtn{width:144px!important;min-width:144px!important;height:48px!important;padding:0 18px!important;box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;overflow:visible!important}
  #deviceBtn .connect-label-text{display:inline!important;font-size:15px!important;line-height:1!important}
  .player .controls-main{min-width:0!important}
  .player #dockPlayerBtn,.player #deviceBtn{position:relative!important;transform:none!important}
}

/* Plein écran: bouton Connect complet, sans cercle vide ni chevauchement. */
.full-player-controls{display:flex!important;align-items:center!important;gap:16px!important;flex-wrap:nowrap!important}
.full-connect-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-width:120px!important;height:48px!important;padding:0 16px!important;box-sizing:border-box!important}

/* Portrait mobile standard: lecteur compact mais respirant. */
@media (max-width:760px) and (orientation:portrait){
 body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player{min-height:158px!important;padding:10px 14px 12px!important;gap:8px!important}
 body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .now{grid-template-columns:64px minmax(0,1fr)!important;padding-right:0!important}
 body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .thumb{width:64px!important;height:48px!important;min-width:64px!important;flex-basis:64px!important}
 body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .controls-main{grid-template-columns:44px 58px 44px minmax(10px,1fr) 46px 46px!important;gap:7px!important}
 body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #deviceBtn,
 body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #dockPlayerBtn{overflow:visible!important}
 body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #deviceBtn .connect-glyph{display:block!important;width:26px!important;height:26px!important}
}

/* Mini lecteur portrait: actions séparées et centrées. */
@media (max-width:760px) and (orientation:portrait){
 body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player{padding-right:116px!important;min-height:64px!important;height:64px!important}
 body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-connect-btn,
 body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-player-expand{display:grid!important;place-items:center!important;position:absolute!important;top:10px!important;width:44px!important;height:44px!important;border-radius:50%!important}
 body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-connect-btn{right:62px!important}
 body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-player-expand{right:12px!important}
 body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-connect-btn .connect-glyph{width:24px!important;height:24px!important;display:block!important}
}

/* Mobile paysage standard : deux rangées utilisables. */
@media (orientation:landscape) and (max-width:1100px) and (max-height:650px){
 body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player{grid-template-columns:minmax(190px,1fr) minmax(330px,auto)!important;grid-template-rows:54px 24px!important;height:100px!important;min-height:100px!important;padding:9px 14px 10px!important;gap:6px 14px!important}
 body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .controls-main{gap:10px!important;justify-content:flex-end!important}
 body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #deviceBtn{display:grid!important;width:46px!important;min-width:46px!important;padding:0!important}
 body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #deviceBtn .connect-glyph{display:block!important;width:25px!important;height:25px!important}
 body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .progress-row{grid-row:2!important;grid-column:1/3!important;margin-top:0!important}

 /* Mini paysage : aucun chevauchement entre play, Connect et retour lecteur. */
 body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-player-sticky-host.active .player{grid-template-columns:minmax(220px,1fr) 180px 104px!important;gap:10px!important;height:74px!important;min-height:74px!important;padding:8px 12px!important}
 body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player .controls{grid-column:2!important;min-width:180px!important}
 body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player .controls-main{gap:10px!important;justify-content:center!important}
 body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-connect-btn{right:62px!important;top:15px!important}
 body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-player-expand{right:12px!important;top:15px!important}
 body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-connect-btn .connect-glyph{display:block!important}
}

/* Si autoplay distant est bloqué par iOS, le bouton play reste clairement disponible. */
body.connect-awaiting-gesture #playPauseBtn{box-shadow:0 0 0 3px rgba(255,79,200,.25),0 0 16px rgba(255,79,200,.35)!important}


/* FraiseTUBE v1.10.15 build123 — mobile rollback hardening.
   Base UI intentionally remains build119: no redesign, only stability fixes. */
@media (max-width:760px){
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-player-sticky-host.active{position:sticky!important;top:56px!important;bottom:auto!important;z-index:490!important}
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-player-sticky-host.active .player{position:relative!important;top:auto!important;bottom:auto!important;left:auto!important;right:auto!important;transform:none!important}
  .full-player-close{z-index:1005!important;pointer-events:auto!important;touch-action:manipulation!important}
}
@media (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-player-sticky-host.active{position:sticky!important;top:56px!important;bottom:auto!important;z-index:490!important}
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-player-sticky-host.active .player{position:relative!important;inset:auto!important;margin:0!important;transform:none!important}
}


/* FraiseTUBE v1.10.16 build124 — ONLY mobile fullscreen landscape bottom transport fix.
   Reference validated in chat: keep upper layout intact; move progress to bottom full width;
   clean Connect icon; add explicit fullscreen-exit icon; no overflow/menu dots. */
.full-landscape-actions{display:none}

@media (orientation:landscape) and (max-height:650px) and (max-width:1200px){
  /* Reserve a real bottom transport lane without touching artwork/info/queue geometry. */
  .full-player.show .full-player-inner{
    padding-bottom:max(82px,calc(72px + env(safe-area-inset-bottom)))!important;
  }

  /* The central controls stay Prev / Play / Next only. */
  .full-player.show .full-player-controls #fullConnect{
    display:none!important;
  }

  /* One authoritative timeline pinned to the viewport bottom. */
  .full-player.show .full-progress{
    position:fixed!important;
    left:max(22px,calc(env(safe-area-inset-left) + 14px))!important;
    right:max(144px,calc(env(safe-area-inset-right) + 136px))!important;
    bottom:max(18px,calc(env(safe-area-inset-bottom) + 12px))!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:46px!important;
    margin:0!important;
    padding:0!important;
    display:grid!important;
    grid-template-columns:58px minmax(0,1fr) 58px!important;
    align-items:center!important;
    gap:12px!important;
    z-index:460!important;
    font-size:16px!important;
    line-height:1!important;
    color:#f6eef9!important;
    background:transparent!important;
  }
  .full-player.show .full-progress #fullCurrent,
  .full-player.show .full-progress #fullTotal{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    width:auto!important;
    min-width:0!important;
    font-size:16px!important;
    font-weight:600!important;
    letter-spacing:.01em!important;
    white-space:nowrap!important;
    color:#f6eef9!important;
  }
  .full-player.show .full-progress #fullCurrent{text-align:left!important}
  .full-player.show .full-progress #fullTotal{text-align:right!important}
  .full-player.show .full-progress #fullProgress{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:30px!important;
    margin:0!important;
    accent-color:#ff2f45!important;
    cursor:pointer!important;
  }
  .full-player.show .full-progress #fullProgress::-webkit-slider-runnable-track{
    height:8px!important;
    border-radius:999px!important;
  }
  .full-player.show .full-progress #fullProgress::-webkit-slider-thumb{
    width:22px!important;
    height:22px!important;
    margin-top:-7px!important;
  }
  .full-player.show .full-progress #fullProgress::-moz-range-track{
    height:8px!important;
    border-radius:999px!important;
  }
  .full-player.show .full-progress #fullProgress::-moz-range-thumb{
    width:22px!important;
    height:22px!important;
    border:0!important;
    border-radius:50%!important;
  }

  /* Bottom-right contains only Connect + fullscreen exit, exactly as validated. */
  .full-player.show .full-landscape-actions{
    position:fixed!important;
    right:max(18px,calc(env(safe-area-inset-right) + 12px))!important;
    bottom:max(18px,calc(env(safe-area-inset-bottom) + 12px))!important;
    z-index:470!important;
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    height:46px!important;
    pointer-events:auto!important;
  }
  .full-player.show .full-landscape-connect,
  .full-player.show .full-landscape-exit{
    width:46px!important;
    min-width:46px!important;
    height:46px!important;
    min-height:46px!important;
    padding:0!important;
    margin:0!important;
    border-radius:12px!important;
    border:1px solid rgba(166,108,185,.55)!important;
    background:rgba(22,12,30,.90)!important;
    color:#fff!important;
    display:grid!important;
    place-items:center!important;
    box-sizing:border-box!important;
    cursor:pointer!important;
  }
  .full-player.show .full-landscape-connect .connect-glyph{
    display:block!important;
    width:25px!important;
    height:25px!important;
  }
  .full-player.show .full-landscape-connect[data-connect-active="true"]{
    border-color:#ff3cc5!important;
    box-shadow:0 0 0 1px rgba(255,60,197,.18),0 0 20px rgba(255,60,197,.14)!important;
  }
  .fullscreen-exit-glyph{
    display:block!important;
    width:24px!important;
    height:24px!important;
    background:center/24px 24px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3H3v5'/%3E%3Cpath d='m3 3 6 6'/%3E%3Cpath d='M16 3h5v5'/%3E%3Cpath d='m21 3-6 6'/%3E%3Cpath d='M8 21H3v-5'/%3E%3Cpath d='m3 21 6-6'/%3E%3Cpath d='M16 21h5v-5'/%3E%3Cpath d='m21 21-6-6'/%3E%3C/svg%3E")!important;
  }
}


/* FraiseTUBE v1.10.17 build125 — authoritative mobile landscape fullscreen. */
@media (orientation:landscape) and (max-height:650px) and (max-width:1200px){
  html body.full-player-open #fullPlayer.show #fullConnect{display:none!important}
  html body.full-player-open #fullPlayer.show .full-player-inner{padding-bottom:max(86px,calc(76px + env(safe-area-inset-bottom)))!important}
  html body.full-player-open #fullPlayer.show .full-progress{position:fixed!important;left:max(24px,calc(env(safe-area-inset-left) + 16px))!important;right:max(146px,calc(env(safe-area-inset-right) + 138px))!important;bottom:max(18px,calc(env(safe-area-inset-bottom) + 12px))!important;width:auto!important;min-width:0!important;max-width:none!important;height:48px!important;margin:0!important;padding:0!important;display:grid!important;grid-template-columns:60px minmax(0,1fr) 60px!important;align-items:center!important;gap:14px!important;z-index:998!important;background:transparent!important;font-size:17px!important;line-height:1!important;color:#fff!important}
  html body.full-player-open #fullPlayer.show .full-progress #fullCurrent,html body.full-player-open #fullPlayer.show .full-progress #fullTotal{display:block!important;visibility:visible!important;opacity:1!important;font-size:17px!important;font-weight:650!important;white-space:nowrap!important;color:#fff!important}
  html body.full-player-open #fullPlayer.show .full-progress #fullProgress{display:block!important;width:100%!important;min-width:0!important;max-width:none!important;height:32px!important;margin:0!important;accent-color:#ff2f45!important}
  html body.full-player-open #fullPlayer.show .full-progress #fullProgress::-webkit-slider-runnable-track{height:9px!important;border-radius:999px!important;background:linear-gradient(90deg,#ff2f45 0%,#ff2f45 var(--progress,0%),#6d6572 var(--progress,0%),#6d6572 100%)!important}
  html body.full-player-open #fullPlayer.show .full-progress #fullProgress::-webkit-slider-thumb{width:24px!important;height:24px!important;margin-top:-7.5px!important;border-radius:50%!important;background:#fff!important}
  html body.full-player-open #fullPlayer.show .full-progress #fullProgress::-moz-range-track{height:9px!important;border-radius:999px!important;background:#6d6572!important}
  html body.full-player-open #fullPlayer.show .full-progress #fullProgress::-moz-range-progress{height:9px!important;border-radius:999px!important;background:#ff2f45!important}
  html body.full-player-open #fullPlayer.show .full-progress #fullProgress::-moz-range-thumb{width:24px!important;height:24px!important;border:0!important;border-radius:50%!important;background:#fff!important}
  html body.full-player-open #fullPlayer.show .full-landscape-actions{position:fixed!important;right:max(18px,calc(env(safe-area-inset-right) + 12px))!important;bottom:max(18px,calc(env(safe-area-inset-bottom) + 12px))!important;z-index:999!important;display:flex!important;align-items:center!important;gap:12px!important;height:48px!important}
  html body.full-player-open #fullPlayer.show .full-landscape-connect,html body.full-player-open #fullPlayer.show .full-landscape-exit{display:grid!important;place-items:center!important;width:48px!important;min-width:48px!important;height:48px!important;min-height:48px!important;margin:0!important;padding:0!important;border-radius:12px!important;border:1px solid rgba(166,108,185,.55)!important;background:rgba(22,12,30,.94)!important;color:#fff!important;box-sizing:border-box!important}
  html body.full-player-open #fullPlayer.show .full-landscape-connect .connect-glyph{display:block!important;width:26px!important;height:26px!important}
  html body.full-player-open #fullPlayer.show .full-landscape-connect[data-connect-active="true"]{border-color:#ff3cc5!important;box-shadow:0 0 0 1px rgba(255,60,197,.2),0 0 20px rgba(255,60,197,.14)!important}
}


/* v1.10.19 build127 — mobile header player launcher only */
.mobile-header-play{display:none}
@media(max-width:760px), (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  .mobile-header-play{
    display:grid!important;place-items:center!important;flex:0 0 40px!important;width:40px!important;height:40px!important;
    margin:0!important;padding:0!important;border:2px solid #ff2e9b!important;border-radius:50%!important;
    background:linear-gradient(145deg,#161616,#0b0b0b)!important;color:#fff!important;font-size:18px!important;font-weight:800!important;
    line-height:1!important;cursor:pointer!important;box-shadow:0 0 0 1px rgba(255,46,155,.14),0 0 18px rgba(255,46,155,.12)!important;
    touch-action:manipulation!important;position:relative!important;z-index:260!important;
  }
  .mobile-header-play:active{transform:scale(.94)!important}
  .mobile-header-play:focus-visible{outline:2px solid #ff5366!important;outline-offset:2px!important}
  .userbox{gap:8px!important}
  /* Explicit launcher: it may reveal the standard player even before local audio has started. */
  body.mobile-player-forced-open.player-idle .player{display:grid!important}
  body.mobile-player-forced-open .player{position:relative!important;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;width:100%!important;min-width:0!important}
}
@media(min-width:761px) and not ((orientation:landscape) and (max-width:1100px) and (max-height:650px)){
  .mobile-header-play{display:none!important}
}

/* FraiseTUBE v1.10.20 build128 — validated mobile portrait standard player only. */
@media (max-width:760px) and (orientation:portrait){
  /* The header launcher only exists while the player itself is not visible. */
  body:not(.player-idle) .mobile-header-play,
  body.full-player-open .mobile-header-play{display:none!important}

  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player{
    position:fixed!important;left:12px!important;right:12px!important;bottom:max(10px,env(safe-area-inset-bottom))!important;top:auto!important;
    width:auto!important;height:146px!important;min-height:146px!important;max-height:146px!important;margin:0!important;padding:11px 14px 12px!important;
    display:grid!important;grid-template-columns:1fr!important;grid-template-rows:52px 64px!important;gap:7px!important;
    border:1px solid rgba(207,54,255,.58)!important;border-radius:18px!important;background:linear-gradient(110deg,rgba(20,9,29,.985),rgba(27,11,35,.985))!important;
    box-shadow:0 10px 38px rgba(0,0,0,.58),0 0 22px rgba(202,43,255,.08)!important;z-index:520!important;overflow:visible!important;box-sizing:border-box!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .now,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .now{
    grid-row:1!important;grid-column:1!important;display:grid!important;grid-template-columns:52px minmax(0,1fr)!important;align-items:center!important;gap:10px!important;
    width:auto!important;min-width:0!important;padding:0 104px 0 0!important;margin:0!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .thumb,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .thumb{width:52px!important;height:46px!important;min-width:52px!important;border-radius:7px!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .player-meta,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .player-meta{min-width:0!important;overflow:hidden!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #playerTitle,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #playerTitle{display:block!important;font-size:12px!important;font-weight:700!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #playerEpisode,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #playerEpisode{display:block!important;font-size:12px!important;line-height:1.2!important;margin-top:4px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}

  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .controls,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .controls{
    grid-row:2!important;grid-column:1!important;display:grid!important;grid-template-columns:214px minmax(0,1fr)!important;grid-template-rows:64px!important;align-items:center!important;gap:10px!important;width:100%!important;min-width:0!important;margin:0!important;padding:0!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .controls-main,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .controls-main{
    grid-column:1!important;grid-row:1!important;display:grid!important;grid-template-columns:42px 62px 42px!important;justify-content:start!important;align-items:center!important;gap:9px!important;width:164px!important;min-width:164px!important;margin:0!important;padding:0!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #shuffleBtn,
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #restartBtn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #shuffleBtn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #restartBtn{display:none!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #prevBtn,
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #nextBtn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #prevBtn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #nextBtn{
    display:grid!important;place-items:center!important;position:relative!important;width:42px!important;height:42px!important;min-width:42px!important;padding:0!important;border:0!important;background:transparent!important;color:transparent!important;font-size:0!important;box-shadow:none!important
  }
  .player #prevBtn::before,.player #nextBtn::before{content:''!important;display:block!important;width:24px!important;height:24px!important;background:center/24px 24px no-repeat!important}
  .player #prevBtn::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M5 5h2v14H5zM19 5.7v12.6c0 .8-.9 1.3-1.6.9L8.2 13c-.6-.4-.6-1.3 0-1.7l9.2-6.2c.7-.4 1.6.1 1.6.9z'/%3E%3C/svg%3E")!important}
  .player #nextBtn::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M17 5h2v14h-2zM5 5.7v12.6c0 .8.9 1.3 1.6.9l9.2-6.2c.6-.4.6-1.3 0-1.7L6.6 5.1C5.9 4.7 5 5.2 5 6z'/%3E%3C/svg%3E")!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #playPauseBtn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #playPauseBtn{
    display:grid!important;place-items:center!important;width:62px!important;height:62px!important;min-width:62px!important;padding:0!important;border:0!important;border-radius:50%!important;background:linear-gradient(145deg,#ff55c9,#ff39b4)!important;color:#08050b!important;font-size:25px!important;font-weight:800!important;box-shadow:0 0 18px rgba(255,53,187,.16)!important
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .progress-row,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .progress-row{
    grid-column:2!important;grid-row:1!important;display:grid!important;grid-template-columns:38px minmax(0,1fr) 38px!important;align-items:center!important;gap:8px!important;width:100%!important;min-width:0!important;margin:0!important;padding:0!important;font-size:11px!important;color:#c9bdcc!important
  }
  .player .progress-row input{width:100%!important;min-width:0!important;height:26px!important;accent-color:#ff42bd!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #deviceBtn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #deviceBtn{
    display:grid!important;place-items:center!important;position:absolute!important;right:54px!important;top:10px!important;width:40px!important;height:40px!important;min-width:40px!important;padding:0!important;border-radius:50%!important;font-size:0!important;z-index:8!important
  }
  .player #deviceBtn .connect-label-text{display:none!important}.player #deviceBtn .connect-glyph{display:block!important;width:23px!important;height:23px!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #dockPlayerBtn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #dockPlayerBtn{
    display:grid!important;place-items:center!important;position:absolute!important;right:10px!important;top:10px!important;width:36px!important;height:40px!important;min-width:36px!important;padding:0!important;border-radius:50%!important;background:#160b20!important;border:1px solid #51305d!important;color:transparent!important;font-size:0!important;z-index:8!important
  }
  .player #dockPlayerBtn::before{content:'⌃'!important;color:#fff!important;font-size:20px!important;line-height:1!important;transform:translateY(3px)!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .volume,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .volume,
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .mobile-connect-btn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .mobile-connect-btn,
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .mobile-player-expand,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .mobile-player-expand,
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .mobile-progress-track,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .mobile-progress-track{display:none!important}
}


/* FraiseTUBE v1.10.21 build129 — portrait standard player: final targeted correction.
   Scope deliberately limited to portrait mobile standard player + header launcher visibility. */
@media (max-width:760px) and (orientation:portrait){
  /* Once any mobile player surface is visible, the header launcher disappears. */
  body:not(.player-idle) .mobile-header-play,
  body.mobile-player-forced-open .mobile-header-play,
  body.full-player-open .mobile-header-play{display:none!important}

  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player{
    height:146px!important;min-height:146px!important;max-height:146px!important;
    padding:11px 12px 12px!important;
    grid-template-rows:52px 64px!important;gap:7px!important;
    overflow:visible!important;
  }

  /* Header line: reserve a fixed, internal area for Connect + mini. */
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .now,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .now{
    padding-right:94px!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .controls,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .controls,
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .controls-main,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .controls-main{
    position:static!important;
  }

  /* Transport remains left; give the timeline all remaining horizontal room. */
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .controls,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .controls{
    grid-template-columns:140px minmax(0,1fr)!important;
    gap:7px!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .controls-main,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .controls-main{
    grid-template-columns:36px 58px 36px!important;
    width:140px!important;min-width:140px!important;gap:5px!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #prevBtn,
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #nextBtn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #prevBtn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #nextBtn{
    width:36px!important;height:44px!important;min-width:36px!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #playPauseBtn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #playPauseBtn{
    width:58px!important;height:58px!important;min-width:58px!important;font-size:24px!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .progress-row,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .progress-row{
    grid-template-columns:auto minmax(0,1fr) auto!important;
    gap:6px!important;width:100%!important;min-width:0!important;font-size:11px!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .progress-row span,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .progress-row span{
    min-width:0!important;white-space:nowrap!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .progress-row input,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .progress-row input{
    width:100%!important;min-width:0!important;margin:0!important;
  }

  /* Validated FraiseTUBE Connect glyph only: no legacy square/pseudo-icon. */
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #deviceBtn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #deviceBtn{
    position:absolute!important;right:56px!important;top:9px!important;
    width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;
    margin:0!important;padding:0!important;border-radius:50%!important;
    border:1px solid rgba(166,108,185,.55)!important;background:rgba(22,12,30,.94)!important;
    box-sizing:border-box!important;overflow:hidden!important;z-index:12!important;
  }
  .player #deviceBtn::before,.player #deviceBtn::after{content:none!important;display:none!important}
  .player #deviceBtn .connect-glyph{display:block!important;width:24px!important;height:24px!important}
  .player #deviceBtn[data-connect-active="true"],.player #deviceBtn.connect-active{
    border-color:#ff3cc5!important;box-shadow:0 0 0 1px rgba(255,60,197,.18),0 0 16px rgba(255,60,197,.13)!important;
  }

  /* Mini-player transition control stays fully inside the player frame. */
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #dockPlayerBtn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #dockPlayerBtn{
    position:absolute!important;right:10px!important;top:10px!important;
    width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;
    margin:0!important;padding:0!important;border-radius:50%!important;
    border:1px solid rgba(166,108,185,.45)!important;background:rgba(22,12,30,.94)!important;
    box-sizing:border-box!important;transform:none!important;z-index:12!important;
  }
  .player #dockPlayerBtn::before{content:'⌃'!important;display:block!important;color:#fff!important;font-size:19px!important;line-height:1!important;transform:translateY(2px)!important}
}

/* FraiseTUBE v1.10.22 build130 — validated mobile landscape standard player only.
   Mirrors the approved portrait logic without touching mini-player or fullscreen landscape. */
@media (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  /* Hide the header launcher as soon as the standard player is open. */
  body:not(.player-idle) .mobile-header-play,
  body.mobile-player-forced-open .mobile-header-play,
  body.full-player-open .mobile-header-play{display:none!important}

  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player{
    position:fixed!important;left:12px!important;right:12px!important;bottom:max(8px,env(safe-area-inset-bottom))!important;top:auto!important;
    width:auto!important;height:110px!important;min-height:110px!important;max-height:110px!important;margin:0!important;
    padding:8px 12px 9px!important;transform:none!important;
    display:grid!important;grid-template-columns:1fr!important;grid-template-rows:45px 48px!important;gap:5px!important;align-items:center!important;
    border-radius:18px!important;overflow:visible!important;box-sizing:border-box!important;
  }

  /* Top line: artwork/title left, Connect + mini safely inside the frame. */
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .now,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .now{
    grid-column:1!important;grid-row:1!important;display:grid!important;grid-template-columns:50px minmax(0,1fr)!important;align-items:center!important;gap:9px!important;
    min-width:0!important;width:100%!important;margin:0!important;padding:0 94px 0 0!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .thumb,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .thumb{
    display:block!important;width:50px!important;height:40px!important;min-width:50px!important;border-radius:7px!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .player-meta,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .player-meta{
    display:block!important;min-width:0!important;overflow:hidden!important;text-align:left!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .player-title-wrap,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .player-title-wrap{
    max-width:100%!important;overflow:hidden!important;white-space:nowrap!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #playerTitle,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #playerTitle{
    display:block!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;animation:none!important;transform:none!important;padding-left:0!important;
    font-size:13px!important;line-height:1.15!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #playerEpisode,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #playerEpisode{
    display:block!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:11px!important;line-height:1.15!important;margin-top:3px!important;
  }

  /* Bottom line: Prev / Play-Pause / Next on the left, long timeline on all remaining space. */
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .controls,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .controls{
    grid-column:1!important;grid-row:2!important;position:static!important;display:grid!important;grid-template-columns:140px minmax(0,1fr)!important;grid-template-rows:48px!important;align-items:center!important;gap:10px!important;
    width:100%!important;min-width:0!important;margin:0!important;padding:0!important;text-align:left!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .controls-main,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .controls-main{
    grid-column:1!important;grid-row:1!important;position:static!important;display:grid!important;grid-template-columns:36px 58px 36px!important;align-items:center!important;justify-content:start!important;
    width:140px!important;min-width:140px!important;height:48px!important;gap:5px!important;margin:0!important;padding:0!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #shuffleBtn,
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #restartBtn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #shuffleBtn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #restartBtn{display:none!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #prevBtn,
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #nextBtn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #prevBtn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #nextBtn{
    display:grid!important;place-items:center!important;width:36px!important;height:42px!important;min-width:36px!important;margin:0!important;padding:0!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #playPauseBtn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #playPauseBtn{
    display:grid!important;place-items:center!important;width:58px!important;height:58px!important;min-width:58px!important;margin:0!important;padding:0!important;
    border:0!important;border-radius:50%!important;background:linear-gradient(145deg,#ff55c9,#ff39b4)!important;color:#08050b!important;font-size:24px!important;font-weight:800!important;
  }

  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .progress-row,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .progress-row{
    grid-column:2!important;grid-row:1!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;
    width:100%!important;min-width:0!important;margin:0!important;padding:0!important;gap:8px!important;font-size:12px!important;color:#c9bdcc!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .progress-row span,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .progress-row span{
    min-width:0!important;white-space:nowrap!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .progress-row input,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .progress-row input{
    width:100%!important;min-width:0!important;height:28px!important;margin:0!important;accent-color:#ff42bd!important;
  }

  /* Same validated Connect / mini controls as portrait, icon-only and inside the frame. */
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #deviceBtn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #deviceBtn{
    display:grid!important;place-items:center!important;position:absolute!important;right:56px!important;top:8px!important;
    width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;margin:0!important;padding:0!important;
    border-radius:50%!important;border:1px solid rgba(166,108,185,.55)!important;background:rgba(22,12,30,.94)!important;overflow:hidden!important;box-sizing:border-box!important;z-index:12!important;
    font-size:0!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #deviceBtn .connect-label-text,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #deviceBtn .connect-label-text{display:none!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #deviceBtn::before,
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #deviceBtn::after,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #deviceBtn::before,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #deviceBtn::after{content:none!important;display:none!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #deviceBtn .connect-glyph,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #deviceBtn .connect-glyph{display:block!important;width:24px!important;height:24px!important}
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #deviceBtn[data-connect-active="true"],
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #deviceBtn.connect-active,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #deviceBtn[data-connect-active="true"],
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #deviceBtn.connect-active{
    border-color:#ff3cc5!important;box-shadow:0 0 0 1px rgba(255,60,197,.18),0 0 16px rgba(255,60,197,.13)!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #dockPlayerBtn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #dockPlayerBtn{
    display:grid!important;place-items:center!important;position:absolute!important;right:10px!important;top:10px!important;
    width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;margin:0!important;padding:0!important;
    border-radius:50%!important;border:1px solid rgba(166,108,185,.45)!important;background:rgba(22,12,30,.94)!important;color:transparent!important;font-size:0!important;
    box-sizing:border-box!important;transform:none!important;z-index:12!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #dockPlayerBtn::before,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #dockPlayerBtn::before{
    content:'⌃'!important;display:block!important;color:#fff!important;font-size:19px!important;line-height:1!important;transform:translateY(2px)!important;
  }

  /* Standard landscape only: keep compact-only/fullscreen-only controls out. */
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .volume,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .volume,
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .mobile-connect-btn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .mobile-connect-btn,
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .mobile-player-expand,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .mobile-player-expand,
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .mobile-progress-track,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .mobile-progress-track{display:none!important}
}

/* FraiseTUBE v1.10.23 build131 — landscape standard player micro-adjustment only.
   Keep the validated build130 layout and pull the main Play/Pause button fully inside the frame. */
@media (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player #playPauseBtn,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player #playPauseBtn{
    width:50px!important;
    height:50px!important;
    min-width:50px!important;
    min-height:50px!important;
    align-self:center!important;
    justify-self:center!important;
    margin:0!important;
    transform:none!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .controls-main,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .controls-main{
    grid-template-columns:36px 50px 36px!important;
    width:132px!important;
    min-width:132px!important;
    gap:5px!important;
  }
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player .controls,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player .controls{
    grid-template-columns:132px minmax(0,1fr)!important;
  }
}

/* FraiseTUBE v1.10.24 build132 — landscape standard player bottom breathing room only.
   Keeps the validated build131 layout and adds a small safe gap below Play/Pause. */
@media (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player{
    height:116px!important;
    min-height:116px!important;
    max-height:116px!important;
    padding:8px 12px 11px!important;
    grid-template-rows:45px 48px!important;
    gap:4px!important;
  }
}


/* FraiseTUBE v1.10.25 build133 — final mobile MVP fixes only.
   1) Portrait standard player remains pinned to the visual viewport while scrolling.
   2) Landscape mini-player mirrors the validated portrait mini-player, only wider. */
@media (max-width:760px) and (orientation:portrait){
  body:not(.mobile-player-minimized):not(.full-player-open):not(.player-idle) .player,
  body.mobile-player-forced-open:not(.mobile-player-minimized):not(.full-player-open) .player{
    position:fixed!important;
    top:auto!important;
    left:12px!important;
    right:12px!important;
    bottom:calc(max(10px,env(safe-area-inset-bottom)) + var(--mobile-visual-bottom-offset,0px))!important;
    margin:0!important;
    transform:none!important;
    z-index:520!important;
  }
}

@media (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-player-sticky-host.active{
    position:sticky!important;
    top:var(--mobile-header-height,56px)!important;
    bottom:auto!important;
    z-index:490!important;
    width:100%!important;
  }
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-player-sticky-host.active .player{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    max-width:none!important;
    height:64px!important;
    min-height:64px!important;
    margin:0!important;
    padding:7px 116px 7px 12px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:1fr!important;
    gap:0!important;
    align-items:center!important;
    border-left:0!important;
    border-right:0!important;
    border-radius:0!important;
    transform:none!important;
    box-sizing:border-box!important;
    background:rgba(17,8,24,.985)!important;
    box-shadow:0 1px 0 #4c235c,0 10px 26px #0007!important;
    backdrop-filter:blur(18px)!important;
  }
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player .now{
    grid-column:1!important;
    grid-row:1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    gap:10px!important;
  }
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player .thumb{
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    flex:0 0 46px!important;
    border-radius:7px!important;
  }
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player .controls,
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player .volume,
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .player .progress-row{
    display:none!important;
  }
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-connect-btn,
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-player-expand{
    display:grid!important;
    place-items:center!important;
    position:absolute!important;
    top:10px!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    border-radius:50%!important;
  }
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-connect-btn{
    right:62px!important;
  }
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-player-expand{
    right:12px!important;
  }
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-connect-btn .connect-glyph{
    display:block!important;
    width:24px!important;
    height:24px!important;
  }
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-progress-track{
    display:block!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    height:4px!important;
    border-radius:0!important;
  }
}

/* FraiseTUBE v1.10.26 build134 — landscape mini-player viewport pin only.
   Keep build133 visuals unchanged; mirror portrait behavior by fixing the mini-player host below the mobile header. */
@media (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-player-sticky-host.active{
    position:fixed!important;
    top:var(--mobile-header-height,56px)!important;
    left:0!important;
    right:0!important;
    bottom:auto!important;
    width:100%!important;
    margin:0!important;
    transform:none!important;
    z-index:520!important;
  }
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-player-sticky-host.active .player{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    margin:0!important;
    transform:none!important;
  }
}

/* FraiseTUBE v1.10.27 build135 — landscape mini-player top alignment only.
   Keep the validated build133/134 layout and fixed behavior; move the landscape mini-player flush to the visual viewport top. */
@media (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  body.mobile-player-minimized:not(.full-player-open):not(.player-idle) .mobile-player-sticky-host.active{
    top:0!important;
    padding-top:env(safe-area-inset-top,0px)!important;
    box-sizing:border-box!important;
  }
}


/* FraiseTUBE v1.10.28 build136 — Connect render/layout stabilization only. */
.device-menu.show{
  contain:layout paint!important;
  will-change:auto!important;
}
@media(max-width:760px), (orientation:landscape) and (max-width:1100px) and (max-height:650px){
  .device-menu.show{
    max-height:min(62dvh,calc(var(--connect-viewport-height,100vh) - 8px))!important;
    transition:none!important;
    animation:none!important;
  }
}


/* v1.10.29 build137 — Creator Studio followers + BackOffice Followers analytics */
.studio-follower-count{display:inline-flex;align-items:center;gap:5px;margin-top:8px;padding:5px 9px;border:1px solid #4a2855;border-radius:999px;background:#1a0c22;color:#d8cbcc;font-size:12px}.studio-follower-count b{color:#fff}.video-followers{margin-top:7px;font-size:11px}.follower-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}.follower-kpis .stat small{display:block;margin-top:5px}.positive{color:#67e5b0!important}.negative{color:#ff7892!important}.follower-chart{height:230px;display:flex;align-items:stretch;gap:4px;padding:18px 4px 28px;border-bottom:1px solid #33203d;overflow-x:auto}.follower-bar-group{min-width:24px;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px}.follower-bars{height:170px;width:100%;display:flex;align-items:flex-end;justify-content:center;gap:3px}.follower-bars i{display:block;width:min(10px,40%);min-height:3px;border-radius:5px 5px 2px 2px}.follow-bar{background:#67e5b0}.unfollow-bar{background:#ff557b}.follower-bar-group small{font-size:9px;color:#8f7e99;white-space:nowrap}.follower-legend{display:flex;gap:18px;margin-top:12px;color:#b9a9c0;font-size:12px}.follower-legend i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:5px}.dot-follow{background:#67e5b0}.dot-unfollow{background:#ff557b}.follower-ranking-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.follower-rank{display:grid;grid-template-columns:28px minmax(0,1fr) 70px 65px;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #2c1835}.follower-rank>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.follower-rank small{display:block;color:#8f7e99;font-size:10px}.follower-rank strong,.follower-rank em{text-align:right}.follower-rank em{font-style:normal;font-weight:800}.follower-pagination{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:14px}.follower-filters{grid-template-columns:repeat(6,minmax(130px,1fr))}.block{display:block}
@media(max-width:1100px){.follower-kpis{grid-template-columns:repeat(3,1fr)}.follower-filters{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.follower-kpis{grid-template-columns:repeat(2,1fr)}.follower-ranking-grid{grid-template-columns:1fr}.follower-filters{grid-template-columns:1fr}.follower-chart{height:190px}.follower-bars{height:130px}}

/* v1.13.2 build142 — backup resiliency & advertising editor */
.ad-editor-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}.ad-editor-head h2{margin:0 0 6px}.ad-preview{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(280px,1.3fr);gap:18px;align-items:center;margin:18px 0;padding:16px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.025)}.ad-preview audio{width:100%}.ad-preview[hidden],.field[hidden]{display:none!important}.ad-source-field small{display:block;margin-top:6px}
@media(max-width:800px){.ad-preview{grid-template-columns:1fr}.ad-editor-head{display:block}}


/* FraiseTUBE v1.14.1 build147 — locked playback break overlay */
.video-break-overlay{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;padding:24px;background:rgba(7,7,7,.88);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);outline:none}
.video-break-card{width:min(560px,92vw);min-height:360px;border:1px solid rgba(239,35,60,.42);border-radius:26px;background:radial-gradient(circle at 50% 18%,rgba(239,35,60,.14),transparent 44%),linear-gradient(180deg,#171011,#0b0909);box-shadow:0 28px 80px rgba(0,0,0,.62),0 0 38px rgba(239,35,60,.10);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;text-align:center;padding:34px;color:#fff}
.video-break-label{font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:#ff5a6b;font-size:clamp(16px,2vw,22px)}
.video-break-logo{width:min(230px,58vw);height:auto;animation:sagaBreakBounce 1.45s cubic-bezier(.45,0,.2,1) infinite;filter:drop-shadow(0 0 16px rgba(239,35,60,.24))}
.video-break-info h2{margin:4px 0 8px;font-size:clamp(23px,4vw,36px);line-height:1.05}.video-break-info p{margin:0 auto;max-width:440px;color:#d8cbcc;font-size:16px;line-height:1.5}.video-break-brand{font-size:13px;text-transform:uppercase;letter-spacing:.14em;color:#c7b5b7;font-weight:800}.video-break-time{margin-top:6px;color:#ad9b9d;font-variant-numeric:tabular-nums;font-size:14px}
@keyframes sagaBreakBounce{0%,100%{transform:translateY(0) rotate(-1deg) scale(1)}35%{transform:translateY(-11px) rotate(1.8deg) scale(1.035)}55%{transform:translateY(2px) rotate(-.7deg) scale(.995)}}
body.video-break-active .player,body.video-break-active .full-player,body.video-break-active .mobile-player-sticky-host,body.video-break-active .site-header{pointer-events:none!important;user-select:none!important}
body.video-break-active{overflow:hidden}
@media(max-width:600px){.video-break-card{min-height:320px;padding:28px 20px;border-radius:22px}.video-break-logo{width:min(210px,66vw)}}
@media(prefers-reduced-motion:reduce){.video-break-logo{animation:none}}

/* v1.15.0 — enriched publicity overlay */
.video-break-gallery{width:min(470px,82vw);display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.video-break-gallery.count-1{grid-template-columns:1fr}.video-break-gallery.count-2{grid-template-columns:repeat(2,1fr)}.video-break-gallery img{width:100%;height:130px;object-fit:cover;border-radius:14px;border:1px solid rgba(255,255,255,.12);animation:sagaAdImage 7s ease-in-out infinite alternate}.video-break-gallery.count-1 img{height:170px}.video-break-link{display:inline-flex;margin-top:16px;padding:10px 18px;border-radius:999px;background:#ef233c;color:#ffffff!important;font-weight:900;text-decoration:none;pointer-events:auto}.video-break-progress{width:min(470px,82vw)}.video-break-progressbar{height:5px;background:rgba(255,255,255,.12);border-radius:99px;overflow:hidden;margin-bottom:8px}.video-break-progressbar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#ef233c,#ff5a6b);transition:width .25s linear}.video-break-label{padding:6px 12px;border:1px solid rgba(239,35,60,.42);border-radius:999px;font-size:12px!important}.video-break-card:has(.video-break-gallery){min-height:520px}.video-break-active .video-break-link{pointer-events:auto!important}@keyframes sagaAdImage{from{transform:scale(1)}to{transform:scale(1.025)}}@media(max-width:600px){.video-break-gallery img{height:90px}.video-break-gallery.count-1 img{height:130px}.video-break-card:has(.video-break-gallery){min-height:460px}}

/* FraiseTUBE v1.16.0 build149 — advertiser media, multi-spot campaigns, harmonized stats filter */
.advertiser-editor{margin:18px 0!important;border:1px solid #5a2b67!important;background:linear-gradient(145deg,#190b22,#100716)!important}.advertiser-images{display:grid;grid-template-columns:repeat(3,minmax(140px,1fr));gap:12px;margin:10px 0 12px}.advertiser-image-card{display:grid;gap:8px;padding:10px;border:1px solid #462551;border-radius:14px;background:#0d0d0d}.advertiser-image-card img{width:100%;height:145px;object-fit:cover;border-radius:10px}.ad-media-upload{display:grid;gap:7px;padding:14px;border:1px dashed #623570;border-radius:14px;background:#0d0d0d}.ad-media-upload input[type=file]{width:100%;padding:11px;border:1px solid #4e2a5a;border-radius:11px;background:#0d0712;color:#ddd}.ad-empty-media{padding:18px;border:1px dashed #44244f;border-radius:12px;color:#a99bad;text-align:center;background:#0d0d0d}.ad-spot-list{display:grid;gap:8px;margin-bottom:10px}.ad-spot-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;border:1px solid #44244f;border-radius:12px;background:#0b0b0b}.ad-spot-row>div:first-child{min-width:0}.ad-spot-row b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ad-spot-row small{display:block;color:#a99bad;margin-top:3px}.ad-stats-toolbar{display:flex;justify-content:flex-end;align-items:end;margin:0 0 16px}.ad-stats-toolbar label{display:grid;gap:6px;min-width:220px;color:#bcaec5;font-size:12px;font-weight:800}.ad-stats-toolbar select{appearance:none;-webkit-appearance:none;min-height:44px;padding:0 42px 0 14px;border:1px solid #563065;border-radius:12px;background:linear-gradient(45deg,transparent 50%,#ff48c8 50%) calc(100% - 19px) 19px/6px 6px no-repeat,linear-gradient(135deg,#ff48c8 50%,transparent 50%) calc(100% - 13px) 19px/6px 6px no-repeat,linear-gradient(180deg,#1b0e24,#13091a);color:#fff;font-weight:800;cursor:pointer;outline:none}.ad-stats-toolbar select:focus{border-color:#ff48c8;box-shadow:0 0 0 3px #ff48c819}.ad-stats-toolbar select option{background:#160a1e;color:#fff}
@media(max-width:760px){.advertiser-images{grid-template-columns:1fr}.ad-spot-row{align-items:flex-start;flex-direction:column}.ad-stats-toolbar{justify-content:stretch}.ad-stats-toolbar label{width:100%}}

/* FraiseTUBE v1.16.2 build151 — publicity selection bugfix */
.ad-hidden-file{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.ad-upload-button{width:max-content;cursor:pointer}.ad-upload-button.disabled{opacity:.45;pointer-events:none}
.ad-spot-select{display:flex;align-items:center;gap:12px;min-width:0;cursor:pointer;flex:1}
.ad-spot-select input{width:20px;height:20px;accent-color:#ff2f45;flex:0 0 auto}
.ad-spot-select span{min-width:0}.ad-spot-row.selected{border-color:#8d347d;background:linear-gradient(90deg,#180a20,#110817)}
.ad-image-choice input{accent-color:#ff2f45}
/* build151 — campaign media controls */
.ad-spot-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.ad-spot-rename{min-width:180px;max-width:260px;background:#0b0b0b;border:1px solid rgba(255,45,190,.28);color:#fff;border-radius:10px;padding:9px 11px}.ad-spot-rename:focus{outline:none;border-color:#ff2dbe;box-shadow:0 0 0 2px rgba(255,45,190,.12)}
/* SEO SSR fallback: visible to non-JS clients, replaced by the app on hydration. */
.seo-content{max-width:1180px;margin:42px auto 180px;padding:0 24px;color:#f5edf8}.seo-content h1{font-size:clamp(2rem,5vw,4rem);margin:0 0 16px}.seo-content p{max-width:760px;color:#cbbbd2;line-height:1.65}


/* FraiseTUBE 0.2.0-build002 — identité graphique */
:root{--ft-red:#ef233c;--ft-red-2:#ff4057;--ft-green:#65b84f;--ft-bg:#090909;--ft-panel:#121212;--ft-panel-2:#191919;--ft-border:#2d2d2d;--ft-text:#fff;--ft-muted:#a9a9a9}
html,body{background:radial-gradient(circle at 50% -10%,#2a080d 0,#0b0b0b 34%,#070707 75%)!important;color:var(--ft-text)!important}
body{padding-bottom:96px!important}
.topbar,.admin-side,.studio-topbar{background:rgba(8,8,8,.96)!important;border-color:#2a171a!important;box-shadow:0 10px 30px #0008!important}
.brand img,.admin-brand img,.studio-brand img{object-fit:contain!important;filter:none!important}
.brand img{max-height:52px!important;width:auto!important}.admin-brand img{max-width:190px!important;width:100%!important}.tagline{color:#cfcfcf!important}
.btn,.nav a,.admin-side nav button{border-color:#333!important}.btn.primary,.primary,.admin-side nav button.active{background:linear-gradient(135deg,var(--ft-red),#a90f24)!important;border-color:#ff586a!important;color:#fff!important;box-shadow:0 8px 24px rgba(239,35,60,.2)!important}
button:hover,.btn:hover,.nav a:hover{border-color:var(--ft-red)!important}
.panel,.card,.modal-card,.video-form-card,.video-form-card,.inline-editor,.stat,.reset-card{background:linear-gradient(145deg,#171717,#0e0e0e)!important;border-color:#303030!important}
input,textarea,select{background:#0c0c0c!important;border-color:#383838!important;color:#fff!important}input:focus,textarea:focus,select:focus{border-color:var(--ft-red)!important;box-shadow:0 0 0 2px rgba(239,35,60,.16)!important}
.muted,small{color:#aaa!important}a{color:#ff5a6d}.switch-control input:checked+.switch-slider,.sagacity-switch input:checked+i{background:var(--ft-red)!important}.progress-range,input[type=range]{accent-color:var(--ft-red)!important}
.player{position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:1000!important;background:rgba(10,10,10,.98)!important;border-top:1px solid #3a2528!important;box-shadow:0 -16px 50px #000b!important;backdrop-filter:blur(18px)!important}
.player .thumb{border:1px solid #333!important;border-radius:7px!important}.pause{background:var(--ft-red)!important;color:#fff!important}.player-device-btn,.mobile-connect-btn,.full-connect-btn{border-color:#444!important;background:#151515!important}.full-player{background:radial-gradient(circle at center,#2b0a0f,#070707 62%)!important}.full-player-art{border-color:#4a252b!important}
.fraisetube-hero-banner{width:min(1500px,calc(100% - 32px));margin:22px auto 10px;border:1px solid #3b2226;border-radius:20px;overflow:hidden;background:#050505;box-shadow:0 28px 70px #0008}.fraisetube-hero-banner img{display:block;width:100%;height:auto;aspect-ratio:16/4.7;object-fit:cover}
.fraisetube-video-engine{position:fixed;right:18px;bottom:112px;width:min(420px,calc(100vw - 36px));aspect-ratio:16/9;background:#000;border:1px solid #3b3b3b;border-radius:14px;box-shadow:0 18px 48px #000c;z-index:1100;display:none}.fraisetube-video-engine.ft-visible{display:block}
.video-upload-card{border:1px solid #343434;border-radius:16px;background:#0d0d0d;padding:18px;margin:14px 0}.video-upload-drop{display:grid;place-items:center;min-height:140px;border:1px dashed #6b333b;border-radius:14px;background:linear-gradient(145deg,#17090c,#0b0b0b);cursor:pointer;text-align:center;padding:18px}.video-upload-drop:hover{border-color:var(--ft-red);background:#1b0b0e}.video-upload-drop input{display:none}.video-upload-icon{font-size:38px;color:var(--ft-red)}
.event-global-toggle{border:1px solid #3e2b2e;border-radius:16px;padding:18px;background:#111;margin-bottom:18px}.event-global-toggle strong{font-size:18px}.event-global-toggle small{display:block;margin-top:4px}
body.events-hidden [data-nav="scene"],body.events-hidden a[href="/scene"],body.events-hidden .event-card,body.events-hidden .events-block,body.events-hidden [class*="event-shortcut"],body.events-hidden [class*="next-event"]{display:none!important}
@media(max-width:760px){.fraisetube-hero-banner{width:calc(100% - 18px);margin-top:10px;border-radius:12px}.fraisetube-hero-banner img{aspect-ratio:16/7}.fraisetube-video-engine{right:8px;bottom:104px;width:calc(100vw - 16px)}body{padding-bottom:86px!important}}


/* FraiseTUBE 0.5.0.10-build018 — correction charte + lecteur vidéo */
html,body{background:#070707!important;color:#f7f7f7!important}
body{padding-bottom:118px!important}
.topbar{background:rgba(7,7,7,.96)!important;border-bottom:1px solid #2d1a1d!important;box-shadow:0 10px 34px #0008!important}
.nav a.active,.nav a:hover,.eyebrow,.section-more,.context-head a{color:var(--ft-red)!important}
.search,.field input,.field select,.field textarea,.chip,.panel,.panel-public,.quickcard,.card,.side .box,.video-context-card,.video-seasons,.video-info,.studio-site-shell .panel,.admin-main .panel{background:#111!important;border-color:#332225!important;color:#f7f7f7!important}
.quickcard,.card,.side .box,.video-context-card,.panel,.panel-public{box-shadow:none!important}
.btn.primary,.pause,.play-dot,.studio,.toggle.on{background:linear-gradient(135deg,#ff4054,#d91f35)!important;border-color:#ff5366!important;color:#fff!important;box-shadow:0 0 0 1px #ff536633,0 8px 26px #ff2f4524!important}
.btn:not(.primary),.pill,.chip,.player-icon,.player-device-btn,.full-connect-btn,.mobile-connect-btn{background:#141414!important;border-color:#3b2a2d!important;color:#f2f2f2!important}
.btn:not(.primary):hover,.pill:hover,.chip:hover,.player-icon:hover{border-color:#ff2f45!important;background:#1d1113!important}
.avatar{border-color:#ff2f45!important;background:linear-gradient(145deg,#4b151c,#111)}
.video-stats,.season-block,.episode-row,.vidéo-row,.studio-table-wrap,.table tr,.admin-side,.studio-topbar{border-color:#342326!important}
input[type="range"]{accent-color:#ff2f45!important}
.fraisetube-hero-banner{border-color:#3e2327!important;box-shadow:0 20px 60px #000b,0 0 40px #ff2f4514!important}
.fraisetube-hero-banner img{display:block!important}

/* Desktop permanent player: full width and always visible */
.player,body.player-idle .player,body:not(.full-player-open) .player{
 position:fixed!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;
 transform:none!important;width:100%!important;max-width:none!important;height:112px!important;min-height:112px!important;
 margin:0!important;border:0!important;border-top:1px solid #3d2529!important;border-radius:0!important;
 background:rgba(5,5,5,.985)!important;box-shadow:0 -18px 48px #000d!important;backdrop-filter:blur(18px)!important;
 z-index:1800!important;display:grid!important;grid-template-columns:minmax(280px,420px) minmax(420px,1fr) minmax(190px,300px)!important;
 grid-template-rows:1fr!important;gap:24px!important;align-items:center!important;padding:14px 24px!important;
}
body.player-idle .player .now,body.player-idle .player .controls-main,body.player-idle .player .progress-row,body.player-idle .player .volume{display:flex!important}
body.player-idle .player .progress-row{display:grid!important}
body.player-idle .player .controls-main>*{display:inline-grid!important}
body.player-idle .player #playPauseBtn{width:52px!important;height:52px!important;padding:0!important;border-radius:50%!important;font-size:0!important}
body.player-idle .player #playPauseBtn:before{content:'▶';font-size:20px!important}
body.player-idle .player #playPauseBtn:after{content:none!important}
.player .now{display:flex!important;min-width:0!important;gap:13px!important;align-items:center!important}
.player .thumb{display:block!important;width:92px!important;height:58px!important;min-width:92px!important;aspect-ratio:16/10!important;border-radius:9px!important;border:1px solid #393939!important;background-color:#111!important;background-size:cover!important;background-position:center!important}
.player-meta{min-width:0!important}.player #playerTitle{font-size:15px!important}.player #playerEpisode{font-size:12px!important;color:#a9a9a9!important}
.player .controls{display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:center!important;min-width:0!important}
.player .controls-main{display:flex!important;align-items:center!important;justify-content:center!important;gap:13px!important}
.player .controls-main .player-icon,.player .player-device-btn{width:38px!important;height:38px!important;min-width:38px!important;border-radius:50%!important;padding:0!important;place-items:center!important}
.player #playPauseBtn{width:52px!important;height:52px!important;min-width:52px!important;border-radius:50%!important;border:0!important}
.player .progress-row{display:grid!important;grid-template-columns:44px minmax(0,1fr) 44px!important;gap:9px!important;align-items:center!important;margin-top:4px!important;font-size:11px!important;color:#aaa!important}
.player .progress-range{width:100%!important}
.player .volume{display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:10px!important}
.player .volume input{width:min(150px,14vw)!important}
.mobile-player-expand,.mobile-progress-track{display:none!important}

/* Real video surface lives in the full player. */
.fraisetube-video-engine{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important;object-fit:contain!important;background:#000!important;border:0!important;border-radius:14px!important;box-shadow:none!important;z-index:2!important}
.full-player-art{position:relative!important;overflow:hidden!important;background:#000 center/contain no-repeat!important;border:1px solid #3b292c!important;aspect-ratio:16/9!important;width:min(66vw,1050px)!important;height:auto!important}
.full-player{background:rgba(0,0,0,.97)!important}
.full-player-inner{grid-template-columns:minmax(0,1.8fr) minmax(260px,.8fr)!important;gap:26px!important}
.full-player-main{grid-column:1/2!important}
.queue-panel{background:#0e0e0e!important;border-color:#332326!important}
.full-player-close{background:#111!important;border:1px solid #403034!important;color:#fff!important}

/* Studio / admin */
.admin-side,.studio-topbar,.studio-site-header{background:#090909!important;border-color:#332326!important}
.admin-side button.active,.admin-side button:hover,.submenu button.active,.studio-local-nav .active{background:#241013!important;color:#fff!important;border-left-color:#ff2f45!important}
.admin-brand img,.studio-brand img{filter:none!important}
.status-chip,.toggle.on{border-color:#ff2f45!important}
.table th{color:#d8d8d8!important;background:#0d0d0d!important}.table td{background:#111!important}

@media(max-width:1100px) and (min-width:761px){
 .player,body.player-idle .player{grid-template-columns:minmax(220px,320px) 1fr!important;height:104px!important;min-height:104px!important;padding:10px 16px!important}
 .player .volume{display:none!important}
 body{padding-bottom:110px!important}
}
@media(max-width:760px){
 body{padding-bottom:90px!important}
 .player,body.player-idle .player,body:not(.full-player-open) .player{left:0!important;right:0!important;bottom:0!important;top:auto!important;width:100%!important;height:78px!important;min-height:78px!important;border-radius:0!important;padding:8px 10px!important;grid-template-columns:minmax(130px,1fr) auto!important;grid-template-rows:1fr!important;gap:8px!important}
 .player .now{display:flex!important}.player .thumb{width:54px!important;height:54px!important;min-width:54px!important}.player #playerEpisode{display:none!important}
 .player .controls{display:block!important}.player .controls-main{gap:4px!important}.player .controls-main>*:not(#playPauseBtn):not(#prevBtn):not(#nextBtn){display:none!important}
 .player .progress-row,.player .volume{display:none!important}.player #playPauseBtn{width:44px!important;height:44px!important;min-width:44px!important}.mobile-progress-track{display:block!important}
 .full-player-inner{display:flex!important;flex-direction:column!important}.full-player-art{width:100%!important;max-width:none!important}.queue-panel{display:none!important}
}


/* FraiseTUBE 0.5.0.10-build018 — intro première visite avec bannière et glitch */
.fraisetube-splash{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;background:#050505;overflow:hidden;opacity:1;visibility:visible;pointer-events:all;transition:opacity .48s ease,visibility 0s linear .48s}
.fraisetube-splash::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(255,47,69,.13),transparent 52%),repeating-linear-gradient(180deg,rgba(255,255,255,.025) 0,rgba(255,255,255,.025) 1px,transparent 1px,transparent 4px);mix-blend-mode:screen;animation:fraisetubeSplashNoise .18s steps(2,end) infinite}
.fraisetube-splash::after{content:"";position:absolute;left:-10%;right:-10%;height:2px;top:-6px;background:linear-gradient(90deg,transparent,#ff2f45,#fff,#63d640,transparent);box-shadow:0 0 22px rgba(255,47,69,.7);animation:fraisetubeSplashBeam 1.2s linear infinite}
.fraisetube-splash.is-leaving{opacity:0;visibility:hidden;pointer-events:none}
.fraisetube-splash-glitch{position:relative;width:min(92vw,1600px);aspect-ratio:2.5/1;display:grid;place-items:center;filter:drop-shadow(0 28px 60px rgba(0,0,0,.72))}
.fraisetube-splash-banner{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none}
.fraisetube-splash-banner-base{animation:fraisetubeGlitchBase 1.08s steps(1,end) infinite}
.fraisetube-splash-banner-red{opacity:.52;filter:saturate(1.55) contrast(1.08);mix-blend-mode:screen;clip-path:polygon(0 8%,100% 8%,100% 32%,0 32%);animation:fraisetubeGlitchRed .74s steps(1,end) infinite}
.fraisetube-splash-banner-green{opacity:.40;filter:hue-rotate(78deg) saturate(1.9) contrast(1.12);mix-blend-mode:screen;clip-path:polygon(0 57%,100% 57%,100% 82%,0 82%);animation:fraisetubeGlitchGreen .91s steps(1,end) infinite}
@keyframes fraisetubeGlitchBase{0%,5%,12%,43%,49%,78%,84%,100%{transform:translate(0) skew(0);filter:none}6%{transform:translate(-5px,1px) skewX(-.7deg);filter:contrast(1.2)}7%{transform:translate(7px,-1px) skewX(.9deg)}44%{transform:translate(3px,0)}45%{transform:translate(-4px,1px)}79%{transform:translate(2px,-1px);filter:brightness(1.18)}80%{transform:translate(-2px,1px)}}
@keyframes fraisetubeGlitchRed{0%,16%,19%,54%,57%,88%,91%,100%{transform:translate(0)}17%{transform:translate(16px,-2px)}18%{transform:translate(-7px,1px)}55%{transform:translate(-13px,2px)}89%{transform:translate(9px,-1px)}}
@keyframes fraisetubeGlitchGreen{0%,27%,30%,67%,70%,100%{transform:translate(0)}28%{transform:translate(-14px,2px)}29%{transform:translate(5px,-1px)}68%{transform:translate(12px,-2px)}69%{transform:translate(-4px,1px)}}
@keyframes fraisetubeSplashNoise{0%{transform:translate(0)}25%{transform:translate(1px,-1px)}50%{transform:translate(-1px,1px)}75%{transform:translate(1px,1px)}100%{transform:translate(0)}}
@keyframes fraisetubeSplashBeam{from{transform:translateY(0)}to{transform:translateY(100vh)}}
@media(max-width:760px){.fraisetube-splash-glitch{width:96vw;aspect-ratio:16/8}.fraisetube-splash-banner{object-fit:contain}}
@media(prefers-reduced-motion:reduce){.fraisetube-splash::before,.fraisetube-splash::after,.fraisetube-splash-banner{animation:none!important}.fraisetube-splash{transition:opacity .35s ease,visibility 0s linear .35s}}
/* FraiseTUBE build005 — YouTube-like video-first feed */
.ft-feed-page{max-width:1500px;margin:0 auto;padding:34px 34px 150px}.ft-feed-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:26px}.ft-feed-head h1{font-size:clamp(30px,4vw,52px);margin:4px 0}.ft-feed-head p{color:#aaa;margin:0}.ft-video-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:30px 18px}.ft-video-card{display:block;color:#fff;text-decoration:none;min-width:0}.ft-video-thumb{position:relative;aspect-ratio:16/9;border-radius:13px;background:#171717 center/cover no-repeat;overflow:hidden;border:1px solid #282828;transition:.18s transform,.18s border-color}.ft-video-card:hover .ft-video-thumb{transform:translateY(-2px);border-color:#ff2942}.ft-video-play{position:absolute;inset:0;display:grid;place-items:center;font-size:34px;opacity:0;transition:.18s;background:rgba(0,0,0,.18)}.ft-video-card:hover .ft-video-play{opacity:1}.ft-video-duration{position:absolute;right:7px;bottom:7px;background:rgba(0,0,0,.88);padding:3px 6px;border-radius:5px;font-size:12px}.ft-video-card-info{display:grid;grid-template-columns:40px 1fr;gap:11px;padding-top:11px}.ft-video-card-info b{display:block;font-size:15px;line-height:1.35}.ft-video-card-info small{display:block;color:#9c9c9c;margin-top:3px}.ft-watch-page{max-width:1600px;margin:0 auto;padding:28px 30px 160px;display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:28px}.ft-watch-player{width:100%;aspect-ratio:16/9;background:#000;border-radius:14px;overflow:hidden;box-shadow:0 15px 50px rgba(0,0,0,.45)}.ft-watch-player video{width:100%;height:100%;display:block;background:#000;object-fit:contain}.ft-watch-main>h1{font-size:24px;margin:18px 0 12px}.ft-watch-meta{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #252525;padding-bottom:16px}.ft-channel{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none}.ft-channel small{display:block;color:#999}.ft-watch-views{color:#aaa}.ft-description{margin-top:16px;padding:16px 18px;border-radius:13px;background:#171717;border:1px solid #252525;line-height:1.55}.ft-recommendations h2{margin:0 0 14px}.ft-recommendations{display:flex;flex-direction:column;gap:16px}.ft-recommendations .ft-video-card-info{grid-template-columns:32px 1fr}.ft-recommendations .creator-avatar{display:none}.ft-recommendations .ft-video-card-info{display:block}.ft-recommendations .ft-video-thumb{border-radius:9px}.topbar .nav a[data-nav="univers"]{display:none!important}
@media(max-width:980px){.ft-watch-page{grid-template-columns:1fr;padding:16px 14px 150px}.ft-recommendations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.ft-feed-page{padding:22px 14px 150px}.ft-video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.ft-video-grid,.ft-recommendations{grid-template-columns:1fr}.ft-watch-page{padding-left:0;padding-right:0}.ft-watch-main>h1,.ft-watch-meta,.ft-description{margin-left:14px;margin-right:14px}.ft-watch-player{border-radius:0}}

/* FraiseTUBE 0.3.1-build006 — publication scheduling */
.ft-feed-sort{display:flex;align-items:center;gap:10px;color:#ddd;font-weight:700}.ft-feed-sort select{background:#171717;color:#fff;border:1px solid #3a3a3a;border-radius:10px;padding:10px 12px}.ft-release-date{color:#aaa!important;margin-top:2px}.ft-feed-head{gap:18px;flex-wrap:wrap}
/* FraiseTUBE 0.4.0 — cinematic strawberry identity */
html,body{background:radial-gradient(900px 620px at 8% 20%,rgba(135,8,24,.18),transparent 62%),radial-gradient(900px 680px at 92% 72%,rgba(214,20,42,.14),transparent 66%),linear-gradient(145deg,#0b0b0b 0%,#12090a 48%,#070707 100%)!important;background-attachment:fixed!important}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(circle at 2% 88%,rgba(92,140,44,.09),transparent 16%),radial-gradient(circle at 98% 92%,rgba(255,47,69,.11),transparent 18%)}
.topbar{background:linear-gradient(90deg,rgba(12,10,10,.96),rgba(35,9,12,.94),rgba(9,9,9,.96))!important;border-color:#5a1b22!important}.panel,.panel-public,.ft-description,.ft-rating,.ft-comments,.creator-card,.ft-video-card{background:linear-gradient(145deg,rgba(24,21,21,.96),rgba(17,10,11,.96))!important;border-color:rgba(255,68,84,.2)!important;box-shadow:0 18px 60px rgba(0,0,0,.16)}
.ft-watch-player{position:relative;overflow:hidden;background:#000;border:1px solid rgba(255,67,84,.22);box-shadow:0 22px 70px rgba(118,0,14,.14)}
.ft-hero-play{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:clamp(130px,16vw,260px);height:clamp(130px,16vw,260px);padding:0;border:0;background:transparent;cursor:pointer;filter:drop-shadow(0 16px 34px rgba(255,25,49,.34));transition:transform .13s cubic-bezier(.2,.8,.2,1),filter .13s,opacity .18s;z-index:4}.ft-hero-play img{width:100%;height:100%;object-fit:contain}.ft-hero-play:hover{transform:translate(-50%,-50%) scale(1.045);filter:drop-shadow(0 20px 44px rgba(255,25,49,.5))}.ft-hero-play:active,.ft-hero-play.pressed{transform:translate(-50%,-47%) scale(.88);filter:drop-shadow(0 5px 10px rgba(255,25,49,.22))}.ft-hero-play.hidden{opacity:0;pointer-events:none}
.ft-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.ft-tags span{padding:6px 10px;border-radius:999px;background:#251416;color:#ff6978;font-size:12px}.ft-rating{margin-top:14px;padding:18px;border:1px solid}.ft-stars{display:flex;gap:5px;margin:8px 0}.ft-stars button{border:0;background:transparent;color:#ff3b50;font-size:30px;cursor:pointer}.ft-comments{margin-top:14px;padding:18px;border:1px solid}.ft-comments textarea{width:100%;min-height:80px;background:#0d0d0d;border:1px solid #432126;color:#fff;border-radius:12px;padding:12px}.ft-comment{padding:14px 0;border-bottom:1px solid #302023}.ft-comment small{display:block;color:#8f8586;margin-top:2px}.ft-comment.is-hidden{opacity:.62}.creator-card{position:relative;transition:transform .16s,border-color .16s,box-shadow .16s}.creator-card:hover{transform:translateY(-3px);border-color:rgba(255,64,82,.48)!important;box-shadow:0 18px 48px rgba(141,8,24,.2)}.creator-card-arrow{margin-left:auto;font-size:38px;color:#ff5366}.creator-grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr))!important}
.ft-site-footer{margin-top:48px;border-top:1px solid rgba(255,61,79,.32);background:linear-gradient(90deg,rgba(8,8,8,.98),rgba(27,8,10,.98),rgba(8,8,8,.98));min-height:88px;padding:18px 34px 130px;display:flex;align-items:center;justify-content:space-between;gap:24px}.ft-footer-brand img{width:170px;max-height:54px;object-fit:contain}.ft-footer-links{display:flex;gap:26px;flex-wrap:wrap;color:#aaa;font-size:13px}.ft-footer-credit{display:flex;align-items:center;gap:12px;color:#ddd;font-size:13px}.ft-footer-credit img{width:76px;height:52px;object-fit:contain;border-radius:7px}
@media(max-width:760px){.ft-site-footer{padding:18px 16px 120px;flex-direction:column;align-items:flex-start}.creator-grid{grid-template-columns:1fr!important}.ft-hero-play{width:130px;height:130px}}

/* FraiseTUBE 0.5.0 — unified cinematic theme + stable layouts */
html,body{min-height:100%}body{min-height:100vh;display:flex;flex-direction:column;background:#0b0909!important;background-image:radial-gradient(circle at 82% 18%,rgba(157,18,34,.14),transparent 34%),radial-gradient(circle at 7% 88%,rgba(73,110,39,.055),transparent 22%),linear-gradient(145deg,#0b0909 0%,#160b0d 48%,#0a0909 100%)!important}#pageRoot{flex:1 0 auto}.ft-site-footer{flex:0 0 auto;margin-top:auto!important;padding-bottom:130px!important}.creator-channel-hero{min-height:260px;background-size:cover!important;background-position:center!important;display:flex;flex-direction:column;justify-content:center}.creator-channel-hero h1,.creator-channel-hero p,.creator-channel-hero .eyebrow{position:relative;z-index:1}.ft-watch-page{align-items:start}.ft-recommendations{max-height:calc(100vh - 150px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#7e1b27 #130d0e;padding-right:8px;position:sticky;top:92px}.ft-recommendations .ft-video-card{margin-bottom:12px}.ft-hero-play{filter:none!important;isolation:isolate}.ft-hero-play:before{content:"";position:absolute;z-index:-1;inset:12%;border-radius:50%;background:radial-gradient(circle,rgba(238,35,60,.34) 0%,rgba(238,35,60,.15) 38%,rgba(238,35,60,0) 72%);filter:blur(22px);transform:scale(1.25);pointer-events:none}.ft-hero-play:hover:before{filter:blur(28px);transform:scale(1.34)}.ft-hero-play:active,.ft-hero-play.pressed{transform:translate(-50%,-50%) scale(.86)!important}.ft-hero-play.hidden{display:none!important}.ft-video-thumb{aspect-ratio:16/9!important;background-size:cover!important;background-position:center!important}
@media(max-width:900px){.ft-recommendations{position:static;max-height:none;overflow:visible}.creator-channel-hero{min-height:210px}.ft-site-footer{padding-bottom:120px!important}}

/* build010: reliable FraiseTUBE hero play hit target */
.ft-hero-play{touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none}.ft-hero-play img{pointer-events:none;user-select:none;-webkit-user-drag:none}.ft-hero-play.hidden{display:none!important}

/* build011 — player-owned play gesture + unclipped visual overlay */
.ft-watch-player{position:relative}
.ft-hero-play{
  pointer-events:none!important;
  overflow:visible!important;
  width:clamp(170px,20vw,320px)!important;
  height:clamp(170px,20vw,320px)!important;
  display:grid;
  place-items:center;
  filter:none!important;
}
.ft-hero-play img{
  position:relative;
  z-index:2;
  width:100%!important;
  height:100%!important;
  object-fit:contain;
  pointer-events:none!important;
  filter:none!important;
}
.ft-hero-play:before{display:none!important}
.ft-hero-glow{
  position:absolute;
  z-index:1;
  width:68%;
  height:68%;
  left:16%;
  top:16%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,28,51,.42) 0%,rgba(255,28,51,.20) 36%,rgba(255,28,51,.07) 58%,rgba(255,28,51,0) 78%);
  filter:blur(24px);
  transform:scale(1.18);
  pointer-events:none;
}
.ft-hero-play.pressed{transform:translate(-50%,-50%) scale(.88)!important}
.ft-hero-play.hidden{display:none!important}

/* build012 authoritative fixes */
.creator-channel-hero{height:auto!important;min-height:0!important;aspect-ratio:6.4/1!important;background-size:cover!important;background-position:center!important}
.ft-watch-player{overflow:visible!important}
.ft-watch-player video{border-radius:14px}
.ft-hero-play{pointer-events:auto!important;cursor:pointer!important;overflow:visible!important;border:0!important;background:transparent!important;appearance:none!important;-webkit-appearance:none!important;transition:transform .11s ease,opacity .12s ease!important}
.ft-hero-play img{pointer-events:none!important}
.ft-hero-play.pressed{transform:translate(-50%,-47%) scale(.82)!important}
.ft-hero-play.hidden{display:none!important}
.ft-hero-glow{pointer-events:none!important}

/* build013 final validated shell */
html,body{min-height:100%;margin:0}body{min-height:100vh!important;min-height:100dvh!important;display:flex!important;flex-direction:column!important;padding-bottom:0!important}.topbar{flex:0 0 auto}#mobilePlayerStickyHost{flex:0 0 auto}#pageRoot{display:block!important;flex:1 0 auto!important}.ft-site-footer{display:flex!important;visibility:visible!important;flex:0 0 auto!important;margin-top:auto!important;padding:18px 34px!important;min-height:88px!important;position:relative!important;inset:auto!important;z-index:5}.player{z-index:50}.ft-main-nav{gap:5px!important}.ft-main-nav>a{display:flex!important;align-items:center;gap:5px;padding:8px 9px!important;border-radius:10px}.ft-main-nav>a.active{background:linear-gradient(135deg,#7f101c,#b91f31)!important;color:#fff!important}.ft-main-nav>a span{font-size:16px}.ft-video-freshness{white-space:nowrap}.creator-channel-hero{aspect-ratio:6.4/1!important;min-height:0!important;height:auto!important;background-size:cover!important;background-position:center!important}.ft-hero-play{overflow:visible!important;filter:none!important;box-shadow:none!important;background:transparent!important;border:0!important;pointer-events:auto!important}.ft-hero-play img{filter:none!important;box-shadow:none!important;pointer-events:none!important}.ft-hero-play:before{display:none!important}.ft-hero-glow{position:absolute!important;inset:22%!important;border-radius:50%!important;background:radial-gradient(circle,rgba(255,27,51,.42) 0%,rgba(255,27,51,.14) 42%,rgba(255,27,51,0) 72%)!important;filter:blur(28px)!important;transform:scale(1.35)!important;z-index:-1!important}.ft-hero-play.pressed{transform:translate(-50%,-50%) scale(.78)!important;transition:transform .09s ease!important}.ft-hero-play.hidden,.ft-hero-play[hidden]{display:none!important}.ft-watch-player{overflow:hidden!important}.ft-recommendations{max-height:calc(100vh - 150px)!important;overflow-y:auto!important;overscroll-behavior:contain!important;position:sticky!important;top:92px!important}@media(max-width:1100px){.ft-main-nav>a{font-size:12px!important;padding:7px 5px!important}.ft-main-nav>a span{display:none}}@media(max-width:760px){.ft-site-footer{padding:18px 16px 100px!important}.ft-main-nav>a span{display:inline}.ft-recommendations{position:static!important;max-height:none!important;overflow:visible!important}}

/* build014 FraiseTUBE hard reset and functional UI */
.studio-site-body{background:radial-gradient(circle at 78% 10%,rgba(139,16,31,.14),transparent 28%),linear-gradient(145deg,#090909,#15090b 52%,#090909)!important}.studio-site-hero,.studio-site-body .panel,.studio-site-body .video-form-card,.studio-site-body .video-collapsible>summary{background:linear-gradient(145deg,#151010,#0d0d0d)!important;border-color:#482127!important}.studio-site-hero{background:radial-gradient(circle at 80% 20%,rgba(195,25,47,.16),transparent 34%),linear-gradient(125deg,#160b0d,#0d0d0d)!important}.studio-site-body .field input,.studio-site-body .field select,.studio-site-body .field textarea{background:#0d0d0d!important;border-color:#432126!important}.studio-site-body .btn.primary{background:#e9233d!important;box-shadow:none!important}.studio-site-body .eyebrow,.studio-site-body .studio-user-badge small{color:#ff4055!important}.studio-video-top-grid{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(0,1.35fr);gap:18px;align-items:start}.video-upload-card{margin:0!important;height:100%;box-sizing:border-box}.video-upload-progress{margin-top:16px}.video-progress-head{display:flex;justify-content:space-between;gap:12px}.video-upload-progress progress{width:100%;height:14px;accent-color:#ef233c}.studio-thumbnail-only{max-width:620px}.ft-watch-player.is-playing .ft-hero-play{display:none!important}.ft-hero-play{z-index:4!important}.ft-hero-glow{inset:30%!important;filter:blur(18px)!important;background:radial-gradient(circle,rgba(255,25,49,.28),rgba(255,25,49,.08) 48%,transparent 72%)!important}.ft-scheduled-video{aspect-ratio:16/9;background:center/cover no-repeat;display:grid;place-items:center;align-content:center;gap:18px;border-radius:14px;position:relative}.ft-scheduled-video:before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.5);border-radius:inherit}.ft-scheduled-video>*{position:relative;z-index:1}.notification-bell{position:relative;border:0;background:transparent;color:#fff;font-size:20px;cursor:pointer}.notification-bell b{position:absolute;right:-6px;top:-7px;background:#ef233c;color:#fff;border-radius:999px;font-size:10px;min-width:17px;height:17px;display:grid;place-items:center}.notification-center{display:none;position:absolute;right:72px;top:64px;width:min(380px,calc(100vw - 24px));max-height:480px;overflow:auto;background:#101010;border:1px solid #432126;border-radius:14px;padding:10px;z-index:200}.notification-center.show{display:block}.notification-item{display:grid;gap:3px;padding:12px;color:#fff;text-decoration:none;border-bottom:1px solid #292020}.notification-item.unread{background:#211012}.notification-item span,.notification-item small{color:#aaa}.ft-main-nav{min-width:0;overflow:hidden}.ft-main-nav a{white-space:nowrap}.topbar{grid-template-columns:auto minmax(0,1fr) auto!important}.search-wrap{min-width:0}@media(max-width:1000px){.studio-video-top-grid{grid-template-columns:1fr}.ft-main-nav{overflow-x:auto}.studio-thumbnail-only{max-width:none}}
/* build015 — native date/time picker reliability + home carousel */
input[type="datetime-local"]{cursor:pointer;color-scheme:dark}
.ft-video-carousel{margin-bottom:28px;min-height:360px;border:1px solid rgba(239,35,60,.28);border-radius:22px;overflow:hidden;position:relative;background-repeat:no-repeat}

/* build016 — FraiseTUBE video editor + 2560x400 carousel */
.studio-site-body .video-primary-editor{background:linear-gradient(145deg,#1a0b0e,#10090a)!important;border:1px solid #5a2029!important;box-shadow:inset 0 0 0 1px rgba(239,35,60,.035)!important}
.studio-editor-actions-top{display:flex;justify-content:flex-end;gap:12px;margin:0 0 16px}.studio-editor-actions-top .btn{min-width:132px}
.studio-horizontal-media{display:grid!important;grid-template-columns:minmax(320px,42%) minmax(0,1fr);gap:28px;align-items:center;max-width:none!important;padding:22px!important}
.studio-media-left,.studio-media-right{min-width:0}.studio-media-left h3{margin-top:0}.studio-wide-thumb{width:100%;aspect-ratio:16/9;height:auto!important;min-height:0!important;background-size:cover!important;background-position:center!important;border-radius:14px}.studio-carousel-banner{width:100%;aspect-ratio:6.4/1;height:auto!important;min-height:110px!important;background-size:cover!important;background-position:center!important;border-radius:12px}
.ft-video-carousel{width:100%;aspect-ratio:6.4/1;min-height:0!important;max-height:none!important}
.compact-datetime .datetime-open{display:none!important}.compact-datetime input[type="datetime-local"]{width:100%!important}
@media(max-width:900px){.studio-horizontal-media{grid-template-columns:1fr}.studio-editor-actions-top{position:sticky;top:72px;z-index:8;background:#0d0d0d;padding:10px;border-radius:12px}.ft-video-carousel{aspect-ratio:auto;min-height:280px!important}}
/* build017 — FraiseTUBE structured search */
.search-results{background:#10090a!important;border:1px solid #5b1c24!important;box-shadow:0 28px 80px rgba(0,0,0,.72)!important;color:#fff!important;max-height:min(78vh,850px)!important;overflow:auto!important;padding:12px!important;width:min(900px,calc(100vw - 32px))!important}
.ft-search-overlay-inner,.ft-search-page{color:#fff}.ft-search-section{background:linear-gradient(135deg,#160b0d,#210b0f);border:1px solid #4a1b21;border-radius:16px;margin:10px 0;padding:14px}.ft-search-heading{color:#fff;font-size:17px;margin-bottom:8px}.ft-search-video,.ft-search-creator{align-items:center;border-top:1px solid #3a1a1e;color:#fff;display:grid;gap:14px;padding:10px;text-decoration:none}.ft-search-video{grid-template-columns:150px 1fr auto}.ft-search-creator{grid-template-columns:52px 1fr auto}.ft-search-video:first-of-type,.ft-search-creator:first-of-type{border-top:0}.ft-search-video:hover,.ft-search-creator:hover{background:#2a0d12;border-radius:10px}.ft-search-thumb{aspect-ratio:16/9;background:#171717 center/cover no-repeat;border-radius:9px}.ft-search-copy{display:grid;gap:3px}.ft-search-copy small,.ft-search-creator small{color:#bbaeb0}.ft-search-tags{display:flex;flex-wrap:wrap;gap:8px}.ft-search-tags a{background:#171315;border:1px solid #513039;border-radius:999px;color:#eee;padding:7px 13px;text-decoration:none}.ft-search-tags a:hover{background:#f32643;border-color:#f32643;color:white}.ft-search-page{margin:0 auto;max-width:1250px;padding:34px 24px 80px}.ft-search-page-head{margin-bottom:22px}.ft-search-page-head h1{font-size:clamp(30px,4vw,52px);margin:6px 0 0}@media(max-width:700px){.ft-search-video{grid-template-columns:110px 1fr}.ft-search-video>span:last-child{display:none}.ft-search-creator{grid-template-columns:44px 1fr}.ft-search-creator>span:last-child{display:none}.search-results{width:calc(100vw - 20px)!important}}

/* build019 — profil notifications FraiseTUBE */
.profile-notifications{border-color:#5b2028!important;background:linear-gradient(145deg,rgba(34,10,13,.96),rgba(13,13,13,.98))!important;box-shadow:inset 0 0 0 1px rgba(244,36,62,.04)!important}.notification-choice{border-color:#4d2026!important;background:#101010!important}.notification-choice:hover{border-color:#8b2935!important;background:#151011!important}.notification-choice input{accent-color:#f4243e!important}.notification-choice small{color:#aaa!important}.profile-notifications :focus-visible{outline:2px solid #f4243e!important;outline-offset:2px}
\n/* FraiseTUBE build020 — recherche 100% rouge, override final */
#searchForm.search-wrap{background:#0b0b0b!important;border-color:#5a2028!important;box-shadow:0 18px 48px #000c!important}
#searchForm.search-wrap .search{background:#0b0b0b!important;border-color:#70232d!important;color:#fff!important}
#searchForm.search-wrap .search:focus{border-color:#ff2f45!important;outline:none!important;box-shadow:0 0 0 2px rgba(255,47,69,.14)!important}
#searchForm.search-wrap>button{color:#ff5366!important}
.search-results,.ft-search-overlay-inner{background:#0c0c0c!important;border-color:#572128!important;box-shadow:0 22px 60px #000d!important}
.ft-search-section{border-color:#342023!important;background:#0d0d0d!important}
.ft-search-heading,.ft-search-heading b{color:#ff5366!important}
.ft-search-video,.ft-search-creator{border-color:#2f2022!important;background:#101010!important}
.ft-search-video:hover,.ft-search-creator:hover{background:#211012!important;border-color:#7a2833!important}
.ft-search-tags a{background:#211012!important;border-color:#6b252e!important;color:#ff6b7b!important}
.desktop-search-toggle{border-color:#6b252e!important;color:#ff5366!important;background:#111!important}
.desktop-search-toggle:hover,.desktop-search-toggle[aria-expanded="true"]{border-color:#ff2f45!important;background:#241012!important;color:#ff5366!important}
.creator-avatar{background:linear-gradient(135deg,#7b202c,#171717)}
/* build021 - mini lecteur vidéo persistant */
.player.video-mini-active{display:grid!important;position:sticky!important;bottom:0;z-index:45}
.player.video-mini-active .thumb{aspect-ratio:16/9;background-size:cover!important;background-position:center!important}
.video-upload-progress #retryVideoUpload{margin-top:12px;border-color:#7f2630;background:#1a0d0f;color:#fff}
.video-upload-progress #retryVideoUpload:hover{background:#351015;border-color:#ef334f}

/* build022 — fixed viewport footer + persistent video mini-player + channel identity */
:root{--ft-footer-h:88px}
body{padding-bottom:var(--ft-footer-h)!important}
.ft-site-footer{position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:80!important;margin:0!important;height:var(--ft-footer-h)!important;min-height:var(--ft-footer-h)!important;padding:12px 28px!important;box-sizing:border-box!important;box-shadow:0 -12px 34px rgba(0,0,0,.38)}
.player{z-index:90!important}
.player.video-mini-active{display:grid!important;position:fixed!important;left:0!important;right:0!important;bottom:var(--ft-footer-h)!important;z-index:90!important;margin:0!important;background:rgba(10,8,8,.98)!important;border-top:1px solid rgba(255,49,71,.55)!important;box-shadow:0 -12px 34px rgba(0,0,0,.48)!important}
.player.video-mini-active .thumb{position:relative!important;overflow:hidden!important;background:#000!important}
.player.video-mini-active .ft-footer-video{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;background:#000!important}
.footer-video-close{display:none;position:absolute;right:10px;top:8px;z-index:5;border:0;border-radius:50%;width:30px;height:30px;background:#2b1115;color:#fff;font-size:20px;cursor:pointer}.player.video-mini-active .footer-video-close{display:block}
body.has-fixed-footer-player{padding-bottom:calc(var(--ft-footer-h) + 112px)!important}
.creator-hero-identity{display:flex;align-items:center;gap:20px;position:relative;z-index:2}.creator-avatar.hero-avatar{width:92px!important;height:92px!important;min-width:92px!important;border-radius:50%;background-size:cover!important;background-position:center!important;border:3px solid rgba(255,255,255,.88);box-shadow:0 8px 30px rgba(0,0,0,.45)}
.notification-bell:not([hidden]){display:inline-flex!important;align-items:center;justify-content:center!important;visibility:visible!important;opacity:1!important}
@media(max-width:760px){:root{--ft-footer-h:76px}.ft-site-footer{padding:8px 12px!important}.ft-footer-links{display:none!important}.ft-footer-brand img{width:125px!important}.ft-footer-credit{font-size:11px}.ft-footer-credit img{width:52px;height:38px}.player.video-mini-active{bottom:var(--ft-footer-h)!important}.creator-avatar.hero-avatar{width:64px!important;height:64px!important;min-width:64px!important}.creator-hero-identity{gap:12px}}

/* build024 — footer-integrated persistent video player */
body.has-fixed-footer-player .ft-site-footer .ft-footer-brand{visibility:hidden!important;pointer-events:none!important}
body.has-fixed-footer-player .ft-site-footer .ft-footer-links{display:none!important}
body.has-fixed-footer-player .ft-site-footer .ft-footer-credit{margin-left:auto!important}
.player.video-mini-active{position:fixed!important;left:28px!important;right:190px!important;bottom:0!important;height:var(--ft-footer-h)!important;z-index:95!important;display:grid!important;grid-template-columns:300px minmax(360px,1fr) 180px!important;gap:18px!important;padding:8px 0!important;background:transparent!important;border:0!important;box-shadow:none!important;align-items:center!important}
.player.video-mini-active .now{display:grid!important;grid-template-columns:150px 1fr!important;gap:12px!important;align-items:center!important;min-width:0!important}
.player.video-mini-active .thumb{width:150px!important;height:68px!important;border-radius:6px!important;overflow:hidden!important;background:#000!important}
.player.video-mini-active .ft-footer-video{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
.player.video-mini-active .controls{display:block!important;min-width:0!important}
.player.video-mini-active .controls-main{justify-content:flex-start!important;gap:10px!important}
.player.video-mini-active .progress-row{display:grid!important;grid-template-columns:42px minmax(160px,1fr) 42px!important;align-items:center!important;gap:8px!important}
.player.video-mini-active #shuffleBtn,.player.video-mini-active #prevBtn,.player.video-mini-active #nextBtn,.player.video-mini-active #restartBtn,.player.video-mini-active #deviceBtn,.player.video-mini-active #dockPlayerBtn{display:none!important}
.player.video-mini-active .footer-video-close{display:block!important;right:10px!important;top:27px!important}
body.has-fixed-footer-player{padding-bottom:var(--ft-footer-h)!important}
@media(max-width:760px){.player.video-mini-active{left:8px!important;right:8px!important;grid-template-columns:135px 1fr!important;gap:8px!important}.player.video-mini-active .now{grid-template-columns:125px!important}.player.video-mini-active .player-meta{display:none!important}.player.video-mini-active .thumb{width:125px!important;height:58px!important}.player.video-mini-active .volume{display:none!important}.player.video-mini-active .footer-video-close{right:0!important;top:4px!important}.ft-site-footer.has-video-mini .ft-footer-credit{display:none!important}}
/* build024 stabilization: strawberry-heart like + footer-integrated mini video */
.ft-strawberry-like{display:inline-flex;align-items:center;gap:7px;border:1px solid #4a292d;background:#151112;color:#ddd;border-radius:999px;padding:8px 13px;font-weight:800;cursor:pointer}.ft-like-heart{display:inline-grid;place-items:center;font-size:22px;filter:grayscale(.8);transition:.16s transform,.16s filter}.ft-strawberry-like:hover{border-color:#ff3048}.ft-strawberry-like.liked{background:linear-gradient(135deg,#64101b,#b91e31);border-color:#ff4056;color:#fff}.ft-strawberry-like.liked .ft-like-heart{filter:none;transform:scale(1.13) rotate(-5deg)}
/* In mini mode the moving video occupies the footer brand zone; controls start immediately to its right. */
body.has-fixed-footer-player .ft-site-footer{z-index:80!important}body.has-fixed-footer-player .ft-footer-brand{visibility:hidden!important;width:300px!important;min-width:300px!important}body.has-fixed-footer-player .ft-footer-links{visibility:hidden!important}.player.video-mini-active{left:28px!important;right:170px!important;bottom:0!important;height:var(--ft-footer-h)!important;grid-template-columns:300px minmax(380px,1fr) 150px!important;padding:8px 0!important;z-index:95!important}.player.video-mini-active .now{grid-template-columns:150px 1fr!important}.player.video-mini-active .thumb{width:150px!important;height:68px!important}.player.video-mini-active .controls-main{justify-content:flex-start!important}.player.video-mini-active .progress-row{display:grid!important}
@media(max-width:760px){body.has-fixed-footer-player .ft-footer-brand{width:135px!important;min-width:135px!important}.player.video-mini-active{left:8px!important;right:8px!important;grid-template-columns:135px minmax(0,1fr)!important}.player.video-mini-active .now{grid-template-columns:125px!important}.player.video-mini-active .thumb{width:125px!important;height:58px!important}}
/* build025 — YouTube-inspired video metadata/comments + threaded replies */
.ft-description{padding:14px 16px!important}.ft-description-meta{display:flex;gap:10px;flex-wrap:wrap;align-items:center;font-size:14px}.ft-description-meta a{color:#ff6574;text-decoration:none;font-weight:700}.ft-description-text{margin-top:8px;white-space:pre-line;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ft-description.expanded .ft-description-text{display:block;overflow:visible}.ft-description-more{border:0;background:none;color:#fff;font-weight:800;padding:8px 0 0;cursor:pointer}.ft-comments-title{display:flex;align-items:center;gap:24px}.ft-comments-title select{background:#151112;color:#fff;border:1px solid #482027;border-radius:10px;padding:8px 12px}.ft-comment-compose{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:start;margin:20px 0}.ft-comment-compose textarea,.ft-reply-form textarea{background:transparent;border:0;border-bottom:1px solid #555;color:#fff;min-height:42px;resize:vertical}.ft-comment{display:flex;gap:12px;margin:20px 0 0;padding-left:calc(min(var(--reply-depth),3)*30px);position:relative}.ft-comment-avatar{width:40px;height:40px;min-width:40px;border-radius:50%;background:#3b2024 center/cover no-repeat;display:grid;place-items:center;font-weight:900}.ft-comment-body{flex:1;min-width:0}.ft-comment-head{display:flex;gap:8px;align-items:center}.ft-comment-head small{color:#aaa}.ft-comment-menu{margin-left:auto;border:0;background:transparent;color:#ddd;font-size:24px;cursor:pointer}.ft-comment-body p{margin:7px 0;line-height:1.45}.ft-comment-actions{display:flex;gap:16px}.ft-comment-actions button{border:0;background:none;color:#ddd;font-weight:800;cursor:pointer}.ft-mention{color:#ff5265;font-weight:800}.ft-comment-replies{border-left:1px solid rgba(255,255,255,.12);margin-left:18px}.ft-inline-reply{margin-top:10px}.ft-reply-form{display:grid;grid-template-columns:1fr auto auto;gap:8px}.ft-site-footer{position:fixed!important;left:0;right:0;bottom:0;z-index:1200}.ft-site-footer>.player{display:none}.ft-site-footer.has-video-mini>.ft-footer-brand{display:none!important}.ft-site-footer.has-video-mini>.player{display:grid!important;position:static!important;inset:auto!important;flex:1;min-height:92px;width:100%;border:0!important}.ft-site-footer.has-video-mini{display:flex;align-items:stretch}.ft-site-footer.has-video-mini .player .thumb{width:160px;min-width:160px;height:90px}.ft-site-footer.has-video-mini .player .thumb video{width:100%;height:100%;object-fit:cover}.ft-site-footer.has-video-mini .controls{flex:1}
body{padding-bottom:88px!important}body.has-fixed-footer-player{padding-bottom:112px!important}
/* build029 — single persistent video engine */
.ft-watch-player > .ft-watch-video{width:100%;height:100%;display:block;object-fit:contain;background:#000;border-radius:inherit}
.ft-site-footer .player.video-mini-active .thumb > .ft-footer-video{display:block!important;width:100%;height:100%;object-fit:cover;background:#000}

/* build033 — Test 10: footer player exists only as mini-player away from /video/:id. */
.player:not(.video-mini-active){display:none!important}
body:not(.has-fixed-footer-player) .player{display:none!important}
\n/* build040 — Test 13: compact, readable video comments */
.ft-comments{padding:20px 22px!important}
.ft-comment-list,#ftCommentList{display:flex;flex-direction:column;gap:0}
.ft-comment{display:flex!important;align-items:flex-start;gap:12px;margin:0!important;padding:18px 0!important;border-bottom:1px solid rgba(255,255,255,.07)!important;background:transparent!important}
.ft-comment:last-child{border-bottom:0!important}
.ft-comment[style*="--reply-depth"]{padding-left:calc(min(var(--reply-depth),3)*26px)!important}
.ft-comment-avatar{width:38px!important;height:38px!important;min-width:38px!important;font-size:14px;background-color:#3b2024!important}
.ft-comment-body{display:block!important;flex:1;min-width:0}
.ft-comment-head{display:flex!important;align-items:baseline!important;gap:8px!important;min-height:22px}
.ft-comment-head b{font-size:14px;line-height:1.35;color:#fff}
.ft-comment-head small{display:inline!important;margin:0!important;color:#9f9698!important;font-size:12px;white-space:nowrap}
.ft-comment-head .ft-comment-menu{margin-left:auto}
.ft-comment-body>p{margin:5px 0 7px!important;font-size:15px;line-height:1.5;color:#f4eeee;white-space:pre-wrap;overflow-wrap:anywhere}
.ft-comment-actions{display:flex;align-items:center;gap:14px;min-height:26px}
.ft-comment-actions button{padding:3px 0!important;font-size:12px;color:#bdb4b6!important}
.ft-comment-actions button:hover{color:#fff!important}
.ft-comment-replies{margin:8px 0 0 6px!important;padding-left:14px;border-left:1px solid rgba(255,255,255,.10)!important}
.ft-comment-replies>.ft-comment{padding-top:14px!important;padding-bottom:14px!important}
.ft-comment-new{animation:ftCommentIn .18s ease-out}
@keyframes ftCommentIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media(max-width:640px){.ft-comments{padding:16px!important}.ft-comment{gap:10px!important}.ft-comment-avatar{width:34px!important;height:34px!important;min-width:34px!important}.ft-comment[style*="--reply-depth"]{padding-left:calc(min(var(--reply-depth),2)*18px)!important}.ft-comment-head{flex-wrap:wrap;gap:4px 7px!important}.ft-comment-body>p{font-size:14px}}

/* FraiseTUBE build041 — moderation + comment ownership actions */
.ft-comment-menu-wrap{position:relative;margin-left:auto}
.ft-comment-menu-wrap .ft-comment-menu{margin-left:0!important;min-width:36px;min-height:36px;border-radius:50%}
.ft-comment-menu-wrap .ft-comment-menu:hover,.ft-comment-menu-wrap .ft-comment-menu[aria-expanded="true"]{background:rgba(255,255,255,.08)}
.ft-comment-menu-pop{position:absolute;right:0;top:38px;z-index:30;min-width:150px;padding:6px;background:#171112;border:1px solid rgba(255,255,255,.13);border-radius:10px;box-shadow:0 12px 28px rgba(0,0,0,.38)}
.ft-comment-menu-pop[hidden]{display:none!important}
.ft-comment-menu-pop button{display:block;width:100%;padding:9px 11px;border:0;border-radius:7px;background:transparent;color:#f5eeee;text-align:left;cursor:pointer;font-weight:700}
.ft-comment-menu-pop button:hover{background:rgba(255,255,255,.07)}
.ft-comment-menu-pop button.danger{color:#ff6574}
.ft-hidden-badge{display:inline-flex;align-items:center;padding:2px 7px;border-radius:999px;background:rgba(255,82,101,.12);border:1px solid rgba(255,82,101,.3);color:#ff7a89;font-size:11px;font-weight:800}
.ft-comment.is-hidden{opacity:.68!important}
.ft-comment.is-hidden .ft-comment-body>p{font-style:italic;color:#b6aaac!important}
.ft-comment-edit-form{display:grid;gap:9px}
.ft-comment-edit-form textarea{width:100%;min-height:72px;padding:10px 12px;background:#0d0d0d;border:1px solid #432126;border-radius:10px;color:#fff;resize:vertical}
.ft-comment-edit-form>div{display:flex;gap:8px}

/* build046 — FraiseTUBE carousel fallback only. Mini-player layout intentionally remains build041. */
.ft-video-carousel:not([style]){background-color:#100b0c!important;background-image:radial-gradient(circle at 58% 35%,rgba(157,22,39,.24),transparent 35%),linear-gradient(135deg,#090909 0%,#1b0b0e 55%,#0b0909 100%)!important}


/* build048 — controls-only refinement. The build046 mini-video block (.now/.thumb/.player-meta) is intentionally untouched. */
.player.video-mini-active .thumb{pointer-events:none!important;cursor:default!important}
.player.video-mini-active .controls{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;grid-template-rows:1fr!important;align-items:center!important;column-gap:12px!important;min-width:0!important}
.player.video-mini-active .controls-main{display:flex!important;align-items:center!important;gap:8px!important;margin:0!important}
.player.video-mini-active .controls-main>#shuffleBtn,
.player.video-mini-active .controls-main>#prevBtn,
.player.video-mini-active .controls-main>#nextBtn,
.player.video-mini-active .controls-main>#restartBtn,
.player.video-mini-active .controls-main>#deviceBtn,
.player.video-mini-active .controls-main>#dockPlayerBtn{display:none!important}
.player.video-mini-active #playPauseBtn,
.player.video-mini-active #miniStopBtn,
.player.video-mini-active #miniExpandBtn{display:inline-grid!important;place-items:center!important;flex:0 0 auto!important}
.player.video-mini-active #playPauseBtn{width:48px!important;height:48px!important;margin:0!important}
.player.video-mini-active #miniStopBtn,.player.video-mini-active #miniExpandBtn{width:38px!important;height:38px!important;margin:0!important}
.player.video-mini-active .progress-row{display:grid!important;grid-template-columns:42px minmax(0,1fr) 42px 38px!important;align-items:center!important;gap:9px!important;margin:0!important;min-width:0!important}
.player.video-mini-active .progress-row input[type="range"],
.player.video-mini-active .volume input[type="range"]{height:22px!important;margin:0!important;align-self:center!important}
.player.video-mini-active .volume{display:flex!important;align-items:center!important;gap:8px!important;margin:0!important;padding:0 44px 0 8px!important;height:100%!important}
.player.video-mini-active .footer-video-close{top:50%!important;transform:translateY(-50%)!important;right:8px!important;margin:0!important}
@media(max-width:760px){.player.video-mini-active .controls{column-gap:6px!important}.player.video-mini-active .controls-main{gap:5px!important}.player.video-mini-active #playPauseBtn{width:42px!important;height:42px!important}.player.video-mini-active #miniStopBtn,.player.video-mini-active #miniExpandBtn{width:34px!important;height:34px!important}.player.video-mini-active .progress-row{grid-template-columns:34px minmax(70px,1fr) 34px 34px!important;gap:5px!important}}

/* build049 — fullscreen control visual integration only; no mini-video/transport behavior changes. */
.player.video-mini-active #miniExpandBtn{
  width:38px!important;height:38px!important;min-width:38px!important;
  border:0!important;outline:0!important;box-shadow:none!important;
  border-radius:50%!important;background:#141414!important;color:#f2f2f2!important;
  padding:0!important;margin:0!important;line-height:1!important;
}
.player.video-mini-active #miniExpandBtn:hover{background:#1d1113!important;color:#fff!important;border:0!important;box-shadow:none!important}
.player.video-mini-active #miniExpandBtn:focus,.player.video-mini-active #miniExpandBtn:focus-visible{outline:0!important;border:0!important;box-shadow:none!important}

/* build053 — creator profile action avatar only. */
.creator-profile-head .creator-profile-avatar{overflow:hidden!important;display:grid!important;place-items:center!important;background:#141414!important}
.creator-profile-head .creator-profile-avatar>img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;border-radius:inherit!important}

/* build054: dedicated channel avatar under video; avoids placeholder/background conflicts */
.ft-watch-channel-avatar{overflow:hidden;background:linear-gradient(135deg,#7b202c,#171717)}
.ft-watch-channel-avatar>img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}

/* build056 — icône Abonnements intégrée au header */
.ft-main-nav .nav-subscription-icon{display:inline-grid;place-items:center;width:17px;height:17px;flex:0 0 17px}.ft-main-nav .nav-subscription-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* build058 — unified public avatar rendering */
.creator-avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.ft-video-card-info.no-avatar{grid-template-columns:1fr!important}
/* build059 — scheduled video cards */
.ft-video-card-scheduled .ft-video-thumb{filter:none;position:relative}
.ft-video-card-scheduled .ft-video-thumb:after{content:"";position:absolute;inset:0;background:rgba(8,5,7,.34);pointer-events:none}
.ft-video-waiting{position:absolute;z-index:2;left:12px;bottom:10px;padding:5px 9px;border-radius:999px;background:rgba(20,12,15,.88);color:#fff;font-size:11px;font-weight:800;letter-spacing:.08em}

/* build060 — scheduled video notification UX */
.ft-card-notify{margin-top:7px;width:max-content;border:1px solid rgba(239,35,60,.7);background:rgba(239,35,60,.08);color:#fff;border-radius:999px;padding:6px 10px;font:inherit;font-size:12px;font-weight:700;cursor:pointer;position:relative;z-index:3}
.ft-card-notify:hover,.ft-card-notify.is-active{background:rgba(239,35,60,.2);border-color:#ef233c}
.ft-release-alert.is-active{background:rgba(239,35,60,.22);border-color:#ef233c}
.ft-video-card-scheduled .ft-video-freshness{color:#f1c5cb;font-weight:600}

/* build061 — centre de notifications */
.notification-center-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px;border-bottom:1px solid rgba(239,35,60,.24);font-weight:800}
.notification-center-head button{border:0;background:transparent;color:#ff5367;font:inherit;font-size:.82rem;cursor:pointer;padding:4px 0}
.notification-center-head button:hover{text-decoration:underline}

/* build065 — existing media state */
.studio-current-video-ok{display:flex;flex-direction:column;gap:4px;margin:10px 0 14px;padding:12px 14px;border:1px solid rgba(255,255,255,.10);border-radius:12px;background:rgba(255,255,255,.025)}
.studio-current-video-ok b{color:#f4f1f2}.studio-current-video-ok small{color:#a99da0;line-height:1.4}

/* build070 — gestion des commentaires vidéo + URL publique */
.ft-manage-url{display:grid;gap:8px;margin:0 0 18px}.ft-manage-url-row{display:flex;gap:10px;align-items:center}.ft-manage-url-row input{flex:1;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.ft-manage-comments{display:grid;gap:12px;margin-top:14px}.ft-manage-comment{border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:14px;background:rgba(255,255,255,.025);display:grid;gap:10px}.ft-manage-comment.is-hidden{opacity:.66;border-style:dashed}.ft-manage-comment-head{display:flex;align-items:center;gap:10px;min-width:0}.ft-manage-comment-avatar{width:38px;height:38px;flex:0 0 38px;border-radius:50%;background:#2b171a center/cover no-repeat;display:grid;place-items:center;font-weight:800}.ft-manage-comment-meta{min-width:0;display:grid;gap:2px}.ft-manage-comment-meta small{color:var(--muted,#b5a6a8)}.ft-manage-comment-state{margin-left:auto;border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:4px 9px;font-size:12px;white-space:nowrap}.ft-manage-comment-state.hidden{border-color:#7c4b52;color:#d6aab0}.ft-manage-comment-text{margin:0;white-space:pre-wrap;line-height:1.5}.ft-manage-comment-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.ft-manage-comment-edit textarea{width:100%;min-height:92px;resize:vertical}.ft-manage-comment-reply{margin-left:34px}.ft-manage-summary{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.ft-manage-summary strong{font-size:1.05rem}@media(max-width:700px){.ft-manage-url-row{align-items:stretch;flex-direction:column}.ft-manage-comment-reply{margin-left:14px}.ft-manage-comment-actions{justify-content:flex-start}}


/* build071 — visibilité vidéo */
.ft-visibility-banner{display:flex;align-items:center;gap:12px;margin:14px 0 4px;padding:11px 14px;border:1px solid rgba(239,35,60,.45);border-radius:12px;background:rgba(239,35,60,.09);color:#f7e9eb;flex-wrap:wrap}
.ft-visibility-banner b{color:#fff}.ft-visibility-banner span{color:#cdbfc1;font-size:.92rem}.ft-visibility-banner.unlisted{border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.055)}

/* build083 — publicité FraiseTUBE stricte */
.video-break-overlay{background:rgba(5,5,5,.92)!important}
.video-break-card{border-color:rgba(239,35,60,.62)!important;background:radial-gradient(circle at 50% 14%,rgba(122,14,29,.24),transparent 42%),linear-gradient(180deg,#160b0d 0%,#0a0909 62%,#070707 100%)!important;box-shadow:0 28px 80px rgba(0,0,0,.72),0 0 42px rgba(239,35,60,.16)!important}
.video-break-label{color:#ff5265!important;border-color:rgba(239,35,60,.62)!important;background:rgba(93,12,23,.30)!important;box-shadow:none!important}
.video-break-gallery{grid-template-columns:1fr!important;width:min(760px,84vw)!important}
.video-break-gallery img{height:min(390px,48vh)!important;object-fit:contain!important;background:#080808!important;border-color:rgba(239,35,60,.30)!important;animation:none!important;box-shadow:none!important}
.video-break-gallery img:not(:first-child){display:none!important}
.video-break-logo{display:none!important}
.video-break-brand{color:#c8b8ba!important}.video-break-info p,.video-break-time{color:#c9bfc0!important}
.video-break-link{background:#ef233c!important;color:#fff!important;box-shadow:none!important}
.video-break-progressbar{background:#2b2526!important}.video-break-progressbar i{background:linear-gradient(90deg,#a90f26,#ef233c,#ff5265)!important}

/* build083 — carte publicité contenue et responsive */
.video-break-overlay{overflow:auto!important;padding:clamp(12px,3vw,28px)!important}
.video-break-card{box-sizing:border-box!important;width:min(720px,calc(100vw - 32px))!important;max-height:calc(100vh - 32px)!important;min-height:0!important;overflow:auto!important;justify-content:flex-start!important;gap:14px!important;padding:clamp(18px,3vw,30px)!important;border-radius:24px!important;background:linear-gradient(180deg,#170b0d 0%,#0d090a 55%,#080808 100%)!important;border:1px solid rgba(239,35,60,.58)!important;box-shadow:0 24px 72px rgba(0,0,0,.72),0 0 32px rgba(181,18,39,.14)!important}
.video-break-gallery{box-sizing:border-box!important;width:100%!important;max-width:640px!important;display:block!important;margin:0 auto!important;overflow:hidden!important;border-radius:16px!important;background:#080808!important}
.video-break-gallery img{display:block!important;width:100%!important;max-width:100%!important;height:auto!important;max-height:min(46vh,420px)!important;object-fit:contain!important;margin:0 auto!important;border:1px solid rgba(239,35,60,.28)!important;border-radius:16px!important;background:#080808!important;transform:none!important;animation:none!important}
.video-break-gallery img:not(:first-child){display:none!important}
.video-break-info{width:100%!important;max-width:640px!important;margin:0 auto!important}.video-break-info h2{margin:2px 0 6px!important}.video-break-brand{color:#d7c4c7!important}.video-break-progress{width:100%!important;max-width:640px!important;margin:0 auto!important}.video-break-progressbar i{background:linear-gradient(90deg,#8f1022,#c91832,#ef233c)!important}.video-break-label{color:#ff596b!important;background:#2a0c11!important;border-color:#8f2634!important}
@media(max-width:600px){.video-break-card{width:calc(100vw - 20px)!important;max-height:calc(100vh - 20px)!important;padding:16px!important;border-radius:18px!important;gap:11px!important}.video-break-gallery img{max-height:38vh!important}.video-break-info h2{font-size:clamp(22px,7vw,30px)!important}.video-break-link{margin-top:10px!important}}

/* build099 — footer removed; mini-player is contextual only. */
.ft-site-footer{display:none!important}
body,body.has-fixed-footer-player{padding-bottom:0!important}
body:not(.has-fixed-footer-player)>.player{display:none!important}
body.has-fixed-footer-player>.player.video-mini-active{display:grid!important}

/* build102 Creator Studio tag editor */
.studio-tag-editor{display:flex;flex-wrap:wrap;gap:8px;align-items:center;min-height:44px;padding:7px 9px;border:1px solid #4b2025;border-radius:10px;background:#100d0e}.studio-tag-chips{display:flex;flex-wrap:wrap;gap:6px}.studio-tag-chip{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;border-radius:999px;background:#2b1115;border:1px solid #6b252e;color:#ff7180;font-size:12px;font-weight:700}.studio-tag-chip button{border:0;background:transparent;color:inherit;font-size:16px;line-height:1;cursor:pointer;padding:0}.studio-tag-editor>input[type=text]{flex:1;min-width:150px;border:0!important;background:transparent!important;outline:0;padding:5px!important}.studio-tags-field small{display:block;margin-top:5px}

/* build103 */
.studio-video-public-link,.studio-video-title-link{color:inherit;text-decoration:none}.studio-video-public-link{display:inline-block}.studio-video-title-link:hover{color:#ff5365;text-decoration:underline}.studio-release-picker{display:flex;align-items:center;border:1px solid #4b2025;border-radius:12px;background:#100d0e;overflow:hidden}.studio-release-picker input{flex:1;border:0!important;background:transparent!important}.studio-release-calendar{align-self:stretch;width:48px;border:0;border-right:1px solid #4b2025;background:#171010;color:#ddd;font-size:20px;cursor:pointer}.studio-release-calendar:hover{background:#2b1115;color:#fff}.studio-tag-editor{position:relative}.studio-tag-suggestions{position:absolute;left:8px;right:8px;top:calc(100% + 4px);z-index:30;background:#171010;border:1px solid #5d252d;border-radius:10px;padding:5px;box-shadow:0 12px 30px #0009}.studio-tag-suggestions button{display:block;width:100%;text-align:left;border:0;background:transparent;color:#f7e9ea;padding:8px 10px;border-radius:7px;cursor:pointer}.studio-tag-suggestions button:hover{background:#35151b}.ft-owner-edit{margin-left:auto;text-decoration:none}

/* build104 — scheduled release transition + clean datetime picker */
.ft-watch-player{position:relative;overflow:hidden}.ft-release-transition{position:absolute;inset:0;z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:#050303;opacity:0;pointer-events:none;overflow:hidden}.ft-release-transition.is-running{animation:ftReleaseIn 2.85s ease both}.ft-release-transition img{position:relative;z-index:2;width:min(52%,440px);max-height:42%;object-fit:contain;filter:drop-shadow(0 0 24px rgba(239,35,60,.45));animation:ftLogoGlitch 2.6s steps(1,end) both}.ft-release-transition span{position:relative;z-index:2;font-weight:900;letter-spacing:.28em;color:#fff;font-size:clamp(12px,1.5vw,20px);animation:ftLogoGlitch 2.6s steps(1,end) both}.ft-release-glitch-lines{position:absolute;inset:-20%;background:repeating-linear-gradient(0deg,transparent 0 13px,rgba(239,35,60,.28) 14px 16px,transparent 17px 27px);mix-blend-mode:screen;animation:ftScanGlitch .22s steps(2,end) infinite}@keyframes ftReleaseIn{0%{opacity:0}8%,84%{opacity:1}100%{opacity:0}}@keyframes ftScanGlitch{0%{transform:translate(0,0) skewX(0)}33%{transform:translate(4%,-2%) skewX(3deg)}66%{transform:translate(-3%,3%) skewX(-2deg)}100%{transform:translate(1%,-1%)}}@keyframes ftLogoGlitch{0%,12%{transform:translate(0);clip-path:inset(0)}13%{transform:translate(-8px,2px);clip-path:inset(10% 0 68% 0)}16%{transform:translate(7px,-2px);clip-path:inset(58% 0 15% 0)}20%,63%{transform:translate(0);clip-path:inset(0)}64%{transform:translate(12px,0);clip-path:inset(22% 0 54% 0)}68%{transform:translate(-10px,1px);clip-path:inset(65% 0 8% 0)}72%,100%{transform:translate(0);clip-path:inset(0)}}
.studio-release-picker input[type="datetime-local"]::-webkit-calendar-picker-indicator{opacity:0;width:0;margin:0;padding:0;pointer-events:none}.studio-release-calendar{font-size:0}.studio-release-calendar::before{content:"▣";font-size:20px}
@media (prefers-reduced-motion:reduce){.ft-release-transition.is-running{animation:none;opacity:1}.ft-release-transition img,.ft-release-transition span,.ft-release-glitch-lines{animation:none}}
