:root{--bg:#090d11;--panel:#11171d;--panel2:#171e25;--line:#242c34;--text:#f4f5f7;--muted:#9aa3ad;--yellow:#e5a900;--yellow2:#ffc928;--green:#43d18b;--red:#ff5b4d;--blue:#56a8ff;--radius:14px}*{box-sizing:border-box}html{background:#070a0d}body{margin:0;background:radial-gradient(circle at 70% 15%,#111923 0,#090d11 38%,#070a0d 100%);color:var(--text);font:15px/1.5 Arial,Helvetica,sans-serif;min-height:100vh}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{padding-left:250px}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;background:linear-gradient(180deg,#0c1116,#10161b);border-right:1px solid #1d252c;padding:26px 18px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:700;padding:8px}.brand b{color:#f7d26d}.brand-mark{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#080a0c;border:1px solid #6e5200;color:var(--yellow2);font-size:38px;line-height:1;font-weight:300}.sidebar nav{display:grid;gap:6px;margin:36px 0}.sidebar nav a{display:flex;gap:14px;align-items:center;padding:12px 14px;border-radius:9px;color:#aeb5bc}.sidebar nav a:hover,.sidebar nav a.active{background:#1a2026;color:var(--yellow2)}.server-card,.side-card,.panel,.request-list,.stat{background:linear-gradient(145deg,#141a20,#11171c);border:1px solid var(--line);border-radius:var(--radius)}.server-card{margin-top:auto;padding:16px;font-size:13px}.server-card p{color:var(--green)}.server-card i{display:inline-block;width:8px;height:8px;background:var(--green);border-radius:50%}.server-card strong{display:block;margin-top:5px}.powered{font-size:32px;color:#a8adb2;margin:22px 10px 0;font-weight:800}.powered small{display:block;font-size:8px;color:var(--yellow);letter-spacing:2px;margin-top:-8px}.main{min-height:100vh;padding:0 28px 40px}.topbar{height:74px;display:flex;justify-content:space-between;align-items:center}.account{display:flex;align-items:center;gap:10px;color:#c6ccd1}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#2b79bd;border:1px solid #4295db}.rank{font-size:11px;padding:3px 8px;border-radius:999px;background:#242b32;color:#cbd1d6}.rank-admin{color:#ffbe3d}.rank-moderator{color:#7fbaff}.rank-vip{color:#d49bff}.page-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px}.hero{min-height:270px;border:1px solid #1f272f;border-radius:var(--radius);display:flex;align-items:center;justify-content:space-between;padding:38px;background:linear-gradient(90deg,rgba(8,12,16,.98),rgba(8,12,16,.76)),radial-gradient(circle at 82% 45%,#6c4904 0,#18202a 30%,#0d1116 65%);overflow:hidden}.hero h1{font-size:29px;line-height:1.25;margin:0 0 12px}.hero h1 em{font-style:normal;color:var(--yellow2)}.hero p{color:#c1c6ca;max-width:530px}.hero-chevron{font-size:160px;color:var(--yellow);font-weight:200;text-shadow:0 0 35px #e3a600}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid #2b343d;background:#20272e;color:#fff;border-radius:9px;padding:10px 16px;cursor:pointer}.btn:hover{filter:brightness(1.12)}.btn-primary{background:linear-gradient(135deg,#ffd129,#dfa500);color:#111;border-color:#eeb500;font-weight:700}.btn-danger{background:#44201f;border-color:#74312d;color:#ff8d84}.btn-block{width:100%}.section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 0 14px}.section-head h1,.section-head h2{margin:0}.section-head p{margin:4px 0 0;color:var(--muted)}.section-head>a{color:#d2d5d8}.request-list{overflow:hidden}.request-row{display:grid;grid-template-columns:45px minmax(0,1fr) 110px 120px 15px;gap:14px;align-items:center;padding:12px 16px;border-bottom:1px solid #20272d}.request-row:last-child{border-bottom:0}.request-row:hover{background:#171e24}.poster{width:38px;height:54px;border-radius:5px;overflow:hidden;background:linear-gradient(145deg,#44310a,#1c252c);display:grid;place-items:center;color:var(--yellow)}.poster img,.detail-poster img{width:100%;height:100%;object-fit:cover}.request-main{display:grid}.request-main small,.date{color:var(--muted)}.status{font-size:13px}.status-pending{color:#b8c0c8}.status-in_progress{color:#ffca28}.status-accepted{color:var(--green)}.status-completed{color:#aeb8c2}.status-refused,.status-cancelled{color:var(--red)}.right-col{display:grid;gap:16px;align-content:start}.side-card{padding:18px}.side-card h3{margin-top:0}.side-card ol{padding-left:26px}.side-card li{padding:9px 0}.side-card li::marker{color:var(--yellow)}.side-card li span{display:block;color:var(--muted);font-size:13px}.rules{list-style:'✓  ';padding-left:20px;color:#c6ccd0}.rules li::marker{color:var(--green)}.page{max-width:1220px;margin:0 auto}.narrow{max-width:900px}.filters{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 16px}.filters a{padding:7px 12px;border-radius:999px;color:var(--muted);border:1px solid transparent}.filters a.active{background:#20272e;border-color:#2d353d;color:#fff}.panel{padding:22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.wide{grid-column:1/-1}label{display:grid;gap:7px;color:#cbd0d4}label small{color:var(--muted)}input,select,textarea{width:100%;border:1px solid #313a43;background:#0d1217;color:#fff;border-radius:8px;padding:11px 12px;outline:none}input:focus,select:focus,textarea:focus{border-color:#a77d08;box-shadow:0 0 0 3px rgba(229,169,0,.12)}textarea{resize:vertical}.actions{display:flex;justify-content:flex-end;gap:10px}.empty{text-align:center;padding:40px;color:var(--muted)}.detail{display:grid;grid-template-columns:160px 1fr;gap:26px;margin-top:16px}.detail-poster{width:160px;height:230px;border-radius:8px;overflow:hidden;background:#1b232a;display:grid;place-items:center;font-size:50px;color:var(--yellow)}dl{display:grid;grid-template-columns:130px 1fr;gap:10px}dt{color:var(--muted)}dd{margin:0}.back{color:var(--muted)}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.panel h2{margin-top:0}.panel form,.panel label{margin-bottom:14px}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.stat{padding:18px}.stat span{color:var(--muted)}.stat strong{display:block;font-size:30px}.admin-cards{display:grid;gap:12px}.admin-request{display:grid;grid-template-columns:2fr 180px 1.5fr auto;gap:15px;align-items:end}.admin-request h3{margin:0}.admin-request p{color:var(--muted)}blockquote{margin:10px 0;padding-left:12px;border-left:2px solid var(--yellow);color:#c8cdd1}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:var(--radius)}table{width:100%;border-collapse:collapse;background:#11171c}th,td{text-align:left;padding:13px;border-bottom:1px solid var(--line)}th{color:var(--muted)}.inline-form{display:flex;gap:6px}.inline-form select{min-width:120px}.flash{position:relative;margin:0 auto 14px;max-width:1220px;padding:12px 16px;border-radius:9px;border:1px solid}.flash-success{background:#112a20;border-color:#24593f;color:#81e4ae}.flash-error{background:#2e1716;border-color:#63302d;color:#ff9d95}.auth-shell{display:grid;place-items:center;padding:30px}.auth-card{width:min(430px,100%);background:linear-gradient(145deg,#151b21,#0f1419);border:1px solid #29323a;border-radius:18px;padding:32px;box-shadow:0 30px 90px #000}.auth-brand{justify-content:center;margin-bottom:28px}.auth-card h1{text-align:center;margin-bottom:5px}.auth-card>p{text-align:center;color:var(--muted)}.auth-card form{display:grid;gap:15px;margin-top:25px}.auth-foot{font-size:14px}.auth-foot a{color:var(--yellow2)}.error-page{text-align:center;margin-top:12vh}.error-page .brand-mark{margin:auto}.mobile-top,.mobile-nav{display:none}@media(max-width:980px){.app-shell{padding-left:0;padding-top:64px;padding-bottom:70px}.sidebar{transform:translateX(-105%);transition:.2s;width:260px}.sidebar.open{transform:none}.mobile-top{display:flex;position:fixed;z-index:15;top:0;left:0;right:0;height:64px;background:#0d1217;border-bottom:1px solid var(--line);align-items:center;justify-content:space-between;padding:8px 14px}.menu-btn{background:none;border:0;color:#fff;font-size:24px}.topbar{display:none}.main{padding:18px 14px}.page-grid{grid-template-columns:1fr}.right-col{grid-template-columns:1fr 1fr}.mobile-nav{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;z-index:14;bottom:0;left:0;right:0;background:#11171c;border-top:1px solid var(--line)}.mobile-nav a{display:grid;place-items:center;padding:9px;font-size:18px}.mobile-nav span{font-size:10px;color:var(--muted)}.admin-request{grid-template-columns:1fr 1fr}.admin-request>div{grid-column:1/-1}.stats{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.hero{padding:24px;min-height:240px}.hero h1{font-size:25px}.hero-chevron{display:none}.right-col,.profile-grid,.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}.request-row{grid-template-columns:42px minmax(0,1fr) 85px}.request-row .date,.request-row>b{display:none}.detail{grid-template-columns:1fr}.detail-poster{width:120px;height:175px}.stats{grid-template-columns:1fr 1fr}.admin-request{grid-template-columns:1fr}.admin-request>div{grid-column:auto}.section-head{align-items:flex-start;flex-direction:column}.inline-form{min-width:390px}}

/* Plex Demand 2.0 — interface enrichie */
:root{--gold:#f7b500;--gold-2:#ffd65a;--panel:#11171d;--panel-2:#151c23;--line:#27313b;--muted:#98a3ae;--text:#f5f7fa;--green:#35d58b;--red:#ff6b6b;--blue:#5da9ff;--shadow:0 22px 70px rgba(0,0,0,.34)}
body{background:radial-gradient(circle at 72% 0%,rgba(247,181,0,.055),transparent 28%),#080d12}
.sidebar{background:linear-gradient(180deg,#0e141a 0%,#10171d 100%);box-shadow:20px 0 60px rgba(0,0,0,.18)}
.sidebar nav a{border-radius:12px;margin:4px 12px;padding:12px 14px;transition:.2s ease}
.sidebar nav a:hover,.sidebar nav a.active{transform:translateX(3px);background:linear-gradient(90deg,rgba(247,181,0,.16),rgba(247,181,0,.035));color:#fff}
.brand-mark{box-shadow:0 0 30px rgba(247,181,0,.2)}
.panel{background:linear-gradient(145deg,rgba(21,28,35,.96),rgba(13,19,25,.96));border-color:rgba(72,86,100,.42);box-shadow:var(--shadow);backdrop-filter:blur(14px)}
.btn{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,var(--gold-2),var(--gold));box-shadow:0 10px 28px rgba(247,181,0,.16)}
.eyebrow{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:800;color:var(--gold);margin-bottom:8px}
.section-head h1{font-size:clamp(2rem,3vw,3.25rem);letter-spacing:-.045em;margin:.15em 0}.section-head p{max-width:760px;color:var(--muted);font-size:1.02rem}
.integration-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:22px}.integration-card,.guide-card{padding:26px}.integration-head{display:flex;align-items:center;gap:16px;margin:4px 0 14px}.integration-logo{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;font-weight:900}.integration-logo.tmdb{font-size:.9rem;background:linear-gradient(135deg,#0d253f,#01b4e4);color:#90cea1}.integration-logo.plex{font-size:2.4rem;background:#0b0d0f;color:var(--gold);border:1px solid #4f410f}.integration-head h2{margin:0 0 6px}.status-dot{font-size:.78rem;color:var(--muted)}.status-dot:before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:7px;background:#59636d}.status-dot.on:before{background:var(--green);box-shadow:0 0 12px var(--green)}.integration-card hr{border:0;border-top:1px solid var(--line);margin:28px 0}.check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:9px!important;font-weight:500!important;color:var(--muted)}.check input{width:auto}.guide-card ol{padding-left:22px;color:var(--muted);line-height:1.7}.security-note{padding:15px;border-radius:12px;background:rgba(53,213,139,.08);border:1px solid rgba(53,213,139,.2);margin:22px 0;color:#bcefd5}.wide-btn{width:100%}
.request-layout{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.35fr);gap:22px;align-items:start}.discovery-panel,.selected-panel{padding:24px}.search-label{display:block;margin-bottom:10px;font-weight:750}.smart-search{position:relative;display:flex;align-items:center;gap:10px;background:#090e13;border:1px solid #34404b;border-radius:15px;padding:0 15px;transition:.2s}.smart-search:focus-within{border-color:var(--gold);box-shadow:0 0 0 4px rgba(247,181,0,.09)}.smart-search input{border:0;background:transparent;padding:16px 2px;box-shadow:none;outline:0;width:100%;font-size:1rem}.smart-search kbd{color:#7f8994;font-size:.7rem;background:#192129;border:1px solid #35414c;padding:4px 7px;border-radius:6px}.api-hint{font-size:.75rem;color:#74808c;margin-top:12px}.autocomplete-results{display:grid;gap:10px;margin-top:14px;max-height:560px;overflow:auto}.autocomplete-results .media-card{grid-template-columns:68px 1fr;cursor:default;padding:9px}.autocomplete-results .media-poster{height:92px;border-radius:9px}.autocomplete-results .media-body p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.autocomplete-results .media-body .btn{padding:8px 12px;margin-top:8px}.selected-preview{display:grid;grid-template-columns:130px 1fr;gap:22px;min-height:190px;margin-bottom:25px;padding-bottom:25px;border-bottom:1px solid var(--line)}.selected-preview.placeholder{align-items:center}.selected-poster,.poster-skeleton{width:130px;height:190px;object-fit:cover;border-radius:13px;background:linear-gradient(145deg,#27313a,#12181e);box-shadow:0 15px 30px rgba(0,0,0,.3)}.selected-preview h2{font-size:1.7rem;margin:.25em 0}.selected-preview p{color:var(--muted);line-height:1.55}.rating-chip{display:inline-flex;padding:6px 10px;border-radius:99px;background:rgba(247,181,0,.12);color:var(--gold-2);font-weight:700}.plex-check{display:flex;align-items:center;gap:14px;border-radius:14px;padding:15px 17px;margin-top:18px;border:1px solid var(--line);background:#0c1217}.plex-check-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#202830;font-size:1.25rem}.plex-check strong{display:block}.plex-check p{margin:4px 0 0;color:var(--muted);font-size:.88rem}.plex-check.available{border-color:rgba(255,107,107,.35);background:rgba(255,107,107,.07)}.plex-check.available .plex-check-icon{background:rgba(255,107,107,.15);color:var(--red)}.plex-check.missing{border-color:rgba(53,213,139,.3);background:rgba(53,213,139,.06)}.plex-check.missing .plex-check-icon{background:rgba(53,213,139,.13);color:var(--green)}
.search-hero{padding:24px}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px;margin-top:22px}.media-card{background:#0d1319;border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:.2s;display:grid}.media-card:hover{transform:translateY(-4px);border-color:#596775;box-shadow:0 18px 35px rgba(0,0,0,.28)}.media-poster{height:290px;background:#171f26;position:relative;overflow:hidden;display:grid;place-items:center}.media-poster img{width:100%;height:100%;object-fit:cover}.media-type{position:absolute;top:10px;left:10px;padding:5px 8px;border-radius:99px;background:rgba(5,8,10,.78);backdrop-filter:blur(8px);font-size:.7rem;font-weight:800}.media-body{padding:15px}.media-body h3{margin:0;font-size:1.02rem}.media-meta{display:flex;gap:13px;color:var(--gold);font-size:.78rem;margin:8px 0}.media-body p{font-size:.82rem;color:var(--muted);line-height:1.45}.empty-card,.loading-row,.empty-state{padding:30px;text-align:center;color:var(--muted)}
@media(max-width:1000px){.integration-grid,.request-layout{grid-template-columns:1fr}.discovery-panel{position:relative}.media-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}
@media(max-width:620px){.selected-preview{grid-template-columns:88px 1fr}.selected-poster,.poster-skeleton{width:88px;height:132px}.selected-preview h2{font-size:1.25rem}.media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.media-poster{height:220px}.media-body p{display:none}.integration-card,.guide-card,.discovery-panel,.selected-panel{padding:18px}}

/* ===== Interface V2.3 ===== */
:root{--gold:#e5a800;--gold-2:#ffc928;--surface:#111820;--surface-2:#161f28;--surface-3:#1b2631;--line:#26323d;--text:#f5f7fa;--muted:#96a0ab;--green:#35d58a;--danger:#ff6574}
.main{background:radial-gradient(circle at 70% -20%,rgba(229,168,0,.08),transparent 32%),#080d12}.topbar{backdrop-filter:blur(14px);background:rgba(8,13,18,.72);border-bottom:1px solid rgba(255,255,255,.04)}
.home-dashboard{padding:0 28px 42px}.hero-upgraded{min-height:360px;position:relative;overflow:hidden;background:linear-gradient(110deg,rgba(13,20,27,.98),rgba(16,20,21,.94)),radial-gradient(circle at 80% 50%,rgba(229,168,0,.25),transparent 28%);border:1px solid rgba(255,255,255,.09);box-shadow:0 24px 70px rgba(0,0,0,.28)}.hero-upgraded:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to right,transparent,#000)}.hero-copy{position:relative;z-index:2;max-width:740px}.eyebrow{display:block;font-size:11px;letter-spacing:.16em;font-weight:800;color:var(--gold-2);margin-bottom:10px}.hero-upgraded h1{font-size:clamp(38px,4vw,64px);line-height:1.04;letter-spacing:-.045em;margin:0 0 20px}.hero-upgraded p{font-size:16px;max-width:650px;color:#b8c0c8;line-height:1.7}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.btn-lg{padding:14px 20px;font-size:14px}.btn-ghost{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.1);color:var(--text)}.btn-ghost:hover{background:rgba(255,255,255,.09);border-color:rgba(255,201,40,.35)}.btn-block{width:100%;justify-content:center}.hero-orbit{position:absolute;right:7%;top:50%;width:180px;height:180px;transform:translateY(-50%);border:1px solid rgba(229,168,0,.2);border-radius:50%;display:grid;place-items:center;box-shadow:0 0 80px rgba(229,168,0,.1),inset 0 0 50px rgba(229,168,0,.06)}.hero-orbit:before,.hero-orbit:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(229,168,0,.12)}.hero-orbit:before{inset:24px}.hero-orbit:after{inset:52px}.hero-orbit b{font-size:110px;color:var(--gold-2);font-weight:300;text-shadow:0 0 30px rgba(255,193,7,.7);transform:translateX(6px)}.hero-orbit span{position:absolute;width:10px;height:10px;background:var(--gold-2);border-radius:50%;top:8px;box-shadow:0 0 15px var(--gold-2)}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0 30px}.stat-card{display:flex;align-items:center;gap:15px;padding:20px;border-radius:15px;background:linear-gradient(145deg,rgba(22,31,40,.95),rgba(13,20,27,.95));border:1px solid var(--line);text-decoration:none;color:inherit;transition:.2s ease}.stat-card:hover{transform:translateY(-2px);border-color:rgba(229,168,0,.42);box-shadow:0 12px 30px rgba(0,0,0,.18)}.stat-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:rgba(229,168,0,.1);color:var(--gold-2);font-size:19px}.stat-card div{display:flex;flex-direction:column}.stat-card small{color:var(--muted);font-size:12px}.stat-card strong{font-size:25px;margin-top:4px}.home-columns{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px}.home-main,.home-side{min-width:0}.home-side{display:flex;flex-direction:column;gap:16px}.elevated-list{border:1px solid var(--line);border-radius:15px;overflow:hidden;background:rgba(17,24,32,.75)}.rich-empty{padding:55px 20px;text-align:center}.rich-empty>span{display:grid;place-items:center;margin:0 auto 14px;width:54px;height:54px;border-radius:16px;background:rgba(229,168,0,.1);color:var(--gold-2);font-size:24px}.rich-empty h3{margin:0 0 7px}.rich-empty p{margin:0 0 20px;color:var(--muted)}.spotlight-card{background:linear-gradient(150deg,rgba(229,168,0,.12),rgba(17,24,32,.95) 52%);border-color:rgba(229,168,0,.24)}.spotlight-card p{color:var(--muted);line-height:1.6}.card-title-row{display:flex;justify-content:space-between;align-items:center}.live-dot{font-size:10px;color:var(--green);background:rgba(53,213,138,.1);padding:5px 8px;border-radius:999px}.mini-feed{display:flex;flex-direction:column}.mini-feed a{display:flex;gap:10px;align-items:center;padding:10px 0;border-top:1px solid rgba(255,255,255,.06);color:inherit;text-decoration:none}.mini-feed a>span{width:35px;height:45px;border-radius:6px;background:#202a34;display:grid;place-items:center;overflow:hidden}.mini-feed img{width:100%;height:100%;object-fit:cover}.mini-feed div{display:flex;flex-direction:column;min-width:0}.mini-feed b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-feed small{color:var(--muted);margin-top:3px}.text-link{color:#c9d0d7;text-decoration:none}.text-link:hover{color:var(--gold-2)}
.profile-page{max-width:1440px}.profile-cover{position:relative;min-height:190px;border-radius:18px;background:radial-gradient(circle at 80% 20%,rgba(229,168,0,.24),transparent 33%),linear-gradient(135deg,#18222c,#0e151c);border:1px solid var(--line);display:flex;align-items:flex-end;padding:28px;overflow:hidden}.profile-cover:after{content:"›";position:absolute;right:7%;top:50%;transform:translateY(-50%);font-size:150px;color:rgba(255,193,7,.18)}.profile-identity{display:flex;align-items:center;gap:18px;z-index:1}.profile-avatar{width:88px;height:88px;border-radius:24px;background:linear-gradient(135deg,var(--gold-2),#b77900);display:grid;place-items:center;color:#101419;font-size:34px;font-weight:800;overflow:hidden;box-shadow:0 12px 35px rgba(0,0,0,.35)}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-identity h1{margin:8px 0 3px;font-size:30px}.profile-identity p{margin:0;color:var(--muted)}.profile-stats{display:grid;grid-template-columns:repeat(4,1fr);margin:-1px 20px 22px;background:rgba(17,24,32,.96);border:1px solid var(--line);border-radius:0 0 16px 16px}.profile-stats div{padding:17px;text-align:center;border-right:1px solid var(--line);display:flex;flex-direction:column}.profile-stats div:last-child{border:0}.profile-stats strong{font-size:22px}.profile-stats span{font-size:11px;color:var(--muted);margin-top:3px}.profile-grid-wide{grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr)}.profile-stack{display:flex;flex-direction:column;gap:16px}.panel-rich{border-radius:16px;background:linear-gradient(145deg,rgba(22,31,40,.96),rgba(14,21,28,.96));border:1px solid var(--line)}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.panel-heading h2{margin:0}.panel-icon{width:38px;height:38px;border-radius:11px;background:rgba(229,168,0,.1);color:var(--gold-2);display:grid;place-items:center}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.switch-row{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;background:rgba(255,255,255,.03);padding:14px;border-radius:12px;margin-bottom:15px}.switch-row div{display:flex;flex-direction:column}.switch-row small{color:var(--muted);margin-top:4px}.switch-row input{position:absolute;opacity:0}.switch{width:42px;height:23px;border-radius:99px;background:#303a44;position:relative;transition:.2s}.switch:after{content:"";position:absolute;width:17px;height:17px;border-radius:50%;background:#fff;top:3px;left:3px;transition:.2s}.switch-row input:checked+.switch{background:var(--gold)}.switch-row input:checked+.switch:after{transform:translateX(19px)}.account-panel{display:flex;align-items:center;justify-content:space-between}.btn-danger-soft{background:rgba(255,101,116,.1);color:#ff9aa4;border:1px solid rgba(255,101,116,.2)}
.create-user-panel{display:none;margin-bottom:18px;border-color:rgba(229,168,0,.3);box-shadow:0 20px 60px rgba(0,0,0,.2)}.create-user-panel.is-open{display:block;animation:panelIn .2s ease}.icon-btn{border:0;background:rgba(255,255,255,.05);color:#fff;width:34px;height:34px;border-radius:9px;font-size:21px;cursor:pointer}.create-actions{display:flex;align-items:center;justify-content:space-between;margin-top:15px}.inline-check{display:flex;align-items:center;gap:8px}.admin-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.admin-summary div{padding:16px 18px;border:1px solid var(--line);border-radius:13px;background:var(--surface);display:flex;flex-direction:column}.admin-summary strong{font-size:24px}.admin-summary span{font-size:12px;color:var(--muted)}.user-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.user-card{border:1px solid var(--line);border-radius:15px;background:linear-gradient(145deg,var(--surface-2),#0f161d);padding:18px}.user-card-head{display:flex;align-items:center;gap:12px}.large-avatar{width:46px;height:46px}.user-card-head h3{margin:0;font-size:16px}.user-card-head p{margin:3px 0 0;color:var(--muted);font-size:12px}.status-pill{margin-left:auto;font-size:10px;border-radius:999px;padding:5px 8px}.is-active{color:var(--green);background:rgba(53,213,138,.1)}.is-suspended{color:#ff9aa4;background:rgba(255,101,116,.1)}.user-meta{display:flex;flex-direction:column;gap:6px;padding:14px 0;color:var(--muted);font-size:12px;border-bottom:1px solid rgba(255,255,255,.06)}.user-controls{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;padding-top:14px}.user-controls label{margin:0}.muted{color:var(--muted)}
@keyframes panelIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.stat-grid{grid-template-columns:repeat(2,1fr)}.home-columns{grid-template-columns:1fr}.home-side{display:grid;grid-template-columns:repeat(2,1fr)}.hero-orbit{opacity:.55}.form-grid-4{grid-template-columns:repeat(2,1fr)}.user-cards{grid-template-columns:1fr}}
@media(max-width:720px){.home-dashboard{padding:0 14px 90px}.hero-upgraded{min-height:420px;padding:28px 22px}.hero-upgraded h1{font-size:38px}.hero-orbit{right:-60px;top:72%;width:150px;height:150px}.stat-grid{grid-template-columns:1fr 1fr;gap:9px}.stat-card{padding:14px}.stat-card strong{font-size:20px}.home-side{grid-template-columns:1fr}.profile-cover{min-height:235px;padding:20px}.profile-identity{align-items:flex-start;flex-direction:column}.profile-cover:after{opacity:.4}.profile-stats{grid-template-columns:repeat(2,1fr);margin:0 0 18px;border-radius:14px}.profile-stats div:nth-child(2){border-right:0}.profile-stats div:nth-child(-n+2){border-bottom:1px solid var(--line)}.profile-grid-wide{grid-template-columns:1fr}.form-grid,.form-grid-4{grid-template-columns:1fr}.user-controls{grid-template-columns:1fr 1fr}.user-controls .btn{grid-column:1/-1}.admin-summary{grid-template-columns:1fr}.account-panel{align-items:flex-start;gap:14px;flex-direction:column}}

/* ===== Recherche intelligente V2.4 ===== */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.search-page{padding-bottom:30px}.search-page-hero{position:relative;min-height:285px;margin:4px 0 18px;padding:42px 46px;display:flex;align-items:center;overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:22px;background:linear-gradient(105deg,rgba(7,11,15,.98) 0%,rgba(12,18,24,.92) 53%,rgba(74,51,3,.55) 100%),radial-gradient(circle at 85% 50%,rgba(247,181,0,.38),transparent 36%);box-shadow:0 28px 80px rgba(0,0,0,.25)}
.search-page-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:35px 35px;mask-image:linear-gradient(90deg,#000,transparent)}
.search-hero-copy{position:relative;z-index:2;max-width:690px}.search-hero-copy h1{margin:8px 0 13px;font-size:clamp(2rem,3.3vw,3.35rem);line-height:1.06;letter-spacing:-.045em}.search-hero-copy h1 em{font-style:normal;color:var(--yellow2)}.search-hero-copy>p{max-width:630px;margin:0;color:#b9c1c9;font-size:1.02rem}.search-feature-list{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:22px;color:#d9dee3;font-size:.84rem}.search-feature-list span:before{color:var(--green)}
.search-hero-art{position:absolute;right:4%;top:50%;width:230px;height:230px;transform:translateY(-50%)}.search-plex-mark{position:absolute;inset:0;display:grid;place-items:center;color:var(--yellow2);font:200 190px/1 Arial;text-shadow:0 0 45px rgba(247,181,0,.48);transform:translateX(15px)}.search-orbit{position:absolute;border:1px solid rgba(247,181,0,.28);border-radius:50%;inset:16px;animation:searchPulse 4s ease-in-out infinite}.orbit-two{inset:-18px;border-color:rgba(255,255,255,.08);animation-delay:-2s}@keyframes searchPulse{50%{transform:scale(1.045);opacity:.55}}
.search-command{position:relative;z-index:3;margin-top:-42px;padding:18px;border-radius:18px;box-shadow:0 22px 65px rgba(0,0,0,.32);backdrop-filter:blur(12px)}.search-command-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}.search-command-input{position:relative;display:flex;align-items:center;margin:0!important;border:1px solid #35414c;border-radius:13px;background:#080d12;transition:.2s}.search-command-input:focus-within{border-color:var(--yellow);box-shadow:0 0 0 4px rgba(229,169,0,.11)}.search-command-input input{height:58px;padding:0 48px 0 52px;border:0;background:transparent;box-shadow:none;font-size:1.08rem}.search-icon{position:absolute;left:18px;color:var(--yellow2);font-size:28px;line-height:1;transform:rotate(-15deg)}.clear-search{position:absolute;right:12px;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:#202831;color:#b9c0c7;font-size:22px;cursor:pointer}.clear-search:hover{color:#fff;background:#303a44}.search-submit{min-width:132px;border-radius:13px}.search-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}.media-filter{display:flex;gap:7px}.filter-chip{padding:7px 13px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer}.filter-chip:hover,.filter-chip.active{border-color:#39434c;background:#20272e;color:#fff}.filter-chip.active{color:var(--yellow2)}.result-counter{color:var(--muted);font-size:.82rem}.recent-searches{padding-top:14px;margin-top:14px;border-top:1px solid rgba(255,255,255,.06)}.recent-head{display:flex;justify-content:space-between;color:var(--muted);font-size:.8rem}.recent-head button{padding:0;border:0;background:none;color:#7f8993;cursor:pointer}.recent-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}.recent-list button,.search-suggestions button{border:1px solid #303a43;border-radius:999px;background:#141b21;color:#cdd2d6;padding:7px 12px;cursor:pointer}.recent-list button:hover,.search-suggestions button:hover{border-color:#6e570e;color:var(--yellow2)}
.search-content-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;margin-top:18px;align-items:start}.search-results-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.search-welcome-card,.search-state-card{grid-column:1/-1;min-height:310px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px;text-align:center;border:1px dashed #313b44;border-radius:18px;background:linear-gradient(145deg,rgba(20,27,33,.65),rgba(12,17,22,.75));color:var(--muted)}.search-welcome-card h2,.search-state-card h2{margin:10px 0 6px;color:#f5f6f7}.search-welcome-card p,.search-state-card p{max-width:520px;margin:0}.welcome-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:18px;background:rgba(229,169,0,.1);color:var(--yellow2);font-size:35px}.search-suggestions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:20px}
.search-result-card{position:relative;overflow:hidden;border:1px solid #27313a;border-radius:16px;background:linear-gradient(160deg,#161d24,#0f151b);cursor:pointer;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.search-result-card:hover,.search-result-card.is-active{transform:translateY(-4px);border-color:rgba(229,169,0,.56);box-shadow:0 18px 42px rgba(0,0,0,.34)}.result-poster{position:relative;aspect-ratio:2/3;background:linear-gradient(145deg,#29323a,#10161b);overflow:hidden}.result-poster img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}.search-result-card:hover .result-poster img{transform:scale(1.035)}.result-poster:after{content:"";position:absolute;inset:auto 0 0;height:45%;background:linear-gradient(transparent,rgba(8,12,16,.9))}.result-badge{position:absolute;z-index:2;left:9px;top:9px;padding:5px 8px;border-radius:7px;background:rgba(6,10,13,.78);backdrop-filter:blur(8px);font-size:.68rem;color:#f5f6f7}.result-rating{position:absolute;z-index:2;right:9px;top:9px;padding:5px 8px;border-radius:7px;background:rgba(6,10,13,.78);color:#ffd55a;font-size:.7rem}.result-info{padding:13px}.result-info h3{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.96rem}.result-info p{margin:4px 0 0;color:var(--muted);font-size:.78rem}.result-mobile-action{display:none;margin-top:10px;width:100%}
.search-detail{position:sticky;top:18px;padding:0;overflow:hidden;min-height:440px}.detail-empty{min-height:438px;padding:30px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:var(--muted)}.detail-empty>span{font-size:46px}.detail-empty h2{margin:12px 0 5px;color:#fff}.detail-empty p{margin:0}.detail-cover{position:relative;height:225px;background:#151c22;overflow:hidden}.detail-cover img{width:100%;height:100%;object-fit:cover;filter:saturate(.88)}.detail-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 20%,#11171d 96%)}.detail-poster-small{position:absolute;z-index:2;left:20px;bottom:-46px;width:82px;height:122px;border:3px solid #11171d;border-radius:10px;object-fit:cover;background:#202830;box-shadow:0 10px 30px #000}.detail-copy{padding:58px 20px 20px}.detail-copy h2{margin:0 0 5px;font-size:1.35rem}.detail-meta{display:flex;flex-wrap:wrap;gap:7px;color:var(--muted);font-size:.78rem}.detail-overview{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden;margin:15px 0;color:#b9c0c7;font-size:.87rem;line-height:1.55}.plex-inline-status{display:flex;gap:10px;align-items:center;padding:11px 12px;margin-bottom:12px;border:1px solid #303943;border-radius:11px;background:#0c1217;font-size:.78rem}.plex-inline-status strong{display:block;color:#fff}.plex-inline-status p{margin:1px 0 0;color:var(--muted)}.plex-inline-status.available{border-color:rgba(67,209,139,.35);background:rgba(67,209,139,.07)}.plex-inline-status.missing{border-color:rgba(229,169,0,.35);background:rgba(229,169,0,.06)}.plex-inline-status.error{border-color:rgba(255,91,77,.3)}.detail-actions{display:grid;grid-template-columns:1fr;gap:8px}.detail-actions .btn{width:100%}.search-skeleton{overflow:hidden;border:1px solid #232d35;border-radius:16px;background:#12181e}.skeleton-poster{aspect-ratio:2/3;background:linear-gradient(90deg,#151c22 25%,#202932 38%,#151c22 62%);background-size:300% 100%;animation:skeletonMove 1.3s infinite}.skeleton-lines{padding:14px}.skeleton-lines:before,.skeleton-lines:after{content:"";display:block;height:11px;border-radius:8px;background:#222b33}.skeleton-lines:after{width:55%;height:8px;margin-top:9px}@keyframes skeletonMove{to{background-position:-150% 0}}
@media(max-width:1180px){.search-results-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.search-content-layout{grid-template-columns:minmax(0,1fr) 310px}.search-hero-art{right:1%;opacity:.65}}
@media(max-width:900px){.search-page-hero{min-height:250px;padding:34px 30px}.search-hero-art{width:170px;height:170px;right:0}.search-plex-mark{font-size:145px}.search-command{margin-top:-28px}.search-content-layout{grid-template-columns:1fr}.search-detail{position:relative;top:auto;min-height:0;order:-1;display:none}.search-detail.has-content{display:grid;grid-template-columns:180px minmax(0,1fr)}.search-detail.has-content .detail-cover{height:100%;min-height:280px}.search-detail.has-content .detail-poster-small{display:none}.search-detail.has-content .detail-copy{padding:22px}.detail-empty{min-height:200px}.result-mobile-action{display:inline-flex}}
@media(max-width:650px){.search-page{padding:0 0 24px}.search-page-hero{min-height:300px;margin:0 -4px 14px;padding:28px 20px 66px;border-radius:18px;align-items:flex-start}.search-hero-copy h1{font-size:2.2rem}.search-hero-copy>p{font-size:.92rem}.search-feature-list{display:grid;gap:6px;margin-top:16px}.search-hero-art{width:125px;height:125px;right:-18px;top:74%;opacity:.45}.search-plex-mark{font-size:105px}.search-command{margin:-50px 8px 0;padding:12px;border-radius:15px}.search-command-form{grid-template-columns:1fr}.search-command-input input{height:54px;font-size:1rem}.search-submit{display:none}.search-toolbar{align-items:flex-start;flex-direction:column}.media-filter{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}.filter-chip{padding:8px 5px}.result-counter{padding-left:3px}.search-content-layout{margin:14px 8px 0}.search-results-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.result-info{padding:10px}.result-info h3{font-size:.87rem}.result-rating{right:6px;top:6px}.result-badge{left:6px;top:6px}.search-welcome-card,.search-state-card{min-height:270px;padding:24px 18px}.search-detail.has-content{display:block}.search-detail.has-content .detail-cover{height:190px;min-height:0}.search-detail.has-content .detail-copy{padding:20px}.detail-overview{-webkit-line-clamp:4}.recent-list{flex-wrap:nowrap;overflow:auto;padding-bottom:4px}.recent-list button{white-space:nowrap}.result-mobile-action{font-size:.76rem;padding:8px}}
@media(max-width:390px){.search-results-grid{grid-template-columns:1fr}.result-poster{aspect-ratio:16/10}.result-info h3{font-size:1rem}.search-hero-copy h1{font-size:1.9rem}}

/* Plex Demand 2.5 — design system unifié */
:root{--content-width:1280px;--sidebar-width:260px;--space-1:6px;--space-2:10px;--space-3:14px;--space-4:20px;--space-5:28px;--space-6:38px;--shadow-soft:0 14px 40px rgba(0,0,0,.22);--shadow-card:0 20px 55px rgba(0,0,0,.3)}
html{scroll-behavior:smooth}body{background:radial-gradient(circle at 74% -10%,color-mix(in srgb,var(--yellow) 8%,transparent),transparent 30%),linear-gradient(180deg,color-mix(in srgb,var(--bg) 96%,#fff 4%),var(--bg));font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-.005em}.app-shell{padding-left:var(--sidebar-width)}.sidebar{width:var(--sidebar-width);padding:24px 16px;background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 88%,#000 12%),color-mix(in srgb,var(--panel) 97%,#000 3%));border-right:1px solid color-mix(in srgb,var(--text) 10%,transparent)}.main{padding:0 clamp(16px,2.5vw,38px) 52px}.main>.page,.main>.home-dashboard,.main>.search-page,.main>.profile-page,.main>.admin-dashboard,.main>.requests-page,.main>.request-detail{width:min(100%,var(--content-width));margin-inline:auto}.topbar{height:78px;width:min(100%,var(--content-width));margin-inline:auto;border-bottom:1px solid color-mix(in srgb,var(--text) 7%,transparent)}.breadcrumb{font-size:.82rem;color:var(--muted);font-weight:650;text-transform:uppercase;letter-spacing:.09em}.brand{min-height:48px;padding:6px 8px;font-size:1.03rem}.brand-logo{width:38px;height:38px;object-fit:contain;border-radius:10px}.brand-tagline{display:block;padding:0 10px;margin-top:2px;color:var(--muted);line-height:1.35}.sidebar nav{margin:26px 0 18px;gap:4px}.sidebar nav a{margin:0;padding:11px 12px;min-height:44px;border:1px solid transparent}.sidebar nav a.active{border-color:color-mix(in srgb,var(--yellow) 26%,transparent);box-shadow:inset 3px 0 var(--yellow)}.nav-label{padding:17px 12px 7px;color:var(--muted);font-size:.66rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.server-card{border-color:color-mix(in srgb,var(--yellow) 16%,var(--line));box-shadow:var(--shadow-soft)}.powered{font-size:.71rem;line-height:1.3;color:var(--muted);font-weight:600;margin:16px 10px 0}.panel,.side-card,.stat,.request-list,.table-wrap,.search-command,.search-result-card,.search-detail,.auth-card{border-color:color-mix(in srgb,var(--text) 10%,transparent);box-shadow:var(--shadow-soft);background:linear-gradient(155deg,color-mix(in srgb,var(--panel) 96%,#fff 4%),color-mix(in srgb,var(--panel) 91%,#000 9%))}.panel,.side-card{padding:clamp(18px,2vw,26px)}.page{max-width:none}.section-head{margin:30px 0 16px}.section-head h1{font-size:clamp(1.75rem,3vw,2.55rem);letter-spacing:-.035em}.section-head h2{font-size:clamp(1.25rem,2vw,1.7rem);letter-spacing:-.025em}.section-head p{max-width:700px}.eyebrow{font-size:.69rem;letter-spacing:.14em;font-weight:800;color:var(--yellow2)}.btn{min-height:42px;border-radius:calc(var(--radius) * .72);padding:10px 17px;font-weight:700;transition:transform .18s ease,filter .18s ease,border-color .18s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{box-shadow:0 8px 24px color-mix(in srgb,var(--yellow) 24%,transparent)}input,select,textarea{min-height:44px;border-radius:calc(var(--radius) * .65);border-color:color-mix(in srgb,var(--text) 14%,transparent);background:color-mix(in srgb,var(--bg) 83%,#fff 3%)}textarea{min-height:110px}.form-grid{gap:18px}.flash,.site-announcement{width:min(100%,var(--content-width));margin:0 auto 14px}.site-announcement{padding:12px 16px;border:1px solid color-mix(in srgb,var(--yellow) 30%,transparent);border-radius:var(--radius);background:color-mix(in srgb,var(--yellow) 9%,var(--panel));color:color-mix(in srgb,var(--yellow2) 85%,#fff 15%)}.request-row{min-height:76px;padding:13px 17px}.request-row:first-child{border-radius:var(--radius) var(--radius) 0 0}.request-row:last-child{border-radius:0 0 var(--radius) var(--radius)}.status{display:inline-flex;justify-content:center;padding:5px 9px;border-radius:999px;background:color-mix(in srgb,currentColor 9%,transparent);font-weight:700}.table-wrap table{min-width:760px}.stats,.stat-grid{gap:14px}.stat,.stat-card{min-height:112px}.detail,.profile-grid,.home-columns,.page-grid{gap:22px}.auth-card{padding:clamp(24px,5vw,42px);width:min(470px,100%)}.mobile-nav{grid-template-columns:repeat(5,1fr);padding-bottom:env(safe-area-inset-bottom)}.mobile-nav a.active{color:var(--yellow2)}.mobile-add{position:relative}.mobile-add:first-line{font-size:1.4rem}
.density-compact .panel,.density-compact .side-card{padding:16px}.density-compact .request-row{min-height:64px;padding-block:9px}.density-spacious .panel,.density-spacious .side-card{padding:30px}.density-spacious .request-row{min-height:88px;padding-block:17px}
.page-hero{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:190px;padding:clamp(25px,4vw,46px);margin:0 0 22px;overflow:hidden;border:1px solid color-mix(in srgb,var(--yellow) 15%,var(--line));border-radius:calc(var(--radius) + 5px);background:linear-gradient(120deg,color-mix(in srgb,var(--panel) 95%,#000 5%),color-mix(in srgb,var(--yellow) 8%,var(--panel)));box-shadow:var(--shadow-card)}.page-hero:after{content:"";position:absolute;width:300px;height:300px;right:-120px;top:-140px;border-radius:50%;background:color-mix(in srgb,var(--yellow) 12%,transparent);filter:blur(5px)}.page-hero h1{font-size:clamp(2rem,4vw,3.15rem);margin:5px 0 8px;letter-spacing:-.045em}.page-hero p{max-width:700px;margin:0;color:var(--muted)}.compact-hero{min-height:170px}.hero-icon{position:relative;z-index:1;font-size:5rem;color:var(--yellow2);text-shadow:0 0 42px color-mix(in srgb,var(--yellow) 45%,transparent)}
.settings-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:22px;align-items:start}.settings-nav{position:sticky;top:18px;display:grid;gap:5px;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow-soft)}.settings-nav a{padding:10px 12px;border-radius:9px;color:var(--muted)}.settings-nav a:hover{background:color-mix(in srgb,var(--yellow) 8%,transparent);color:var(--text)}.settings-nav .btn{margin-top:10px}.settings-content{display:grid;gap:18px}.settings-section{scroll-margin-top:20px}.settings-heading{display:flex;align-items:flex-start;gap:14px;padding-bottom:19px;margin-bottom:21px;border-bottom:1px solid color-mix(in srgb,var(--text) 8%,transparent)}.settings-heading>span{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:12px;background:color-mix(in srgb,var(--yellow) 10%,transparent);color:var(--yellow2);font-weight:800}.settings-heading h2{margin:0 0 3px}.settings-heading p{margin:0;color:var(--muted)}.color-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.color-grid label{padding:12px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--bg) 65%,transparent)}.color-grid input[type=color]{height:50px;padding:4px;cursor:pointer}.color-grid code{font-size:.72rem;color:var(--muted)}.theme-preview{display:grid;grid-template-columns:145px 1fr;min-height:190px;margin-top:20px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg)}.preview-sidebar{display:grid;align-content:start;gap:14px;padding:20px;background:var(--panel)}.preview-sidebar i{height:10px;border-radius:10px;background:color-mix(in srgb,var(--text) 12%,transparent)}.preview-sidebar i:nth-child(2){background:color-mix(in srgb,var(--yellow) 35%,transparent)}.preview-main{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:30px}.preview-main span{color:var(--muted)}.preview-main strong{font-size:1.45rem;margin:4px 0 18px}.preview-main button{border:0;border-radius:8px;padding:9px 14px;background:var(--yellow);color:#111;font-weight:800}.toggle-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.toggle-card{display:flex;align-items:center;gap:13px;padding:15px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--bg) 68%,transparent);cursor:pointer}.toggle-card input{position:absolute;opacity:0;pointer-events:none}.toggle-card>span{position:relative;width:42px;height:24px;flex:0 0 42px;border-radius:999px;background:#2b333b;transition:.2s}.toggle-card>span:after{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;border-radius:50%;background:#fff;transition:.2s}.toggle-card input:checked+span{background:var(--yellow)}.toggle-card input:checked+span:after{transform:translateX(18px);background:#171717}.toggle-card div{display:grid}.toggle-card small{color:var(--muted)}.settings-savebar{position:sticky;bottom:14px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--yellow) 25%,var(--line));border-radius:var(--radius);background:color-mix(in srgb,var(--panel) 92%,transparent);backdrop-filter:blur(16px);box-shadow:var(--shadow-card);z-index:4}.settings-savebar span{color:var(--muted)}
@media(max-width:1100px){.settings-layout{grid-template-columns:1fr}.settings-nav{position:relative;top:auto;display:flex;overflow:auto}.settings-nav a{white-space:nowrap}.settings-nav .btn{margin:0 0 0 auto;white-space:nowrap}.color-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:980px){.app-shell{padding-left:0}.main{padding:16px 14px 90px}.main>.page,.main>.home-dashboard,.main>.search-page{width:100%}.mobile-top{background:color-mix(in srgb,var(--panel) 95%,transparent);backdrop-filter:blur(16px)}.sidebar{width:min(88vw,var(--sidebar-width))}.page-hero{margin-top:4px}.topbar{display:none}}
@media(max-width:700px){.page-hero{min-height:150px;padding:24px}.page-hero h1{font-size:2rem}.hero-icon{font-size:3.5rem}.color-grid,.toggle-grid{grid-template-columns:1fr 1fr}.theme-preview{grid-template-columns:95px 1fr}.preview-main{padding:20px}.settings-savebar{align-items:stretch;flex-direction:column}.settings-savebar .btn{width:100%}.settings-nav{margin:0 -2px;padding:8px}.settings-nav .btn{display:none}.section-head{margin-top:22px}.panel,.side-card{padding:18px}.request-row{grid-template-columns:45px minmax(0,1fr) auto}.mobile-nav a{padding:8px 3px}.mobile-nav span{font-size:9px}}
@media(max-width:430px){.color-grid,.toggle-grid{grid-template-columns:1fr}.theme-preview{display:none}.page-hero{padding:20px}.hero-icon{display:none}.settings-heading{gap:10px}.settings-heading>span{width:32px;height:32px;flex-basis:32px}.form-grid{gap:13px}.mobile-top .brand span:last-child{max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}

/* === Plex Ask V3 unified shell === */
html{font-size:calc(16px * var(--font-scale,1));scroll-behavior:smooth}
body{background:
radial-gradient(circle at 72% -10%,color-mix(in srgb,var(--yellow) 7%,transparent),transparent 35%),
linear-gradient(180deg,color-mix(in srgb,var(--bg) 94%,#111 6%),var(--bg));}
.app-shell{padding-left:var(--sidebar-width);transition:padding-left .25s ease}
.main{padding:0 clamp(18px,2.5vw,40px) 60px;min-width:0}
.page-stage{width:min(100%,var(--content-width));margin-inline:auto;padding-top:28px;display:flow-root}
.page-stage>:first-child{margin-top:0!important}
.page-stage>.page,.page-stage>.home-dashboard,.page-stage>.search-page,.page-stage>.profile-page,.page-stage>.admin-dashboard,.page-stage>.requests-page,.page-stage>.request-detail{width:100%;margin-inline:0}
.topbar{position:sticky;top:0;z-index:12;height:78px;width:min(100%,var(--content-width));margin-inline:auto;background:linear-gradient(180deg,color-mix(in srgb,var(--bg) 96%,transparent),color-mix(in srgb,var(--bg) 82%,transparent));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.topbar-left,.topbar-actions{display:flex;align-items:center;gap:12px}.topbar-icon,.sidebar-collapse{border:0;background:transparent;color:var(--muted);cursor:pointer}.topbar-icon{width:38px;height:38px;border-radius:10px;border:1px solid color-mix(in srgb,var(--text) 10%,transparent);display:grid;place-items:center}.topbar-icon:hover,.sidebar-collapse:hover{color:var(--yellow2);background:color-mix(in srgb,var(--yellow) 8%,transparent)}
.sidebar{width:var(--sidebar-width);transition:width .25s ease,padding .25s ease;overflow-x:hidden}.sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.sidebar-collapse{width:30px;height:30px;border-radius:8px;font-size:1.25rem;flex:0 0 30px}.sidebar nav a b{width:20px;flex:0 0 20px;text-align:center;font-weight:500}.sidebar nav a span,.brand-copy,.brand-tagline,.server-card,.powered,.nav-label{transition:opacity .18s ease,transform .18s ease}
.quick-search-trigger{display:flex;align-items:center;gap:9px;min-height:38px;padding:0 10px;border:1px solid color-mix(in srgb,var(--text) 10%,transparent);border-radius:11px;background:color-mix(in srgb,var(--panel) 65%,transparent);color:var(--muted);cursor:pointer}.quick-search-trigger:hover{border-color:color-mix(in srgb,var(--yellow) 30%,transparent);color:var(--text)}kbd{font:inherit;font-size:.7rem;padding:2px 6px;border-radius:6px;border:1px solid color-mix(in srgb,var(--text) 11%,transparent);background:color-mix(in srgb,var(--bg) 70%,transparent);color:var(--muted)}
.account-wrap{position:relative}.account{border:0;background:transparent;cursor:pointer}.account-menu{position:absolute;right:0;top:calc(100% + 10px);width:210px;padding:8px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--panel) 96%,#000 4%);box-shadow:0 22px 60px rgba(0,0,0,.42);display:none}.account-menu.open{display:grid}.account-menu a,.account-menu button{display:flex;width:100%;padding:10px 11px;border:0;border-radius:9px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.account-menu a:hover,.account-menu button:hover{background:color-mix(in srgb,var(--yellow) 8%,transparent)}
.section-head{margin-block:32px 16px}.page-hero{margin-top:0!important}.panel+.panel,.settings-content>.panel+.panel{margin-top:0}.profile-grid,.home-columns,.page-grid,.detail{margin-top:20px}
.panel,.side-card,.stat,.request-list,.table-wrap,.search-command,.search-result-card,.search-detail,.auth-card{transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.cards-glass .panel,.cards-glass .side-card,.cards-glass .stat,.cards-glass .request-list,.cards-glass .table-wrap,.cards-glass .search-command,.cards-glass .search-result-card,.cards-glass .search-detail{background:linear-gradient(145deg,color-mix(in srgb,var(--panel) 90%,#fff 3%),color-mix(in srgb,var(--panel) 82%,transparent));backdrop-filter:blur(14px)}.cards-solid .panel,.cards-solid .side-card,.cards-solid .stat,.cards-solid .request-list,.cards-solid .table-wrap,.cards-solid .search-command,.cards-solid .search-result-card,.cards-solid .search-detail{background:var(--panel);box-shadow:none}.cards-minimal .panel,.cards-minimal .side-card,.cards-minimal .stat,.cards-minimal .request-list,.cards-minimal .table-wrap,.cards-minimal .search-command,.cards-minimal .search-result-card,.cards-minimal .search-detail{background:transparent;box-shadow:none;border-color:color-mix(in srgb,var(--text) 8%,transparent)}
.panel:hover,.stat:hover,.search-result-card:hover{border-color:color-mix(in srgb,var(--yellow) 22%,var(--line))}
.nav-compact,.sidebar-collapsed{padding-left:84px}.nav-compact .sidebar,.sidebar-collapsed .sidebar{width:84px;padding-inline:14px}.nav-compact .sidebar nav a,.sidebar-collapsed .sidebar nav a{justify-content:center;padding-inline:10px}.nav-compact .sidebar nav a span,.nav-compact .brand-copy,.nav-compact .brand-tagline,.nav-compact .server-card,.nav-compact .powered,.nav-compact .nav-label,.sidebar-collapsed .sidebar nav a span,.sidebar-collapsed .brand-copy,.sidebar-collapsed .brand-tagline,.sidebar-collapsed .server-card,.sidebar-collapsed .powered,.sidebar-collapsed .nav-label{opacity:0;pointer-events:none;position:absolute}.nav-compact .sidebar-collapse,.sidebar-collapsed .sidebar-collapse{transform:rotate(180deg)}
.command-palette{position:fixed;inset:0;z-index:100;display:grid;place-items:start center;padding-top:min(15vh,130px)}.command-palette[hidden]{display:none}.command-backdrop{position:absolute;inset:0;border:0;background:rgba(2,4,7,.76);backdrop-filter:blur(8px)}.command-box{position:relative;width:min(620px,calc(100vw - 28px));border:1px solid color-mix(in srgb,var(--yellow) 18%,var(--line));border-radius:18px;background:color-mix(in srgb,var(--panel) 97%,#000 3%);box-shadow:0 30px 100px rgba(0,0,0,.62);overflow:hidden}.command-input{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:15px 17px;border-bottom:1px solid var(--line)}.command-input input{border:0!important;background:transparent!important;padding:0!important;min-height:36px;outline:0;font-size:1.05rem}.command-results{padding:8px;display:grid}.command-results a{display:flex;align-items:center;gap:13px;padding:12px;border-radius:11px}.command-results a:hover,.command-results a.is-selected{background:color-mix(in srgb,var(--yellow) 9%,transparent)}.command-results a>b{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--yellow) 10%,transparent);color:var(--yellow2)}.command-results a span{display:grid}.command-results small{color:var(--muted)}
@media(max-width:980px){.app-shell,.nav-compact,.sidebar-collapsed{padding-left:0}.page-stage{padding-top:18px}.topbar-icon,.quick-search-trigger{display:none}.sidebar{width:min(88vw,var(--sidebar-width))!important}.sidebar nav a{justify-content:flex-start!important}.sidebar nav a span,.brand-copy,.brand-tagline,.server-card,.powered,.nav-label{opacity:1!important;position:static!important;pointer-events:auto!important}.main{padding:0 14px 92px}.mobile-top{height:64px}.page-stage>.page,.page-stage>.home-dashboard,.page-stage>.search-page,.page-stage>.profile-page,.page-stage>.admin-dashboard,.page-stage>.requests-page,.page-stage>.request-detail{width:100%}.profile-grid,.home-columns,.page-grid,.detail{margin-top:16px}}
@media(max-width:700px){.page-stage{padding-top:14px}.page-hero{border-radius:calc(var(--radius) + 1px)}.section-head{margin-block:24px 12px}.panel,.side-card{padding:16px}.topbar-actions{gap:6px}}

/* ===== V3.1 — correctifs de structure, navigation et recherche ===== */
:root{--shell-gutter:clamp(18px,2.15vw,36px);--header-height:76px;--page-gap:26px}
html,body{overflow-x:hidden}
.app-shell{padding-left:var(--sidebar-width)}
.main{padding:0 var(--shell-gutter) 64px;min-width:0}
.topbar{height:var(--header-height);width:min(100%,var(--content-width));margin:0 auto;padding:0;border-bottom:1px solid color-mix(in srgb,var(--text) 8%,transparent)}
.page-stage{width:min(100%,var(--content-width));margin:0 auto;padding:var(--page-gap) 0 0;display:block}
.page-stage>*{max-width:100%}
.page-stage>.page,.page-stage>.home-dashboard,.page-stage>.search-page,.page-stage>.profile-page,.page-stage>.admin-dashboard,.page-stage>.requests-page,.page-stage>.request-detail{width:100%;margin:0}
.page-stage>.flash,.page-stage>.site-announcement{width:100%;margin:0 0 14px}
.page-stage>.flash+*,.page-stage>.site-announcement+*{margin-top:0}

.sidebar{width:var(--sidebar-width);padding:20px 14px 18px;overflow:hidden;contain:layout paint}
.sidebar-head{min-height:48px;padding:0 4px}
.sidebar .brand{min-width:0;flex:1;padding:4px;overflow:hidden}
.sidebar .brand-copy{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sidebar .brand-tagline{padding:2px 8px 0;min-height:22px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar nav{min-height:0;overflow-y:auto;overflow-x:hidden;margin:24px -2px 14px;padding:0 2px 8px;scrollbar-width:thin}
.sidebar nav a{width:100%;margin:0 0 4px;min-width:0;overflow:hidden}
.sidebar nav a b{display:grid;place-items:center;width:22px;height:22px;flex:0 0 22px}
.sidebar nav a span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.server-card{flex:0 0 auto;margin-top:auto}
.powered{flex:0 0 auto}
.sidebar-backdrop{display:none}

.nav-compact,.sidebar-collapsed{padding-left:84px}
.nav-compact .sidebar,.sidebar-collapsed .sidebar{width:84px;padding-inline:12px}
.nav-compact .sidebar-head,.sidebar-collapsed .sidebar-head{justify-content:center}
.nav-compact .sidebar .brand,.sidebar-collapsed .sidebar .brand{justify-content:center;flex:0 0 44px}
.nav-compact .sidebar-collapse,.sidebar-collapsed .sidebar-collapse{position:absolute;right:5px;top:29px;width:24px;height:24px;opacity:.72}
.nav-compact .sidebar nav,.sidebar-collapsed .sidebar nav{margin-top:28px}
.nav-compact .sidebar nav a,.sidebar-collapsed .sidebar nav a{justify-content:center;padding:11px 8px}
.nav-compact .sidebar nav a span,.nav-compact .brand-copy,.nav-compact .brand-tagline,.nav-compact .server-card,.nav-compact .powered,.nav-compact .nav-label,.sidebar-collapsed .sidebar nav a span,.sidebar-collapsed .brand-copy,.sidebar-collapsed .brand-tagline,.sidebar-collapsed .server-card,.sidebar-collapsed .powered,.sidebar-collapsed .nav-label{display:none!important}
.nav-compact .sidebar nav a:hover,.sidebar-collapsed .sidebar nav a:hover{transform:none}

.quick-search-trigger{white-space:nowrap}
.command-results a[hidden]{display:none!important}
.command-results a.is-selected{background:color-mix(in srgb,var(--yellow) 12%,transparent);outline:1px solid color-mix(in srgb,var(--yellow) 25%,transparent)}

/* Résultats PC plus compacts et réguliers */
.search-content-layout{grid-template-columns:minmax(0,1fr) 320px;gap:20px}
.search-results-grid{grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:14px;align-items:start}
.search-result-card{max-width:220px;width:100%;justify-self:center}
.result-info{padding:11px 12px 12px}
.result-info h3{font-size:.9rem}
.result-poster{aspect-ratio:2/3}
.search-detail{top:calc(var(--header-height) + 18px)}

@media(min-width:1450px){.search-results-grid{grid-template-columns:repeat(auto-fill,minmax(165px,1fr))}.search-result-card{max-width:225px}}
@media(min-width:981px) and (max-width:1250px){.search-content-layout{grid-template-columns:minmax(0,1fr) 285px}.search-results-grid{grid-template-columns:repeat(auto-fill,minmax(145px,1fr))}}

@media(max-width:980px){
  .app-shell,.nav-compact,.sidebar-collapsed{padding-left:0;padding-top:64px}
  .main{padding:0 14px 92px}
  .page-stage{padding-top:18px}
  .sidebar{position:fixed;width:min(86vw,310px)!important;max-width:310px;padding:18px 14px;transform:translateX(-105%);transition:transform .24s ease;z-index:60;box-shadow:30px 0 80px rgba(0,0,0,.55)}
  .sidebar.open{transform:translateX(0)}
  .sidebar .brand-copy,.sidebar .brand-tagline,.sidebar .server-card,.sidebar .powered,.sidebar .nav-label,.sidebar nav a span{display:initial!important;opacity:1!important;position:static!important;pointer-events:auto!important}
  .sidebar nav a{justify-content:flex-start!important;padding:11px 12px!important}
  .sidebar-collapse{display:none}
  .sidebar-backdrop{position:fixed;inset:0;z-index:55;border:0;background:rgba(1,4,7,.68);backdrop-filter:blur(3px)}
  .sidebar.open+.sidebar-backdrop{display:block}
  .search-content-layout{grid-template-columns:1fr}
  .search-results-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
  .search-result-card{max-width:none}
}
@media(max-width:650px){
  :root{--page-gap:14px}
  .main{padding-inline:10px}
  .page-stage{padding-top:14px}
  .search-results-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .search-result-card{max-width:none}
}
@media(max-width:380px){.search-results-grid{grid-template-columns:1fr}.result-poster{aspect-ratio:16/10}}

/* ===== V3.2 — finitions, profil responsive et avatars ===== */
.brand-mark{position:relative;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;font-size:0;line-height:0}
.brand-mark>span{display:block;font-size:32px;line-height:1;transform:translate(-1px,-1px);font-family:Arial,Helvetica,sans-serif;font-weight:300}
.avatar{overflow:hidden}.avatar img{width:100%;height:100%;display:block;object-fit:cover}
.clear-search{display:flex;align-items:center;justify-content:center;line-height:1;font-family:Arial,Helvetica,sans-serif;text-align:center;text-indent:0}
.clear-search:not([hidden]){display:flex}.clear-search::first-line{line-height:1}

.profile-v32{padding-bottom:20px}
.profile-cover-v32{min-height:210px;padding:32px;align-items:center;justify-content:space-between}
.profile-cover-v32:after{right:6%;font-size:132px;line-height:1;top:50%;transform:translateY(-52%)}
.profile-avatar-xl{width:104px;height:104px;border-radius:28px;flex:0 0 104px}
.profile-title-block{min-width:0}.profile-title-block h1{font-size:clamp(2rem,3vw,3rem);line-height:1.05;overflow-wrap:anywhere}
.profile-cover-badge{position:relative;z-index:2;display:grid;gap:2px;text-align:right;padding-right:120px;color:var(--muted)}
.profile-cover-badge span{font-size:.72rem;text-transform:uppercase;letter-spacing:.13em;color:var(--yellow2);font-weight:800}.profile-cover-badge strong{font-size:1.05rem;color:var(--text)}
.profile-stats-v32{margin:-1px 18px 24px}
.profile-layout-v32{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,.55fr);gap:20px;align-items:start}
.profile-primary-column,.profile-secondary-column{min-width:0}.profile-secondary-column{display:grid;gap:16px;position:sticky;top:calc(var(--header-height) + 18px)}
.panel-subtitle{margin:6px 0 0;color:var(--muted)}
.avatar-editor{display:grid;grid-template-columns:112px minmax(0,1fr);gap:18px;align-items:center;padding:17px;border:1px solid color-mix(in srgb,var(--text) 9%,transparent);border-radius:calc(var(--radius) + 1px);background:color-mix(in srgb,var(--bg) 72%,var(--panel));margin-bottom:18px}
.avatar-editor-preview{width:112px;height:112px;border-radius:28px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,var(--yellow2),#b77900);color:#071018;font-size:42px;font-weight:800;box-shadow:0 12px 32px rgba(0,0,0,.25)}
.avatar-editor-preview img{width:100%;height:100%;object-fit:cover;display:block}.avatar-editor-copy h3{margin:0 0 5px}.avatar-editor-copy p{margin:0 0 13px;color:var(--muted);max-width:620px}.avatar-editor-copy{display:flex;align-items:flex-start;flex-wrap:wrap;gap:9px}.avatar-editor-copy h3,.avatar-editor-copy p{flex-basis:100%}
.avatar-upload-button{position:relative;overflow:hidden}.avatar-upload-button input{position:absolute;inset:0;opacity:0;cursor:pointer}
.avatar-gallery-wrap{margin-bottom:20px}.avatar-gallery-head{display:flex;justify-content:space-between;gap:16px;align-items:end;margin-bottom:10px}.avatar-gallery-head h3{margin:0}.avatar-gallery-head p{margin:3px 0 0;color:var(--muted);font-size:.86rem}.avatar-gallery-head>span{font-size:.74rem;color:var(--yellow2);border:1px solid color-mix(in srgb,var(--yellow) 24%,transparent);background:color-mix(in srgb,var(--yellow) 8%,transparent);padding:5px 9px;border-radius:999px;white-space:nowrap}
.avatar-gallery{display:grid;grid-template-columns:repeat(10,minmax(44px,1fr));gap:9px;max-height:235px;overflow:auto;padding:3px 5px 5px 3px;scrollbar-width:thin}
.avatar-choice{aspect-ratio:1;border:2px solid transparent;border-radius:16px;padding:2px;background:transparent;cursor:pointer;transition:.16s ease;min-width:0}.avatar-choice img{display:block;width:100%;height:100%;object-fit:cover;border-radius:12px}.avatar-choice:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--yellow) 42%,transparent)}.avatar-choice.is-selected{border-color:var(--yellow2);box-shadow:0 0 0 3px color-mix(in srgb,var(--yellow) 14%,transparent)}
.profile-form-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:20px}.security-hint{font-size:.83rem;color:var(--muted);margin:-4px 0 15px}.account-panel-v32{align-items:flex-start;gap:14px}.account-panel-v32 form{margin:0}

@media(max-width:1180px){.profile-layout-v32{grid-template-columns:minmax(0,1fr) 330px}.avatar-gallery{grid-template-columns:repeat(8,minmax(44px,1fr))}.profile-cover-badge{display:none}}
@media(max-width:900px){.profile-layout-v32{grid-template-columns:1fr}.profile-secondary-column{position:static;grid-template-columns:1fr 1fr}.profile-secondary-column .account-panel-v32{grid-column:1/-1}.profile-cover-v32{min-height:185px}.profile-avatar-xl{width:92px;height:92px;flex-basis:92px}.avatar-gallery{grid-template-columns:repeat(10,minmax(42px,1fr))}}
@media(max-width:700px){
  .profile-cover-v32{min-height:205px;padding:22px 18px;align-items:flex-end}.profile-cover-v32:after{right:4%;font-size:100px;opacity:.55}
  .profile-identity{align-items:flex-start;gap:14px;flex-direction:column}.profile-avatar-xl{width:82px;height:82px;flex-basis:82px;border-radius:22px}.profile-title-block h1{font-size:1.8rem;margin-top:7px}.profile-title-block p{font-size:.86rem}
  .profile-stats-v32{margin:-1px 0 15px;grid-template-columns:1fr 1fr;border-radius:0 0 var(--radius) var(--radius)}.profile-stats-v32 div{border-bottom:1px solid var(--line)}.profile-stats-v32 div:nth-child(2){border-right:0}.profile-stats-v32 div:nth-child(3),.profile-stats-v32 div:nth-child(4){border-bottom:0}.profile-stats-v32 div:nth-child(3){border-right:1px solid var(--line)}
  .profile-secondary-column{grid-template-columns:1fr}.profile-secondary-column .account-panel-v32{grid-column:auto}
  .avatar-editor{grid-template-columns:76px 1fr;padding:14px;gap:13px}.avatar-editor-preview{width:76px;height:76px;border-radius:20px;font-size:30px}.avatar-editor-copy p{font-size:.82rem}.avatar-editor-copy .btn{font-size:.79rem;padding:8px 10px;min-height:38px}
  .avatar-gallery{grid-template-columns:repeat(6,minmax(42px,1fr));max-height:none;overflow:visible}.avatar-gallery-head p{display:none}
  .profile-form-actions{align-items:stretch;flex-direction:column}.profile-form-actions .btn{width:100%}.profile-form-actions .muted{font-size:.8rem}
  .account-panel-v32{flex-direction:column}.account-panel-v32 form,.account-panel-v32 .btn{width:100%}
}
@media(max-width:420px){.avatar-gallery{grid-template-columns:repeat(5,minmax(40px,1fr));gap:7px}.avatar-choice{border-radius:13px}.avatar-choice img{border-radius:10px}.avatar-editor{grid-template-columns:1fr}.avatar-editor-preview{width:88px;height:88px}.panel-heading h2{font-size:1.35rem}}

/* ===== V3.3 — tableau de bord Plex ===== */
.hero-orbit{isolation:isolate}
.hero-orbit-chevron{position:relative;z-index:2;display:block;width:58px;height:92px;overflow:visible;filter:drop-shadow(0 0 18px rgba(255,193,7,.58));transform:translateX(2px)}
.hero-orbit-chevron path{fill:none;stroke:var(--gold-2);stroke-width:8;stroke-linecap:square;stroke-linejoin:miter;vector-effect:non-scaling-stroke}

.plex-insights{position:relative;margin-top:18px;padding:22px;border:1px solid color-mix(in srgb,var(--yellow) 18%,var(--line));border-radius:var(--radius);overflow:hidden;background:linear-gradient(120deg,color-mix(in srgb,var(--panel) 96%,#071019),color-mix(in srgb,var(--panel) 88%,#332600));box-shadow:0 18px 55px rgba(0,0,0,.22)}
.plex-insights:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 88% 10%,color-mix(in srgb,var(--yellow) 14%,transparent),transparent 30%),linear-gradient(90deg,transparent,color-mix(in srgb,var(--text) 1.5%,transparent));opacity:.9}
.plex-insights>*{position:relative;z-index:1}
.plex-insights-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}
.plex-insights-head h2{margin:0;font-size:clamp(22px,2vw,30px);letter-spacing:-.025em}
.plex-insights-head p{margin:6px 0 0;color:var(--muted);font-size:13px}
.plex-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.plex-state,.plex-stale{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border-radius:999px;font-size:11px;font-weight:800;background:color-mix(in srgb,var(--green) 10%,transparent);color:var(--green);border:1px solid color-mix(in srgb,var(--green) 18%,transparent)}
.plex-state i{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 10px currentColor}
.is-offline .plex-state{color:var(--red);background:color-mix(in srgb,var(--red) 9%,transparent);border-color:color-mix(in srgb,var(--red) 18%,transparent)}
.plex-stale{color:var(--yellow2);background:color-mix(in srgb,var(--yellow) 8%,transparent);border-color:color-mix(in srgb,var(--yellow) 18%,transparent)}
.plex-pulse{width:82px;height:82px;flex:0 0 82px;display:grid;place-items:center;border-radius:50%;position:relative;border:1px solid color-mix(in srgb,var(--yellow) 25%,transparent);background:color-mix(in srgb,var(--yellow) 5%,transparent)}
.plex-pulse:before,.plex-pulse:after{content:"";position:absolute;border-radius:50%;border:1px solid color-mix(in srgb,var(--yellow) 12%,transparent)}
.plex-pulse:before{inset:9px}.plex-pulse:after{inset:20px}
.plex-pulse span{position:absolute;top:3px;width:7px;height:7px;border-radius:50%;background:var(--yellow2);box-shadow:0 0 12px var(--yellow2)}
.plex-pulse b{font-size:10px;letter-spacing:.12em;color:var(--yellow2)}
.plex-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.plex-metric{min-width:0;padding:15px 16px;border:1px solid color-mix(in srgb,var(--text) 8%,transparent);border-radius:calc(var(--radius) * .72);background:color-mix(in srgb,var(--bg) 46%,transparent)}
.plex-metric span,.plex-metric small{display:block;color:var(--muted);font-size:11px}
.plex-metric strong{display:block;margin:2px 0 1px;font-size:clamp(22px,2vw,30px);line-height:1.15;letter-spacing:-.035em}
.plex-libraries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 22px;margin-top:18px;padding-top:17px;border-top:1px solid color-mix(in srgb,var(--text) 7%,transparent)}
.plex-library-label{display:flex;justify-content:space-between;gap:14px;margin-bottom:6px;font-size:12px}
.plex-library-label span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#c7ced5}
.plex-library-label b{color:var(--text)}
.plex-library-track{height:4px;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--text) 7%,transparent)}
.plex-library-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--yellow),var(--yellow2));box-shadow:0 0 10px color-mix(in srgb,var(--yellow) 42%,transparent)}

@media(max-width:1050px){.plex-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.hero-orbit-chevron{width:46px;height:74px;transform:translateX(1px)}.plex-insights{padding:17px;margin-top:12px}.plex-insights-head{align-items:flex-start}.plex-pulse{width:62px;height:62px;flex-basis:62px}.plex-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.plex-metric{padding:13px}.plex-libraries{grid-template-columns:1fr}.plex-insights-head p{max-width:250px}}
@media(max-width:420px){.plex-insights-head{gap:10px}.plex-pulse{display:none}.plex-metric strong{font-size:22px}.plex-metric small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}

/* ===== V4.0 — shell de production, navigation fixe et responsive fiable ===== */
:root{
  --v4-shell-gap:clamp(18px,2.2vw,38px);
  --v4-page-top:24px;
  --v4-header-height:76px;
}

/* Bureau : le menu reste toujours ouvert et conserve sa largeur complète. */
@media (min-width:981px){
  .app-shell,
  .app-shell.nav-compact,
  .app-shell.sidebar-collapsed{
    padding-left:var(--sidebar-width)!important;
  }
  .sidebar,
  .nav-compact .sidebar,
  .sidebar-collapsed .sidebar{
    width:var(--sidebar-width)!important;
    padding:20px 14px 18px!important;
    transform:none!important;
  }
  .sidebar .brand-copy,
  .sidebar .brand-tagline,
  .sidebar .server-card,
  .sidebar .powered,
  .sidebar .nav-label,
  .sidebar nav a span,
  .nav-compact .sidebar .brand-copy,
  .sidebar-collapsed .sidebar .brand-copy,
  .nav-compact .sidebar nav a span,
  .sidebar-collapsed .sidebar nav a span{
    display:initial!important;
    opacity:1!important;
    position:static!important;
    pointer-events:auto!important;
  }
  .sidebar nav a,
  .nav-compact .sidebar nav a,
  .sidebar-collapsed .sidebar nav a{
    justify-content:flex-start!important;
    padding:11px 12px!important;
  }
  .sidebar-collapse,.topbar-icon{display:none!important}
}

/* Un seul repère horizontal pour le header et toutes les pages. */
.main{padding:0 var(--v4-shell-gap) 64px!important}
.topbar{
  height:var(--v4-header-height)!important;
  width:min(100%,var(--content-width))!important;
  margin-inline:auto!important;
  padding:0!important;
}
.page-stage{
  width:min(100%,var(--content-width))!important;
  margin-inline:auto!important;
  padding:var(--v4-page-top) 0 0!important;
}
.page-stage>.page,
.page-stage>.home-dashboard,
.page-stage>.search-page,
.page-stage>.profile-page,
.page-stage>.admin-dashboard,
.page-stage>.requests-page,
.page-stage>.request-detail{
  width:100%!important;
  margin:0!important;
}

/* Bouton mobile : surface tactile fiable, au-dessus du contenu. */
.mobile-top{z-index:70!important}
.menu-btn{
  width:44px;height:44px;min-width:44px;
  display:inline-grid!important;place-items:center;
  padding:0!important;border:1px solid color-mix(in srgb,var(--text) 10%,transparent)!important;
  border-radius:11px!important;background:color-mix(in srgb,var(--panel) 75%,transparent)!important;
  color:var(--text)!important;cursor:pointer!important;
  touch-action:manipulation;-webkit-tap-highlight-color:transparent;
}
.menu-btn span{font-size:24px;line-height:1;transform:translateY(-1px)}
.menu-btn:focus-visible{outline:2px solid var(--yellow2);outline-offset:2px}

@media (max-width:980px){
  body.mobile-menu-open{overflow:hidden!important;touch-action:none}
  .app-shell,.app-shell.nav-compact,.app-shell.sidebar-collapsed{
    padding-left:0!important;padding-top:64px!important;
  }
  .main{padding:0 14px 92px!important}
  .page-stage{padding-top:18px!important}
  .sidebar{
    display:flex!important;
    position:fixed!important;
    top:0!important;bottom:0!important;left:0!important;right:auto!important;
    width:min(86vw,310px)!important;max-width:310px!important;
    height:100dvh!important;
    padding:18px 14px!important;
    transform:translate3d(-105%,0,0)!important;
    visibility:hidden;
    transition:transform .24s ease,visibility 0s linear .24s!important;
    z-index:80!important;
    overflow:hidden!important;
    contain:none!important;
  }
  .sidebar.open{
    transform:translate3d(0,0,0)!important;
    visibility:visible!important;
    transition:transform .24s ease,visibility 0s!important;
  }
  .sidebar-backdrop{
    position:fixed!important;inset:0!important;z-index:75!important;
    display:block!important;opacity:0;visibility:hidden;pointer-events:none;
    border:0;background:rgba(1,4,7,.72)!important;
    backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);
    transition:opacity .2s ease,visibility 0s linear .2s;
  }
  .sidebar.open + .sidebar-backdrop{
    opacity:1;visibility:visible;pointer-events:auto;
    transition:opacity .2s ease,visibility 0s;
  }
  .sidebar nav{overscroll-behavior:contain}
}

@media (max-width:650px){
  :root{--v4-page-top:14px}
  .main{padding-inline:10px!important}
  .page-stage{padding-top:14px!important}
}

/* Réduction des animations si demandé par le système. */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* =========================================================
   V4.1 — Statistiques du profil optimisées tablette/mobile
   Le rendu desktop (>980px) reste strictement inchangé.
   ========================================================= */
@media (max-width:980px){
  .profile-stats.profile-stats-v32{
    margin:16px 0 22px!important;
    padding:0!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:10px!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    overflow:visible!important;
  }
  .profile-stats.profile-stats-v32>div{
    position:relative;
    min-width:0;
    min-height:104px;
    padding:15px 14px 14px 52px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:center!important;
    text-align:left!important;
    border:1px solid color-mix(in srgb,var(--text) 10%,transparent)!important;
    border-radius:14px!important;
    background:linear-gradient(145deg,color-mix(in srgb,var(--panel) 97%,#fff 3%),color-mix(in srgb,var(--panel) 91%,#000 9%))!important;
    box-shadow:0 12px 28px rgba(0,0,0,.16)!important;
    overflow:hidden;
  }
  .profile-stats.profile-stats-v32>div::before{
    position:absolute;
    left:14px;
    top:50%;
    width:28px;
    height:28px;
    transform:translateY(-50%);
    display:grid;
    place-items:center;
    border-radius:9px;
    background:color-mix(in srgb,var(--yellow) 13%,transparent);
    color:var(--yellow2);
    font-size:15px;
    line-height:1;
    font-weight:800;
  }
  .profile-stats.profile-stats-v32>div:nth-child(1)::before{content:"□"}
  .profile-stats.profile-stats-v32>div:nth-child(2)::before{content:"◷"}
  .profile-stats.profile-stats-v32>div:nth-child(3)::before{content:"↻"}
  .profile-stats.profile-stats-v32>div:nth-child(4)::before{content:"✓"}
  .profile-stats.profile-stats-v32 strong{
    font-size:clamp(1.35rem,2.5vw,1.75rem)!important;
    line-height:1!important;
    letter-spacing:-.03em;
  }
  .profile-stats.profile-stats-v32 span{
    margin-top:7px!important;
    font-size:.72rem!important;
    line-height:1.25!important;
    color:var(--muted)!important;
    white-space:normal;
  }
}

@media (min-width:651px) and (max-width:820px){
  .profile-stats.profile-stats-v32{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .profile-stats.profile-stats-v32>div{
    min-height:92px;
    padding-left:56px!important;
  }
}

@media (max-width:650px){
  .profile-stats.profile-stats-v32{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
    margin:12px 0 18px!important;
  }
  .profile-stats.profile-stats-v32>div{
    min-height:90px;
    padding:13px 10px 12px 45px!important;
    border-radius:13px!important;
  }
  .profile-stats.profile-stats-v32>div::before{
    left:11px;
    width:26px;
    height:26px;
    border-radius:8px;
    font-size:14px;
  }
  .profile-stats.profile-stats-v32 strong{
    font-size:1.45rem!important;
  }
  .profile-stats.profile-stats-v32 span{
    margin-top:6px!important;
    font-size:.68rem!important;
  }
}

@media (max-width:360px){
  .profile-stats.profile-stats-v32>div{
    padding-left:12px!important;
    align-items:center!important;
    text-align:center!important;
  }
  .profile-stats.profile-stats-v32>div::before{display:none}
}

/* V4.2 — HERO recherche avec mur d'affiches TMDb */
.search-page-hero{isolation:isolate;overflow:hidden}
.search-page-hero:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(7,12,17,.99) 0%,rgba(7,12,17,.94) 38%,rgba(7,12,17,.58) 66%,rgba(7,12,17,.18) 100%)}
.search-hero-copy{z-index:4}
.search-hero-collage,.search-hero-fallback{position:absolute;z-index:0;inset:0 0 0 43%;pointer-events:none;overflow:hidden}
.search-poster-wall{position:absolute;inset:-14% -4% -14% 0;display:grid;grid-template-columns:repeat(5,minmax(90px,1fr));grid-auto-rows:minmax(145px,1fr);gap:10px;transform:perspective(900px) rotateY(-7deg) rotateZ(2deg) scale(1.08);transform-origin:center right;opacity:.56;filter:saturate(.82) contrast(1.08)}
.search-poster-tile{display:block;border-radius:12px;background-image:var(--poster);background-size:cover;background-position:center;box-shadow:0 14px 30px rgba(0,0,0,.48);border:1px solid rgba(255,255,255,.08)}
.search-poster-tile:nth-child(3n+1){transform:translateY(18px)}
.search-poster-tile:nth-child(4n+2){transform:translateY(-12px)}
.search-collage-shade{position:absolute;inset:0;background:linear-gradient(90deg,#080d12 0%,rgba(8,13,18,.82) 13%,rgba(8,13,18,.15) 54%,rgba(8,13,18,.3) 100%),linear-gradient(0deg,rgba(8,13,18,.72),transparent 38%,rgba(8,13,18,.38));z-index:2}
.search-collage-glow{position:absolute;width:520px;height:520px;right:-120px;top:50%;transform:translateY(-50%);border-radius:50%;background:radial-gradient(circle,rgba(247,181,0,.25),rgba(247,181,0,.07) 38%,transparent 70%);filter:blur(12px);z-index:3}
.search-hero-fallback{background:radial-gradient(circle at 80% 50%,rgba(247,181,0,.22),transparent 38%)}
@media(max-width:1180px){.search-hero-collage,.search-hero-fallback{left:50%}.search-poster-wall{grid-template-columns:repeat(4,minmax(85px,1fr));opacity:.48}.search-page-hero:after{background:linear-gradient(90deg,rgba(7,12,17,.99) 0%,rgba(7,12,17,.93) 48%,rgba(7,12,17,.35) 100%)}}
@media(max-width:900px){.search-hero-collage,.search-hero-fallback{left:48%;opacity:.78}.search-poster-wall{grid-template-columns:repeat(3,minmax(82px,1fr));grid-auto-rows:135px;gap:8px}.search-page-hero:after{background:linear-gradient(90deg,rgba(7,12,17,.99) 0%,rgba(7,12,17,.92) 54%,rgba(7,12,17,.45) 100%)}}
@media(max-width:650px){.search-hero-collage,.search-hero-fallback{inset:0;opacity:.5}.search-poster-wall{inset:-20% -28% -18% 34%;grid-template-columns:repeat(3,105px);grid-auto-rows:150px;gap:8px;transform:rotate(5deg) scale(1.06)}.search-page-hero:after{background:linear-gradient(90deg,rgba(7,12,17,.98) 0%,rgba(7,12,17,.91) 68%,rgba(7,12,17,.64) 100%),linear-gradient(0deg,rgba(7,12,17,.88),transparent 65%)}.search-collage-glow{width:300px;height:300px;right:-110px}}
@media(prefers-reduced-motion:no-preference){.search-poster-wall{animation:posterDrift 18s ease-in-out infinite alternate}@keyframes posterDrift{from{translate:0 -4px}to{translate:-8px 5px}}}

/* V4.3 — système d'icônes SVG unifié */
.ui-icon{width:1.15em;height:1.15em;display:inline-block;vertical-align:-.17em;flex:0 0 auto;color:currentColor;overflow:visible}
.btn-icon,.inline-icon{width:1.05em;height:1.05em;margin-right:.38em}
.inline-icon{margin-right:.28em}
.brand-mark{width:34px;height:34px;display:grid;place-items:center}
.brand-chevron{width:22px;height:22px;stroke-width:2.8;filter:drop-shadow(0 0 7px color-mix(in srgb,var(--yellow) 55%,transparent))}
.menu-icon{width:23px;height:23px;stroke-width:2}
.quick-search-icon{width:16px;height:16px}
.account-chevron{width:15px;height:15px;margin-left:1px;color:var(--muted)}
.sidebar nav a b{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;color:color-mix(in srgb,var(--text) 72%,transparent);transition:color .18s ease,transform .18s ease}
.sidebar nav a b .ui-icon{width:19px;height:19px;stroke-width:1.8}
.sidebar nav a:hover b,.sidebar nav a.active b{color:var(--yellow2);transform:translateX(1px)}
.sidebar nav a.active b .ui-icon{filter:drop-shadow(0 0 8px color-mix(in srgb,var(--yellow) 35%,transparent))}
.mobile-nav .ui-icon{width:21px;height:21px;display:block;margin:0 auto 3px;stroke-width:1.85}
.mobile-nav .mobile-add .ui-icon{width:24px;height:24px}
.quick-search-trigger{display:flex;align-items:center;gap:8px}
.account-menu a,.account-menu button{display:flex;align-items:center;gap:10px}
.account-menu .ui-icon{width:17px;height:17px;color:var(--muted)}
.command-input>.ui-icon{width:19px;height:19px;color:var(--yellow2)}
.command-results b{display:grid;place-items:center}
.command-results b .ui-icon{width:20px;height:20px}
.site-announcement{display:flex;align-items:center;gap:9px}.site-announcement>.ui-icon{width:18px;height:18px}
.stat-icon{display:grid;place-items:center}.stat-icon .ui-icon{width:22px;height:22px;stroke-width:1.9}
.panel-icon{display:grid;place-items:center}.panel-icon .ui-icon{width:20px;height:20px}
.hero-icon .ui-icon{width:1em;height:1em;stroke-width:1.55}
.search-icon{display:grid;place-items:center}.search-icon .ui-icon{width:22px;height:22px}
.clear-search{display:grid!important;place-items:center}.clear-search[hidden]{display:none!important}.clear-search .ui-icon{width:18px;height:18px;stroke-width:2.2}
.welcome-icon .ui-icon{width:31px;height:31px;stroke-width:1.8}
.detail-empty>span .ui-icon{width:42px;height:42px;color:var(--yellow2)}
.plex-check-icon .ui-icon,.plex-inline-status>span .ui-icon{width:20px;height:20px}
.integration-logo .ui-icon{width:30px;height:30px}
.security-note{display:flex;align-items:flex-start;gap:9px}.security-note .ui-icon{margin-top:2px;width:18px;height:18px}
.icon-btn{display:grid;place-items:center}.icon-btn .ui-icon{width:18px;height:18px}
.request-row>b .ui-icon{width:18px;height:18px;color:var(--muted)}
.poster .ui-icon,.mini-feed .ui-icon{width:20px;height:20px}
.search-hero-feature .ui-icon,.search-hero-features .ui-icon{width:15px;height:15px;color:var(--yellow2)}
@media(max-width:980px){.sidebar nav a b{width:24px;height:24px}.menu-btn{display:grid;place-items:center}.mobile-top .brand-chevron{width:21px;height:21px}}

/* V4.4 — Recherche premium : HERO intégré, affiches alignées et cartes mobiles sûres */
.search-hero-suite{position:relative;margin:4px 0 22px}
.search-hero-suite .search-page-hero{margin:0;min-height:292px;border-radius:22px 22px 0 0;border-bottom-color:rgba(255,255,255,.045);box-shadow:0 24px 70px rgba(0,0,0,.24)}
.search-hero-suite .search-command{margin:0;z-index:5;border-radius:0 0 18px 18px;border-top:0;box-shadow:0 24px 65px rgba(0,0,0,.3);backdrop-filter:blur(16px)}
.search-hero-suite .search-command:before{content:"";position:absolute;left:18px;right:18px;top:0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--yellow) 32%,var(--line)),transparent)}

/* Grille d'affiches régulière : aucune tuile ne saute de ligne ou de hauteur. */
.search-poster-wall{inset:-9% -3% -9% 0;grid-template-columns:repeat(4,minmax(105px,1fr));grid-template-rows:repeat(3,minmax(0,1fr));grid-auto-rows:unset;gap:9px;transform:perspective(1000px) rotateY(-5deg) scale(1.045);opacity:.54}
.search-poster-tile{min-width:0;min-height:0;width:100%;height:100%;aspect-ratio:2/3;background-position:center 22%;border-radius:10px;transform:none!important}
.search-poster-tile:nth-child(odd){background-position:center 18%}
.search-poster-tile:nth-child(3n){background-position:center 28%}

/* Les fiches restent des colonnes autonomes : l'affiche ne peut jamais recouvrir l'action. */
.search-result-card{display:flex;flex-direction:column;min-width:0;height:100%;isolation:isolate}
.result-poster{flex:0 0 auto;min-width:0;z-index:1}
.result-info{position:relative;z-index:2;display:flex;flex:1;min-width:0;flex-direction:column;background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 96%,#000 4%),color-mix(in srgb,var(--panel) 99%,#000 1%))}
.result-info h3,.result-info p{min-width:0}
.result-mobile-action{position:relative;z-index:3;margin-top:auto;flex:0 0 auto;overflow:hidden}

@media(max-width:1180px){
  .search-poster-wall{grid-template-columns:repeat(4,minmax(88px,1fr));grid-template-rows:repeat(3,minmax(0,1fr));inset:-7% -8% -7% 0}
}
@media(max-width:900px){
  .search-hero-suite{margin-top:2px}
  .search-hero-suite .search-page-hero{min-height:252px;border-radius:19px 19px 0 0}
  .search-hero-suite .search-command{margin:0;border-radius:0 0 17px 17px}
  .search-poster-wall{grid-template-columns:repeat(3,minmax(82px,1fr));grid-template-rows:repeat(4,minmax(0,1fr));inset:-12% -8% -12% 0;gap:8px;transform:rotate(2deg) scale(1.04)}
  .search-result-card{overflow:hidden}
  .result-mobile-action{display:flex;min-height:42px;white-space:normal;text-align:center;line-height:1.15}
}
@media(max-width:650px){
  .search-hero-suite{margin:0 0 16px}
  .search-hero-suite .search-page-hero{margin:0;min-height:285px;padding:27px 20px 38px;border-radius:17px 17px 0 0}
  .search-hero-suite .search-command{margin:0;padding:12px;border-radius:0 0 15px 15px}
  .search-hero-suite .search-command:before{left:12px;right:12px}
  .search-poster-wall{inset:-7% -34% -7% 38%;grid-template-columns:repeat(3,92px);grid-template-rows:repeat(4,138px);gap:7px;transform:rotate(3deg) scale(1.02);opacity:.44}
  .search-results-grid{align-items:stretch}
  .search-result-card{height:auto;min-height:100%;border-radius:14px}
  .result-poster{aspect-ratio:2/3;overflow:hidden}
  .result-info{padding:10px 10px 11px;min-height:126px}
  .result-info h3{white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.25;min-height:2.5em}
  .result-mobile-action{width:100%;min-width:0;margin-top:9px;padding:9px 7px;font-size:.73rem}
}
@media(max-width:390px){
  .search-results-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .result-poster{aspect-ratio:2/3}
  .result-info{min-height:120px;padding:9px}
  .result-mobile-action{font-size:.69rem;padding-inline:5px}
}
@media(max-width:330px){.search-results-grid{grid-template-columns:1fr}.result-poster{aspect-ratio:16/10}.result-info{min-height:auto}}

/* V4.5 — Correctif de flux mobile/tablette pour la recherche intelligente.
   La fiche détaillée et la grille de résultats restent deux blocs distincts
   dans le flux normal : aucune jaquette ne peut recouvrir la fiche située au-dessus. */
@media (max-width: 900px) {
  .search-content-layout {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 18px;
  }

  .search-content-layout > main {
    order: 2;
    display: block;
    width: 100%;
    min-width: 0;
    position: relative;
    z-index: 1;
  }

  .search-detail,
  .search-detail.has-content {
    order: 1;
    position: static;
    inset: auto;
    top: auto;
    width: 100%;
    height: auto;
    min-height: 0;
    max-height: none;
    margin: 0;
    overflow: hidden;
    contain: layout paint;
    z-index: 2;
  }

  .search-detail.has-content {
    display: grid;
    grid-template-columns: 180px minmax(0, 1fr);
    align-items: stretch;
  }

  .search-detail.has-content .detail-cover,
  .search-detail.has-content .detail-copy {
    position: relative;
    min-width: 0;
  }

  .search-results-grid {
    position: relative;
    z-index: 1;
    width: 100%;
    margin: 0;
    clear: both;
  }

  .search-result-card:hover,
  .search-result-card.is-active {
    transform: none;
  }
}

@media (max-width: 650px) {
  .search-content-layout {
    gap: 16px;
    margin-top: 16px;
  }

  .search-detail.has-content {
    display: block;
  }

  .search-detail.has-content .detail-cover {
    width: 100%;
    height: 190px;
    min-height: 190px;
  }

  .search-detail.has-content .detail-copy {
    display: flow-root;
    padding: 20px;
  }

  .search-detail .detail-actions {
    position: relative;
    z-index: 1;
    margin-top: 12px;
  }

  .search-results-grid {
    padding-top: 0;
  }
}

/* V4.6 — Home hero poster wall */
.home-hero-with-posters{isolation:isolate;background:linear-gradient(108deg,rgba(7,12,17,.99) 0%,rgba(9,15,20,.97) 46%,rgba(11,15,16,.72) 100%)}
.home-hero-with-posters:before{z-index:1;pointer-events:none}
.home-hero-with-posters .hero-copy{z-index:5}
.home-hero-collage,.home-hero-poster-fallback{position:absolute;z-index:0;inset:0 0 0 45%;overflow:hidden;pointer-events:none}
.home-poster-wall{position:absolute;inset:-10% -4% -10% 0;display:grid;grid-template-columns:repeat(4,minmax(105px,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:9px;transform:perspective(1000px) rotateY(-5deg) scale(1.045);transform-origin:center right;opacity:.52;filter:saturate(.82) contrast(1.08)}
.home-poster-tile{display:block;min-width:0;min-height:0;border-radius:11px;background-image:var(--poster);background-position:center;background-size:cover;box-shadow:0 10px 30px rgba(0,0,0,.38);overflow:hidden}
.home-poster-tile:after{content:"";display:block;width:100%;height:100%;background:linear-gradient(145deg,rgba(255,255,255,.06),transparent 38%,rgba(0,0,0,.18))}
.home-collage-shade{position:absolute;z-index:2;inset:0;background:linear-gradient(90deg,rgba(7,12,17,1) 0%,rgba(7,12,17,.96) 18%,rgba(7,12,17,.72) 47%,rgba(7,12,17,.28) 100%),linear-gradient(0deg,rgba(7,12,17,.42),transparent 58%)}
.home-collage-glow{position:absolute;z-index:3;right:-70px;top:50%;width:430px;height:430px;transform:translateY(-50%);border-radius:50%;background:radial-gradient(circle,rgba(247,181,0,.22),rgba(247,181,0,.07) 34%,transparent 70%);filter:blur(2px)}
.home-hero-poster-fallback{background:radial-gradient(circle at 80% 50%,rgba(247,181,0,.22),transparent 38%)}
@media(max-width:1180px){.home-hero-collage,.home-hero-poster-fallback{left:50%}.home-poster-wall{grid-template-columns:repeat(4,minmax(88px,1fr));opacity:.46}.home-collage-shade{background:linear-gradient(90deg,rgba(7,12,17,1) 0%,rgba(7,12,17,.96) 34%,rgba(7,12,17,.42) 100%)}}
@media(max-width:900px){.home-hero-collage,.home-hero-poster-fallback{left:48%;opacity:.8}.home-poster-wall{grid-template-columns:repeat(3,minmax(82px,1fr));grid-template-rows:repeat(4,minmax(0,1fr));inset:-12% -8%;gap:8px;transform:rotate(2deg) scale(1.04)}.home-collage-shade{background:linear-gradient(90deg,rgba(7,12,17,1) 0%,rgba(7,12,17,.94) 52%,rgba(7,12,17,.5) 100%)}}
@media(max-width:720px){.home-hero-with-posters{min-height:420px}.home-hero-collage,.home-hero-poster-fallback{inset:0;opacity:.48}.home-poster-wall{inset:-6% -32% -8% 36%;grid-template-columns:repeat(3,94px);grid-template-rows:repeat(4,138px);gap:7px;transform:rotate(3deg) scale(1.02)}.home-collage-shade{background:linear-gradient(90deg,rgba(7,12,17,.99) 0%,rgba(7,12,17,.94) 68%,rgba(7,12,17,.66) 100%),linear-gradient(0deg,rgba(7,12,17,.92),transparent 68%)}.home-collage-glow{width:300px;height:300px;right:-120px}}
@media(prefers-reduced-motion:no-preference){.home-poster-wall{animation:homePosterDrift 18s ease-in-out infinite alternate}@keyframes homePosterDrift{from{translate:0 -4px}to{translate:-8px 5px}}}

/* V4.7 — Mes demandes premium */
.requests-page{display:grid;gap:20px}.requests-hero{position:relative;overflow:hidden;padding:32px;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.8fr);align-items:end;gap:28px;background:linear-gradient(115deg,color-mix(in srgb,var(--panel) 96%,#070b0f),color-mix(in srgb,var(--panel) 78%,#3b2b05));border-color:color-mix(in srgb,var(--yellow) 18%,var(--line))}.requests-hero:after{content:"";position:absolute;right:-100px;top:-160px;width:430px;height:430px;border-radius:50%;background:radial-gradient(circle,rgba(255,198,32,.16),transparent 68%);pointer-events:none}.requests-hero-copy{position:relative;z-index:1}.requests-hero h1{font-size:clamp(2.25rem,4vw,4.4rem);letter-spacing:-.055em;line-height:.98;margin:7px 0 14px}.requests-hero p{max-width:690px;color:var(--muted);font-size:1.02rem}.requests-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.requests-summary{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(8,12,16,.48);border:1px solid rgba(255,255,255,.08);border-radius:16px;overflow:hidden;backdrop-filter:blur(12px)}.requests-summary>div{padding:20px 14px;text-align:center;border-right:1px solid rgba(255,255,255,.08)}.requests-summary>div:last-child{border-right:0}.requests-summary span{display:grid;place-items:center;color:var(--yellow2);margin:auto auto 7px}.requests-summary .ui-icon{width:20px;height:20px}.requests-summary strong{display:block;font-size:1.7rem}.requests-summary small{color:var(--muted)}.requests-toolbar{padding:16px 18px;display:grid;gap:14px}.requests-search{display:grid;grid-template-columns:auto minmax(180px,1fr) 180px auto auto;align-items:center;gap:9px}.requests-search>span{display:grid;place-items:center;color:var(--yellow2)}.requests-search input,.requests-search select{margin:0}.requests-reset{padding-inline:11px}.requests-filters{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}.requests-filters a{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;color:var(--muted);border:1px solid transparent}.requests-filters a:hover,.requests-filters a.active{color:var(--text);background:color-mix(in srgb,var(--panel2) 86%,var(--yellow) 5%);border-color:color-mix(in srgb,var(--yellow) 20%,var(--line))}.requests-filters b{font-size:.75rem;background:rgba(255,255,255,.07);padding:2px 7px;border-radius:999px}.requests-content-head{display:flex;justify-content:space-between;align-items:end}.requests-content-head h2{margin:4px 0 0;font-size:1.7rem}.requests-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:18px}.request-card{min-width:0;display:flex;flex-direction:column;background:linear-gradient(145deg,color-mix(in srgb,var(--panel) 96%,#fff 2%),color-mix(in srgb,var(--panel) 99%,#000));border:1px solid var(--line);border-radius:17px;overflow:hidden;transition:transform .2s,border-color .2s,box-shadow .2s}.request-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--yellow) 28%,var(--line));box-shadow:0 20px 44px rgba(0,0,0,.3)}.request-card-poster{position:relative;display:block;aspect-ratio:16/9;background:linear-gradient(145deg,#28313a,#10161c);overflow:hidden}.request-card-poster img{width:100%;height:100%;object-fit:cover;object-position:center 22%;transition:transform .35s}.request-card:hover .request-card-poster img{transform:scale(1.035)}.request-card-poster>span:not(.request-card-type){height:100%;display:grid;place-items:center;color:var(--yellow2)}.request-card-poster>span .ui-icon{width:38px;height:38px}.request-card-type{position:absolute;left:10px;top:10px;padding:5px 9px;border-radius:999px;background:rgba(6,10,14,.78);backdrop-filter:blur(8px);font-size:.72rem}.request-card-body{display:flex;flex-direction:column;flex:1;padding:16px}.request-card-topline{display:flex;justify-content:space-between;align-items:center;gap:10px}.request-card-topline .status{display:inline-flex;align-items:center;gap:5px;font-weight:700;font-size:.76rem}.request-card-topline .ui-icon{width:14px;height:14px}.request-card-topline time{font-size:.75rem;color:var(--muted)}.request-card h3{font-size:1.08rem;margin:13px 0 4px;line-height:1.3}.request-card h3 a:hover{color:var(--yellow2)}.request-card p{color:var(--muted);margin:0;font-size:.86rem}.request-card-overview{color:#c3cad0;font-size:.83rem;margin-top:12px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.request-card-link{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:17px;color:var(--yellow2);font-weight:700;font-size:.86rem}.request-card-link .ui-icon{width:17px;height:17px}.status-card-completed{border-color:color-mix(in srgb,var(--green) 18%,var(--line))}.status-card-refused,.status-card-cancelled{opacity:.8}.requests-empty{text-align:center;padding:64px 24px}.requests-empty>span{display:grid;place-items:center;width:58px;height:58px;margin:auto;border-radius:16px;background:rgba(255,195,0,.1);color:var(--yellow2)}.requests-empty>span .ui-icon{width:30px;height:30px}.requests-empty h2{margin:18px 0 7px}.requests-empty p{color:var(--muted);max-width:520px;margin:0 auto 20px}.pagination{display:flex;justify-content:center;align-items:center;gap:18px;margin-top:4px}.pagination a{display:inline-flex;align-items:center;gap:7px;padding:9px 13px;border:1px solid var(--line);border-radius:10px}.pagination a:hover{border-color:var(--yellow);color:var(--yellow2)}.pagination a.disabled{pointer-events:none;opacity:.35}.pagination .ui-icon{width:16px;height:16px}.pagination span{color:var(--muted)}
@media(max-width:1100px){.requests-hero{grid-template-columns:1fr}.requests-summary{max-width:720px}.requests-card-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}
@media(max-width:760px){.requests-page{gap:14px}.requests-hero{padding:22px 18px;border-radius:17px}.requests-hero h1{font-size:2.65rem}.requests-summary{grid-template-columns:repeat(2,1fr)}.requests-summary>div{border-bottom:1px solid rgba(255,255,255,.08)}.requests-summary>div:nth-child(2){border-right:0}.requests-summary>div:nth-child(n+3){border-bottom:0}.requests-search{grid-template-columns:auto minmax(0,1fr) auto}.requests-search select{grid-column:1/3}.requests-search button[type=submit]{grid-column:3}.requests-reset{grid-column:3;grid-row:1}.requests-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.request-card{border-radius:14px}.request-card-poster{aspect-ratio:2/3}.request-card-body{padding:11px}.request-card-topline{align-items:flex-start;flex-direction:column;gap:4px}.request-card-topline time{display:none}.request-card h3{font-size:.92rem;margin-top:9px}.request-card-overview{display:none}.request-card-link{font-size:.75rem;padding-top:12px}.request-card-type{font-size:.65rem;padding:4px 7px}.pagination{justify-content:space-between;gap:8px}.pagination span{font-size:.8rem}.pagination a{font-size:.78rem;padding:8px}}
@media(max-width:390px){.requests-hero-actions .btn{width:100%}.requests-summary>div{padding:15px 8px}.requests-summary strong{font-size:1.45rem}.requests-toolbar{padding:12px}.requests-search{grid-template-columns:auto minmax(0,1fr)}.requests-search select,.requests-search button[type=submit],.requests-reset{grid-column:1/-1;width:100%}.requests-reset{grid-row:auto}.requests-card-grid{grid-template-columns:1fr}.request-card{display:grid;grid-template-columns:105px minmax(0,1fr)}.request-card-poster{height:100%;aspect-ratio:auto}.request-card-body{min-height:158px}.pagination span{display:none}}

/* =========================================================
   V4.8 — Système de mise en page unifié
   Un seul axe horizontal pour le header, les alertes et toutes les pages.
   ========================================================= */
:root{
  --layout-gutter:clamp(16px,2.35vw,38px);
  --page-stack:clamp(18px,2vw,28px);
  --section-stack:clamp(18px,2.1vw,30px);
  --panel-pad:clamp(18px,2vw,26px);
}

/* Le shell, le header et le contenu partagent exactement la même largeur. */
.main{
  padding-left:var(--layout-gutter)!important;
  padding-right:var(--layout-gutter)!important;
}
.topbar,
.page-stage{
  width:min(100%,var(--content-width))!important;
  max-width:var(--content-width)!important;
  margin-inline:auto!important;
}
.page-stage{
  padding-top:var(--page-stack)!important;
}
.page-stage>.site-announcement,
.page-stage>.flash,
.page-stage>.page,
.page-stage>.home-dashboard,
.page-stage>.search-page,
.page-stage>.profile-page,
.page-stage>.admin-dashboard,
.page-stage>.requests-page,
.page-stage>.request-detail{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* Ancienne marge interne de l'accueil supprimée : le hero et les statistiques
   s'alignent désormais sur le bandeau d'annonce. */
.home-dashboard{
  padding:0 0 48px!important;
  display:grid!important;
  gap:var(--section-stack)!important;
}
.home-dashboard>.hero,
.home-dashboard>.stat-grid,
.home-dashboard>.plex-insights,
.home-dashboard>.home-columns{
  margin:0!important;
  width:100%!important;
}

/* Espacements verticaux prévisibles sur toutes les racines de page. */
.page,
.search-page,
.profile-page,
.admin-dashboard,
.requests-page,
.request-detail{
  min-width:0;
}
.page-stage>.page,
.page-stage>.search-page,
.page-stage>.profile-page,
.page-stage>.admin-dashboard,
.page-stage>.requests-page,
.page-stage>.request-detail{
  padding-inline:0!important;
}

/* Titres et en-têtes de sections cohérents. */
.section-head,
.requests-content-head,
.settings-header,
.admin-page-head{
  width:100%;
}
.section-head{
  margin:0 0 16px!important;
}
.page>.section-head:first-child,
.profile-page>.section-head:first-child,
.admin-dashboard>.section-head:first-child{
  margin-top:0!important;
}

/* Même langage de cartes sur l'ensemble du produit. */
.panel,
.side-card,
.stat,
.stat-card,
.request-list,
.table-wrap,
.search-command,
.search-result-card,
.search-detail,
.auth-card,
.plex-insights,
.requests-toolbar,
.request-card{
  border-width:1px;
  border-style:solid;
  border-color:color-mix(in srgb,var(--text) 10%,transparent);
  box-shadow:var(--shadow-soft);
}
.panel,
.side-card{
  padding:var(--panel-pad);
}

/* Les grilles principales utilisent les mêmes rythmes. */
.stat-grid,
.stats,
.home-columns,
.profile-grid,
.page-grid,
.detail,
.requests-card-grid{
  gap:var(--section-stack);
}

/* Harmonisation des formulaires et contrôles. */
input,select,textarea,.btn{
  font:inherit;
}
input,select,textarea{
  width:100%;
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}

/* Correction visuelle du bandeau d'annonce : même rayon et même axe que les pages. */
.site-announcement,
.flash{
  margin-bottom:14px!important;
  border-radius:var(--radius)!important;
}

/* Tablette : conserver l'axe commun et réduire proprement les espacements. */
@media(max-width:980px){
  :root{
    --layout-gutter:14px;
    --page-stack:18px;
    --section-stack:16px;
    --panel-pad:18px;
  }
  .main{
    padding-left:var(--layout-gutter)!important;
    padding-right:var(--layout-gutter)!important;
  }
  .home-dashboard{
    padding-bottom:92px!important;
  }
  .page-stage>.page,
  .page-stage>.home-dashboard,
  .page-stage>.search-page,
  .page-stage>.profile-page,
  .page-stage>.admin-dashboard,
  .page-stage>.requests-page,
  .page-stage>.request-detail{
    width:100%!important;
  }
}

/* Mobile : mêmes marges partout, sans exception propre à une page. */
@media(max-width:650px){
  :root{
    --layout-gutter:10px;
    --page-stack:14px;
    --section-stack:14px;
    --panel-pad:16px;
  }
  .main{
    padding-inline:var(--layout-gutter)!important;
  }
  .home-dashboard{
    padding:0 0 92px!important;
  }
  .site-announcement,
  .flash{
    border-radius:calc(var(--radius) * .85)!important;
  }
}

/* V5 — administration & authentification */
.auth-shell{min-height:100vh;background:radial-gradient(circle at 15% 20%,rgba(229,169,0,.12),transparent 32%),linear-gradient(135deg,#070b10,#0d141b);display:grid;place-items:center;padding:32px}.auth-layout{width:min(1120px,100%);display:grid;grid-template-columns:1.15fr .85fr;border:1px solid var(--border);border-radius:24px;overflow:hidden;background:rgba(10,15,20,.92);box-shadow:0 30px 90px rgba(0,0,0,.55)}.auth-showcase{padding:clamp(44px,7vw,88px);display:flex;flex-direction:column;justify-content:center;min-height:650px;background:linear-gradient(90deg,rgba(7,12,17,.98),rgba(7,12,17,.72)),radial-gradient(circle at 85% 30%,rgba(255,196,0,.25),transparent 35%)}.auth-showcase h1{font-size:clamp(2.4rem,5vw,4.6rem);line-height:.98;margin:18px 0}.auth-showcase p{max-width:600px;color:var(--muted);font-size:1.05rem;line-height:1.75}.auth-benefits{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.auth-benefits span{display:flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid var(--border);border-radius:999px;background:rgba(255,255,255,.035)}.auth-card-premium{border:0;border-radius:0;padding:clamp(30px,5vw,60px);display:flex;flex-direction:column;justify-content:center;background:rgba(17,23,29,.96)}.auth-card-premium h2{font-size:2rem;margin:12px 0 6px}.auth-card-premium form{display:grid;gap:18px;margin-top:24px}.auth-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.auth-options{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:.9rem}.remember-check{display:flex!important;flex-direction:row!important;align-items:center;gap:9px}.remember-check input{width:18px;height:18px}.password-field{position:relative}.password-field input{padding-right:48px}.password-field button{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:36px;height:36px;border:0;background:transparent;color:var(--muted)}.password-hint{color:var(--muted)}.auth-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:18px;background:rgba(229,169,0,.12);color:var(--yellow)}
.admin-hero{display:flex;justify-content:space-between;align-items:end;gap:24px}.admin-hero-actions{display:flex;gap:10px}.admin-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.admin-kpi{display:flex;align-items:center;gap:14px;padding:20px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel)}.admin-kpi>span{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:rgba(229,169,0,.11);color:var(--yellow)}.admin-kpi small{display:block;color:var(--muted)}.admin-kpi strong{font-size:1.8rem}.admin-command-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.admin-command{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:22px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);color:var(--text);text-decoration:none}.admin-command>svg:first-child{width:28px;height:28px;color:var(--yellow)}.admin-command small{display:block;color:var(--muted);margin-top:4px}.admin-two-cols{display:grid;grid-template-columns:2fr 1fr;gap:16px}.admin-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-settings-grid .settings-savebar{grid-column:1/-1}.admin-table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:14px;border-bottom:1px solid var(--border);text-align:left;white-space:nowrap}.admin-table td:nth-child(4){white-space:normal;min-width:260px}.btn-lg{min-height:50px}
@media(max-width:900px){.auth-shell{padding:0}.auth-layout{grid-template-columns:1fr;border-radius:0;min-height:100vh}.auth-showcase{min-height:auto;padding:40px 24px}.auth-showcase h1{font-size:2.5rem}.auth-card-premium{padding:32px 24px}.admin-kpis{grid-template-columns:repeat(2,1fr)}.admin-command-grid,.admin-two-cols,.admin-settings-grid{grid-template-columns:1fr}.admin-hero{align-items:start;flex-direction:column}.admin-hero-actions{width:100%;flex-wrap:wrap}.admin-hero-actions .btn{flex:1}.auth-form-grid{grid-template-columns:1fr}}
@media(max-width:520px){.auth-showcase{display:none}.auth-card-premium{min-height:100vh}.admin-kpis{grid-template-columns:1fr 1fr}.admin-kpi{padding:14px;gap:9px}.admin-kpi>span{width:34px;height:34px}.admin-kpi strong{font-size:1.4rem}.auth-options{align-items:flex-start;flex-direction:column}}

/* V5.1 — correctif de rythme et d'empilement du tableau de bord admin */
.admin-dashboard{
  display:grid;
  gap:clamp(18px,2vw,24px);
  align-content:start;
}
.admin-dashboard>.page-hero,
.admin-dashboard>.admin-kpis,
.admin-dashboard>.admin-command-grid,
.admin-dashboard>.admin-two-cols{
  margin:0!important;
  min-width:0;
}
.admin-command-grid{
  row-gap:14px;
  column-gap:14px;
}
.admin-command{
  min-height:82px;
  position:relative;
  z-index:1;
}
.admin-two-cols{
  margin-top:2px!important;
  align-items:start;
}
.admin-two-cols>.panel{
  min-width:0;
  height:auto;
}
.admin-dashboard .request-list.compact{
  margin-top:14px;
}
.admin-dashboard .request-row{
  grid-template-columns:42px minmax(0,1fr) minmax(94px,110px);
}
.admin-dashboard .request-row .status{
  justify-self:end;
  white-space:nowrap;
}
@media(max-width:900px){
  .admin-dashboard{gap:16px}
  .admin-command{min-height:76px;padding:18px}
  .admin-two-cols{margin-top:0!important}
}
@media(max-width:560px){
  .admin-dashboard{gap:14px}
  .admin-kpis{gap:10px}
  .admin-command-grid{gap:10px}
  .admin-command{grid-template-columns:auto minmax(0,1fr) auto;gap:12px;padding:16px;min-height:72px}
  .admin-command small{line-height:1.35}
  .admin-dashboard .request-row{grid-template-columns:38px minmax(0,1fr);gap:12px}
  .admin-dashboard .request-row .status{grid-column:2;justify-self:start;margin-top:4px}
}

/* V5.2 — centre de gestion des demandes */
.admin-requests-page{display:grid;gap:20px;align-content:start}.admin-requests-hero{display:flex;align-items:end;justify-content:space-between;gap:24px;padding:clamp(24px,3vw,40px);border:1px solid color-mix(in srgb,var(--yellow) 24%,var(--border));border-radius:var(--radius);background:linear-gradient(115deg,color-mix(in srgb,var(--panel) 96%,#070b0f),color-mix(in srgb,var(--panel) 78%,#3b2b05));overflow:hidden;position:relative}.admin-requests-hero:after{content:"";position:absolute;width:360px;height:360px;right:-120px;top:-190px;border-radius:50%;background:radial-gradient(circle,rgba(255,196,0,.18),transparent 68%)}.admin-requests-hero>div{position:relative;z-index:1}.admin-requests-hero h1{font-size:clamp(2rem,4vw,3.6rem);letter-spacing:-.045em;line-height:1;margin:8px 0 12px}.admin-requests-hero p{margin:0;color:var(--muted);max-width:700px}.admin-requests-hero-actions{display:flex;gap:10px;flex-wrap:wrap}.admin-request-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.admin-request-kpi{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);transition:.18s ease;min-width:0}.admin-request-kpi:hover,.admin-request-kpi.active{border-color:color-mix(in srgb,var(--yellow) 55%,var(--border));background:color-mix(in srgb,var(--panel) 90%,var(--yellow));transform:translateY(-1px)}.admin-request-kpi>span{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:12px;background:rgba(229,169,0,.1);color:var(--yellow)}.admin-request-kpi small{display:block;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-request-kpi strong{display:block;font-size:1.55rem;line-height:1.1}.admin-requests-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) 180px 170px 170px auto auto;gap:10px;padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel)}.admin-request-search{position:relative}.admin-request-search>svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:18px;color:var(--muted)}.admin-request-search input{padding-left:42px;height:44px}.admin-requests-toolbar select,.admin-requests-toolbar .btn{height:44px;margin:0}.icon-only{width:44px;padding:0}.admin-requests-summary{color:var(--muted);font-size:.9rem}.admin-requests-summary strong{color:var(--text)}.admin-bulk-form{display:grid;gap:14px}.admin-bulk-bar{position:sticky;top:8px;z-index:5;display:flex;align-items:center;gap:12px;padding:11px 14px;border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb,var(--panel) 95%,transparent);backdrop-filter:blur(14px);box-shadow:var(--shadow-soft)}.bulk-check{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;margin:0!important;white-space:nowrap}.bulk-check input{width:18px;height:18px}.bulk-count{margin-right:auto;color:var(--muted);font-size:.9rem}.admin-bulk-bar select{width:210px}.admin-request-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-request-card{position:relative;display:grid;grid-template-columns:154px minmax(0,1fr);min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(145deg,var(--panel),color-mix(in srgb,var(--panel) 88%,#0a0f14));box-shadow:var(--shadow-soft);transition:.18s ease}.admin-request-card:hover{border-color:color-mix(in srgb,var(--yellow) 26%,var(--border));transform:translateY(-1px)}.admin-request-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--muted)}.admin-request-card.status-card-pending:before{background:#aab4bd}.admin-request-card.status-card-in_progress:before{background:var(--yellow)}.admin-request-card.status-card-accepted:before{background:var(--green)}.admin-request-card.status-card-completed:before{background:#72a7d8}.admin-request-card.status-card-refused:before,.admin-request-card.status-card-cancelled:before{background:var(--red)}.request-select{position:absolute;z-index:3;top:10px;left:10px;margin:0!important}.request-select input{position:absolute;opacity:0}.request-select span{display:grid;width:26px;height:26px;border:1px solid rgba(255,255,255,.35);border-radius:8px;background:rgba(5,8,11,.78);backdrop-filter:blur(8px)}.request-select input:checked+span{background:var(--yellow);border-color:var(--yellow)}.request-select input:checked+span:after{content:"✓";display:grid;place-items:center;color:#111;font-weight:900}.admin-request-poster{position:relative;min-height:232px;background:#0b1015;overflow:hidden}.admin-request-poster img{width:100%;height:100%;object-fit:cover;display:block}.admin-request-poster:after{content:"";position:absolute;inset:auto 0 0;height:42%;background:linear-gradient(transparent,rgba(5,8,11,.7));pointer-events:none}.admin-request-poster>.status{position:absolute;z-index:2;left:10px;right:10px;bottom:10px;text-align:center;padding:6px 8px;border-radius:999px;background:rgba(8,12,15,.85);backdrop-filter:blur(8px);font-weight:700}.poster-fallback{height:100%;display:grid;place-items:center;align-content:center;gap:8px;color:var(--yellow)}.poster-fallback svg{width:38px;height:38px}.poster-fallback small{color:var(--muted)}.admin-request-content{min-width:0;padding:20px;display:flex;flex-direction:column;gap:13px}.admin-request-title-row{display:flex;align-items:start;justify-content:space-between;gap:12px}.admin-request-title-row h2{font-size:1.25rem;line-height:1.2;margin:5px 0 0;overflow-wrap:anywhere}.request-user-chip{display:flex;align-items:center;gap:9px}.avatar.small{width:32px;height:32px;flex:0 0 32px}.request-user-chip span:last-child{display:grid}.request-user-chip small{color:var(--muted);font-size:.72rem}.request-user-chip strong{font-size:.9rem}.admin-request-overview{margin:0;color:var(--muted);font-size:.9rem;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.admin-request-card blockquote{margin:0;font-size:.88rem;background:rgba(255,255,255,.025);padding:10px 12px;border-radius:0 8px 8px 0}.admin-request-meta{display:flex;flex-wrap:wrap;gap:8px 14px;color:var(--muted);font-size:.78rem}.admin-request-meta span{display:inline-flex;align-items:center;gap:5px}.admin-request-meta svg{width:14px;height:14px}.plex-state.available{color:var(--green)}.plex-state.missing{color:#e7bd4e}.admin-request-editor{margin-top:auto;border-top:1px solid var(--border);padding-top:12px}.admin-request-editor summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;list-style:none;color:#d9dde1;font-weight:700}.admin-request-editor summary::-webkit-details-marker{display:none}.admin-request-editor summary span{display:flex;align-items:center;gap:7px}.admin-request-editor summary>svg{transition:.18s}.admin-request-editor[open] summary>svg{transform:rotate(180deg)}.editor-body{display:grid;grid-template-columns:180px minmax(0,1fr) auto;align-items:end;gap:10px;padding-top:13px}.editor-body label{margin:0!important}.editor-note{position:relative}.editor-note small{position:absolute;right:8px;bottom:6px;font-size:.68rem}.editor-note textarea{padding-bottom:24px;min-height:82px}.editor-body .btn{margin-bottom:0;min-height:44px}.admin-requests-empty{text-align:center;padding:70px 24px}.admin-requests-empty>svg{width:48px;height:48px;color:var(--yellow)}.pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:7px}.pagination a{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--border);border-radius:10px;background:var(--panel)}.pagination a.active{background:var(--yellow);color:#111;border-color:var(--yellow);font-weight:800}
@media(max-width:1280px){.admin-request-kpis{grid-template-columns:repeat(3,1fr)}.admin-requests-toolbar{grid-template-columns:minmax(240px,1fr) repeat(3,160px) auto}.admin-requests-toolbar .icon-only{grid-column:auto}.admin-request-grid{grid-template-columns:1fr}}
@media(max-width:900px){.admin-requests-hero{align-items:start;flex-direction:column}.admin-requests-hero-actions{width:100%}.admin-requests-hero-actions .btn{flex:1}.admin-requests-toolbar{grid-template-columns:1fr 1fr}.admin-request-search{grid-column:1/-1}.admin-requests-toolbar .btn-primary{grid-column:1/-1}.admin-request-kpis{grid-template-columns:repeat(3,1fr)}.admin-request-card{grid-template-columns:132px minmax(0,1fr)}.editor-body{grid-template-columns:1fr}.editor-body .btn{width:100%}.admin-bulk-bar{bottom:76px;top:auto;flex-wrap:wrap}.bulk-count{order:3;width:100%}.admin-bulk-bar select{margin-left:auto}}
@media(max-width:620px){.admin-requests-page{gap:14px}.admin-requests-hero{padding:22px 18px}.admin-requests-hero h1{font-size:2rem}.admin-requests-hero-actions{display:grid;grid-template-columns:1fr}.admin-request-kpis{grid-template-columns:repeat(2,1fr);gap:9px}.admin-request-kpi{padding:12px 10px;gap:9px}.admin-request-kpi>span{width:34px;height:34px;flex-basis:34px}.admin-request-kpi strong{font-size:1.3rem}.admin-requests-toolbar{grid-template-columns:1fr;padding:10px}.admin-request-search,.admin-requests-toolbar .btn-primary{grid-column:auto}.admin-requests-toolbar .icon-only{width:100%}.admin-bulk-bar{display:grid;grid-template-columns:1fr auto;gap:9px}.bulk-check{grid-column:1}.bulk-count{grid-column:1/-1;order:initial}.admin-bulk-bar select{width:100%;margin:0;grid-column:1}.admin-request-card{grid-template-columns:100px minmax(0,1fr)}.admin-request-poster{min-height:170px}.admin-request-content{padding:14px;gap:10px}.admin-request-title-row h2{font-size:1.05rem}.admin-request-title-row .btn{display:none}.admin-request-overview,.admin-request-card blockquote{display:none}.admin-request-meta{display:grid;gap:5px}.admin-request-editor summary{font-size:.88rem}.editor-body{padding-top:10px}.request-user-chip .avatar{display:none}.request-user-chip{font-size:.82rem}.admin-request-poster>.status{font-size:.7rem;left:6px;right:6px;bottom:6px}.pagination a{width:36px;height:36px}}
@media(max-width:390px){.admin-request-card{grid-template-columns:86px minmax(0,1fr)}.admin-request-poster{min-height:150px}.admin-request-content{padding:12px}.admin-request-kpis{grid-template-columns:1fr 1fr}.admin-request-kpi small{font-size:.68rem}}

/* =========================================================
   V5.3 — Unified premium page heroes
   One geometry, typography and poster-wall system everywhere.
   ========================================================= */
:root{
  --hero-radius:22px;
  --hero-min-height:320px;
  --hero-pad-x:clamp(28px,3.2vw,46px);
  --hero-pad-y:clamp(30px,3vw,42px);
  --hero-title-size:clamp(2.55rem,4.15vw,4rem);
}
.site-hero{
  position:relative;
  isolation:isolate;
  min-height:var(--hero-min-height);
  width:100%;
  padding:var(--hero-pad-y) var(--hero-pad-x);
  border:1px solid color-mix(in srgb,var(--yellow) 20%,var(--border,#29323a));
  border-radius:var(--hero-radius);
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:clamp(24px,4vw,64px);
  background:linear-gradient(110deg,#0a1016 0%,#0c1319 55%,#2d2307 100%);
  box-shadow:0 26px 78px rgba(0,0,0,.28);
}
.site-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:42px 42px;
  opacity:.7;
}
.site-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(6,10,14,.995) 0%,rgba(7,12,17,.95) 38%,rgba(7,12,17,.64) 67%,rgba(7,12,17,.24) 100%),linear-gradient(0deg,rgba(5,8,11,.26),transparent 48%);
}
.site-hero-copy,
.site-hero>.profile-identity,
.site-hero>.profile-cover-badge,
.site-hero>.requests-summary,
.site-hero>.admin-hero-actions,
.site-hero>.admin-requests-hero-actions{
  position:relative;
  z-index:3;
}
.site-hero-copy{max-width:760px;min-width:0}
.site-hero .eyebrow{margin-bottom:12px;text-transform:uppercase}
.site-hero h1,
.site-hero-copy h1,
.profile-cover.site-hero h1,
.admin-requests-hero.site-hero h1,
.page-hero.site-hero h1{
  margin:0 0 18px;
  max-width:820px;
  font-size:var(--hero-title-size);
  line-height:1.02;
  letter-spacing:-.045em;
  font-weight:800;
}
.site-hero h1 em{font-style:normal;color:var(--yellow2,var(--yellow))}
.site-hero p,
.site-hero-copy>p{
  margin:0;
  max-width:680px;
  color:var(--muted);
  font-size:1rem;
  line-height:1.7;
}
.site-hero .hero-actions,
.site-hero .requests-hero-actions,
.site-hero .admin-hero-actions,
.site-hero .admin-requests-hero-actions{margin-top:24px;display:flex;gap:11px;flex-wrap:wrap}

.site-hero-collage,.site-hero-fallback{
  position:absolute;
  inset:0 0 0 45%;
  z-index:0;
  overflow:hidden;
  pointer-events:none;
}
.site-hero-poster-wall{
  position:absolute;
  inset:-10% -4% -10% 0;
  display:grid;
  grid-template-columns:repeat(4,minmax(100px,1fr));
  grid-template-rows:repeat(3,minmax(0,1fr));
  gap:9px;
  transform:perspective(1050px) rotateY(-4deg) scale(1.045);
  transform-origin:center right;
  opacity:.55;
  filter:saturate(.86) contrast(1.06);
}
.site-hero-poster-tile{
  min-width:0;
  min-height:0;
  border-radius:10px;
  background-image:var(--poster);
  background-size:cover;
  background-position:center 22%;
  box-shadow:0 8px 28px rgba(0,0,0,.34);
}
.site-hero-collage-shade{position:absolute;inset:0;background:linear-gradient(90deg,#091016 0%,rgba(9,16,22,.78) 24%,rgba(9,16,22,.16) 78%),linear-gradient(0deg,rgba(7,11,15,.34),transparent 50%)}
.site-hero-collage-glow{position:absolute;width:520px;height:520px;right:-120px;top:50%;transform:translateY(-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,190,0,.20),transparent 68%);filter:blur(10px)}
.site-hero-fallback{background:radial-gradient(circle at 78% 50%,rgba(255,193,7,.22),transparent 36%)}

/* Per-page content keeps the same shell while adapting its inner layout. */
.home-dashboard>.site-hero{margin:0}
.search-hero-suite>.site-hero{margin:0;border-radius:var(--hero-radius) var(--hero-radius) 0 0;min-height:var(--hero-min-height)}
.search-hero-suite .search-command{border-radius:0 0 var(--hero-radius) var(--hero-radius)}
.search-hero-suite{border-radius:var(--hero-radius)}
.request-builder>.site-hero{margin-bottom:22px}
.site-hero-compact{min-height:270px}
.requests-hero.site-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(400px,610px);align-items:center}
.requests-hero.site-hero .requests-summary{margin:0;background:rgba(7,11,15,.62);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.09);border-radius:16px;overflow:hidden}
.profile-cover.site-hero{min-height:270px;padding:var(--hero-pad-y) var(--hero-pad-x);margin:0}
.profile-cover.site-hero .profile-title-block h1{font-size:clamp(2.35rem,3.8vw,3.6rem);margin:7px 0 4px}
.profile-cover.site-hero .profile-identity{max-width:760px}
.profile-cover.site-hero .profile-cover-badge{align-self:center}
.page-hero.site-hero,.admin-requests-hero.site-hero{min-height:300px;align-items:center}
.admin-hero.site-hero{flex-direction:row}
.admin-hero.site-hero .admin-hero-actions,.admin-requests-hero.site-hero .admin-requests-hero-actions{margin-top:0}

/* Neutralize legacy hero-specific geometry so pages can no longer drift apart. */
.hero-upgraded,.search-page-hero,.requests-hero,.profile-cover-v32,.page-hero,.admin-requests-hero{
  border-radius:var(--hero-radius);
}
.search-page-hero{padding:var(--hero-pad-y) var(--hero-pad-x)}
.requests-hero{padding:var(--hero-pad-y) var(--hero-pad-x)}
.profile-cover-v32{padding:var(--hero-pad-y) var(--hero-pad-x)}
.admin-requests-hero{padding:var(--hero-pad-y) var(--hero-pad-x)}

@media(prefers-reduced-motion:no-preference){
  .site-hero-poster-wall{animation:siteHeroDrift 20s ease-in-out infinite alternate}
  @keyframes siteHeroDrift{from{translate:0 -3px}to{translate:-7px 4px}}
}
@media(max-width:1100px){
  :root{--hero-min-height:290px;--hero-title-size:clamp(2.35rem,5vw,3.45rem)}
  .site-hero-collage,.site-hero-fallback{left:49%}
  .site-hero-poster-wall{grid-template-columns:repeat(3,minmax(92px,1fr));grid-template-rows:repeat(4,minmax(0,1fr));inset:-12% -7%;opacity:.49}
  .requests-hero.site-hero{grid-template-columns:1fr}
  .requests-hero.site-hero .requests-summary{width:100%;margin-top:8px}
}
@media(max-width:900px){
  :root{--hero-radius:18px;--hero-min-height:270px;--hero-pad-x:24px;--hero-pad-y:28px;--hero-title-size:clamp(2.15rem,7vw,3rem)}
  .site-hero{align-items:flex-start}
  .site-hero-collage,.site-hero-fallback{inset:0;opacity:.66}
  .site-hero-poster-wall{inset:-8% -18% -8% 38%;grid-template-columns:repeat(3,100px);grid-template-rows:repeat(4,145px);transform:rotate(2deg) scale(1.03);opacity:.45}
  .site-hero::after{background:linear-gradient(90deg,rgba(6,10,14,.99) 0%,rgba(7,12,17,.94) 58%,rgba(7,12,17,.55) 100%),linear-gradient(0deg,rgba(6,10,14,.78),transparent 65%)}
  .site-hero-profile{flex-direction:column;justify-content:flex-end}
  .profile-cover.site-hero .profile-cover-badge{display:none}
  .admin-hero.site-hero,.admin-requests-hero.site-hero{flex-direction:column;align-items:flex-start}
  .admin-hero.site-hero .admin-hero-actions,.admin-requests-hero.site-hero .admin-requests-hero-actions{width:100%;margin-top:18px}
}
@media(max-width:650px){
  :root{--hero-radius:16px;--hero-min-height:260px;--hero-pad-x:20px;--hero-pad-y:24px;--hero-title-size:clamp(2rem,10vw,2.55rem)}
  .site-hero{gap:18px}
  .site-hero h1,.site-hero-copy h1,.admin-requests-hero.site-hero h1,.page-hero.site-hero h1{margin-bottom:12px;line-height:1.04}
  .site-hero p,.site-hero-copy>p{font-size:.92rem;line-height:1.58}
  .site-hero .hero-actions,.site-hero .requests-hero-actions,.site-hero .admin-hero-actions,.site-hero .admin-requests-hero-actions{display:grid;grid-template-columns:1fr;width:100%;margin-top:18px}
  .site-hero .hero-actions .btn,.site-hero .requests-hero-actions .btn,.site-hero .admin-hero-actions .btn,.site-hero .admin-requests-hero-actions .btn{width:100%}
  .site-hero-poster-wall{inset:-8% -46% -10% 39%;grid-template-columns:repeat(3,88px);grid-template-rows:repeat(4,130px);gap:7px;opacity:.39}
  .site-hero-collage-glow{width:300px;height:300px;right:-140px}
  .site-hero-compact{min-height:245px}
  .profile-cover.site-hero{min-height:245px;justify-content:flex-end}
  .profile-cover.site-hero .profile-identity{align-items:flex-start}
  .profile-cover.site-hero .profile-title-block h1{font-size:2.3rem}
  .requests-hero.site-hero .requests-summary{grid-template-columns:repeat(2,1fr)}
  .search-hero-suite>.site-hero{min-height:285px}
}

/* =========================================================
   V6 — Single production hero system
   ========================================================= */
:root{
  --v6-hero-radius:18px;
  --v6-hero-content-min:246px;
  --v6-hero-footer-height:86px;
  --v6-hero-pad-x:clamp(24px,3vw,42px);
  --v6-hero-pad-y:clamp(26px,3vw,40px);
}

.site-hero.site-hero-with-footer{
  display:flex;
  flex-direction:column;
  min-height:calc(var(--v6-hero-content-min) + var(--v6-hero-footer-height));
  padding:0;
  border-radius:var(--v6-hero-radius);
  overflow:hidden;
  isolation:isolate;
}
.site-hero-with-footer>.site-hero-main{
  position:relative;
  z-index:3;
  min-height:var(--v6-hero-content-min);
  width:100%;
  padding:var(--v6-hero-pad-y) var(--v6-hero-pad-x);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:clamp(24px,5vw,72px);
}
.site-hero-with-footer>.site-hero-footer{
  position:relative;
  z-index:4;
  width:100%;
  min-height:var(--v6-hero-footer-height);
  margin:0;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  background:rgba(8,13,18,.82);
  border-top:1px solid rgba(255,255,255,.10);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.site-hero-with-footer>.site-hero-footer>div{
  min-width:0;
  padding:14px 16px;
  display:grid;
  grid-template-columns:auto auto;
  grid-template-rows:auto auto;
  align-content:center;
  justify-content:center;
  column-gap:10px;
  text-align:left;
  border-right:1px solid rgba(255,255,255,.09);
}
.site-hero-with-footer>.site-hero-footer>div:last-child{border-right:0}
.site-hero-with-footer .hero-stat-icon{
  grid-row:1/3;
  align-self:center;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:12px;
  color:var(--yellow);
  background:color-mix(in srgb,var(--yellow) 12%,transparent);
}
.site-hero-with-footer .hero-stat-icon svg{width:18px;height:18px}
.site-hero-with-footer>.site-hero-footer strong{
  align-self:end;
  font-size:1.35rem;
  line-height:1;
  color:var(--text);
}
.site-hero-with-footer>.site-hero-footer small,
.site-hero-with-footer>.site-hero-footer>div>span:last-child{
  align-self:start;
  margin-top:5px;
  color:var(--muted);
  font-size:.76rem;
  line-height:1.15;
}

/* Requests: copy owns the composition; statistics are a true footer. */
.requests-hero.site-hero{
  display:flex;
  grid-template-columns:none;
  align-items:stretch;
  min-height:calc(var(--v6-hero-content-min) + var(--v6-hero-footer-height));
  padding:0;
}
.requests-hero .requests-hero-main{justify-content:flex-start}
.requests-hero .requests-hero-copy{max-width:740px}
.requests-hero.site-hero .requests-summary{
  width:100%;
  margin:0;
  border:0;
  border-radius:0;
  overflow:visible;
  background:rgba(8,13,18,.82);
}

/* Profile: balanced identity block and a full-width footer. */
.profile-cover.site-hero{
  min-height:calc(var(--v6-hero-content-min) + var(--v6-hero-footer-height));
  padding:0;
  margin:0;
}
.profile-hero-main{width:100%}
.profile-cover.site-hero .profile-identity{
  max-width:min(780px,72%);
  display:flex;
  align-items:center;
  gap:22px;
}
.profile-cover.site-hero .profile-avatar-xl{
  width:96px;
  height:96px;
  flex:0 0 96px;
  border-radius:24px;
  box-shadow:0 16px 44px rgba(0,0,0,.30);
}
.profile-cover.site-hero .profile-title-block{min-width:0}
.profile-cover.site-hero .profile-title-block .rank{display:inline-flex;margin-bottom:8px}
.profile-cover.site-hero .profile-title-block h1{
  margin:0 0 7px;
  font-size:var(--hero-title-size);
  line-height:1;
  letter-spacing:-.045em;
}
.profile-cover.site-hero .profile-title-block p{margin:0}
.profile-cover.site-hero .profile-cover-badge{
  align-self:center;
  min-width:200px;
  padding:18px 22px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:14px;
  text-align:right;
  background:rgba(8,13,18,.42);
  backdrop-filter:blur(10px);
}
.profile-cover.site-hero .profile-cover-badge span{display:block;color:var(--yellow);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.11em}
.profile-cover.site-hero .profile-cover-badge strong{display:block;margin-top:5px;font-size:1rem}
.profile-stats.profile-stats-v32{
  width:100%;
  margin:0;
  border-radius:0;
  overflow:visible;
  background:rgba(8,13,18,.82);
}

/* Ensure the collage stays behind all hero slots and never crops the footer. */
.site-hero-with-footer>.site-hero-collage,
.site-hero-with-footer>.site-hero-fallback{bottom:var(--v6-hero-footer-height)}
.site-hero-with-footer::after{bottom:var(--v6-hero-footer-height)}
.site-hero-with-footer::before{bottom:var(--v6-hero-footer-height)}

@media(max-width:900px){
  :root{--v6-hero-content-min:230px;--v6-hero-footer-height:92px;--v6-hero-pad-x:22px;--v6-hero-pad-y:26px}
  .site-hero-with-footer>.site-hero-main{align-items:flex-end}
  .profile-cover.site-hero .profile-identity{max-width:100%;gap:16px}
  .profile-cover.site-hero .profile-cover-badge{display:none}
  .profile-cover.site-hero .profile-avatar-xl{width:82px;height:82px;flex-basis:82px;border-radius:21px}
}

@media(max-width:650px){
  :root{--v6-hero-radius:16px;--v6-hero-content-min:220px;--v6-hero-footer-height:auto;--v6-hero-pad-x:18px;--v6-hero-pad-y:22px}
  .site-hero.site-hero-with-footer{min-height:0}
  .site-hero-with-footer>.site-hero-main{min-height:220px;align-items:flex-end;padding:22px 18px}
  .site-hero-with-footer>.site-hero-footer{min-height:0;grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-hero-with-footer>.site-hero-footer>div{min-height:76px;padding:12px 10px;border-bottom:1px solid rgba(255,255,255,.09)}
  .site-hero-with-footer>.site-hero-footer>div:nth-child(2){border-right:0}
  .site-hero-with-footer>.site-hero-footer>div:nth-child(n+3){border-bottom:0}
  .site-hero-with-footer .hero-stat-icon{width:32px;height:32px;border-radius:10px}
  .site-hero-with-footer>.site-hero-footer strong{font-size:1.18rem}
  .site-hero-with-footer>.site-hero-footer small,
  .site-hero-with-footer>.site-hero-footer>div>span:last-child{font-size:.7rem}
  .site-hero-with-footer>.site-hero-collage,
  .site-hero-with-footer>.site-hero-fallback,
  .site-hero-with-footer::before,
  .site-hero-with-footer::after{bottom:152px}
  .profile-cover.site-hero .profile-identity{align-items:center;gap:14px}
  .profile-cover.site-hero .profile-avatar-xl{width:72px;height:72px;flex-basis:72px;border-radius:19px}
  .profile-cover.site-hero .profile-title-block h1{font-size:clamp(2rem,11vw,2.55rem)}
  .profile-cover.site-hero .profile-title-block p{font-size:.82rem}
  .profile-cover.site-hero .profile-title-block .rank{font-size:.68rem;margin-bottom:6px}
}

@media(max-width:390px){
  .site-hero-with-footer>.site-hero-footer>div{grid-template-columns:auto 1fr;justify-content:start;text-align:left;padding-left:14px}
  .site-hero-with-footer .hero-stat-icon{margin-right:2px}
  .profile-cover.site-hero .profile-avatar-xl{width:64px;height:64px;flex-basis:64px}
}

/* =========================================================
   V6.1 — Premium profile hero reconstruction
   ========================================================= */
.profile-hero-premium{
  --profile-hero-content:300px;
  min-height:calc(var(--profile-hero-content) + var(--v6-hero-footer-height)) !important;
  background:#0b1117;
}
.profile-hero-premium>.site-hero-main{
  min-height:var(--profile-hero-content) !important;
  padding:clamp(34px,4vw,58px) clamp(30px,4.2vw,62px) !important;
  justify-content:flex-start !important;
  align-items:center !important;
}
.profile-hero-premium>.site-hero-collage,
.profile-hero-premium>.site-hero-fallback,
.profile-hero-premium::before,
.profile-hero-premium::after{
  bottom:var(--v6-hero-footer-height) !important;
}
.profile-hero-premium>.site-hero-collage{
  left:42% !important;
  width:58% !important;
  opacity:.82;
}
.profile-hero-premium::after{
  background:
    linear-gradient(90deg,#091017 0%,rgba(9,16,23,.98) 29%,rgba(9,16,23,.78) 53%,rgba(9,16,23,.22) 77%,rgba(9,16,23,.08) 100%) !important;
}
.profile-hero-premium::before{
  background:
    linear-gradient(180deg,rgba(5,10,15,.08),rgba(5,10,15,.28)),
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px) !important;
  background-size:auto,56px 56px,56px 56px !important;
}
.profile-hero-premium .profile-identity-premium{
  position:relative;
  z-index:5;
  width:min(760px,70%);
  max-width:none !important;
  display:grid !important;
  grid-template-columns:132px minmax(0,1fr);
  align-items:center !important;
  gap:28px !important;
}
.profile-hero-premium .profile-avatar-xl{
  width:132px !important;
  height:132px !important;
  flex-basis:132px !important;
  border-radius:30px !important;
  font-size:46px;
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 24px 60px rgba(0,0,0,.42),0 0 0 7px rgba(255,193,7,.035) !important;
}
.profile-hero-premium .profile-kicker{
  display:block;
  margin-bottom:8px;
  color:var(--yellow);
  font-size:.72rem;
  font-weight:850;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.profile-hero-premium .profile-title-block h1{
  margin:0 0 12px !important;
  font-size:clamp(3rem,4.4vw,4.65rem) !important;
  line-height:.94 !important;
  letter-spacing:-.055em !important;
  text-shadow:0 8px 30px rgba(0,0,0,.34);
}
.profile-meta-line{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 13px;
  color:var(--muted);
  font-size:.92rem;
}
.profile-meta-line>span:not(:first-child){position:relative}
.profile-meta-line>span:not(:first-child)::before{
  content:"";
  width:3px;
  height:3px;
  position:absolute;
  left:-8px;
  top:50%;
  border-radius:50%;
  background:rgba(255,255,255,.38);
}
.profile-meta-line .rank{margin:0 !important}
.profile-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:22px;
}
.profile-hero-actions .btn{
  min-height:43px;
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.profile-hero-actions .btn svg{width:17px;height:17px}
.profile-hero-premium>.profile-stats{
  background:rgba(7,12,17,.92) !important;
}
.profile-hero-premium>.profile-stats>div{
  transition:background .2s ease;
}
.profile-hero-premium>.profile-stats>div:hover{
  background:rgba(255,255,255,.028);
}
#profile-settings,#avatar-settings{scroll-margin-top:90px}

@media(max-width:1050px){
  .profile-hero-premium>.site-hero-collage{left:34% !important;width:66% !important}
  .profile-hero-premium .profile-identity-premium{width:82%;grid-template-columns:112px minmax(0,1fr);gap:22px !important}
  .profile-hero-premium .profile-avatar-xl{width:112px !important;height:112px !important;flex-basis:112px !important;border-radius:26px !important}
}

@media(max-width:760px){
  .profile-hero-premium{--profile-hero-content:270px}
  .profile-hero-premium>.site-hero-main{padding:28px 22px !important;align-items:flex-end !important}
  .profile-hero-premium>.site-hero-collage{left:20% !important;width:80% !important;opacity:.68}
  .profile-hero-premium::after{
    background:linear-gradient(180deg,rgba(7,12,18,.26),rgba(7,12,18,.78) 49%,#081017 100%) !important;
  }
  .profile-hero-premium .profile-identity-premium{
    width:100%;
    grid-template-columns:82px minmax(0,1fr);
    align-items:end !important;
    gap:16px !important;
  }
  .profile-hero-premium .profile-avatar-xl{
    width:82px !important;height:82px !important;flex-basis:82px !important;border-radius:21px !important;font-size:30px
  }
  .profile-hero-premium .profile-kicker{font-size:.65rem;margin-bottom:5px}
  .profile-hero-premium .profile-title-block h1{font-size:clamp(2.35rem,10vw,3.35rem) !important;margin-bottom:8px !important}
  .profile-meta-line{font-size:.78rem;gap:6px 12px}
  .profile-hero-actions{margin-top:15px;gap:8px}
  .profile-hero-actions .btn{min-height:39px;padding:9px 12px;font-size:.82rem}
}

@media(max-width:520px){
  .profile-hero-premium{--profile-hero-content:330px}
  .profile-hero-premium>.site-hero-main{padding:24px 18px !important}
  .profile-hero-premium .profile-identity-premium{
    grid-template-columns:1fr;
    align-items:start !important;
    gap:13px !important;
  }
  .profile-hero-premium .profile-avatar-xl{
    width:76px !important;height:76px !important;flex-basis:76px !important;border-radius:20px !important
  }
  .profile-hero-premium .profile-title-block h1{font-size:2.45rem !important}
  .profile-meta-line>span:not(:first-child)::before{display:none}
  .profile-meta-line{gap:6px 10px}
  .profile-hero-actions{width:100%}
  .profile-hero-actions .btn{flex:1 1 150px;justify-content:center}
  .profile-hero-premium>.site-hero-collage,
  .profile-hero-premium>.site-hero-fallback,
  .profile-hero-premium::before,
  .profile-hero-premium::after{bottom:152px !important}
}

/* =========================================================
   V6.2 — Complete profile workspace redesign
   ========================================================= */
.profile-page-v62{display:grid;gap:18px;min-width:0}
.profile-cover-v62{position:relative;min-height:245px;overflow:hidden;border:1px solid color-mix(in srgb,var(--yellow) 24%,var(--line));border-radius:var(--radius);background:#091017;box-shadow:0 20px 55px rgba(0,0,0,.24)}
.profile-cover-v62>.site-hero-collage,.profile-cover-v62>.site-hero-fallback{position:absolute!important;inset:0 0 0 37%!important;width:63%!important;height:100%!important;opacity:.82;z-index:0}
.profile-cover-shade-v62{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#081017 0%,rgba(8,16,23,.98) 35%,rgba(8,16,23,.72) 58%,rgba(8,16,23,.18) 100%),linear-gradient(180deg,rgba(4,8,12,.05),rgba(4,8,12,.32))}
.profile-cover-v62::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px);background-size:54px 54px}
.profile-cover-inner-v62{position:relative;z-index:2;min-height:245px;padding:34px 38px;display:grid;grid-template-columns:112px minmax(0,1fr) auto;align-items:center;gap:24px}
.profile-cover-avatar-v62{width:112px;height:112px;border-radius:28px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(145deg,var(--yellow2),color-mix(in srgb,var(--yellow) 72%,#d96b2c));color:#0a0f14;font-size:2.55rem;font-weight:900;box-shadow:0 20px 48px rgba(0,0,0,.4),0 0 0 6px rgba(255,193,7,.055);border:1px solid rgba(255,255,255,.18)}
.profile-cover-avatar-v62 img{width:100%;height:100%;object-fit:cover}
.profile-cover-copy-v62{min-width:0;max-width:700px}
.profile-cover-badges-v62{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}.profile-cover-badges-v62 .rank{margin:0}
.profile-status-v62{display:inline-flex;align-items:center;gap:7px;padding:5px 9px;border:1px solid rgba(72,220,154,.2);border-radius:999px;background:rgba(31,164,101,.09);color:#56dfa2;font-size:.72rem;font-weight:700}.profile-status-v62 i,.profile-online-v62 i{width:7px;height:7px;border-radius:50%;background:#36d98c;box-shadow:0 0 10px rgba(54,217,140,.7)}
.profile-cover-copy-v62 h1{margin:0 0 8px;font-size:clamp(2.7rem,4vw,4.35rem);line-height:.95;letter-spacing:-.05em}.profile-cover-copy-v62>p{margin:0;color:var(--muted);font-size:.93rem}.profile-cover-copy-v62>p span{margin:0 5px;color:rgba(255,255,255,.36)}
.profile-cover-bio-v62{margin-top:13px;max-width:620px;color:color-mix(in srgb,var(--text) 82%,var(--muted));font-size:.9rem;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.profile-cover-actions-v62{display:flex;flex-direction:column;gap:9px;align-items:stretch;min-width:180px}.profile-cover-actions-v62 .btn{justify-content:center;white-space:nowrap}
.profile-stats-v62{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.profile-stats-v62 article{min-width:0;display:flex;align-items:center;gap:13px;padding:18px;border:1px solid var(--line);border-radius:calc(var(--radius) * .82);background:linear-gradient(145deg,color-mix(in srgb,var(--panel) 96%,#17222e),color-mix(in srgb,var(--panel) 92%,#080d12));box-shadow:0 12px 28px rgba(0,0,0,.12)}
.profile-stats-v62 article>span{width:42px;height:42px;flex:0 0 42px;border-radius:13px;display:grid;place-items:center;color:var(--yellow);background:color-mix(in srgb,var(--yellow) 10%,transparent)}.profile-stats-v62 article>span svg{width:20px;height:20px}
.profile-stats-v62 strong{display:block;font-size:1.55rem;line-height:1}.profile-stats-v62 small{display:block;margin-top:5px;color:var(--muted);font-size:.75rem}
.profile-subnav-v62{display:flex;gap:7px;padding:7px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--panel) 90%,transparent);overflow:auto;scrollbar-width:none}.profile-subnav-v62::-webkit-scrollbar{display:none}.profile-subnav-v62 a{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:9px 14px;border-radius:10px;color:var(--muted);font-weight:700;font-size:.83rem;white-space:nowrap}.profile-subnav-v62 a svg{width:17px;height:17px}.profile-subnav-v62 a:hover,.profile-subnav-v62 a.is-active{color:var(--text);background:rgba(255,255,255,.055)}.profile-subnav-v62 a.is-active{color:var(--yellow)}
.profile-workspace-v62{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start}.profile-main-v62,.profile-side-v62{display:grid;gap:16px;min-width:0}.profile-side-v62{position:sticky;top:18px}
.profile-card-v62{min-width:0;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,color-mix(in srgb,var(--panel) 98%,#17212a),color-mix(in srgb,var(--panel) 96%,#0a0f14));box-shadow:0 16px 38px rgba(0,0,0,.13)}
.profile-card-head-v62{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:20px}.profile-card-head-v62.compact{margin-bottom:16px}.profile-card-head-v62 h2{margin:5px 0 4px;font-size:1.48rem}.profile-card-head-v62 p{margin:0;color:var(--muted);font-size:.88rem}.profile-card-icon-v62{width:39px;height:39px;flex:0 0 39px;border-radius:12px;display:grid;place-items:center;color:var(--yellow);background:color-mix(in srgb,var(--yellow) 10%,transparent)}.profile-card-icon-v62 svg{width:19px;height:19px}
.profile-avatar-studio-v62{display:grid;grid-template-columns:112px minmax(0,1fr);gap:20px;align-items:center;padding:18px;border:1px solid var(--line);border-radius:16px;background:rgba(5,10,15,.44)}
.profile-avatar-preview-v62{width:112px;height:112px;border-radius:26px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(145deg,var(--yellow2),color-mix(in srgb,var(--yellow) 72%,#d96b2c));color:#0a0f14;font-size:2.3rem;font-weight:900}.profile-avatar-preview-v62 img{width:100%;height:100%;object-fit:cover}
.profile-avatar-copy-v62 h3{margin:0 0 6px}.profile-avatar-copy-v62 p{margin:0;color:var(--muted);line-height:1.5;font-size:.88rem}.profile-avatar-actions-v62{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}.profile-avatar-actions-v62 .btn{display:inline-flex;align-items:center;gap:7px}
.profile-gallery-section-v62{margin-top:20px}.profile-section-title-v62{display:flex;justify-content:space-between;gap:14px;align-items:end;margin-bottom:11px}.profile-section-title-v62 h3{margin:0}.profile-section-title-v62 p{margin:3px 0 0;color:var(--muted);font-size:.82rem}.profile-section-title-v62>span{padding:5px 9px;border-radius:999px;color:var(--yellow);background:color-mix(in srgb,var(--yellow) 9%,transparent);border:1px solid color-mix(in srgb,var(--yellow) 22%,transparent);font-size:.72rem;white-space:nowrap}
.profile-avatar-gallery-v62{grid-template-columns:repeat(10,minmax(48px,1fr));max-height:250px;padding:4px;gap:9px}
.profile-divider-v62{height:1px;background:var(--line);margin:23px 0}.profile-fields-v62{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.profile-field-wide-v62{grid-column:1/-1}.profile-fields-v62 textarea{min-height:130px}
.profile-savebar-v62{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:20px;padding:15px 16px;border-radius:14px;background:rgba(255,255,255,.028);border:1px solid var(--line)}.profile-savebar-v62 div{display:grid;gap:3px}.profile-savebar-v62 span{color:var(--muted);font-size:.78rem}.profile-savebar-v62 .btn{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.profile-switch-v62{margin-bottom:14px}.profile-full-button-v62{width:100%;justify-content:center;display:inline-flex;align-items:center;gap:8px}.profile-account-summary-v62 dl{display:grid;gap:0;margin:0 0 16px}.profile-account-summary-v62 dl>div{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid var(--line)}.profile-account-summary-v62 dt{color:var(--muted)}.profile-account-summary-v62 dd{margin:0;font-weight:700}.profile-online-v62{display:inline-flex;align-items:center;gap:7px;color:#56dfa2}
#profile-account,#profile-avatar,#profile-preferences,#profile-security{scroll-margin-top:90px}

@media(max-width:1100px){.profile-workspace-v62{grid-template-columns:minmax(0,1fr) 320px}.profile-cover-inner-v62{grid-template-columns:96px minmax(0,1fr);gap:20px}.profile-cover-avatar-v62{width:96px;height:96px;border-radius:24px}.profile-cover-actions-v62{grid-column:2;flex-direction:row;min-width:0}.profile-cover-actions-v62 .btn{flex:0 1 auto}.profile-avatar-gallery-v62{grid-template-columns:repeat(8,minmax(46px,1fr))}}
@media(max-width:900px){.profile-workspace-v62{grid-template-columns:1fr}.profile-side-v62{position:static;grid-template-columns:1fr 1fr}.profile-side-v62>.profile-account-summary-v62{grid-column:1/-1}.profile-cover-v62,.profile-cover-inner-v62{min-height:220px}.profile-cover-v62>.site-hero-collage,.profile-cover-v62>.site-hero-fallback{inset:0 0 0 26%!important;width:74%!important}.profile-cover-shade-v62{background:linear-gradient(90deg,#081017 0%,rgba(8,16,23,.94) 42%,rgba(8,16,23,.42) 100%)}.profile-stats-v62{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-avatar-gallery-v62{grid-template-columns:repeat(10,minmax(44px,1fr));max-height:none}}
@media(max-width:650px){.profile-page-v62{gap:13px}.profile-cover-v62{min-height:0;border-radius:16px}.profile-cover-inner-v62{min-height:330px;padding:22px 18px 20px;grid-template-columns:1fr;align-content:end;gap:13px}.profile-cover-v62>.site-hero-collage,.profile-cover-v62>.site-hero-fallback{inset:0!important;width:100%!important;height:62%!important;opacity:.74}.profile-cover-shade-v62{background:linear-gradient(180deg,rgba(7,12,18,.12) 0%,rgba(7,12,18,.44) 34%,#081017 68%,#081017 100%)}.profile-cover-avatar-v62{width:82px;height:82px;border-radius:21px;font-size:1.9rem}.profile-cover-copy-v62 h1{font-size:2.55rem}.profile-cover-copy-v62>p{font-size:.8rem}.profile-cover-bio-v62{display:none}.profile-cover-actions-v62{grid-column:auto;display:grid;grid-template-columns:1fr 1fr;width:100%}.profile-cover-actions-v62 .btn{min-height:42px;padding-inline:10px;font-size:.79rem}.profile-stats-v62{gap:8px}.profile-stats-v62 article{padding:13px 12px;gap:10px;border-radius:14px}.profile-stats-v62 article>span{width:35px;height:35px;flex-basis:35px;border-radius:10px}.profile-stats-v62 strong{font-size:1.25rem}.profile-stats-v62 small{font-size:.68rem}.profile-subnav-v62{margin-inline:-1px;padding:5px}.profile-subnav-v62 a{padding:8px 11px;font-size:.77rem}.profile-card-v62{padding:17px;border-radius:16px}.profile-card-head-v62 h2{font-size:1.32rem}.profile-avatar-studio-v62{grid-template-columns:82px minmax(0,1fr);gap:14px;padding:14px}.profile-avatar-preview-v62{width:82px;height:82px;border-radius:20px;font-size:1.8rem}.profile-avatar-copy-v62 p{font-size:.78rem}.profile-avatar-actions-v62{grid-column:1/-1}.profile-avatar-actions-v62 .btn{flex:1 1 130px;justify-content:center;font-size:.78rem;padding-inline:9px}.profile-avatar-gallery-v62{grid-template-columns:repeat(6,minmax(42px,1fr));gap:7px;max-height:none}.profile-section-title-v62 p{display:none}.profile-fields-v62{grid-template-columns:1fr}.profile-field-wide-v62{grid-column:auto}.profile-savebar-v62{align-items:stretch;flex-direction:column}.profile-savebar-v62 .btn{width:100%;justify-content:center}.profile-side-v62{grid-template-columns:1fr}.profile-side-v62>.profile-account-summary-v62{grid-column:auto}}
@media(max-width:390px){.profile-cover-actions-v62{grid-template-columns:1fr}.profile-stats-v62{grid-template-columns:1fr 1fr}.profile-stats-v62 article{display:grid;justify-items:center;text-align:center}.profile-avatar-studio-v62{grid-template-columns:1fr}.profile-avatar-copy-v62{text-align:center}.profile-avatar-preview-v62{margin:auto}.profile-avatar-gallery-v62{grid-template-columns:repeat(5,minmax(40px,1fr))}}

/* V6.3 — Search results: six cards max and accurate poster preview */
@media (min-width: 1251px) {
  .search-results-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}

@media (min-width: 981px) and (max-width: 1250px) {
  .search-results-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.search-detail.has-content .detail-cover {
  position: relative;
  display: grid;
  place-items: center;
  height: 330px;
  padding: 18px;
  background: #0b1015;
  isolation: isolate;
}
.search-detail.has-content .detail-cover::before {
  content: "";
  position: absolute;
  inset: -18px;
  z-index: -2;
  background-image: var(--detail-poster);
  background-position: center;
  background-size: cover;
  filter: blur(22px) saturate(.8);
  opacity: .38;
  transform: scale(1.12);
}
.search-detail.has-content .detail-cover::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(180deg, rgba(7,12,17,.28), rgba(7,12,17,.82));
}
.search-detail.has-content .detail-cover .detail-poster-main {
  display: block;
  width: auto;
  max-width: 100%;
  height: 100%;
  max-height: 294px;
  object-fit: contain;
  object-position: center;
  border-radius: 12px;
  box-shadow: 0 18px 38px rgba(0,0,0,.52);
}
.search-detail.has-content .detail-poster-small {
  display: none;
}

@media (max-width: 900px) {
  .search-detail.has-content .detail-cover {
    height: 300px;
    min-height: 300px;
  }
  .search-detail.has-content .detail-cover .detail-poster-main {
    max-height: 264px;
  }
}

@media (max-width: 650px) {
  .search-detail.has-content .detail-cover {
    height: 270px;
    min-height: 270px;
    padding: 14px;
  }
  .search-detail.has-content .detail-cover .detail-poster-main {
    max-height: 242px;
  }
}

/* V6.4 — navigation mobile/tablette refondue */
:root{
  --mobile-nav-height:72px;
  --mobile-nav-safe:env(safe-area-inset-bottom,0px);
}
.mobile-nav{display:none}
@media (max-width:980px){
  .app-shell{padding-bottom:calc(var(--mobile-nav-height) + var(--mobile-nav-safe) + 18px)!important}
  .main{padding-bottom:calc(var(--mobile-nav-height) + var(--mobile-nav-safe) + 28px)!important}
  .mobile-nav{
    display:block!important;
    position:fixed;
    z-index:68;
    left:50%;
    bottom:max(12px,var(--mobile-nav-safe));
    width:min(calc(100% - 28px),620px);
    transform:translate3d(-50%,0,0);
    padding:0;
    background:transparent;
    border:0;
    pointer-events:none;
    isolation:isolate;
    transition:transform .22s ease,opacity .18s ease,visibility .18s ease;
  }
  .mobile-nav-inner{
    position:relative;
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    align-items:end;
    min-height:var(--mobile-nav-height);
    padding:7px 8px 8px;
    border:1px solid color-mix(in srgb,var(--text) 12%,transparent);
    border-radius:22px;
    background:color-mix(in srgb,var(--panel) 91%,transparent);
    box-shadow:0 16px 55px rgba(0,0,0,.48),inset 0 1px rgba(255,255,255,.035);
    -webkit-backdrop-filter:blur(22px) saturate(145%);
    backdrop-filter:blur(22px) saturate(145%);
    pointer-events:auto;
    overflow:visible;
  }
  .mobile-nav-item{
    position:relative;
    min-width:0;
    min-height:56px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:4px;
    padding:6px 3px 5px;
    border-radius:15px;
    color:color-mix(in srgb,var(--text) 63%,transparent);
    text-align:center;
    line-height:1;
    -webkit-tap-highlight-color:transparent;
    -webkit-touch-callout:none;
    touch-action:manipulation;
    user-select:none;
    transition:color .16s ease,background .16s ease,transform .12s ease;
  }
  .mobile-nav-item:active{transform:scale(.94)}
  .mobile-nav-item:focus-visible{outline:2px solid var(--yellow2);outline-offset:2px}
  .mobile-nav-item.active{
    color:var(--yellow2);
    background:color-mix(in srgb,var(--yellow) 9%,transparent);
  }
  .mobile-nav-item.active:after{
    content:"";
    position:absolute;
    left:50%;bottom:2px;
    width:18px;height:2px;
    border-radius:999px;
    background:var(--yellow2);
    transform:translateX(-50%);
    box-shadow:0 0 10px color-mix(in srgb,var(--yellow) 70%,transparent);
  }
  .mobile-nav-icon{
    width:24px;height:24px;
    display:grid;
    place-items:center;
  }
  .mobile-nav-icon .ui-icon{
    width:22px!important;height:22px!important;
    margin:0!important;
    stroke-width:1.85;
  }
  .mobile-nav-label{
    display:block;
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:10px;
    line-height:1.15;
    font-weight:650;
    letter-spacing:-.01em;
  }
  .mobile-add{
    z-index:2;
    padding-top:0;
    background:transparent!important;
    color:var(--text)!important;
  }
  .mobile-add:after{display:none!important}
  .mobile-add-button{
    width:52px;height:52px;
    display:grid;place-items:center;
    margin-top:-25px;
    margin-bottom:1px;
    border:5px solid color-mix(in srgb,var(--panel) 96%,#000 4%);
    border-radius:18px;
    color:#111;
    background:linear-gradient(145deg,var(--yellow2),var(--yellow));
    box-shadow:0 10px 28px color-mix(in srgb,var(--yellow) 32%,transparent),0 5px 16px rgba(0,0,0,.42);
    transform:rotate(0.001deg);
    transition:transform .16s ease,filter .16s ease,box-shadow .16s ease;
  }
  .mobile-add:active .mobile-add-button{transform:scale(.92)}
  .mobile-add.active .mobile-add-button{
    filter:brightness(1.08);
    box-shadow:0 0 0 3px color-mix(in srgb,var(--yellow2) 24%,transparent),0 12px 32px color-mix(in srgb,var(--yellow) 38%,transparent);
  }
  .mobile-add .mobile-nav-icon{width:27px;height:27px}
  .mobile-add .mobile-nav-icon .ui-icon{width:25px!important;height:25px!important;stroke-width:2.2}
  .mobile-add .mobile-nav-label{font-weight:750;color:color-mix(in srgb,var(--text) 86%,transparent)}
  body.mobile-keyboard-open .mobile-nav{
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translate3d(-50%,calc(100% + 36px),0);
  }
  body.mobile-menu-open .mobile-nav{
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translate3d(-50%,calc(100% + 36px),0);
  }
}
@media (max-width:650px){
  :root{--mobile-nav-height:68px}
  .app-shell{padding-bottom:calc(var(--mobile-nav-height) + var(--mobile-nav-safe) + 10px)!important}
  .main{padding-bottom:calc(var(--mobile-nav-height) + var(--mobile-nav-safe) + 20px)!important}
  .mobile-nav{
    left:0;right:0;bottom:0;
    width:100%;
    transform:none;
  }
  .mobile-nav-inner{
    min-height:calc(var(--mobile-nav-height) + var(--mobile-nav-safe));
    padding:7px 5px calc(6px + var(--mobile-nav-safe));
    border-width:1px 0 0;
    border-radius:18px 18px 0 0;
    background:color-mix(in srgb,var(--panel) 94%,transparent);
    box-shadow:0 -12px 36px rgba(0,0,0,.38),inset 0 1px rgba(255,255,255,.035);
  }
  .mobile-nav-item{min-height:54px;padding-inline:1px}
  .mobile-nav-label{font-size:9px}
  .mobile-add-button{width:50px;height:50px;margin-top:-23px;border-radius:17px}
  body.mobile-keyboard-open .mobile-nav,
  body.mobile-menu-open .mobile-nav{transform:translate3d(0,calc(100% + 12px),0)}
}
@media (max-width:380px){
  .mobile-nav-label{font-size:8.5px}
  .mobile-nav-icon .ui-icon{width:20px!important;height:20px!important}
  .mobile-add-button{width:48px;height:48px}
}
@media (orientation:landscape) and (max-height:520px) and (max-width:980px){
  :root{--mobile-nav-height:58px}
  .mobile-nav{bottom:0;width:min(calc(100% - 20px),620px)}
  .mobile-nav-inner{min-height:58px;padding:4px 8px calc(3px + var(--mobile-nav-safe));border-radius:17px 17px 0 0}
  .mobile-nav-item{min-height:48px;gap:1px}
  .mobile-nav-label{font-size:8px}
  .mobile-add-button{width:44px;height:44px;margin-top:-18px;border-width:4px;border-radius:15px}
}
@media (prefers-reduced-motion:reduce){
  .mobile-nav,.mobile-nav-item,.mobile-add-button{transition:none!important}
}

/* V6.5 — correctifs Mon espace + galerie d’avatars repliable */
@media (max-width:980px){
  /* La page profil ne doit jamais créer un contexte qui recouvre la navigation fixe. */
  .profile-page-v62,
  .profile-workspace-v62,
  .profile-main-v62,
  .profile-side-v62{
    position:relative;
    z-index:auto;
    overflow:visible!important;
    transform:none!important;
    contain:none!important;
  }
  .profile-page-v62{
    padding-bottom:calc(var(--mobile-nav-height) + var(--mobile-nav-safe) + 34px);
    scroll-padding-bottom:calc(var(--mobile-nav-height) + var(--mobile-nav-safe) + 34px);
  }
  /* Le profil passe en une colonne dès que le dock mobile apparaît. */
  .profile-workspace-v62{grid-template-columns:1fr!important}
  .profile-side-v62{
    position:static!important;
    top:auto!important;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .profile-side-v62>.profile-account-summary-v62{grid-column:1/-1}
  .mobile-nav{z-index:1000!important}

  .profile-avatar-collapse-v65{
    margin:0;
    border:1px solid var(--border);
    border-radius:16px;
    background:color-mix(in srgb,var(--panel2) 72%,transparent);
    overflow:hidden;
  }
  .profile-avatar-collapse-v65>summary{
    min-height:62px;
    padding:14px 15px;
    cursor:pointer;
    list-style:none;
    user-select:none;
    -webkit-tap-highlight-color:transparent;
  }
  .profile-avatar-collapse-v65>summary::-webkit-details-marker{display:none}
  .profile-avatar-collapse-v65 .profile-section-title-v62{margin:0;display:flex;align-items:center;gap:10px}
  .profile-avatar-collapse-v65 .profile-section-title-v62>div{min-width:0;flex:1}
  .profile-gallery-count-v65{flex:0 0 auto}
  .profile-gallery-toggle-v65{
    flex:0 0 34px;
    width:34px;height:34px;
    display:grid;place-items:center;
    border-radius:10px;
    color:var(--yellow2);
    background:color-mix(in srgb,var(--yellow) 10%,transparent);
    transition:transform .18s ease;
  }
  .profile-gallery-toggle-v65 .ui-icon{width:18px!important;height:18px!important;margin:0!important}
  .profile-avatar-collapse-v65[open] .profile-gallery-toggle-v65{transform:rotate(180deg)}
  .profile-gallery-body-v65{padding:0 14px 14px}
  .profile-avatar-collapse-v65:not([open]) .profile-gallery-body-v65{display:none}
}
@media (max-width:650px){
  .profile-page-v62{padding-bottom:calc(var(--mobile-nav-height) + var(--mobile-nav-safe) + 28px)}
  .profile-side-v62{grid-template-columns:1fr}
  .profile-side-v62>.profile-account-summary-v62{grid-column:auto}
  .profile-avatar-collapse-v65>summary{min-height:58px;padding:12px}
  .profile-gallery-body-v65{padding:0 10px 12px}
  .profile-gallery-count-v65{font-size:.7rem}
}

/* V6.6 — adaptation au mode application installé */
html.is-standalone,html.is-standalone body{min-height:100%;min-height:100dvh}
html.is-standalone .mobile-top{padding-top:max(0px,env(safe-area-inset-top))}
html.is-standalone body{overscroll-behavior-y:none}
@media(max-width:980px){
  html.is-standalone .mobile-top{min-height:calc(64px + env(safe-area-inset-top));height:auto}
  html.is-standalone .sidebar{padding-top:calc(18px + env(safe-area-inset-top))}
}

/* V6.7 — correctifs PWA iOS/Android : safe-area et défilement */
html.is-standalone,
html.is-standalone body{
  width:100%;
  min-height:100%;
  min-height:100dvh;
  height:auto!important;
  max-height:none!important;
  overflow-x:hidden;
  overflow-y:auto!important;
  position:static!important;
  touch-action:pan-y pinch-zoom;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-y:auto;
}
html.is-standalone .app-shell,
html.is-standalone .main,
html.is-standalone .page-stage{
  height:auto!important;
  min-height:0;
  max-height:none!important;
  overflow:visible!important;
  touch-action:pan-y;
}
@media (max-width:980px){
  html.is-standalone{
    --standalone-top-safe:env(safe-area-inset-top,0px);
  }
  html.is-standalone .mobile-top{
    top:0;
    height:calc(64px + var(--standalone-top-safe))!important;
    min-height:calc(64px + var(--standalone-top-safe))!important;
    padding-top:var(--standalone-top-safe)!important;
    padding-bottom:0!important;
  }
  html.is-standalone .app-shell,
  html.is-standalone .app-shell.nav-compact,
  html.is-standalone .app-shell.sidebar-collapsed{
    padding-top:calc(64px + var(--standalone-top-safe))!important;
  }
  html.is-standalone .page-stage{
    padding-top:var(--v4-page-top,18px)!important;
  }
  html.is-standalone body:not(.mobile-menu-open){
    overflow-y:auto!important;
    touch-action:pan-y pinch-zoom!important;
  }
}


/* V6.8 — Branding configurable et statistiques Plex */
.brand-mode-text{gap:0}.brand-mode-text .brand-copy{font-size:1.08rem;font-weight:800;letter-spacing:.01em}
.brand-logo-compact{width:38px;height:38px;object-fit:contain;border-radius:9px;flex:0 0 auto}
.brand-mode-full_logo{padding-block:2px;max-width:100%}.brand-logo-full{display:block;width:auto;max-width:190px;height:44px;object-fit:contain;object-position:left center;border-radius:0}
.mobile-top .brand-logo-full{height:42px;max-width:min(230px,66vw)}
.sidebar .brand-logo-full{height:48px;max-width:calc(var(--sidebar-width) - 48px)}
.auth-brand-link{display:inline-flex;max-width:100%;margin-bottom:18px}.auth-brand .brand-logo-full{height:54px;max-width:260px}
.branding-upload input{padding:9px}.branding-preview{display:flex;align-items:center;gap:18px;min-height:82px;padding:16px;border:1px dashed color-mix(in srgb,var(--text) 17%,transparent);border-radius:calc(var(--radius) * .75);background:color-mix(in srgb,var(--bg) 84%,transparent)}
.branding-preview>span:first-child{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.1em}.settings-brand-preview{min-width:0}.settings-brand-preview .brand-logo-full{max-width:260px}
.plex-library-track i{min-width:0}
@media(max-width:980px){.mobile-top>a{min-width:0;max-width:calc(100% - 62px)}.mobile-top .mobile-brand{min-width:0;max-width:100%}.mobile-top .brand-mode-text .brand-copy,.mobile-top .brand-mode-icon_text .brand-copy{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar .brand-mode-full_logo{justify-content:flex-start}}
@media(max-width:430px){.mobile-top .brand-logo-full{max-width:62vw;height:38px}.mobile-top .brand-logo-compact{width:34px;height:34px}.branding-preview{align-items:flex-start;flex-direction:column}.settings-brand-preview .brand-logo-full{max-width:100%}}

/* V6.9 — request Plex status and submit zone */
.request-submit-zone{display:grid;gap:18px;margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}
.request-submit-zone .plex-check{margin:0;position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:15px;min-height:82px;padding:16px 18px;border-radius:18px;overflow:hidden;background:linear-gradient(135deg,rgba(15,22,28,.98),rgba(10,15,20,.96));box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}
.request-submit-zone .plex-check:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--line);opacity:.9}
.request-submit-zone .plex-check-icon{width:46px;height:46px;margin:0;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.055);font-weight:800;line-height:1}
.plex-check-copy{min-width:0}.plex-check-kicker{display:block;margin-bottom:3px;color:var(--muted);font-size:.69rem;font-weight:800;letter-spacing:.105em;text-transform:uppercase}
.request-submit-zone .plex-check strong{font-size:1rem;line-height:1.25}.request-submit-zone .plex-check p{margin-top:5px;line-height:1.45}
.plex-check-state{justify-self:end;white-space:nowrap;padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.04);color:var(--muted);font-size:.72rem;font-weight:750}
.request-submit-zone .plex-check.checking:before{background:var(--gold)}.request-submit-zone .plex-check.checking{border-color:rgba(247,181,0,.25)}
.plex-check-spinner{width:19px;height:19px;border:2px solid rgba(247,181,0,.25);border-top-color:var(--gold);border-radius:50%;animation:plexSpin .75s linear infinite}@keyframes plexSpin{to{transform:rotate(360deg)}}
.request-submit-zone .plex-check.missing:before{background:var(--green)}.request-submit-zone .plex-check.missing .plex-check-state{color:var(--green);border-color:rgba(53,213,139,.24);background:rgba(53,213,139,.08)}
.request-submit-zone .plex-check.available:before{background:var(--red)}.request-submit-zone .plex-check.available .plex-check-state{color:var(--red);border-color:rgba(255,107,107,.24);background:rgba(255,107,107,.08)}
.request-actions{margin:0;padding:0;display:flex;justify-content:flex-end;align-items:center;gap:10px}.request-actions .btn{min-height:44px}.request-actions .btn-primary{display:inline-flex;align-items:center;gap:8px}
@media(max-width:760px){.request-submit-zone{gap:14px;margin-top:18px;padding-top:18px}.request-submit-zone .plex-check{grid-template-columns:42px minmax(0,1fr);padding:15px;border-radius:16px}.request-submit-zone .plex-check-icon{width:40px;height:40px}.plex-check-state{grid-column:2;justify-self:start;margin-top:2px}.request-actions{display:grid;grid-template-columns:1fr 1.35fr;gap:10px}.request-actions .btn{width:100%;justify-content:center}}
@media(max-width:420px){.request-actions{grid-template-columns:1fr}.request-actions .btn-primary{order:-1}.plex-check-kicker{font-size:.63rem}}


/* V6.10 — identité visuelle à trois modes */
.brand{display:inline-flex;align-items:center;gap:10px;max-width:100%;min-width:0;text-decoration:none}
.brand-logo{display:block;object-fit:contain;object-position:left center}
.brand-mode-full_logo{width:100%;justify-content:flex-start}
.sidebar .brand-mode-full_logo{padding:4px 0}
.sidebar .brand-logo-full{width:min(100%,210px);height:auto;max-height:62px}
.mobile-top .brand-logo-full{width:auto;height:auto;max-width:min(260px,72vw);max-height:54px}
.auth-brand .brand-logo-full{width:auto;height:auto;max-width:min(330px,100%);max-height:86px}
.brand-logo-compact{width:44px;height:36px;border-radius:0;object-fit:contain;flex:0 0 44px}
.sidebar .brand-logo-compact{width:40px;height:34px;flex-basis:40px}
.mobile-top .brand-logo-compact{width:46px;height:38px;flex-basis:46px}
.brand-mode-icon_text .brand-copy{font-weight:850;letter-spacing:.015em}
.branding-preview-stack{flex-wrap:wrap}.branding-preview-stack>small{width:100%;color:var(--muted)}
@media(max-width:430px){.mobile-top .brand-logo-full{max-width:68vw;max-height:46px}.mobile-top .brand-logo-compact{width:40px;height:34px;flex-basis:40px}.mobile-top .brand-mode-icon_text{gap:8px}.mobile-top .brand-copy{font-size:1rem}}

/* V6.10.1 — branding plus compact */
.sidebar .brand-logo-full{
  width:min(100%,180px);
  max-height:52px;
}
.mobile-top .brand-logo-full{
  max-width:min(220px,64vw);
  max-height:46px;
}
.auth-brand .brand-logo-full{
  max-width:min(290px,100%);
  max-height:74px;
}
.brand-logo-compact{
  width:38px;
  height:32px;
  flex-basis:38px;
}
.sidebar .brand-logo-compact{
  width:36px;
  height:30px;
  flex-basis:36px;
}
.mobile-top .brand-logo-compact{
  width:40px;
  height:33px;
  flex-basis:40px;
}
@media(max-width:430px){
  .mobile-top .brand-logo-full{
    max-width:60vw;
    max-height:40px;
  }
  .mobile-top .brand-logo-compact{
    width:36px;
    height:30px;
    flex-basis:36px;
  }
}

/* V6.11 — thèmes prédéfinis et thème OHD Neon */
.theme-preset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.theme-preset-card{position:relative;display:grid;grid-template-columns:66px minmax(0,1fr) 24px;align-items:center;gap:13px;min-height:104px;padding:14px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--panel) 92%,var(--bg));cursor:pointer;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.theme-preset-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--yellow) 34%,var(--line))}.theme-preset-card.selected,.theme-preset-card:has(input:checked){border-color:var(--yellow);box-shadow:0 0 0 1px color-mix(in srgb,var(--yellow) 35%,transparent),0 14px 34px rgba(0,0,0,.24)}.theme-preset-card input{position:absolute;opacity:0;pointer-events:none}.theme-preset-swatch{position:relative;display:grid;place-items:center;width:62px;height:62px;border-radius:15px;overflow:hidden;background:linear-gradient(145deg,var(--preset-panel,#171d24),var(--preset-bg,#080d12));border:1px solid rgba(255,255,255,.08)}.theme-preset-swatch:after{content:"";position:absolute;inset:auto -10px -15px auto;width:58px;height:58px;border-radius:50%;background:radial-gradient(circle,var(--preset-a,var(--yellow)),transparent 68%);opacity:.75}.theme-preset-swatch i{position:absolute;width:28px;height:7px;border-radius:999px;background:var(--preset-a,var(--yellow));box-shadow:0 0 18px color-mix(in srgb,var(--preset-a,var(--yellow)) 65%,transparent)}.theme-preset-swatch i:nth-child(1){transform:translateY(-14px);width:38px}.theme-preset-swatch i:nth-child(2){background:var(--preset-b,var(--yellow2));width:44px}.theme-preset-swatch i:nth-child(3){transform:translateY(14px);width:23px}.theme-preset-swatch b{position:relative;z-index:1;font-size:1.05rem;letter-spacing:-.04em;background:linear-gradient(135deg,#ff12aa,#7b2cff);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 22px rgba(242,11,157,.35)}.theme-preset-swatch .ui-icon{position:relative;z-index:1;width:26px;height:26px;color:var(--muted)}.theme-preset-copy{display:grid;gap:4px}.theme-preset-copy strong{font-size:.94rem}.theme-preset-copy small{color:var(--muted);line-height:1.4}.theme-preset-check{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:transparent;color:transparent;font-weight:900}.theme-preset-card.selected .theme-preset-check,.theme-preset-card:has(input:checked) .theme-preset-check{background:var(--yellow);color:#08080b}.theme-logo-note{display:flex;align-items:flex-start;gap:13px;margin:0 0 18px;padding:15px;border:1px solid color-mix(in srgb,#f20b9d 32%,var(--line));border-radius:15px;background:linear-gradient(110deg,rgba(242,11,157,.09),rgba(123,44,255,.06),transparent)}.theme-logo-note>span{font-size:1.4rem}.theme-logo-note strong{display:block;margin-bottom:3px}.theme-logo-note p{margin:0;color:var(--muted)}.custom-theme-colors{padding:17px;border:1px solid var(--line);border-radius:15px;background:color-mix(in srgb,var(--bg) 66%,transparent);opacity:.62;transition:opacity .2s}.custom-theme-colors h3{margin:0 0 4px}.custom-theme-colors>p{margin:0 0 14px;color:var(--muted)}.settings-section:has(input[name="theme_preset"][value="custom"]:checked) .custom-theme-colors{opacity:1}.preview-brand .brand-logo-full{max-width:112px;max-height:34px}.theme-preview{transition:background .2s,border-color .2s}.theme-preview.preview-ohd-neon{background:#07070d;border-color:rgba(242,11,157,.28)}.theme-preview.preview-ohd-neon .preview-sidebar{background:linear-gradient(180deg,#11111b,#090910)}.theme-preview.preview-ohd-neon .preview-main{background:radial-gradient(circle at 86% 15%,rgba(242,11,157,.16),transparent 36%),radial-gradient(circle at 55% 100%,rgba(123,44,255,.16),transparent 44%)}.theme-preview.preview-ohd-neon button{background:linear-gradient(135deg,#f20b9d,#7b2cff);color:#fff;box-shadow:0 10px 28px rgba(242,11,157,.24)}

/* OHD Neon : palette inspirée du logo fourni */
body.theme-ohd-neon{--line:rgba(255,255,255,.09);--muted:#aaa7b8;--panel2:#171522;--green:#25dba4;--red:#ff5b79;--shadow-card:0 18px 48px rgba(0,0,0,.38),0 0 35px rgba(123,44,255,.035);background:radial-gradient(circle at 82% -8%,rgba(242,11,157,.085),transparent 28%),radial-gradient(circle at 20% 105%,rgba(123,44,255,.08),transparent 34%),var(--bg)}body.theme-ohd-neon .sidebar{background:linear-gradient(180deg,#0e0e17 0%,#090910 100%);border-right-color:rgba(242,11,157,.12)}body.theme-ohd-neon .sidebar nav a.active,body.theme-ohd-neon .mobile-nav a.active{background:linear-gradient(105deg,rgba(242,11,157,.16),rgba(123,44,255,.10));border-color:rgba(242,11,157,.5);box-shadow:inset 3px 0 #f20b9d,0 0 26px rgba(242,11,157,.08)}body.theme-ohd-neon .btn-primary,body.theme-ohd-neon button.btn-primary,body.theme-ohd-neon .mobile-nav .mobile-nav-primary>span:first-child{background:linear-gradient(135deg,#ff149f 0%,#d800c9 48%,#772cff 100%);color:#fff;border-color:rgba(255,255,255,.14);box-shadow:0 12px 32px rgba(242,11,157,.24),0 0 22px rgba(123,44,255,.12)}body.theme-ohd-neon .btn-primary:hover{filter:brightness(1.08);box-shadow:0 15px 38px rgba(242,11,157,.32),0 0 28px rgba(123,44,255,.18)}body.theme-ohd-neon .site-hero,body.theme-ohd-neon .page-hero,body.theme-ohd-neon .panel,body.theme-ohd-neon .side-card{border-color:rgba(242,11,157,.12)}body.theme-ohd-neon .site-hero:before,body.theme-ohd-neon .search-hero:before{background:linear-gradient(90deg,rgba(7,7,13,.995),rgba(7,7,13,.93) 45%,rgba(47,6,45,.46) 78%,rgba(242,11,157,.12))}body.theme-ohd-neon .eyebrow,body.theme-ohd-neon .section-kicker,body.theme-ohd-neon .settings-heading>span{color:#ff42b6}body.theme-ohd-neon .status.accepted,body.theme-ohd-neon .status.completed{color:#43e8b1}body.theme-ohd-neon input:focus,body.theme-ohd-neon textarea:focus,body.theme-ohd-neon select:focus{border-color:#f20b9d;box-shadow:0 0 0 3px rgba(242,11,157,.12)}body.theme-ohd-neon .brand-logo-full{filter:drop-shadow(0 0 12px rgba(242,11,157,.12))}body.theme-ohd-neon .stat-icon,body.theme-ohd-neon .panel-icon{background:linear-gradient(145deg,rgba(242,11,157,.14),rgba(123,44,255,.12));color:#ff3db1}body.theme-ohd-neon .plex-library-bar>i,body.theme-ohd-neon .progress-bar>i{background:linear-gradient(90deg,#f20b9d,#7b2cff);box-shadow:0 0 14px rgba(242,11,157,.22)}body.theme-ohd-neon .mobile-nav{border-color:rgba(242,11,157,.14);background:color-mix(in srgb,#0d0d16 94%,transparent)}

@media(max-width:1050px){.theme-preset-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.theme-preset-grid{grid-template-columns:1fr}.theme-preset-card{min-height:88px;grid-template-columns:56px minmax(0,1fr) 22px}.theme-preset-swatch{width:52px;height:52px}.theme-logo-note{padding:13px}.custom-theme-colors{padding:13px}}


/* === Plex Ask V7 — premium system === */
:root{--v7-glass-alpha:calc(var(--glass-strength,58%)/100);--v7-ease:cubic-bezier(.22,1,.36,1)}
.mobile-nav-item.mobile-add.active{background:transparent!important;border-color:transparent!important;box-shadow:none!important;color:inherit!important}
.mobile-nav-item.mobile-add.active:after{display:none!important}
.mobile-add.is-current{background:transparent!important;border-color:transparent!important;box-shadow:none!important}
.mobile-add.is-current:after{display:none!important}
.mobile-add.is-current .mobile-add-button{box-shadow:0 0 0 5px color-mix(in srgb,var(--yellow) 14%,transparent),0 14px 38px color-mix(in srgb,var(--yellow2) 38%,transparent)!important}
.mobile-add.is-current .mobile-nav-label{color:var(--yellow2)!important}

.cards-glass .panel,.cards-glass .side-card,.cards-glass .stat-card,.cards-glass .search-command,.cards-glass .search-detail,.cards-glass .request-card{
  background:linear-gradient(145deg,color-mix(in srgb,var(--panel) calc(82% + var(--glass-strength,58%)*.12),transparent),color-mix(in srgb,var(--panel) 90%,#000 10%));
  backdrop-filter:blur(calc(8px + var(--glass-strength,58%)*.12)) saturate(1.12);
  -webkit-backdrop-filter:blur(calc(8px + var(--glass-strength,58%)*.12)) saturate(1.12)
}
.site-hero-collage{opacity:var(--hero-poster-opacity,.52)!important}
.motion-none *, .motion-none *:before,.motion-none *:after{animation:none!important;transition-duration:0s!important;scroll-behavior:auto!important}
.motion-subtle .site-hero-collage img,.motion-subtle .btn,.motion-subtle .stat-card{animation:none!important;transition-duration:.12s!important}
.motion-balanced .stat-card:hover,.motion-balanced .admin-link-card:hover,.motion-balanced .request-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--yellow) 35%,var(--line));box-shadow:0 18px 45px color-mix(in srgb,var(--yellow) 9%,#000 40%)}
.motion-balanced .btn-primary:hover{filter:brightness(1.08) saturate(1.07);box-shadow:0 13px 35px color-mix(in srgb,var(--yellow) 34%,transparent)}

.home-dashboard{display:flex;flex-direction:column}
.home-module-hero{order:1}.home-module-stats{order:2}.home-module-plex{order:3}.home-module-activity{order:4}
.home-layout-activity-first .home-module-activity{order:3}.home-layout-activity-first .home-module-plex{order:4}
.home-layout-compact .home-module-stats{order:2}.home-layout-compact .home-module-activity{order:3}.home-layout-compact .home-module-plex{order:4}
.home-layout-compact .site-hero{min-height:280px}.home-layout-compact .plex-insights{padding:20px}.home-layout-compact .plex-libraries{display:none}.home-layout-compact .stat-card{min-height:92px}

.v7-feature-strip{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.v7-feature-strip span{display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid color-mix(in srgb,var(--yellow) 18%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--yellow) 5%,var(--bg));font-size:.78rem;color:var(--muted)}
.v7-feature-strip .ui-icon{width:16px;height:16px;color:var(--yellow2)}

/* V7 polish: consistent interactive surfaces */
:is(.btn,.sidebar nav a,.mobile-nav-item,.stat-card,.admin-link-card,.request-card,.theme-preset-card){-webkit-tap-highlight-color:transparent}
:is(input,select,textarea,.btn):focus-visible{outline:2px solid color-mix(in srgb,var(--yellow2) 85%,#fff 15%);outline-offset:2px}
@media (hover:hover){.sidebar nav a:hover{background:color-mix(in srgb,var(--yellow) 6%,var(--panel));color:var(--text)}}
@media (max-width:980px){
  .home-layout-compact .site-hero{min-height:auto}
  .v7-feature-strip{display:grid;grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.motion-balanced *, .motion-balanced *:before,.motion-balanced *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}

/* V7.0.1 — HERO poster visibility fix */
.site-hero-collage{display:block!important;visibility:visible!important;z-index:0!important}
.site-hero-poster-wall{visibility:visible!important}
.site-hero-poster-tile{display:block!important;background-repeat:no-repeat}
.site-hero-copy,.site-hero>.admin-hero-actions,.site-hero>.requests-summary,.site-hero>.profile-cover-content{position:relative;z-index:2}

/* V7.0.2 — focus rings and mobile navigation polish */
/* Keep a clean single border on form fields while typing. */
input:focus,
select:focus,
textarea:focus,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: none !important;
  outline-offset: 0 !important;
  box-shadow: none !important;
}

/* Search fields use their parent container as the only focus indicator. */
.search-command-input input:focus,
.search-command-input input:focus-visible,
.smart-search-box input:focus,
.smart-search-box input:focus-visible,
.input-with-icon input:focus,
.input-with-icon input:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}

/* Preserve a subtle, single border instead of a double neon ring. */
.search-command-input:focus-within,
.smart-search-box:focus-within,
.input-with-icon:focus-within {
  box-shadow: none !important;
  border-color: var(--yellow2) !important;
}

@media (max-width: 980px) {
  /* Active rectangular tabs keep their fill, but no left accent stripe. */
  body.theme-ohd-neon .mobile-nav .mobile-nav-item.active:not(.mobile-add),
  .mobile-nav .mobile-nav-item.active:not(.mobile-add) {
    box-shadow: none !important;
    border-left-color: transparent !important;
  }

  /* The bottom indicator remains the only active marker. */
  .mobile-nav-item.active:not(.mobile-add)::before {
    display: none !important;
  }
}

/* V7.0.3 — topbar pleine largeur, sans modifier l'alignement interne */
@media (min-width:981px){
  .topbar{
    width:calc(100% + (var(--layout-gutter) * 2))!important;
    max-width:none!important;
    margin-left:calc(var(--layout-gutter) * -1)!important;
    margin-right:calc(var(--layout-gutter) * -1)!important;
    padding-left:var(--layout-gutter)!important;
    padding-right:var(--layout-gutter)!important;
  }
}

/* V7.0.4 — suppression du fin liseré coloré sur le bord droit des boutons principaux */
.btn-primary,
button.btn-primary,
input[type="submit"].btn-primary,
input[type="button"].btn-primary,
.search-submit,
.auth-submit {
  border-color: transparent !important;
  background-origin: border-box;
  background-clip: border-box;
}

/* V7.0.5 — suppression réelle du liseré droit sur les boutons colorés */
.btn-primary,
button.btn-primary,
input[type="submit"].btn-primary,
input[type="button"].btn-primary,
.search-submit,
.auth-submit {
  -webkit-appearance: none !important;
  appearance: none !important;
  border: 0 !important;
  outline: 0 !important;
  background-clip: padding-box !important;
  background-repeat: no-repeat !important;
  overflow: hidden;
  isolation: isolate;
}

.btn-primary:focus,
.btn-primary:focus-visible,
button.btn-primary:focus,
button.btn-primary:focus-visible,
.search-submit:focus,
.search-submit:focus-visible,
.auth-submit:focus,
.auth-submit:focus-visible {
  outline: 0 !important;
  border: 0 !important;
}

/* Empêche également tout décor hérité de créer une ligne sur le bord droit. */
.btn-primary::before,
.btn-primary::after,
button.btn-primary::before,
button.btn-primary::after,
.search-submit::before,
.search-submit::after,
.auth-submit::before,
.auth-submit::after {
  border: 0 !important;
  box-shadow: none !important;
}


/* V7.1.0 — navigation latérale, statut Plex et liste blanche d'inscription */
.sidebar nav{scrollbar-width:none!important}
.sidebar nav::-webkit-scrollbar{width:0!important;height:0!important;display:none!important}
.sidebar nav a{max-width:100%}
.server-card p{display:flex;align-items:center;gap:7px;margin:8px 0 13px;font-weight:700}
.server-card.is-online p{color:var(--green)}
.server-card.is-online i{background:var(--green);box-shadow:0 0 10px color-mix(in srgb,var(--green) 48%,transparent)}
.server-card.is-offline p{color:var(--red)}
.server-card.is-offline i{background:var(--red);box-shadow:0 0 10px color-mix(in srgb,var(--red) 42%,transparent)}
.plex-access-panel{display:grid;gap:20px;margin-top:22px}
.plex-access-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.plex-access-kpis>div{padding:15px;border:1px solid var(--line);border-radius:calc(var(--radius)*.75);background:color-mix(in srgb,var(--panel) 92%,#000);text-align:center}
.plex-access-kpis strong{display:block;font-size:1.55rem}.plex-access-kpis small{color:var(--muted)}
.plex-access-import{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px;padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--bg) 62%,var(--panel))}
.plex-access-import label{margin:0!important}.plex-access-import textarea{min-height:128px}
.plex-access-list{display:grid;gap:8px}
.plex-access-row{display:grid;grid-template-columns:44px minmax(180px,1fr) minmax(180px,.8fr) auto;gap:13px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel) 94%,#000)}
.plex-access-row.is-disabled{opacity:.62}.plex-access-avatar{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,color-mix(in srgb,var(--yellow) 78%,#fff),var(--yellow));color:#111;font-weight:900}
.plex-access-identity{display:grid;min-width:0}.plex-access-identity strong,.plex-access-identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plex-access-identity small{color:var(--muted)}
.plex-access-state{justify-self:start}.plex-access-actions{display:flex;gap:7px;justify-content:flex-end}.plex-access-actions form{margin:0!important}.btn-sm{min-height:36px;padding:7px 11px;font-size:.8rem}
@media(max-width:860px){.plex-access-kpis{grid-template-columns:1fr 1fr}.plex-access-import{grid-template-columns:1fr}.plex-access-import .btn{width:100%}.plex-access-row{grid-template-columns:42px minmax(0,1fr);}.plex-access-state,.plex-access-actions{grid-column:2}.plex-access-actions{justify-content:flex-start;flex-wrap:wrap}}
@media(max-width:480px){.plex-access-kpis{gap:7px}.plex-access-row{padding:11px}.plex-access-actions .btn{padding-inline:9px}}


/* V7.1.1 — Auth showcase poster walls */
.auth-showcase{position:relative;overflow:hidden;isolation:isolate}
.auth-showcase>.site-hero-collage,
.auth-showcase>.site-hero-fallback{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;left:0!important;z-index:0!important;opacity:var(--hero-poster-opacity,.52)!important}
.auth-showcase>.site-hero-collage .site-hero-poster-wall{inset:-7% -6%;grid-template-columns:repeat(4,minmax(90px,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:10px;transform:perspective(1100px) rotateY(-5deg) scale(1.07);opacity:.72;filter:saturate(.92) contrast(1.08)}
.auth-showcase>.site-hero-collage .site-hero-collage-shade{background:linear-gradient(90deg,rgba(7,12,17,.98) 0%,rgba(7,12,17,.92) 34%,rgba(7,12,17,.62) 68%,rgba(7,12,17,.42) 100%),linear-gradient(0deg,rgba(7,11,15,.55),rgba(7,11,15,.14))}
.auth-showcase>.site-hero-collage .site-hero-collage-glow{right:-140px;width:560px;height:560px;opacity:.85}
.auth-showcase>:not(.site-hero-collage):not(.site-hero-fallback){position:relative;z-index:2}
@media(max-width:900px){.auth-showcase>.site-hero-collage .site-hero-poster-wall{grid-template-columns:repeat(4,minmax(72px,1fr));gap:7px}.auth-showcase>.site-hero-collage .site-hero-collage-shade{background:linear-gradient(90deg,rgba(7,12,17,.96),rgba(7,12,17,.70)),linear-gradient(0deg,rgba(7,11,15,.52),rgba(7,11,15,.18))}}

/* V7.1.4 — restauration complète de la bordure des liens actifs du menu latéral */
.sidebar nav a.active,
body.theme-ohd-neon .sidebar nav a.active {
  border-style: solid !important;
  border-width: 1px !important;
  border-color: color-mix(in srgb, var(--yellow) 50%, transparent) !important;
  border-radius: calc(var(--radius) * .72) !important;
  padding-right: 12px !important;
  background-clip: padding-box !important;
}

/* Neutralise la couleur jaune/orange imposée par l'autocomplétion des navigateurs. */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  -webkit-text-fill-color: var(--text) !important;
  caret-color: var(--text) !important;
  -webkit-box-shadow: 0 0 0 1000px color-mix(in srgb, var(--panel) 92%, var(--bg)) inset !important;
  box-shadow: 0 0 0 1000px color-mix(in srgb, var(--panel) 92%, var(--bg)) inset !important;
  border-color: var(--line) !important;
  transition: background-color 99999s ease-out 0s !important;
}
input:autofill,
textarea:autofill,
select:autofill {
  color: var(--text) !important;
  background: color-mix(in srgb, var(--panel) 92%, var(--bg)) !important;
  box-shadow: 0 0 0 1000px color-mix(in srgb, var(--panel) 92%, var(--bg)) inset !important;
}
input:-webkit-autofill:focus,
textarea:-webkit-autofill:focus,
select:-webkit-autofill:focus {
  border-color: var(--yellow) !important;
  box-shadow: 0 0 0 1000px color-mix(in srgb, var(--panel) 92%, var(--bg)) inset,
              0 0 0 2px color-mix(in srgb, var(--yellow) 18%, transparent) !important;
}

/* V7.1.5 — la bordure droite du lien actif ne doit plus être rognée.
   La translation de 3px déplaçait le bord droit hors du conteneur nav,
   dont overflow-x est masqué. */
.sidebar nav a.active,
.sidebar nav a.active:hover,
body.theme-ohd-neon .sidebar nav a.active,
body.theme-ohd-neon .sidebar nav a.active:hover {
  transform: none !important;
  width: 100% !important;
  max-width: 100% !important;
  border-right-width: 1px !important;
  border-right-style: solid !important;
  border-right-color: color-mix(in srgb, var(--yellow) 50%, transparent) !important;
}


/* ===== Module Chat V8.1 ===== */
.nav-unread{margin-left:auto;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:linear-gradient(135deg,var(--yellow),var(--yellow2));color:#fff;font-size:11px;font-style:normal;display:grid;place-items:center;font-weight:800}.mobile-top-actions{display:flex;align-items:center;gap:8px}.mobile-chat-shortcut{position:relative;width:44px;height:44px;border:1px solid var(--line);border-radius:14px;display:grid;place-items:center;color:var(--muted);background:rgba(255,255,255,.025)}.mobile-chat-shortcut svg{width:21px}.mobile-chat-shortcut i{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--yellow);color:#fff;font-size:10px;font-style:normal;display:grid;place-items:center;font-weight:800}
.chat-app{min-height:calc(100vh - var(--topbar-height,70px) - 44px);display:grid;grid-template-columns:320px minmax(0,1fr);border:1px solid color-mix(in srgb,var(--yellow) 32%,var(--line));border-radius:var(--radius);overflow:hidden;background:color-mix(in srgb,var(--panel) 94%,transparent);box-shadow:0 30px 80px rgba(0,0,0,.28)}.chat-sidebar{display:flex;flex-direction:column;min-height:0;border-right:1px solid color-mix(in srgb,var(--yellow) 20%,var(--line));background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 92%,var(--yellow) 8%),var(--panel))}.chat-sidebar-head{padding:20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.chat-sidebar-head h1{font-size:22px;margin:3px 0 0}.icon-button{width:40px;height:40px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025);color:var(--muted);display:grid;place-items:center}.icon-button svg{width:19px}.chat-section-title{padding:16px 20px 8px;text-transform:uppercase;letter-spacing:.12em;font-size:11px;color:var(--muted);font-weight:800}.chat-channels{padding:0 12px 12px}.chat-channel,.chat-support-create button{width:100%;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px;border:0;border-radius:13px;color:var(--text);background:transparent;text-align:left}.chat-channel:hover,.chat-channel.active,.chat-support-create button:hover{background:color-mix(in srgb,var(--yellow) 13%,transparent)}.chat-channel.active{box-shadow:inset 3px 0 var(--yellow)}.chat-channel-icon{width:36px;height:36px;border-radius:12px;background:linear-gradient(135deg,var(--yellow),var(--yellow2));display:grid;place-items:center;color:#fff}.chat-channel-icon svg{width:18px}.chat-channel strong,.chat-channel small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-channel small{font-size:11px;color:var(--muted);margin-top:2px}.chat-channel em{font-style:normal;background:var(--yellow);color:#fff;border-radius:999px;padding:3px 7px;font-size:10px;font-weight:800}.chat-support-create{margin:0}.chat-private-head{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-weight:800}.chat-private-head button{border:0;background:transparent;color:var(--yellow)}.chat-private-head svg{width:18px}.chat-conversations{overflow:auto;flex:1;padding:8px}.chat-conversation{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px;border-radius:11px;color:var(--text)}.chat-conversation:hover,.chat-conversation.active{background:rgba(255,255,255,.04)}.chat-conversation>span{color:var(--yellow)}.chat-conversation svg{width:18px}.chat-conversation strong,.chat-conversation small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-conversation small{color:var(--muted);font-size:11px}.chat-conversation em{color:var(--yellow);font-size:22px}.chat-empty-small{text-align:center;color:var(--muted);padding:24px;font-size:13px}.chat-main{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;background:radial-gradient(circle at 95% 0,color-mix(in srgb,var(--yellow) 9%,transparent),transparent 38%)}.chat-main-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 26px;border-bottom:1px solid var(--line)}.chat-main-head h2{margin:4px 0;font-size:25px}.chat-main-head p{margin:0;color:var(--muted)}.chat-live{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:7px}.chat-live i{width:7px;height:7px;border-radius:50%;background:#37dc95;box-shadow:0 0 12px #37dc95}.chat-messages{overflow-y:auto;padding:24px 28px;display:flex;flex-direction:column;gap:18px;scroll-behavior:smooth}.chat-message{display:grid;grid-template-columns:42px minmax(0,760px);gap:12px;align-items:start}.chat-message.mine{justify-content:end;grid-template-columns:minmax(0,760px) 42px}.chat-message.mine .chat-avatar{grid-column:2}.chat-message.mine .chat-bubble{grid-column:1;grid-row:1;background:color-mix(in srgb,var(--yellow) 10%,var(--panel))}.chat-avatar{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--yellow),var(--yellow2));display:grid;place-items:center;color:#fff;font-weight:900;overflow:hidden}.chat-avatar img{width:100%;height:100%;object-fit:cover}.chat-bubble{border:1px solid var(--line);border-radius:16px;padding:13px 15px;background:rgba(255,255,255,.025)}.chat-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.chat-meta time{margin-left:auto;color:var(--muted);font-size:11px}.chat-bubble p{white-space:normal;overflow-wrap:anywhere;line-height:1.55;margin:9px 0 2px}.chat-bubble>small{color:var(--muted)}.chat-message-actions{display:flex;gap:8px;margin-top:7px;opacity:0;transition:.18s}.chat-message:hover .chat-message-actions{opacity:1}.chat-message-actions form{display:inline}.chat-message-actions button{border:0;background:transparent;color:var(--muted);font-size:11px;display:inline-flex;align-items:center;gap:4px}.chat-message-actions svg{width:13px}.chat-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:16px 20px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:color-mix(in srgb,var(--panel) 94%,transparent)}.chat-composer textarea{min-height:52px;max-height:150px;resize:vertical;border-radius:15px}.chat-composer .btn{align-self:end;min-height:52px}.chat-empty{margin:auto;text-align:center;color:var(--muted)}.chat-empty>span{width:72px;height:72px;border-radius:24px;background:color-mix(in srgb,var(--yellow) 12%,transparent);display:grid;place-items:center;color:var(--yellow);margin:0 auto 18px}.chat-empty svg{width:34px}.chat-locked{padding:18px;text-align:center;border-top:1px solid var(--line);color:var(--muted)}.chat-dialog{border:0;padding:0;background:transparent;color:var(--text);width:min(520px,calc(100% - 28px))}.chat-dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(7px)}.chat-dialog-card{position:relative;padding:26px;border:1px solid var(--line);border-radius:22px;background:var(--panel);box-shadow:0 30px 100px rgba(0,0,0,.5)}.dialog-close{position:absolute;right:14px;top:14px;border:0;background:transparent;color:var(--muted)}.chat-dialog-tabs{display:grid;grid-template-columns:1fr 1fr;padding:4px;background:rgba(255,255,255,.035);border-radius:12px;margin:20px 0}.chat-dialog-tabs button{border:0;background:transparent;color:var(--muted);padding:10px;border-radius:9px}.chat-dialog-tabs button.active{background:color-mix(in srgb,var(--yellow) 20%,transparent);color:var(--text)}.chat-user-results{display:grid;gap:6px;margin:8px 0 14px}.chat-user-result{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:11px;background:transparent;color:var(--text)}.chat-user-result.selected{border-color:var(--yellow);background:color-mix(in srgb,var(--yellow) 10%,transparent)}
.admin-chat-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--section-stack);margin-top:var(--section-stack)}.admin-chat-grid.lower{align-items:start}.chat-admin-stats{margin-top:var(--section-stack)}.admin-channel-list{display:grid;gap:10px}.admin-channel-row{display:grid;grid-template-columns:42px 1fr .8fr 1.5fr .9fr .9fr 70px auto auto auto auto;gap:8px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:14px}.admin-channel-row input,.admin-channel-row select{min-width:0}.admin-channel-icon{width:38px;height:38px;border-radius:12px;background:color-mix(in srgb,var(--yellow) 16%,transparent);color:var(--yellow);display:grid;place-items:center}.report-card,.conversation-admin-row{padding:15px;border:1px solid var(--line);border-radius:14px;margin-bottom:10px}.report-card p{margin-top:0}.report-card small,.conversation-admin-row small{display:block;color:var(--muted);margin:5px 0}.report-card form{display:flex;gap:8px;margin-top:12px}.conversation-admin-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px}.status-badge{padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.06);font-size:11px}.status-open{color:#42dfa0}.status-closed{color:var(--muted)}
@media(max-width:1100px){.chat-app{grid-template-columns:280px minmax(0,1fr)}.admin-chat-grid{grid-template-columns:1fr}.admin-channel-row{grid-template-columns:42px 1fr 1fr;}.admin-channel-row>*:nth-child(n+4){grid-column:span 1}}
@media(max-width:760px){.chat-app{display:block;min-height:auto;overflow:visible}.chat-sidebar{border-right:0;min-height:auto}.chat-sidebar-head{position:sticky;top:var(--mobile-top-height,64px);z-index:3;background:var(--panel)}.chat-conversations{max-height:210px}.chat-main{min-height:65vh}.chat-main-head{padding:16px}.chat-live{display:none}.chat-messages{padding:16px 12px 110px}.chat-message,.chat-message.mine{grid-template-columns:34px minmax(0,1fr);justify-content:stretch}.chat-message.mine .chat-avatar{grid-column:1}.chat-message.mine .chat-bubble{grid-column:2}.chat-avatar{width:34px;height:34px;border-radius:11px}.chat-message-actions{opacity:1}.chat-composer{position:sticky;bottom:calc(var(--mobile-nav-height,78px) + env(safe-area-inset-bottom));z-index:8;padding:10px;grid-template-columns:minmax(0,1fr) 48px}.chat-composer .btn{width:48px;padding:0}.chat-composer .btn span{display:none}.chat-composer textarea{min-height:48px}.admin-channel-row{grid-template-columns:36px 1fr}.admin-channel-row>*{grid-column:2}.admin-channel-row .admin-channel-icon{grid-column:1;grid-row:1/3}.conversation-admin-row{grid-template-columns:1fr}.mobile-chat-shortcut{display:grid}}

/* ===== Module Chat V8.2 — Premium workspace ===== */
.chat-workspace{--chat-sidebar:330px;min-height:calc(100dvh - var(--topbar-height,70px) - 34px);height:calc(100dvh - var(--topbar-height,70px) - 34px);grid-template-columns:var(--chat-sidebar) minmax(0,1fr);border-color:color-mix(in srgb,var(--yellow) 38%,var(--line));border-radius:22px;background:color-mix(in srgb,var(--panel) 93%,transparent);box-shadow:0 30px 90px rgba(0,0,0,.36),inset 0 1px rgba(255,255,255,.025)}
.chat-workspace .chat-sidebar{background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 91%,var(--yellow) 9%),color-mix(in srgb,var(--panel) 98%,var(--bg)));}
.chat-sidebar-head{padding:18px 18px 15px}.chat-sidebar-head h1{font-size:24px}.chat-sidebar-head p{margin:4px 0 0;color:var(--muted);font-size:11px}.chat-head-actions{display:flex;gap:7px}.chat-mobile-close{display:none}
.chat-sidebar-search{margin:12px 14px 8px;display:flex;align-items:center;gap:9px;padding:0 12px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--bg) 58%,transparent)}.chat-sidebar-search:focus-within{border-color:color-mix(in srgb,var(--yellow) 58%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--yellow) 10%,transparent)}.chat-sidebar-search svg{width:17px;color:var(--muted)}.chat-sidebar-search input{border:0!important;box-shadow:none!important;background:transparent!important;min-height:42px;padding:0;width:100%;font-size:12px}
.chat-section-title{display:flex;justify-content:space-between;align-items:center}.chat-section-title small{background:rgba(255,255,255,.055);border-radius:999px;padding:2px 7px;color:var(--muted)}
.chat-channel,.chat-support-create button{padding:10px 11px;min-height:58px;border:1px solid transparent}.chat-channel:hover,.chat-support-create button:hover{border-color:color-mix(in srgb,var(--yellow) 20%,transparent)}.chat-channel.active{background:linear-gradient(90deg,color-mix(in srgb,var(--yellow) 17%,transparent),color-mix(in srgb,var(--yellow2) 8%,transparent));border-color:color-mix(in srgb,var(--yellow) 30%,transparent);box-shadow:inset 3px 0 var(--yellow),0 8px 22px color-mix(in srgb,var(--yellow) 7%,transparent)}
.chat-channel-icon{box-shadow:0 8px 18px color-mix(in srgb,var(--yellow) 18%,transparent)}.chat-private-head span{display:flex;gap:8px;align-items:center}.chat-private-head span svg{color:var(--yellow)}
.chat-conversation{border:1px solid transparent}.chat-conversation:hover,.chat-conversation.active{border-color:color-mix(in srgb,var(--yellow) 18%,transparent);background:color-mix(in srgb,var(--yellow) 8%,transparent)}.chat-conversation em{min-width:20px;height:20px;border-radius:999px;background:var(--yellow);color:#fff;font-size:10px;display:grid;place-items:center;font-style:normal}
.chat-sidebar-footer{display:flex;align-items:center;gap:10px;padding:13px 18px;border-top:1px solid var(--line);background:rgba(0,0,0,.09)}.chat-presence-dot{width:9px;height:9px;border-radius:50%;background:#35db91;box-shadow:0 0 12px #35db91}.chat-sidebar-footer strong,.chat-sidebar-footer small{display:block}.chat-sidebar-footer strong{font-size:11px}.chat-sidebar-footer small{font-size:10px;color:var(--muted);margin-top:2px}
.chat-main{grid-template-rows:auto auto minmax(0,1fr) auto;background:radial-gradient(circle at 95% 0,color-mix(in srgb,var(--yellow2) 12%,transparent),transparent 42%),linear-gradient(180deg,color-mix(in srgb,var(--bg) 55%,transparent),transparent)}
.chat-main-head{padding:16px 20px;justify-content:flex-start;background:color-mix(in srgb,var(--panel) 92%,transparent);backdrop-filter:blur(16px)}.chat-mobile-list{display:none}.chat-room-icon{width:46px;height:46px;border-radius:15px;background:linear-gradient(135deg,var(--yellow),var(--yellow2));color:#fff;display:grid;place-items:center;box-shadow:0 10px 25px color-mix(in srgb,var(--yellow) 18%,transparent)}.chat-room-icon svg{width:22px}.chat-room-title{min-width:0}.chat-room-title h2{margin:1px 0 2px;font-size:21px}.chat-room-title p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-room-tools{margin-left:auto;display:flex;align-items:center;gap:10px}
.chat-channel-banner{display:flex;align-items:center;gap:12px;padding:10px 20px;border-bottom:1px solid color-mix(in srgb,var(--yellow) 24%,var(--line));background:linear-gradient(90deg,color-mix(in srgb,var(--yellow) 10%,transparent),transparent)}.chat-channel-banner>span{color:var(--yellow)}.chat-channel-banner svg{width:18px}.chat-channel-banner p{margin:0;display:grid;gap:2px}.chat-channel-banner strong{font-size:12px}.chat-channel-banner small{color:var(--muted);font-size:11px}.chat-channel-banner em{margin-left:auto;font-style:normal;font-size:10px;padding:4px 8px;border:1px solid color-mix(in srgb,var(--yellow) 25%,var(--line));border-radius:999px;color:var(--yellow)}
.chat-messages{padding:22px 28px 28px;gap:12px;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--yellow) 25%,transparent) transparent}.chat-date-separator{display:flex;align-items:center;gap:12px;margin:8px 0}.chat-date-separator:before,.chat-date-separator:after{content:"";height:1px;background:var(--line);flex:1}.chat-date-separator span{font-size:10px;color:var(--muted);padding:4px 9px;border-radius:999px;background:color-mix(in srgb,var(--panel) 90%,transparent);border:1px solid var(--line)}
.chat-message,.chat-message.mine{display:grid;grid-template-columns:38px minmax(0,720px);gap:10px;align-items:start;justify-content:start}.chat-message.mine{grid-template-columns:minmax(0,720px) 38px;justify-content:end}.chat-message.mine .chat-avatar{grid-column:2}.chat-message.mine .chat-message-content{grid-column:1;grid-row:1;align-items:flex-end}.chat-avatar{width:38px;height:38px;border-radius:13px}.chat-message-content{min-width:0;display:flex;flex-direction:column;align-items:flex-start}.chat-meta{width:100%;padding:0 4px 5px}.chat-meta strong{font-size:12px}.chat-meta .rank{font-size:9px}.chat-bubble{width:auto;max-width:100%;padding:10px 13px;border-radius:5px 16px 16px 16px;background:color-mix(in srgb,var(--panel) 93%,var(--yellow) 7%);border-color:color-mix(in srgb,var(--yellow) 18%,var(--line));box-shadow:0 7px 20px rgba(0,0,0,.12)}.chat-message.mine .chat-bubble{border-radius:16px 5px 16px 16px;background:linear-gradient(135deg,color-mix(in srgb,var(--yellow) 16%,var(--panel)),color-mix(in srgb,var(--yellow2) 10%,var(--panel)))}.chat-bubble p{margin:0;line-height:1.48}.chat-message-actions{padding:4px 3px 0;margin:0}.chat-message-actions button{padding:3px 5px;border-radius:6px}.chat-message-actions button:hover{color:var(--yellow);background:color-mix(in srgb,var(--yellow) 10%,transparent)}
.chat-composer{padding:12px 16px calc(12px + env(safe-area-inset-bottom));gap:10px;background:color-mix(in srgb,var(--panel) 94%,transparent);backdrop-filter:blur(18px)}.chat-composer-box{border:1px solid color-mix(in srgb,var(--yellow) 28%,var(--line));border-radius:18px;background:color-mix(in srgb,var(--bg) 62%,transparent);overflow:hidden;transition:.18s}.chat-composer-box:focus-within{border-color:var(--yellow);box-shadow:0 0 0 3px color-mix(in srgb,var(--yellow) 10%,transparent),0 10px 35px color-mix(in srgb,var(--yellow) 8%,transparent)}.chat-composer-tools{display:flex;gap:3px;padding:7px 9px 0}.chat-composer-tools button{width:29px;height:29px;border:0;border-radius:9px;background:transparent;color:var(--muted)}.chat-composer-tools button:hover{background:color-mix(in srgb,var(--yellow) 10%,transparent);color:var(--yellow)}.chat-composer textarea{min-height:46px;max-height:145px;resize:none;border:0!important;box-shadow:none!important;background:transparent!important;border-radius:0;padding:8px 13px}.chat-composer-meta{display:flex;justify-content:space-between;padding:0 13px 8px;color:var(--muted);font-size:9px}.chat-send-button{align-self:end;width:54px;height:54px;border:0;border-radius:17px;background:linear-gradient(135deg,var(--yellow),var(--yellow2));color:#fff;display:grid;place-items:center;box-shadow:0 12px 28px color-mix(in srgb,var(--yellow) 25%,transparent);transition:.18s}.chat-send-button:hover{transform:translateY(-2px) scale(1.02)}.chat-send-button svg{width:22px}
.chat-empty{max-width:370px}.chat-empty h3{margin:0 0 7px}.chat-empty p{margin:0}.chat-dialog-card{background:linear-gradient(160deg,color-mix(in srgb,var(--panel) 96%,var(--yellow) 4%),var(--panel))}

/* Admin Chat V8.2 */
.chat-admin-hero .site-hero-inner{min-height:250px}.admin-chat-tabs{position:sticky;top:calc(var(--topbar-height,70px) + 10px);z-index:10;display:flex;gap:5px;padding:6px;margin:var(--section-stack) 0;border:1px solid var(--line);border-radius:15px;background:color-mix(in srgb,var(--panel) 90%,transparent);backdrop-filter:blur(18px);overflow:auto}.admin-chat-tabs a{white-space:nowrap;padding:10px 15px;border-radius:10px;color:var(--muted);font-size:12px;font-weight:700}.admin-chat-tabs a:hover,.admin-chat-tabs a.active{color:var(--text);background:color-mix(in srgb,var(--yellow) 14%,transparent)}.admin-chat-tabs em{font-style:normal;margin-left:5px;background:var(--yellow);color:#fff;padding:2px 6px;border-radius:999px;font-size:9px}
.chat-admin-stats{grid-template-columns:repeat(5,minmax(0,1fr));margin-top:0}.chat-admin-stats article{min-height:112px}.chat-admin-stats article em{display:block;margin-top:4px;color:var(--muted);font-size:9px;font-style:normal}.chat-admin-stats article.attention{border-color:color-mix(in srgb,#ff5577 45%,var(--line));background:color-mix(in srgb,#ff335f 7%,var(--panel))}
.chat-admin-panel{overflow:hidden}.chat-admin-panel .panel-heading{align-items:flex-start}.chat-admin-panel .panel-heading p,.chat-channels-admin .panel-heading p{margin:4px 0 0;color:var(--muted)}.panel-icon{width:44px;height:44px;border-radius:14px;background:color-mix(in srgb,var(--yellow) 13%,transparent);color:var(--yellow);display:grid;place-items:center}.panel-icon svg{width:20px}.chat-settings-form .toggle-row.featured{border-color:color-mix(in srgb,var(--yellow) 35%,var(--line));background:linear-gradient(90deg,color-mix(in srgb,var(--yellow) 10%,transparent),transparent)}.chat-toggle-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.input-suffix{position:relative}.input-suffix input{padding-right:75px}.input-suffix span{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:10px;color:var(--muted)}.form-stack label>small{display:block;color:var(--muted);font-size:10px;margin:3px 0 7px}.form-actions{display:flex;justify-content:flex-end;padding-top:5px}.chat-channel-options{display:grid;grid-template-columns:120px 1fr 1fr;gap:10px;align-items:stretch}.check-card{display:flex!important;align-items:center;gap:10px;padding:11px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.018)}.check-card span strong,.check-card span small{display:block}.check-card span small{color:var(--muted);font-size:9px;margin-top:2px}
.chat-channels-admin{margin-top:var(--section-stack)}.admin-list-search{display:flex;align-items:center;gap:8px;min-width:230px;border:1px solid var(--line);border-radius:11px;padding:0 10px}.admin-list-search svg{width:16px;color:var(--muted)}.admin-list-search input{border:0!important;background:transparent!important;box-shadow:none!important;min-height:38px;padding:0}.admin-channel-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-channel-card{border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.018);overflow:hidden}.admin-channel-card>header{display:flex;align-items:center;gap:11px;padding:14px}.admin-channel-card>header>div{min-width:0}.admin-channel-card>header strong,.admin-channel-card>header small{display:block}.admin-channel-card>header small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}.channel-state{margin-left:auto;padding:4px 8px;border-radius:999px;font-size:9px;font-weight:800}.channel-state.online{color:#39dda0;background:rgba(40,210,145,.1)}.channel-state.offline{color:var(--muted);background:rgba(255,255,255,.05)}.channel-card-stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.channel-card-stats span{padding:10px;text-align:center;font-size:9px;color:var(--muted)}.channel-card-stats span+span{border-left:1px solid var(--line)}.channel-card-stats b{display:block;color:var(--text);font-size:11px;margin-bottom:3px}.admin-channel-card details summary{list-style:none;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-size:11px;font-weight:800;color:var(--yellow)}.admin-channel-card details summary::-webkit-details-marker{display:none}.admin-channel-card details summary svg{width:15px;transition:.2s}.admin-channel-card details[open] summary svg{transform:rotate(180deg)}.channel-edit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:0 14px 12px}.channel-edit-grid .wide{grid-column:span 2}.admin-channel-card .form-actions{padding:0 14px 14px}
.moderation-count{min-width:38px;height:38px;border-radius:12px;background:color-mix(in srgb,var(--yellow) 12%,transparent);display:grid;place-items:center;color:var(--yellow);font-weight:900}.chat-admin-empty{min-height:170px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:var(--muted)}.chat-admin-empty svg{width:30px;color:#39dda0}.chat-admin-empty strong{color:var(--text)}.report-card{background:color-mix(in srgb,#ff335f 4%,transparent)}.report-card header{display:flex;align-items:center;gap:9px}.report-card header>span{color:#ff667f}.report-card blockquote{margin:13px 0 8px;padding:12px;border-left:3px solid #ff5577;background:rgba(0,0,0,.12);border-radius:0 10px 10px 0}.report-card>p{color:var(--muted);font-size:11px}.conversation-admin-row{grid-template-columns:40px minmax(0,1fr) auto auto}.conversation-type-icon{width:38px;height:38px;border-radius:12px;background:color-mix(in srgb,var(--yellow) 10%,transparent);color:var(--yellow);display:grid;place-items:center}.conversation-type-icon svg{width:18px}.conversation-admin-row em{display:block;font-style:normal;color:var(--muted);font-size:9px;margin-top:4px}

@media(max-width:1250px){.chat-admin-stats{grid-template-columns:repeat(3,1fr)}.admin-channel-cards{grid-template-columns:1fr}}
@media(max-width:980px){.chat-workspace{--chat-sidebar:290px}.chat-toggle-grid{grid-template-columns:1fr}.channel-edit-grid{grid-template-columns:1fr 1fr}.channel-edit-grid .wide{grid-column:1/-1}.chat-channel-options{grid-template-columns:1fr}.chat-admin-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.chat-workspace{height:calc(100dvh - var(--mobile-top-height,64px) - var(--mobile-nav-height,78px) - env(safe-area-inset-top) - env(safe-area-inset-bottom));min-height:560px;display:block;position:relative;overflow:hidden;border-radius:18px}.chat-sidebar,.chat-main{position:absolute;inset:0;transition:transform .28s ease,opacity .2s ease}.chat-sidebar{z-index:4;transform:translateX(-104%);opacity:0;border-right:0}.chat-workspace.chat-list-open .chat-sidebar{transform:none;opacity:1}.chat-workspace.chat-list-open .chat-main{transform:translateX(18%);opacity:.35;pointer-events:none}.chat-mobile-close,.chat-mobile-list{display:grid}.chat-sidebar-head{position:static}.chat-main{min-height:0;height:100%;grid-template-rows:auto auto minmax(0,1fr) auto}.chat-main-head{padding:10px 11px;gap:8px}.chat-room-icon{width:40px;height:40px;border-radius:12px}.chat-room-title h2{font-size:17px}.chat-room-title .eyebrow{display:none}.chat-room-title p{font-size:10px;max-width:46vw}.chat-room-tools .chat-live{display:none}.chat-channel-banner{padding:8px 11px}.chat-channel-banner small,.chat-channel-banner em{display:none}.chat-messages{padding:14px 10px 18px;gap:10px}.chat-message,.chat-message.mine{grid-template-columns:30px minmax(0,1fr);justify-content:stretch}.chat-message.mine .chat-avatar{grid-column:1}.chat-message.mine .chat-message-content{grid-column:2;align-items:flex-start}.chat-avatar{width:30px;height:30px;border-radius:10px}.chat-message.mine .chat-bubble{border-radius:5px 15px 15px 15px}.chat-meta time{margin-left:0}.chat-composer{position:relative;bottom:auto;padding:8px;grid-template-columns:minmax(0,1fr) 48px}.chat-composer-tools{display:none}.chat-composer-meta small{display:none}.chat-send-button{width:48px;height:48px;border-radius:15px}.chat-sidebar-footer{padding-bottom:calc(13px + env(safe-area-inset-bottom))}.admin-chat-tabs{top:calc(var(--mobile-top-height,64px) + env(safe-area-inset-top) + 7px)}.chat-admin-stats{grid-template-columns:repeat(2,1fr)}.admin-chat-grid{grid-template-columns:1fr}.admin-channel-cards{grid-template-columns:1fr}.chat-admin-panel,.chat-channels-admin{padding:14px}.panel-heading{gap:10px}.admin-list-search{min-width:0;width:100%;margin-top:10px}.chat-channels-admin .panel-heading{display:block}.channel-edit-grid{grid-template-columns:1fr}.channel-edit-grid .wide{grid-column:auto}.conversation-admin-row{grid-template-columns:38px 1fr}.conversation-admin-row .status-badge,.conversation-admin-row form{grid-column:2}.chat-admin-hero .site-hero-inner{min-height:220px}}
@media(max-width:420px){.chat-admin-stats{grid-template-columns:1fr 1fr}.chat-admin-stats article{min-height:96px;padding:12px}.chat-room-title p{max-width:40vw}.chat-channel-banner p strong{max-width:70vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}

/* ========================================================================== 
   V8.3 — OHD Chat Studio
   ========================================================================== */
.chat-v83{--chat-sidebar:340px;height:min(820px,calc(100dvh - 118px));min-height:620px;display:grid;grid-template-columns:var(--chat-sidebar) minmax(0,1fr);overflow:hidden;border:1px solid color-mix(in srgb,var(--yellow) 24%,var(--line));border-radius:24px;background:color-mix(in srgb,var(--panel) 96%,#000 4%);box-shadow:0 28px 90px rgba(0,0,0,.38);isolation:isolate}
.chat-v83.chat-is-fullscreen{position:fixed!important;inset:0!important;z-index:99999!important;width:100vw!important;height:100dvh!important;max-width:none!important;min-height:0!important;border-radius:0!important;border:0!important;margin:0!important}
.chat-v83.chat-is-fullscreen~.mobile-nav,.chat-fullscreen-active .mobile-nav,.chat-fullscreen-active .mobile-top,.chat-fullscreen-active .sidebar,.chat-fullscreen-active .topbar{display:none!important}.chat-fullscreen-active{overflow:hidden!important}.chat-fullscreen-active .page-stage,.chat-fullscreen-active main{padding:0!important;margin:0!important;max-width:none!important}
.chat-v83 .chat-sidebar{display:flex;flex-direction:column;min-height:0;background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 95%,var(--yellow) 5%),color-mix(in srgb,var(--bg) 94%,var(--panel) 6%));border-right:1px solid var(--line)}
.chat-v83 .chat-sidebar-head{padding:18px 17px 14px;display:flex;align-items:flex-start;gap:12px;border-bottom:1px solid var(--line)}
.chat-sidebar-title{min-width:0;flex:1}.chat-sidebar-title h1{font-size:24px;line-height:1;margin:3px 0 7px}.chat-sidebar-title p{display:flex;align-items:center;gap:6px;margin:0;color:var(--muted);font-size:10px}.chat-presence-dot{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#27d798;box-shadow:0 0 0 4px rgba(39,215,152,.1)}
.chat-v83 .chat-head-actions{display:flex;gap:6px}.chat-v83 .icon-button{width:38px;height:38px;border-radius:12px}
.chat-v83 .chat-sidebar-search{margin:12px 13px 8px;min-height:44px;border-radius:14px;background:rgba(0,0,0,.18)}
.chat-v83 .chat-section-title{padding:10px 16px 7px;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.chat-v83 .chat-section-title small{padding:2px 6px;border-radius:999px;background:rgba(255,255,255,.05)}
.chat-v83 .chat-channels{padding:0 9px;display:grid;gap:4px}.chat-v83 .chat-channel,.chat-v83 .chat-support-create button{min-height:59px;border:1px solid transparent;border-radius:15px;padding:8px 10px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;color:var(--text);transition:.18s ease;background:transparent;width:100%;text-align:left}.chat-v83 .chat-channel:hover,.chat-v83 .chat-support-create button:hover{background:rgba(255,255,255,.035);border-color:var(--line)}.chat-v83 .chat-channel.active{background:linear-gradient(90deg,color-mix(in srgb,var(--yellow) 18%,transparent),color-mix(in srgb,var(--yellow2) 6%,transparent));border-color:color-mix(in srgb,var(--yellow) 42%,var(--line));box-shadow:inset 3px 0 0 var(--yellow)}
.chat-v83 .chat-channel-icon{width:40px;height:40px;border-radius:13px;background:color-mix(in srgb,var(--yellow) 14%,rgba(255,255,255,.03));color:var(--yellow);display:grid;place-items:center}.chat-v83 .chat-channel-icon svg{width:19px}.chat-channel-copy{min-width:0}.chat-channel-copy strong,.chat-channel-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-channel-copy small{margin-top:3px;color:var(--muted);font-size:9px}.chat-v83 .chat-channel em,.chat-conversation-flags em{min-width:22px;height:22px;border-radius:999px;background:var(--yellow);color:#fff;font-size:9px;font-style:normal;font-weight:900;display:grid;place-items:center;padding:0 6px}
.chat-private-section{display:flex;flex-direction:column;min-height:0;margin-top:9px;border-top:1px solid var(--line)}.chat-v83 .chat-private-head{padding:12px 15px 8px}.chat-private-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;padding:0 10px 9px}.chat-private-tabs button{min-width:0;padding:8px 4px;border:0;border-radius:10px;background:transparent;color:var(--muted);font-size:9px;white-space:nowrap}.chat-private-tabs button.active{background:color-mix(in srgb,var(--yellow) 14%,transparent);color:var(--text)}.chat-private-tabs b{display:inline-grid;place-items:center;min-width:16px;height:16px;margin-left:2px;border-radius:999px;background:rgba(255,255,255,.07);font-size:8px}
.chat-v83 .chat-conversations{min-height:0;overflow:auto;padding:0 9px 10px;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--yellow) 35%,transparent) transparent}.chat-v83 .chat-conversation{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px;border:1px solid transparent;border-radius:14px;color:var(--text)}.chat-v83 .chat-conversation:hover{background:rgba(255,255,255,.03)}.chat-v83 .chat-conversation.active{background:color-mix(in srgb,var(--yellow) 12%,transparent);border-color:color-mix(in srgb,var(--yellow) 30%,var(--line))}.chat-conversation-icon{width:38px;height:38px;border-radius:12px;background:rgba(255,255,255,.045);color:var(--muted);display:grid;place-items:center}.chat-conversation-icon svg{width:17px}.chat-conversation>div:nth-child(2){min-width:0}.chat-conversation strong,.chat-conversation small,.chat-conversation time{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-conversation small{font-size:9px;color:var(--muted);margin-top:2px}.chat-conversation time{font-size:8px;color:color-mix(in srgb,var(--muted) 75%,transparent);margin-top:3px}.chat-conversation-flags{display:flex;align-items:center;gap:4px}.chat-conversation-flags>span{color:var(--muted)}.chat-conversation-flags svg{width:13px}.chat-empty-small{min-height:130px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted);gap:5px}.chat-empty-small svg{width:26px}.chat-empty-small strong{color:var(--text)}.chat-empty-small small{max-width:190px}
.chat-v83 .chat-sidebar-footer{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:9px;padding:11px 13px;border-top:1px solid var(--line);background:rgba(0,0,0,.12)}.chat-self-avatar{width:38px!important;height:38px!important}.chat-online-pill{font-size:8px;color:#39dda0;background:rgba(39,215,152,.1);border:1px solid rgba(39,215,152,.16);padding:4px 7px;border-radius:999px}
.chat-v83 .chat-main{min-width:0;min-height:0;display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto;background:radial-gradient(circle at 85% 0,color-mix(in srgb,var(--yellow) 7%,transparent),transparent 34%),color-mix(in srgb,var(--bg) 94%,var(--panel) 6%)}.chat-v83 .chat-main-head{padding:13px 15px;display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:11px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--panel) 90%,transparent);backdrop-filter:blur(16px);z-index:3}.chat-v83 .chat-room-title{min-width:0}.chat-v83 .chat-room-title h2{margin:1px 0 2px;font-size:19px}.chat-v83 .chat-room-title p{margin:0;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-v83 .chat-room-tools{display:flex;align-items:center;gap:5px}.chat-v83 .chat-room-tools form{display:contents}.chat-message-search{margin:9px 13px 0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-height:43px;padding:0 10px;border:1px solid color-mix(in srgb,var(--yellow) 25%,var(--line));border-radius:13px;background:rgba(0,0,0,.18)}.chat-message-search[hidden]{display:none}.chat-message-search svg{width:16px;color:var(--yellow)}.chat-message-search input{border:0!important;background:transparent!important;box-shadow:none!important;min-height:40px;padding:0}.chat-message-search button{border:0;background:transparent;color:var(--muted)}
.chat-v83 .chat-channel-banner{margin:9px 13px 0;border-radius:13px;border:1px solid color-mix(in srgb,var(--yellow) 22%,var(--line));background:linear-gradient(90deg,color-mix(in srgb,var(--yellow) 9%,transparent),transparent)}
.chat-v83 .chat-messages{min-height:0;overflow:auto;padding:18px clamp(12px,3vw,30px) 24px;scroll-behavior:smooth;overscroll-behavior:contain}.chat-v83 .chat-date-separator{position:sticky;top:4px;z-index:2}.chat-v83 .chat-date-separator span{background:color-mix(in srgb,var(--panel) 90%,transparent);backdrop-filter:blur(10px)}
.chat-v83 .chat-message{max-width:920px;margin:0 auto 13px}.chat-v83 .chat-bubble{max-width:min(720px,88%);padding:11px 13px;border-radius:5px 17px 17px 17px;background:color-mix(in srgb,var(--panel) 82%,var(--yellow) 4%);border:1px solid color-mix(in srgb,var(--line) 85%,var(--yellow) 15%)}.chat-v83 .chat-message.mine .chat-bubble{background:linear-gradient(135deg,color-mix(in srgb,var(--yellow) 18%,var(--panel)),color-mix(in srgb,var(--yellow2) 10%,var(--panel)));border-color:color-mix(in srgb,var(--yellow) 28%,var(--line))}.chat-v83 .chat-message-actions{opacity:0;transform:translateY(-2px);transition:.15s}.chat-v83 .chat-message:hover .chat-message-actions,.chat-v83 .chat-message:focus-within .chat-message-actions{opacity:1;transform:none}.chat-v83 .chat-message[hidden]{display:none!important}.chat-new-messages{position:absolute;left:50%;bottom:86px;transform:translateX(-50%);z-index:8;border:1px solid color-mix(in srgb,var(--yellow) 36%,var(--line));border-radius:999px;background:var(--panel);color:var(--yellow);padding:8px 13px;box-shadow:0 10px 30px rgba(0,0,0,.28)}.chat-new-messages[hidden]{display:none}
.chat-v83 .chat-composer{padding:10px 13px calc(10px + env(safe-area-inset-bottom));background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--panel) 98%,#000 2%) 18%);border-top:1px solid var(--line)}.chat-v83 .chat-composer-box{border-radius:17px;border-color:color-mix(in srgb,var(--yellow) 25%,var(--line));background:rgba(0,0,0,.2)}.chat-v83 .chat-composer-box:focus-within{border-color:var(--yellow);box-shadow:0 0 0 3px color-mix(in srgb,var(--yellow) 10%,transparent)}
.chat-dialog{max-width:min(92vw,520px)}.chat-dialog-card{border-radius:22px}.chat-user-search-field{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:13px;padding:0 10px}.chat-user-search-field svg{width:17px;color:var(--muted)}.chat-user-search-field input{border:0!important;background:transparent!important;box-shadow:none!important}.chat-user-results{max-height:220px;overflow:auto;margin-top:7px}.chat-user-result{width:100%;display:grid;grid-template-columns:38px 1fr;align-items:center;gap:9px;padding:8px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--text);text-align:left}.chat-user-result:hover,.chat-user-result.selected{background:color-mix(in srgb,var(--yellow) 10%,transparent);border-color:color-mix(in srgb,var(--yellow) 28%,var(--line))}

/* Administration V8.3 */
.chat-admin-v83{--admin-chat-gap:16px}.chat-admin-overview,.chat-moderation-studio{scroll-margin-top:135px}.chat-admin-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:var(--section-stack) 0 12px}.chat-admin-heading h2{margin:3px 0 4px}.chat-admin-heading p{margin:0;color:var(--muted)}.chat-admin-live{display:flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:10px}.chat-admin-live i{width:7px;height:7px;border-radius:50%;background:#39dda0;box-shadow:0 0 0 4px rgba(39,215,152,.1)}.chat-admin-v83 .admin-chat-tabs{gap:7px;padding:7px}.chat-admin-v83 .admin-chat-tabs a{display:flex;align-items:center;gap:7px}.chat-admin-v83 .admin-chat-tabs svg{width:15px}.chat-admin-v83 .chat-admin-stats{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.chat-admin-v83 .chat-admin-stats article{min-width:0;border-radius:17px;background:linear-gradient(145deg,color-mix(in srgb,var(--panel) 95%,var(--yellow) 5%),var(--panel))}.chat-admin-v83 .admin-chat-grid{gap:var(--admin-chat-gap);align-items:start}.chat-admin-v83 .chat-admin-panel,.chat-admin-v83 .chat-channels-admin{border-radius:20px}.chat-admin-v83 .panel-heading{padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:14px}.chat-admin-v83 .chat-toggle-grid{gap:12px}.chat-admin-v83 .toggle-row{min-height:78px;border-radius:15px}.chat-admin-v83 .admin-channel-cards{gap:14px}.chat-admin-v83 .admin-channel-card{border-radius:18px;transition:.18s}.chat-admin-v83 .admin-channel-card:hover{border-color:color-mix(in srgb,var(--yellow) 24%,var(--line));transform:translateY(-2px)}.chat-admin-v83 .admin-channel-card>header{padding:16px}.chat-admin-v83 .admin-channel-icon{width:44px;height:44px;border-radius:14px;background:color-mix(in srgb,var(--yellow) 12%,transparent);color:var(--yellow);display:grid;place-items:center}.chat-admin-v83 .admin-channel-icon svg{width:20px}.chat-admin-v83 .channel-card-stats span{padding:12px 8px}.chat-admin-v83 .admin-channel-card details summary{padding:14px 16px}.chat-admin-v83 .channel-edit-grid{padding:0 16px 14px}.chat-admin-v83 .admin-conversation-filters{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}.chat-admin-v83 .admin-conversation-filters button{border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--muted);padding:7px 10px}.chat-admin-v83 .admin-conversation-filters button.active{background:color-mix(in srgb,var(--yellow) 13%,transparent);border-color:color-mix(in srgb,var(--yellow) 32%,var(--line));color:var(--text)}.chat-admin-v83 .conversation-admin-row{padding:12px;border-radius:14px;border:1px solid var(--line);margin-bottom:8px;background:rgba(255,255,255,.015)}.chat-admin-v83 .report-card{border:1px solid color-mix(in srgb,#ff5577 25%,var(--line));border-radius:15px;padding:13px;margin-bottom:10px}

@media(max-width:1280px){.chat-admin-v83 .chat-admin-stats{grid-template-columns:repeat(3,1fr)}.chat-v83{--chat-sidebar:310px}.chat-v83 .chat-room-tools .icon-button{width:35px;height:35px}}
@media(max-width:980px){.chat-v83{height:calc(100dvh - var(--mobile-top-height,64px) - var(--mobile-nav-height,78px) - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 12px);min-height:540px;display:block;position:relative;border-radius:20px}.chat-v83 .chat-sidebar,.chat-v83 .chat-main{position:absolute;inset:0}.chat-v83 .chat-sidebar{z-index:10;transform:translateX(-102%);opacity:0;border:0;transition:transform .25s ease,opacity .18s ease}.chat-v83.chat-list-open .chat-sidebar{transform:none;opacity:1}.chat-v83.chat-list-open .chat-main{transform:translateX(18%);opacity:.32;pointer-events:none}.chat-v83 .chat-mobile-close,.chat-v83 .chat-mobile-list{display:grid}.chat-v83 .chat-main{height:100%;grid-template-rows:auto auto auto minmax(0,1fr) auto}.chat-v83 .chat-room-title p{max-width:42vw}.chat-v83 .chat-room-tools button:nth-last-child(n+4),.chat-v83 .chat-room-tools form{display:none}.chat-v83.chat-is-fullscreen{height:100dvh!important}.chat-admin-v83 .chat-admin-stats{grid-template-columns:repeat(3,1fr)}.chat-admin-v83 .admin-chat-grid{grid-template-columns:1fr}.chat-admin-v83 .chat-create-channel{order:2}}
@media(max-width:760px){.chat-v83{margin:0;border-radius:0;border-left:0;border-right:0;height:calc(100dvh - var(--mobile-top-height,64px) - var(--mobile-nav-height,78px) - env(safe-area-inset-top) - env(safe-area-inset-bottom));min-height:480px}.chat-v83 .chat-sidebar-head{padding-top:13px}.chat-private-tabs{grid-template-columns:repeat(4,minmax(68px,1fr));overflow-x:auto}.chat-v83 .chat-main-head{padding:9px 8px;grid-template-columns:auto auto minmax(0,1fr) auto}.chat-v83 .chat-room-title h2{font-size:16px}.chat-v83 .chat-room-title p{max-width:38vw;font-size:9px}.chat-v83 .chat-room-tools{gap:2px}.chat-v83 .chat-room-tools .icon-button{width:34px;height:34px}.chat-v83 .chat-channel-banner{margin:6px 8px 0}.chat-v83 .chat-message-search{margin:6px 8px 0}.chat-v83 .chat-messages{padding:12px 8px 18px}.chat-v83 .chat-message{grid-template-columns:29px minmax(0,1fr);gap:8px}.chat-v83 .chat-avatar{width:29px;height:29px}.chat-v83 .chat-bubble{max-width:94%;padding:9px 11px}.chat-v83 .chat-message-actions{opacity:1;transform:none}.chat-v83 .chat-message-actions button,.chat-v83 .chat-message-actions form{font-size:0}.chat-v83 .chat-message-actions svg{width:14px}.chat-v83 .chat-composer{grid-template-columns:minmax(0,1fr) 47px;padding:7px 8px calc(7px + env(safe-area-inset-bottom))}.chat-v83 .chat-composer-tools{display:none}.chat-v83 .chat-composer-meta small{display:none}.chat-v83 .chat-send-button{width:47px;height:47px;border-radius:15px}.chat-v83.chat-is-fullscreen .chat-main{padding-top:env(safe-area-inset-top)}.chat-v83.chat-is-fullscreen .chat-composer{padding-bottom:calc(8px + env(safe-area-inset-bottom))}.chat-admin-v83 .chat-admin-stats{grid-template-columns:repeat(2,1fr)}.chat-admin-v83 .chat-admin-heading{align-items:flex-start;flex-direction:column}.chat-admin-v83 .admin-chat-tabs{top:calc(var(--mobile-top-height,64px) + env(safe-area-inset-top) + 5px)}.chat-admin-v83 .conversation-admin-row{grid-template-columns:38px minmax(0,1fr)}.chat-admin-v83 .conversation-admin-row .status-badge,.chat-admin-v83 .conversation-admin-row form{grid-column:2}.chat-admin-v83 .conversation-admin-row form .btn{width:100%}}
@media(max-width:430px){.chat-v83 .chat-room-icon{display:none}.chat-v83 .chat-main-head{grid-template-columns:auto minmax(0,1fr) auto}.chat-v83 .chat-room-title p{max-width:50vw}.chat-v83 .chat-room-tools [data-chat-message-search-toggle]{display:none}.chat-admin-v83 .chat-admin-stats{grid-template-columns:1fr 1fr}.chat-admin-v83 .chat-admin-stats article{min-height:95px;padding:11px}.chat-admin-v83 .admin-chat-tabs a{padding:9px 11px}.chat-admin-v83 .admin-chat-tabs svg{display:none}}
@media(prefers-reduced-motion:reduce){.chat-v83 *,.chat-admin-v83 *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* V8.4 Chat accueil, compositeur compact et fil classique */
.chat-v83 .chat-main:has(.chat-home){display:flex;min-height:0}
.chat-home{margin:auto;width:min(760px,calc(100% - 48px));text-align:center;padding:52px 34px;border:1px solid color-mix(in srgb,var(--yellow) 24%,var(--line));border-radius:26px;background:linear-gradient(145deg,color-mix(in srgb,var(--panel) 94%,transparent),color-mix(in srgb,var(--yellow) 7%,var(--panel)));box-shadow:0 28px 80px rgba(0,0,0,.24)}
.chat-home-visual{width:84px;height:84px;border-radius:26px;margin:0 auto 22px;display:grid;place-items:center;color:var(--yellow);background:color-mix(in srgb,var(--yellow) 13%,transparent);box-shadow:0 0 42px color-mix(in srgb,var(--yellow) 18%,transparent)}
.chat-home-visual svg{width:38px}.chat-home h2{font-size:clamp(30px,4vw,50px);margin:8px 0 12px}.chat-home>p{max-width:620px;margin:0 auto;color:var(--muted);font-size:16px;line-height:1.65}.chat-home-actions{display:flex;justify-content:center;gap:12px;margin:28px 0}.chat-home-actions .btn{display:inline-flex;align-items:center;gap:8px}.chat-home-actions svg{width:18px}.chat-home-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:30px}.chat-home-grid article{padding:16px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025)}.chat-home-grid strong,.chat-home-grid span{display:block}.chat-home-grid strong{font-size:26px}.chat-home-grid span{font-size:11px;color:var(--muted);margin-top:3px}
.chat-v83 .chat-composer{align-items:end;padding:12px 14px calc(12px + env(safe-area-inset-bottom));gap:10px}.chat-v83 .chat-composer-box{position:relative;min-height:0;padding:8px 10px;border-radius:17px}.chat-v83 .chat-composer-row{display:grid;grid-template-columns:38px minmax(0,1fr);gap:7px;align-items:end}.chat-v83 .chat-composer textarea{display:block;width:100%;min-height:38px!important;height:38px;max-height:132px!important;padding:8px 4px!important;line-height:22px;resize:none;overflow-y:auto;border:0!important;background:transparent!important;box-shadow:none!important}.chat-v83 .chat-emoji-trigger{width:38px;height:38px;border:0;border-radius:12px;background:color-mix(in srgb,var(--yellow) 10%,transparent);color:var(--yellow);font-size:21px}.chat-v83 .chat-composer-meta{padding:3px 3px 0}.chat-v83 .chat-send-button{width:48px;height:48px;border-radius:15px}.chat-emoji-picker{position:absolute;left:8px;bottom:calc(100% + 10px);z-index:30;width:min(360px,calc(100vw - 40px));padding:12px;border:1px solid color-mix(in srgb,var(--yellow) 34%,var(--line));border-radius:18px;background:color-mix(in srgb,var(--panel) 98%,transparent);box-shadow:0 24px 70px rgba(0,0,0,.48);backdrop-filter:blur(18px)}.chat-emoji-picker[hidden]{display:none}.chat-emoji-picker-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}.chat-emoji-picker-head button{width:30px;height:30px;border:0;border-radius:9px;background:rgba(255,255,255,.04);color:var(--muted)}.chat-emoji-picker-head svg{width:15px}.chat-emoji-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:4px;max-height:230px;overflow:auto}.chat-emoji-grid button{aspect-ratio:1;border:0;border-radius:9px;background:transparent;font-size:21px}.chat-emoji-grid button:hover{background:color-mix(in srgb,var(--yellow) 14%,transparent);transform:scale(1.08)}
.chat-v83 .chat-message,.chat-v83 .chat-message.mine{grid-template-columns:38px minmax(0,760px);justify-content:start}.chat-v83 .chat-message.mine .chat-avatar{grid-column:1}.chat-v83 .chat-message.mine .chat-message-content{grid-column:2;grid-row:1;align-items:flex-start}.chat-v83 .chat-message.mine .chat-bubble{border-radius:5px 16px 16px 16px;background:color-mix(in srgb,var(--panel) 93%,var(--yellow) 7%)}.chat-v83 .chat-bubble{padding:10px 13px;border-radius:5px 16px 16px 16px}.chat-v83 .chat-meta time{margin-left:0}.chat-v83 .chat-message-content{align-items:flex-start}
@media(max-width:980px){.chat-home{width:min(680px,calc(100% - 28px));padding:38px 24px}.chat-home-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.chat-v83 .chat-main:has(.chat-home){display:flex}.chat-home{width:calc(100% - 22px);padding:30px 18px;margin:auto}.chat-home-actions{display:grid}.chat-home-actions .btn{justify-content:center;width:100%}.chat-home-grid{grid-template-columns:repeat(3,1fr);gap:6px}.chat-home-grid article{padding:12px 6px}.chat-home-grid strong{font-size:20px}.chat-home-grid span{font-size:9px}.chat-v83 .chat-composer{grid-template-columns:minmax(0,1fr) 48px;padding:8px}.chat-v83 .chat-composer-tools{display:block}.chat-emoji-picker{position:fixed;left:12px;right:12px;bottom:calc(var(--mobile-nav-height,78px) + env(safe-area-inset-bottom) + 76px);width:auto}.chat-emoji-grid{grid-template-columns:repeat(7,1fr)}.chat-v83 .chat-message,.chat-v83 .chat-message.mine{grid-template-columns:30px minmax(0,1fr)}.chat-v83 .chat-message.mine .chat-avatar{grid-column:1}.chat-v83 .chat-message.mine .chat-message-content{grid-column:2}}

/* =========================================================
   OHD Chat V8.5 — stable viewport, composer and mobile inbox
   ========================================================= */
.chat-v83.chat-workspace{
  height:calc(100dvh - var(--topbar-height,70px) - 52px);
  min-height:590px;
  max-height:calc(100dvh - var(--topbar-height,70px) - 52px);
  overflow:hidden;
}
.chat-v83 .chat-sidebar,
.chat-v83 .chat-main{min-height:0;overflow:hidden}
.chat-v83 .chat-main{
  display:grid!important;
  grid-template-rows:auto auto minmax(0,1fr) auto;
  height:100%;
}
.chat-v83 .chat-message-search[hidden],
.chat-v83 .chat-emoji-picker[hidden]{display:none!important}
.chat-v83 .chat-messages{
  min-height:0;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
}
.chat-v83 .chat-composer{
  position:relative!important;
  inset:auto!important;
  flex:none;
  z-index:12;
  width:100%;
  margin:0;
  box-sizing:border-box;
}
.chat-v83 .chat-composer-box{min-width:0}
.chat-v83 .chat-composer-row{min-width:0}
.chat-v83 .chat-composer textarea{
  min-width:0;
  height:40px!important;
  min-height:40px!important;
  max-height:128px!important;
  overflow-y:auto!important;
  resize:none!important;
}
.chat-v83 .chat-send-button{flex:none}
.chat-sidebar-home{
  display:grid;
  grid-template-columns:36px minmax(0,1fr);
  gap:10px;
  align-items:center;
  margin:3px 12px 7px;
  padding:9px 11px;
  border:1px solid transparent;
  border-radius:13px;
  color:var(--text);
}
.chat-sidebar-home>svg{width:18px;color:var(--yellow);justify-self:center}
.chat-sidebar-home strong,.chat-sidebar-home small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chat-sidebar-home small{font-size:10px;color:var(--muted);margin-top:2px}
.chat-sidebar-home:hover,.chat-sidebar-home.active{background:color-mix(in srgb,var(--yellow) 9%,transparent);border-color:color-mix(in srgb,var(--yellow) 22%,var(--line))}
.chat-v83 .chat-emoji-picker{max-height:min(430px,65vh)}
.chat-v83 .chat-emoji-grid button{cursor:pointer;touch-action:manipulation}
.chat-v83 .chat-conversation[hidden],
.chat-v83 .chat-channel[hidden]{display:none!important}
.chat-private-empty-filter{padding:22px 14px;text-align:center;color:var(--muted);font-size:11px}

/* Keep the previous compact, left-aligned conversation stream. */
.chat-v83 .chat-message,
.chat-v83 .chat-message.mine{
  grid-template-columns:38px minmax(0,720px)!important;
  justify-content:start!important;
}
.chat-v83 .chat-message.mine .chat-avatar{grid-column:1!important}
.chat-v83 .chat-message.mine .chat-message-content{grid-column:2!important;grid-row:1!important;align-items:flex-start!important}
.chat-v83 .chat-message.mine .chat-bubble{border-radius:5px 16px 16px 16px}

/* Admin chat: contain large grids and prevent horizontal overflow. */
.chat-admin-v83,.chat-admin-v83 *{min-width:0}
.chat-admin-v83 .chat-admin-panel,.chat-admin-v83 .chat-channels-admin{overflow:hidden}
.chat-admin-v83 .conversation-admin-row{overflow-wrap:anywhere}

@media(max-width:980px){
  .chat-v83.chat-workspace{
    height:calc(100dvh - var(--mobile-top-height,64px) - var(--mobile-nav-height,78px) - env(safe-area-inset-top) - env(safe-area-inset-bottom));
    min-height:420px;
    max-height:none;
  }
  .chat-v83 .chat-main{height:100%;min-height:0}
  .chat-v83 .chat-messages{padding-bottom:16px}
  .chat-v83 .chat-composer{padding-bottom:calc(8px + env(safe-area-inset-bottom))!important}
  .chat-v83.chat-home-state .chat-sidebar{
    transform:none!important;
    opacity:1!important;
    pointer-events:auto!important;
    z-index:5!important;
  }
  .chat-v83.chat-home-state .chat-main{display:none!important}
  .chat-v83.chat-has-room .chat-main{transform:none!important;opacity:1!important;pointer-events:auto!important}
  .chat-v83.chat-has-room:not(.chat-list-open) .chat-sidebar{transform:translateX(-104%)!important;opacity:0!important}
  .chat-v83.chat-has-room.chat-list-open .chat-sidebar{transform:none!important;opacity:1!important}
  .chat-v83.chat-has-room.chat-list-open .chat-main{transform:translateX(18%)!important;opacity:.28!important;pointer-events:none!important}
  .chat-v83 .chat-conversations{max-height:none;min-height:120px}
}

@media(max-width:760px){
  .chat-v83.chat-workspace{margin:0!important;border-radius:0!important}
  .chat-v83 .chat-message,.chat-v83 .chat-message.mine{grid-template-columns:30px minmax(0,1fr)!important}
  .chat-v83 .chat-composer{grid-template-columns:minmax(0,1fr) 48px!important;align-items:end!important}
  .chat-v83 .chat-emoji-picker{
    position:fixed!important;
    left:10px!important;
    right:10px!important;
    width:auto!important;
    bottom:calc(var(--mobile-nav-height,78px) + env(safe-area-inset-bottom) + 66px)!important;
    max-height:min(360px,55dvh);
    overflow:hidden;
  }
  .chat-v83 .chat-emoji-grid{overflow-y:auto;max-height:260px}
  .chat-v83.chat-keyboard-open .chat-emoji-picker{bottom:72px!important}
}


/* =========================================================
   OHD Chat V8.6 — outgoing messages and centered chat home
   ========================================================= */
.chat-v83 .chat-main:has(.chat-home),
.chat-v83.chat-home-state .chat-main{
  display:grid!important;
  place-items:center;
  min-height:0;
  height:100%;
}
.chat-v83 .chat-home{
  margin:0 auto!important;
  align-self:center;
  justify-self:center;
}

.chat-v83 .chat-message,
.chat-v83 .chat-message.mine{
  width:100%;
  max-width:920px;
}
.chat-v83 .chat-message.mine{
  grid-template-columns:minmax(0,720px) 38px!important;
  justify-content:end!important;
}
.chat-v83 .chat-message.mine .chat-avatar{
  grid-column:2!important;
  grid-row:1!important;
}
.chat-v83 .chat-message.mine .chat-message-content{
  grid-column:1!important;
  grid-row:1!important;
  align-items:flex-end!important;
  justify-self:end;
  width:min(100%,720px);
}
.chat-v83 .chat-message.mine .chat-meta{
  justify-content:flex-end;
}
.chat-v83 .chat-message.mine .chat-meta time{
  margin-left:0;
}
.chat-v83 .chat-message.mine .chat-bubble{
  border-radius:17px 5px 17px 17px!important;
  background:linear-gradient(135deg,
    color-mix(in srgb,var(--yellow) 24%,var(--panel)),
    color-mix(in srgb,var(--yellow2) 16%,var(--panel))
  )!important;
  border-color:color-mix(in srgb,var(--yellow) 42%,var(--line))!important;
  box-shadow:0 12px 32px color-mix(in srgb,var(--yellow) 10%,transparent);
}
.chat-v83 .chat-message.mine .chat-message-actions{
  justify-content:flex-end;
}

@media(max-width:760px){
  .chat-v83 .chat-message.mine{
    grid-template-columns:minmax(0,1fr) 30px!important;
  }
  .chat-v83 .chat-message.mine .chat-avatar{grid-column:2!important}
  .chat-v83 .chat-message.mine .chat-message-content{grid-column:1!important}
  .chat-v83 .chat-message.mine .chat-bubble{max-width:94%}
  .chat-v83 .chat-main:has(.chat-home),
  .chat-v83.chat-home-state .chat-main{place-items:center}
}

/* OHD Chat V8.7 — mobile search, composer, emoji and persistent fullscreen fixes */
.chat-v83 .chat-main{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  overflow:hidden!important;
}
.chat-v83 .chat-main-head,
.chat-v83 .chat-message-search,
.chat-v83 .chat-channel-banner,
.chat-v83 .chat-composer{flex:0 0 auto!important}
.chat-v83 .chat-messages{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain;
}
.chat-v83 .chat-composer{
  position:relative!important;
  inset:auto!important;
  z-index:40!important;
  margin-top:auto!important;
  background:color-mix(in srgb,var(--panel) 98%,#000 2%)!important;
}
.chat-v83 .chat-message-search{
  position:relative!important;
  z-index:35!important;
  width:auto!important;
  max-width:none!important;
  flex-shrink:0!important;
}
.chat-v83 .chat-message-search input{min-width:0!important;width:100%!important}
.chat-v83 .chat-channel-banner{position:relative!important;z-index:20!important;flex-shrink:0!important}

/* CSS fullscreen is deliberately used instead of the browser Fullscreen API so it survives chat navigation. */
body.chat-fullscreen-active{overflow:hidden!important}
body.chat-fullscreen-active .mobile-top,
body.chat-fullscreen-active .mobile-nav,
body.chat-fullscreen-active .sidebar,
body.chat-fullscreen-active .topbar{display:none!important}
body.chat-fullscreen-active .app-shell{padding:0!important}
body.chat-fullscreen-active .main{padding:0!important;max-width:none!important}
.chat-v83.chat-is-fullscreen{
  position:fixed!important;
  inset:0!important;
  z-index:10050!important;
  width:100vw!important;
  height:100dvh!important;
  max-width:none!important;
  margin:0!important;
  border-radius:0!important;
}
.chat-v83.chat-is-fullscreen .chat-main{height:100dvh!important}

/* The emoji palette must always render above the composer and mobile navigation. */
.chat-v83 .chat-emoji-picker.chat-emoji-open{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  z-index:10150!important;
}
.chat-v83 .chat-emoji-picker:not(.chat-emoji-open){display:none!important}

@media(max-width:980px){
  .chat-v83.chat-workspace{
    height:calc(100dvh - var(--mobile-top-height,64px) - var(--mobile-nav-height,78px) - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 2px)!important;
    max-height:calc(100dvh - var(--mobile-top-height,64px) - var(--mobile-nav-height,78px) - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 2px)!important;
    margin-bottom:0!important;
  }
  .chat-v83 .chat-main{height:100%!important;min-height:0!important}
  .chat-v83 .chat-message-search{
    order:2!important;
    margin:6px 8px!important;
    min-height:44px!important;
    border-radius:13px!important;
  }
  .chat-v83 .chat-channel-banner{order:3!important;margin:0 8px 6px!important}
  .chat-v83 .chat-messages{order:4!important;padding-bottom:14px!important}
  .chat-v83 .chat-composer{
    order:5!important;
    position:relative!important;
    bottom:auto!important;
    padding:8px 8px calc(10px + env(safe-area-inset-bottom))!important;
    box-shadow:0 -12px 28px rgba(0,0,0,.22)!important;
  }
  .chat-v83 .chat-emoji-picker.chat-emoji-open{
    position:fixed!important;
    left:10px!important;
    right:10px!important;
    bottom:calc(var(--mobile-nav-height,78px) + env(safe-area-inset-bottom) + 66px)!important;
    width:auto!important;
    max-height:min(52dvh,430px)!important;
  }
  .chat-v83.chat-is-fullscreen .chat-emoji-picker.chat-emoji-open{
    bottom:calc(env(safe-area-inset-bottom) + 68px)!important;
  }
  .chat-v83.chat-is-fullscreen{
    height:100dvh!important;
    max-height:100dvh!important;
  }
  .chat-v83.chat-is-fullscreen .chat-main{height:100dvh!important;padding-top:env(safe-area-inset-top)!important}
  .chat-v83.chat-is-fullscreen .chat-composer{padding-bottom:calc(10px + env(safe-area-inset-bottom))!important}
}

@media(max-width:430px){
  .chat-v83 .chat-message-search{grid-template-columns:18px minmax(0,1fr) 32px!important;padding:0 8px!important}
  .chat-v83 .chat-message-search input{font-size:14px!important}
  .chat-v83 .chat-channel-banner{font-size:10px!important}
}


/* ===== V8.8 — Disponibilité du module Messages ===== */
.chat-availability{border:1px solid color-mix(in srgb,var(--yellow) 22%,transparent);border-radius:16px;padding:18px;margin:0;background:color-mix(in srgb,var(--panel) 88%,transparent)}
.chat-availability legend{padding:0 8px;font-weight:800;color:var(--text)}
.chat-availability>p{margin:0 0 14px;color:var(--muted,#9da4b2);font-size:.9rem}
.chat-availability-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.chat-mode-card{display:block;position:relative;cursor:pointer;min-width:0}
.chat-mode-card input{position:absolute;opacity:0;pointer-events:none}
.chat-mode-card span{display:flex;flex-direction:column;gap:6px;height:100%;min-height:112px;padding:16px;border:1px solid color-mix(in srgb,var(--text) 14%,transparent);border-radius:14px;background:color-mix(in srgb,var(--bg) 44%,transparent);transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}
.chat-mode-card b{font-size:.98rem}
.chat-mode-card small{color:var(--muted,#9da4b2);line-height:1.45}
.chat-mode-card:hover span{border-color:color-mix(in srgb,var(--yellow) 48%,transparent);transform:translateY(-1px)}
.chat-mode-card input:checked+span{border-color:var(--yellow);background:color-mix(in srgb,var(--yellow) 10%,var(--panel));box-shadow:0 0 0 1px color-mix(in srgb,var(--yellow) 28%,transparent),0 12px 34px color-mix(in srgb,var(--yellow) 10%,transparent)}
.chat-mode-card input:focus-visible+span{outline:2px solid var(--yellow);outline-offset:3px}
.chat-admin-live.chat-mode-admin_only i{background:#f5a623;box-shadow:0 0 12px #f5a623}
.chat-admin-live.chat-mode-disabled i{background:#ef5b6b;box-shadow:0 0 12px #ef5b6b}
@media(max-width:900px){.chat-availability-options{grid-template-columns:1fr}.chat-mode-card span{min-height:0}}

/* V9.1 — Mon espace : organisation et carte de session */
.profile-account-summary-v62 .profile-card-head-v62 p{max-width:28ch}
.profile-session-grid-v91{display:grid;grid-template-columns:1fr;gap:9px;margin:0 0 16px}
.profile-session-grid-v91 article{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:center;min-width:0;padding:12px 13px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--panel) 91%,transparent)}
.profile-session-icon-v91{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;color:var(--yellow);background:color-mix(in srgb,var(--yellow) 10%,transparent)}
.profile-session-icon-v91 svg{width:18px;height:18px}.profile-session-icon-v91.is-online{color:#56dfa2;background:rgba(54,207,139,.1)}
.profile-session-grid-v91 article>div{display:grid;gap:3px;min-width:0}.profile-session-grid-v91 small{color:var(--muted);font-size:.72rem}.profile-session-grid-v91 strong{display:block;min-width:0;overflow-wrap:anywhere;font-size:.92rem;line-height:1.3}
.profile-account-actions-v91{display:grid;gap:9px}.profile-account-actions-v91 form{margin:0}.profile-account-actions-v91 .btn{min-height:44px}
.profile-side-v62>.profile-card-v62{overflow:hidden}
@media (min-width:651px) and (max-width:900px){.profile-session-grid-v91{grid-template-columns:repeat(3,minmax(0,1fr))}.profile-session-grid-v91 article{grid-template-columns:1fr;text-align:center;justify-items:center}.profile-session-grid-v91 article>div{justify-items:center}.profile-account-actions-v91{grid-template-columns:1fr 1fr}.profile-account-actions-v91 form{display:contents}}
@media (max-width:650px){.profile-subnav-v62{position:sticky;top:calc(var(--mobile-top-height,64px) + env(safe-area-inset-top,0px));z-index:20;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.profile-workspace-v62{gap:13px}.profile-card-v62{scroll-margin-top:130px}.profile-session-grid-v91{grid-template-columns:1fr 1fr}.profile-session-grid-v91 article:last-child{grid-column:1/-1}.profile-session-grid-v91 article{padding:11px}.profile-account-actions-v91{gap:8px}}
@media (max-width:390px){.profile-session-grid-v91{grid-template-columns:1fr}.profile-session-grid-v91 article:last-child{grid-column:auto}}

/* V9.1.1 — Mon espace : carte session compacte et fiable */
.profile-account-summary-v911{min-width:0!important}
.profile-session-list-v911{display:grid!important;gap:0!important;margin:4px 0 18px!important;padding:0!important;border-top:1px solid var(--line)!important}
.profile-session-list-v911>div{display:grid!important;grid-template-columns:minmax(86px,.8fr) minmax(0,1.2fr)!important;align-items:center!important;gap:14px!important;min-width:0!important;padding:13px 0!important;border-bottom:1px solid var(--line)!important}
.profile-session-list-v911 dt,.profile-session-list-v911 dd{margin:0!important;min-width:0!important}
.profile-session-list-v911 dt{color:var(--muted)!important;font-size:.78rem!important;font-weight:650!important;line-height:1.25!important}
.profile-session-list-v911 dd{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;color:var(--text)!important;font-size:.92rem!important;font-weight:800!important;line-height:1.25!important;text-align:right!important;overflow-wrap:anywhere!important}
.profile-session-value-icon-v911{display:grid!important;place-items:center!important;flex:0 0 auto!important;width:26px!important;height:26px!important;border-radius:8px!important;color:var(--yellow)!important;background:rgba(255,255,255,.035)!important}
.profile-session-value-icon-v911 svg{width:14px!important;height:14px!important}
.profile-session-list-v911 dd.is-active{color:#58dfa4!important}
.profile-status-dot-v911{width:8px!important;height:8px!important;border-radius:999px!important;background:#58dfa4!important;box-shadow:0 0 12px rgba(88,223,164,.75)!important;flex:0 0 auto!important}
.profile-account-actions-v911{display:grid!important;gap:9px!important}
.profile-account-actions-v911 form{margin:0!important}
.profile-account-actions-v911 .btn{width:100%!important;min-height:44px!important;justify-content:center!important}
@media(max-width:980px){.profile-account-summary-v911{grid-column:1/-1!important}.profile-session-list-v911{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;border-top:0!important}.profile-session-list-v911>div{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important;padding:13px!important;border:1px solid var(--line)!important;border-radius:13px!important;background:rgba(255,255,255,.025)!important}.profile-session-list-v911 dd{justify-content:flex-start!important;text-align:left!important}.profile-account-actions-v911{grid-template-columns:1fr 1fr!important}.profile-account-actions-v911 form{display:contents!important}}
@media(max-width:650px){.profile-session-list-v911{grid-template-columns:1fr!important}.profile-session-list-v911>div{display:grid!important;grid-template-columns:110px minmax(0,1fr)!important;align-items:center!important}.profile-session-list-v911 dd{justify-content:flex-end!important;text-align:right!important}.profile-account-actions-v911{grid-template-columns:1fr!important}.profile-account-actions-v911 form{display:block!important}}

/* OHD Stream V9.1.2 — Mon espace premium, construit sur la base stable V9.1.1 */
.profile-page-v912{display:grid;gap:18px;min-width:0;padding-bottom:18px}
.profile-hero-v912{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);background:var(--panel);box-shadow:0 22px 60px rgba(0,0,0,.24);min-height:310px}
.profile-hero-v912>.site-hero-collage,.profile-hero-v912>.site-hero-fallback{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:var(--hero-poster-opacity,.52)!important}
.profile-hero-overlay-v912{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,8,14,.98) 0%,rgba(8,8,14,.9) 42%,rgba(8,8,14,.42) 72%,rgba(8,8,14,.15) 100%),linear-gradient(0deg,rgba(8,8,14,.92),transparent 58%);z-index:1}
.profile-hero-content-v912{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:34px 36px 28px;min-height:220px}
.profile-identity-v912{display:flex;align-items:center;gap:22px;min-width:0}
.profile-avatar-v912{width:116px;height:116px;flex:0 0 116px;border-radius:28px;overflow:hidden;display:grid;place-items:center;font-size:2.65rem;font-weight:900;color:#fff;background:linear-gradient(135deg,var(--yellow),var(--yellow2));border:3px solid rgba(255,255,255,.12);box-shadow:0 18px 44px rgba(0,0,0,.4),0 0 0 5px color-mix(in srgb,var(--yellow) 13%,transparent)}
.profile-avatar-v912 img{width:100%;height:100%;object-fit:cover}
.profile-identity-copy-v912{min-width:0}.profile-badges-v912{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:9px}.profile-online-v912{display:inline-flex;align-items:center;gap:7px;font-size:.75rem;font-weight:750;color:#71e7ad}.profile-online-v912 i{width:8px;height:8px;border-radius:50%;background:#58dfa4;box-shadow:0 0 12px rgba(88,223,164,.8)}
.profile-identity-copy-v912 h1{margin:0;color:#fff;font-size:clamp(2.15rem,4vw,3.65rem);line-height:1.02;letter-spacing:-.045em}.profile-identity-copy-v912>p{margin:9px 0 0;color:rgba(255,255,255,.7);font-size:.94rem}.profile-identity-copy-v912>p span{padding:0 5px;color:var(--yellow)}
.profile-hero-bio-v912{margin-top:12px;max-width:620px;color:rgba(255,255,255,.78);line-height:1.55;font-size:.91rem}
.profile-hero-actions-v912{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.profile-hero-actions-v912 .btn{white-space:nowrap}
.profile-hero-footer-v912{position:relative;z-index:2;display:grid;grid-template-columns:minmax(210px,.7fr) minmax(0,1.3fr);gap:22px;align-items:center;padding:18px 26px 20px;border-top:1px solid rgba(255,255,255,.08);background:rgba(8,8,14,.68);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.profile-progress-v912{min-width:0}.profile-progress-head-v912{display:flex;justify-content:space-between;gap:12px;margin-bottom:9px;color:rgba(255,255,255,.72);font-size:.78rem}.profile-progress-head-v912 strong{color:#fff}.profile-progress-track-v912{height:7px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.profile-progress-track-v912 span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--yellow),var(--yellow2));box-shadow:0 0 18px color-mix(in srgb,var(--yellow) 35%,transparent)}
.profile-hero-stats-v912{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.profile-hero-stats-v912 article{display:flex;align-items:center;gap:10px;min-width:0;padding:10px 12px;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:rgba(255,255,255,.035)}.profile-hero-stats-v912 article>span{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:10px;color:var(--yellow);background:color-mix(in srgb,var(--yellow) 10%,transparent)}.profile-hero-stats-v912 svg{width:16px;height:16px}.profile-hero-stats-v912 article>div{display:grid;min-width:0}.profile-hero-stats-v912 strong{font-size:1.05rem;color:#fff;line-height:1}.profile-hero-stats-v912 small{margin-top:4px;color:rgba(255,255,255,.56);font-size:.7rem;white-space:nowrap}
.profile-nav-v912{display:flex;align-items:center;gap:7px;padding:7px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--panel) 92%,transparent);overflow-x:auto;scrollbar-width:none}.profile-nav-v912::-webkit-scrollbar{display:none}.profile-nav-v912 a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 15px;border-radius:11px;color:var(--muted);font-size:.83rem;font-weight:750;white-space:nowrap}.profile-nav-v912 a:hover,.profile-nav-v912 a.is-active{color:var(--text);background:color-mix(in srgb,var(--yellow) 10%,transparent)}.profile-nav-v912 a.is-active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--yellow) 25%,transparent)}.profile-nav-v912 svg{width:16px;height:16px}
.profile-layout-v912{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(310px,.65fr);gap:18px;align-items:start;min-width:0}.profile-main-v912,.profile-side-v912{min-width:0}.profile-side-v912{display:grid;gap:16px;position:sticky;top:calc(var(--header-height,70px) + 18px)}
.profile-panel-v912{min-width:0;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--panel) 96%,transparent);box-shadow:0 14px 40px rgba(0,0,0,.15);padding:22px;overflow:hidden}.profile-panel-head-v912{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}.profile-panel-head-v912.compact{margin-bottom:17px}.profile-panel-head-v912 h2{margin:4px 0 5px;font-size:1.2rem}.profile-panel-head-v912 p{margin:0;color:var(--muted);font-size:.84rem;line-height:1.5}.profile-panel-icon-v912{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:13px;color:var(--yellow);background:color-mix(in srgb,var(--yellow) 9%,transparent);border:1px solid color-mix(in srgb,var(--yellow) 16%,transparent)}.profile-panel-icon-v912 svg{width:18px;height:18px}
.profile-fields-v912{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.profile-fields-v912 label{min-width:0}.profile-fields-v912 .is-wide{grid-column:1/-1}.profile-fields-v912 textarea{resize:vertical}.profile-fields-v912 label>small{display:block;margin-top:7px;text-align:right;color:var(--muted)}
.profile-avatar-section-v912{margin-top:24px;padding-top:22px;border-top:1px solid var(--line);scroll-margin-top:100px}.profile-section-heading-v912 h3{margin:4px 0 5px;font-size:1.08rem}.profile-section-heading-v912 p{margin:0;color:var(--muted);font-size:.84rem}.profile-avatar-editor-v912{display:grid;grid-template-columns:92px minmax(0,1fr);gap:18px;align-items:center;margin-top:18px;padding:16px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.018)}.profile-avatar-preview-v912{width:92px;height:92px;border-radius:23px;overflow:hidden;display:grid;place-items:center;font-size:2rem;font-weight:900;color:#fff;background:linear-gradient(135deg,var(--yellow),var(--yellow2));box-shadow:0 12px 28px rgba(0,0,0,.3)}.profile-avatar-preview-v912 img{width:100%;height:100%;object-fit:cover}.profile-avatar-actions-v912{display:flex;gap:9px;flex-wrap:wrap}.profile-avatar-editor-copy-v912>p{margin:10px 0 0;color:var(--muted);font-size:.78rem}.profile-avatar-gallery-v912{margin-top:14px;border:1px solid var(--line);border-radius:15px;overflow:hidden}.profile-avatar-gallery-v912 summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;padding:14px 15px;font-size:.86rem;font-weight:750}.profile-avatar-gallery-v912 summary::-webkit-details-marker{display:none}.profile-avatar-gallery-v912 summary small{margin-left:auto;color:var(--muted);font-weight:600}.profile-avatar-gallery-v912 summary svg{width:16px;height:16px;transition:transform .2s}.profile-avatar-gallery-v912[open] summary svg{transform:rotate(180deg)}.profile-avatar-grid-v912{padding:2px 14px 15px;grid-template-columns:repeat(10,minmax(44px,1fr))}
.profile-savebar-v912{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:22px;padding:15px 16px;border:1px solid color-mix(in srgb,var(--yellow) 18%,var(--line));border-radius:15px;background:color-mix(in srgb,var(--yellow) 5%,transparent)}.profile-savebar-v912>div{display:grid;gap:3px}.profile-savebar-v912 b{font-size:.87rem}.profile-savebar-v912 span{color:var(--muted);font-size:.75rem}
.profile-session-user-v912{display:flex;align-items:center;gap:12px;padding:12px;margin-bottom:15px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.02)}.profile-session-avatar-v912{width:46px;height:46px;flex:0 0 46px;border-radius:13px;overflow:hidden;display:grid;place-items:center;font-weight:900;color:#fff;background:linear-gradient(135deg,var(--yellow),var(--yellow2))}.profile-session-avatar-v912 img{width:100%;height:100%;object-fit:cover}.profile-session-user-v912>div{display:grid;min-width:0}.profile-session-user-v912 strong,.profile-session-user-v912 small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-session-user-v912 small{margin-top:3px;color:var(--muted);font-size:.76rem}
.profile-session-list-v912{display:grid;margin:0 0 15px;padding:0;border-top:1px solid var(--line)}.profile-session-list-v912>div{display:grid;grid-template-columns:minmax(105px,.85fr) minmax(0,1.15fr);gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);min-width:0}.profile-session-list-v912 dt,.profile-session-list-v912 dd{margin:0;min-width:0}.profile-session-list-v912 dt{color:var(--muted);font-size:.76rem}.profile-session-list-v912 dd{font-size:.84rem;font-weight:800;text-align:right;overflow-wrap:normal;word-break:normal;hyphens:none}.profile-session-list-v912 dd.is-active{display:flex;justify-content:flex-end;align-items:center;gap:7px;color:#58dfa4}.profile-session-list-v912 dd.is-active i{width:8px;height:8px;border-radius:50%;background:#58dfa4;box-shadow:0 0 12px rgba(88,223,164,.65)}.profile-session-actions-v912{display:grid;gap:8px}.profile-session-actions-v912 form{margin:0}.profile-session-actions-v912 .btn,.profile-button-full-v912{width:100%;justify-content:center;min-height:43px}.profile-switch-v912{margin-bottom:14px}.profile-panel-v912 label+label{margin-top:12px}
@media(max-width:1180px){.profile-layout-v912{grid-template-columns:minmax(0,1fr) 330px}.profile-hero-content-v912{padding:30px 28px 24px}.profile-avatar-grid-v912{grid-template-columns:repeat(8,minmax(42px,1fr))}}
@media(max-width:980px){.profile-layout-v912{grid-template-columns:1fr}.profile-side-v912{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.profile-session-v912{grid-column:1/-1}.profile-hero-content-v912{align-items:flex-end}.profile-hero-actions-v912{display:none}.profile-hero-footer-v912{grid-template-columns:1fr}.profile-hero-stats-v912{grid-template-columns:repeat(4,minmax(0,1fr))}.profile-avatar-grid-v912{grid-template-columns:repeat(10,minmax(40px,1fr))}}
@media(max-width:700px){.profile-page-v912{gap:13px}.profile-hero-v912{min-height:0;border-radius:17px}.profile-hero-v912>.site-hero-collage,.profile-hero-v912>.site-hero-fallback{height:170px!important}.profile-hero-overlay-v912{background:linear-gradient(0deg,rgba(8,8,14,.99) 0%,rgba(8,8,14,.91) 50%,rgba(8,8,14,.26) 100%)}.profile-hero-content-v912{min-height:255px;padding:88px 18px 18px;align-items:flex-end}.profile-identity-v912{align-items:flex-end;gap:14px}.profile-avatar-v912{width:78px;height:78px;flex-basis:78px;border-radius:21px;font-size:1.8rem}.profile-identity-copy-v912 h1{font-size:clamp(1.8rem,9vw,2.5rem)}.profile-identity-copy-v912>p{font-size:.78rem}.profile-hero-bio-v912{display:none}.profile-badges-v912{gap:6px;margin-bottom:6px}.profile-online-v912{font-size:.68rem}.profile-hero-footer-v912{padding:14px}.profile-progress-v912{display:none}.profile-hero-stats-v912{grid-template-columns:1fr 1fr;gap:8px}.profile-hero-stats-v912 article{padding:10px}.profile-nav-v912{position:sticky;top:calc(var(--mobile-top-height,64px) + env(safe-area-inset-top));z-index:25;border-radius:13px}.profile-nav-v912 a{flex:1;min-width:72px;padding:0 9px}.profile-nav-v912 a span{font-size:.75rem}.profile-panel-v912{padding:17px;border-radius:16px}.profile-fields-v912{grid-template-columns:1fr;gap:13px}.profile-fields-v912 .is-wide{grid-column:auto}.profile-avatar-editor-v912{grid-template-columns:68px minmax(0,1fr);gap:13px;padding:13px}.profile-avatar-preview-v912{width:68px;height:68px;border-radius:18px}.profile-avatar-actions-v912 .btn{width:100%;justify-content:center}.profile-avatar-grid-v912{grid-template-columns:repeat(6,minmax(38px,1fr))}.profile-savebar-v912{position:sticky;bottom:calc(var(--mobile-nav-height,78px) + env(safe-area-inset-bottom) + 8px);z-index:18;flex-direction:column;align-items:stretch}.profile-savebar-v912>div{display:none}.profile-savebar-v912 .btn{width:100%;justify-content:center}.profile-side-v912{grid-template-columns:1fr}.profile-session-v912{grid-column:auto}.profile-session-list-v912>div{grid-template-columns:100px minmax(0,1fr)}.profile-panel-v912 label+label{margin-top:10px}}
@media(max-width:390px){.profile-hero-content-v912{padding-inline:14px}.profile-avatar-v912{width:66px;height:66px;flex-basis:66px;border-radius:18px}.profile-identity-copy-v912 h1{font-size:1.75rem}.profile-online-v912{display:none}.profile-nav-v912 a span{display:none}.profile-nav-v912 a{min-width:48px}.profile-avatar-grid-v912{grid-template-columns:repeat(5,minmax(38px,1fr))}.profile-session-list-v912>div{grid-template-columns:1fr;gap:5px}.profile-session-list-v912 dd{text-align:left}.profile-session-list-v912 dd.is-active{justify-content:flex-start}}
