/* Rubrique adulte : présentation locale, sans modifier les autres pages gate. */
.adult-gate { color:var(--text-primary); background:radial-gradient(ellipse at 90% 0%,#fce7f3 0,transparent 580px),var(--bg-secondary); padding:24px 0 40px; }
.adult-gate-shell { width:100%; max-width:1232px; margin:0 auto; padding:0 24px; }
.adult-gate a { text-underline-offset:3px; }
.adult-gate a:focus-visible,.adult-gate summary:focus-visible { outline:3px solid #9d174d; outline-offset:4px; }
.adult-gate-back { display:inline-flex; align-items:center; gap:8px; min-height:44px; color:var(--text-secondary); }
.adult-gate-hero { position:relative; isolation:isolate; overflow:hidden; margin-top:12px; padding:36px; border:1px solid #74314f; border-radius:20px; color:#fff; background:radial-gradient(ellipse at 95% 0%,#842849 0,transparent 65%),linear-gradient(120deg,#261322,#401b3a); }
.adult-gate-hero > :not(.adult-gate-emblem) { position:relative; z-index:1; }
.adult-gate-emblem { position:absolute; right:52px; top:50%; transform:translateY(-50%) rotate(-10deg); display:grid; place-items:center; width:230px; height:230px; border:1px solid #ffffff12; border-radius:50%; background:#ffffff03; color:#fda4af; pointer-events:none; }
.adult-gate-emblem::before { content:""; position:absolute; inset:-34px; border:1px solid #ffffff0c; border-radius:50%; }
.adult-gate-emblem svg { width:150px; height:150px; stroke:currentColor; stroke-width:1; opacity:.28; }
.adult-gate-hero h1,.adult-gate-hero .adult-gate-intro { max-width:780px; }
.adult-gate-hero h1 { color:#fff; letter-spacing:-.025em; }
.adult-gate-hero .adult-gate-intro { color:#f2dae6; }
.adult-gate-hero .adult-gate-consent { color:#d9c5d2; }
.adult-gate-hero .adult-gate-consent a { color:#fff; }
.adult-gate-primary { color:#fff; background:#be185d; border-color:#be185d; }
.adult-gate-primary:hover { color:#fff; background:#9d174d; border-color:#9d174d; }
.adult-gate-hero .adult-gate-primary { color:#9d174d; background:#fff; border-color:#fff; box-shadow:0 5px 18px #500d3026; }
.adult-gate-hero .adult-gate-primary:hover { color:#831843; background:#fce7f3; border-color:#fce7f3; }
.adult-gate-secondary { color:#fff; background:transparent; border-color:#f9a8d4; }
.adult-gate-secondary:hover { color:#fff; background:#632645; border-color:#fff; }
.adult-gate-hero a:focus-visible { outline-color:#fda4af; }
.adult-gate-age { display:inline-flex; align-items:center; gap:9px; font-size:.8rem; font-weight:500; color:#f9d8e7; }
.adult-gate-age strong { display:inline-flex; align-items:center; min-height:26px; padding:3px 8px; border-radius:6px; border:1px solid #fda4af66; background:#fb71851a; color:#fff; font-size:.75rem; }
.adult-gate-age > span { font-weight:400; }
.adult-gate h1 { font-size:2.35rem; line-height:1.2; margin:16px 0; }
.adult-gate-intro { max-width:780px; margin:0; color:var(--text-secondary); line-height:1.6; }
.adult-gate-facts { display:flex; align-items:center; flex-wrap:wrap; gap:10px 24px; margin:22px 0 0; color:var(--text-secondary); font-size:.8125rem; }
.adult-gate-facts > span { display:inline-flex; align-items:center; gap:7px; color:#f2dae6; }
.adult-gate-facts svg { color:#fda4af; }
.adult-gate-consent { margin:0; max-width:630px; font-size:1rem; line-height:1.65; color:var(--text-secondary); }
.adult-gate-intro + .adult-gate-consent { margin-top:12px; }
.adult-gate-consent a,.adult-gate-help p a { color:var(--text-primary); text-decoration:underline; }
.adult-gate-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.adult-gate-button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:46px; padding:11px 18px; border-width:1px; border-style:solid; border-radius:9px; font-size:.95rem; font-weight:600; line-height:1.4; text-align:center; text-decoration:none; }
.adult-gate-button svg { flex-shrink:0; }
.adult-gate-section { margin-top:32px; scroll-margin-top:110px; }
.adult-gate h2 { display:flex; align-items:center; gap:9px; font-size:1.25rem; line-height:1.4; margin:0 0 16px; }
.adult-gate h2 svg { flex-shrink:0; color:#be185d; }
.adult-gate-categories { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.adult-gate-category { --category-color:#e11d48; --category-ink:#be123c; --category-tint:#fff1f2; --category-line:#fecdd3; display:flex; flex-direction:column; min-width:0; background:var(--bg-primary); border:1px solid var(--category-line); border-radius:12px; }
.adult-gate-category[data-category="14250"] { --category-color:#a855f7; --category-ink:#7e22ce; --category-tint:#faf5ff; --category-line:#e9d5ff; }
.adult-gate-category[data-category="14100"] { --category-color:#ec4899; --category-ink:#be185d; --category-tint:#fdf2f8; --category-line:#fbcfe8; }
.adult-gate-category[data-category="11024"] { --category-color:#ef4444; --category-ink:#b91c1c; --category-tint:#fff1f2; --category-line:#fecdd3; }
.adult-gate-category[data-category="11025"] { --category-color:#8b5cf6; --category-ink:#6d28d9; --category-tint:#f5f3ff; --category-line:#ddd6fe; }
.adult-gate-category:hover,.adult-gate-category:focus-within { border-color:var(--category-ink); }
.adult-gate-category-head { display:flex; align-items:center; gap:12px; min-height:106px; padding:18px; border-radius:11px; color:var(--text-primary); text-decoration:none; }
.adult-gate-category-head:hover { background:var(--category-tint); color:var(--text-primary); }
.adult-gate-category-heading { flex:1; min-width:0; }
.adult-gate-category-icon { display:grid; place-items:center; width:44px; height:44px; flex-shrink:0; border-radius:12px; color:var(--category-ink); background:var(--category-tint); border:1px solid var(--category-line); }
.adult-gate-category-icon svg { width:24px; height:24px; }
.adult-gate-category h3 a > svg { color:var(--category-ink); }
.adult-gate-category h3 { font-size:1rem; line-height:1.4; margin:0; }
.adult-gate-category h3 a svg { flex-shrink:0; }
.adult-gate-count { display:block; font-size:.8rem; font-weight:400; margin-top:4px; color:var(--text-secondary); }
.adult-gate-category-details { margin:auto 18px 0; border-top:1px solid var(--border-color); }
.adult-gate-category-details summary { min-height:44px; padding:12px 0; font-size:.8125rem; line-height:1.5; color:var(--category-ink); cursor:pointer; }
.adult-gate-subcategories { list-style:none; padding:0 0 12px; margin:0; }
.adult-gate-subcategories li + li { border-top:1px solid var(--border-color); }
.adult-gate-subcategories a:hover,.adult-gate-subcategories a:focus-visible { background:var(--category-tint); }
.adult-gate-subcategories a { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:44px; padding:8px 0; font-size:.9rem; color:var(--text-primary); text-decoration:none; }
.adult-gate-subcategories small { flex-shrink:0; color:var(--text-secondary); font-size:.8rem; }
.adult-gate-region { background:linear-gradient(120deg,#fdf2f8,var(--bg-primary) 65%); border:1px solid #fbcfe8; border-radius:14px; padding:24px; }
.adult-gate-region h3 { font-size:.9rem; margin:18px 0 8px; color:var(--text-secondary); }
.adult-gate-regions { display:flex; flex-wrap:wrap; gap:8px; }
.adult-gate-regions a { display:inline-flex; align-items:center; min-height:44px; padding:8px 12px; color:var(--text-primary); border:1px solid var(--border-color); border-radius:8px; background:var(--bg-primary); text-decoration:none; font-size:.9rem; }
.adult-gate-regions a:hover { border-color:#be185d; color:#be185d; background:#fdf2f8; }
.adult-gate-recent { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.adult-gate-ad { display:flex; align-items:center; gap:12px; min-width:0; padding:12px; border:1px solid var(--border-color); border-radius:10px; background:var(--bg-primary); color:var(--text-primary); text-decoration:none; }
.adult-gate-ad:hover { border-color:var(--primary-color); }
.adult-gate-thumbnail { position:relative; width:64px; height:64px; flex-shrink:0; overflow:hidden; display:grid; place-items:center; border-radius:10px; background:linear-gradient(135deg,#fce7f3,#ede9fe); }
.adult-gate-thumbnail img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:blur(3px); }
.adult-gate-thumbnail > span { position:relative; padding:3px 6px; background:var(--bg-primary); color:var(--text-secondary); border-radius:4px; font-weight:600; font-size:.75rem; }
.adult-gate-thumbnail img + span { position:absolute; right:4px; bottom:4px; padding:2px 4px; font-size:.65rem; line-height:1.4; }
.adult-gate-ad > svg { flex-shrink:0; color:var(--text-secondary); }
.adult-gate-ad-text { min-width:0; flex:1; }
.adult-gate-ad-text strong { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; font-size:.9rem; line-height:1.45; overflow-wrap:anywhere; }
.adult-gate-ad-text > span { display:flex; align-items:center; gap:5px; font-size:.8rem; color:var(--text-secondary); margin-top:5px; overflow-wrap:anywhere; }
.adult-gate-ad-text svg { flex-shrink:0; }
.adult-gate-text-link { display:inline-flex; align-items:center; gap:8px; min-height:44px; margin-top:12px; color:#9d174d; }
.adult-gate-publish { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:24px; border:1px solid #fbcfe8; border-radius:14px; background:#fdf2f8; }
.adult-gate-publish h2 { margin-bottom:8px; max-width:620px; }
.adult-gate-publish p { color:var(--text-secondary); margin:0; line-height:1.6; }
.adult-gate-publish .adult-gate-button { flex-shrink:0; }
.adult-gate-help { padding:24px; background:var(--bg-primary); border:1px solid var(--border-color); border-radius:12px; }
.adult-gate-help details + details { border-top:1px solid var(--border-color); }
.adult-gate-help summary,.adult-gate-explore > summary { min-height:44px; padding:12px 0; font-weight:500; cursor:pointer; line-height:1.5; }
.adult-gate-help p { color:var(--text-secondary); margin:0 0 16px; max-width:850px; line-height:1.65; }
.adult-gate-about p { max-width:850px; color:var(--text-secondary); line-height:1.65; }
.adult-gate-related { display:flex; flex-wrap:wrap; gap:8px 24px; margin-top:12px; }
.adult-gate-related a { display:inline-flex; align-items:center; gap:8px; min-height:44px; font-size:.9rem; color:var(--text-secondary); }
.adult-gate-related svg { flex-shrink:0; }
.adult-gate-disclaimer { margin:24px 0 0; padding-top:20px; border-top:1px solid var(--border-color); font-size:.8rem; line-height:1.65; color:var(--text-secondary); }
.adult-gate-explore { margin-top:20px; }
@media (max-width:767px) {
    .adult-gate { padding-top:12px; }
    .adult-gate-shell { padding:0 16px; }
    .adult-gate-hero { padding:24px 20px; margin-top:8px; border-radius:16px; }
    .adult-gate-emblem { right:-65px; top:42px; transform:rotate(-15deg); width:175px; height:175px; opacity:.5; }
    .adult-gate h1 { font-size:1.65rem; }
    .adult-gate-categories,.adult-gate-recent { grid-template-columns:minmax(0,1fr); }
    .adult-gate-category-head { min-height:92px; padding:16px; }
    .adult-gate-category-details { margin:0 16px; }
    .adult-gate-region,.adult-gate-help,.adult-gate-publish { padding:20px; }
    .adult-gate-publish { flex-direction:column; align-items:stretch; gap:16px; }
    .adult-gate-section { margin-top:24px; }
    .adult-gate-actions { align-items:stretch; }
    .adult-gate-button { width:100%; }
}
[data-theme="dark"] .adult-gate { background:radial-gradient(ellipse at 90% 0%,#411e39 0,transparent 580px),var(--bg-secondary); }
[data-theme="dark"] .adult-gate-category { --category-ink:#fda4af; --category-tint:#321e2b; --category-line:#714252; }
[data-theme="dark"] .adult-gate-category[data-category="14250"] { --category-ink:#d8b4fe; --category-tint:#2c203d; --category-line:#60407d; }
[data-theme="dark"] .adult-gate-category[data-category="14100"] { --category-ink:#f9a8d4; --category-tint:#331e30; --category-line:#754260; }
[data-theme="dark"] .adult-gate-category[data-category="11024"] { --category-ink:#fca5a5; --category-tint:#341e29; --category-line:#75424b; }
[data-theme="dark"] .adult-gate-category[data-category="11025"] { --category-ink:#c4b5fd; --category-tint:#26203d; --category-line:#55417d; }
[data-theme="dark"] .adult-gate-region { background:linear-gradient(120deg,#331e30,var(--bg-primary) 65%); border-color:#754260; }
[data-theme="dark"] .adult-gate h2 svg { color:#f9a8d4; }
[data-theme="dark"] .adult-gate-regions a:hover { color:#f9a8d4; border-color:#f9a8d4; background:#331e30; }
[data-theme="dark"] .adult-gate-thumbnail { background:linear-gradient(135deg,#331e30,#26203d); }
[data-theme="dark"] .adult-gate-text-link { color:#f9a8d4; }
[data-theme="dark"] .adult-gate a:focus-visible,[data-theme="dark"] .adult-gate summary:focus-visible { outline-color:#f9a8d4; }
[data-theme="dark"] .adult-gate-publish { background:#331e30; border-color:#754260; }
@media (max-width:1100px) and (min-width:768px) { .adult-gate-categories { grid-template-columns:repeat(2,minmax(0,1fr)); } .adult-gate-hero h1,.adult-gate-hero .adult-gate-intro { max-width:630px; } .adult-gate-emblem { right:-40px; opacity:.6; } }
@media (prefers-reduced-motion:reduce) { .adult-gate a,.adult-gate-category { transition:none; } }
