/*
Theme Name: AdultLib
Author: AdultLib
Version: 0.3.8
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: adultlib-theme
*/
:root{--al-black:#09070a;--al-panel:#151016;--al-panel2:#21131a;--al-burgundy:#5e0b16;--al-crimson:#9a1728;--al-gold:#c99a3d;--al-gold-light:#f0ce78;--al-text:#fff8ee;--al-muted:#bcaeaa;--al-line:rgba(214,169,82,.25)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--al-black);color:var(--al-text);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;background-image:radial-gradient(circle at 12% 8%,rgba(128,17,34,.24),transparent 30%),radial-gradient(circle at 88% 20%,rgba(201,154,61,.12),transparent 26%);min-height:100vh}a{color:inherit}.site-header{position:sticky;top:0;z-index:20;background:rgba(9,7,10,.91);backdrop-filter:blur(18px);border-bottom:1px solid var(--al-line);box-shadow:0 8px 30px rgba(0,0,0,.25)}.site-header-inner{max-width:1220px;margin:auto;padding:10px 22px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;text-decoration:none}.brand-logo{display:block;width:auto;height:76px;max-width:270px;object-fit:contain}.site-nav{display:flex;align-items:center;gap:22px}.site-nav a{text-decoration:none;color:#e2d7d3;font-weight:650;transition:.2s}.site-nav a:hover{color:var(--al-gold-light)}.hero{min-height:76vh;display:grid;place-items:center;text-align:center;padding:72px 22px;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 0%,rgba(154,23,40,.32),transparent 38%),linear-gradient(180deg,rgba(22,12,17,.25),rgba(9,7,10,.8))}.hero:before,.hero:after{content:"";position:absolute;border:1px solid rgba(201,154,61,.13);border-radius:50%;width:500px;height:500px}.hero:before{left:-340px;top:70px}.hero:after{right:-360px;bottom:-160px}.hero-inner{max-width:930px;position:relative;z-index:1}.hero-logo{width:min(480px,85vw);height:auto;margin:0 auto 20px;filter:drop-shadow(0 18px 30px rgba(0,0,0,.4))}.hero-kicker{color:var(--al-gold-light);text-transform:uppercase;letter-spacing:.24em;font-size:.78rem;font-weight:800}.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.7rem,7vw,6.3rem);line-height:.95;margin:12px 0;background:linear-gradient(180deg,#fff8e9 30%,#d6ad5f);-webkit-background-clip:text;color:transparent}.hero p{font-size:1.18rem;line-height:1.75;color:var(--al-muted);max-width:730px;margin:24px auto}.hero-actions{display:flex;justify-content:center;gap:13px;flex-wrap:wrap}.ghost-button{border:1px solid rgba(225,184,99,.55);border-radius:999px;padding:13px 23px;text-decoration:none;background:rgba(255,255,255,.025);font-weight:750}.ghost-button:hover{background:rgba(201,154,61,.1);border-color:var(--al-gold-light)}.site-main{min-height:70vh;padding:1px 22px 65px}.site-footer{border-top:1px solid var(--al-line);color:#9e8f8c;padding:32px 22px;text-align:center;background:#080608}.entry{max-width:1050px;margin:45px auto}.entry-title{font-family:Georgia,serif;font-size:clamp(2.5rem,6vw,5rem);color:var(--al-gold-light)}
@media(max-width:800px){.brand-logo{height:62px;max-width:210px}.site-header-inner{padding:8px 14px}.hero{padding-top:55px}.hero-logo{width:min(360px,88vw)}}

/* AdultLib 0.3.2 — titres de sections plus compacts */
.entry-title{font-size:clamp(.875rem,1.6vw,1.3rem);line-height:1.2;margin:22px 0 14px}
.lc-section-head h1,.lc-messages aside h2,.lc-dashboard .lc-form>h2{font-size:clamp(.725rem,1.2vw,1rem)!important;line-height:1.25;margin:4px 0 9px}
.lc-profile-summary h2{font-size:clamp(.625rem,1vw,.825rem)!important}
@media(max-width:800px){.entry-title{font-size:.825rem}.lc-section-head h1,.lc-messages aside h2,.lc-dashboard .lc-form>h2{font-size:.7rem!important}}


/* AdultLib 0.3.4 — navigation mobile et tablette */
.menu-toggle{display:none;width:44px;height:42px;padding:9px;border:1px solid rgba(225,184,99,.55);border-radius:10px;background:rgba(255,255,255,.025);cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px;color:var(--al-text)}
.menu-toggle span{display:block;width:22px;height:2px;border-radius:2px;background:var(--al-gold-light);transition:transform .2s ease,opacity .2s ease}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:1024px){
  .site-header-inner{position:relative;flex-wrap:wrap}
  .menu-toggle{display:flex;margin-left:auto}
  .site-nav{display:none;position:absolute;top:100%;left:12px;right:12px;z-index:50;flex-direction:column;align-items:stretch;gap:6px;padding:12px;background:rgba(15,10,14,.98);border:1px solid var(--al-line);border-radius:0 0 16px 16px;box-shadow:0 18px 36px rgba(0,0,0,.45);backdrop-filter:blur(18px)}
  .site-nav.is-open{display:flex}
  .site-nav a{display:block!important;width:100%;padding:12px 14px;border-radius:10px;text-align:left}
  .site-nav a:hover,.site-nav a:focus{background:rgba(201,154,61,.1)}
  .site-nav .ghost-button{text-align:center;margin-top:2px}
  body.admin-bar .site-header{top:32px}
}
@media(max-width:782px){body.admin-bar .site-header{top:46px}}
@media(min-width:1025px){.site-nav{display:flex!important}}


/* AdultLib 0.3.5 — identité chaleureuse et professionnelle */
:root{
  --al-black:#0b080a;
  --al-panel:#171014;
  --al-panel2:#24151b;
  --al-panel-soft:#2b1a20;
  --al-burgundy:#741526;
  --al-crimson:#b02a3e;
  --al-gold:#d3a246;
  --al-gold-light:#f4d27f;
  --al-cream:#fff7e9;
  --al-text:#fff8ef;
  --al-muted:#cdbfba;
  --al-line:rgba(224,177,85,.24);
  --al-shadow:0 22px 60px rgba(0,0,0,.30);
  --al-radius:18px;
}
body{
  background-color:var(--al-black);
  background-image:
    radial-gradient(circle at 8% 3%,rgba(153,27,48,.24),transparent 31%),
    radial-gradient(circle at 92% 8%,rgba(211,162,70,.12),transparent 28%),
    linear-gradient(180deg,#120a0e 0,#0b080a 38%,#0a0809 100%);
  line-height:1.6;
}
::selection{background:rgba(211,162,70,.32);color:#fff}
.site-header{background:rgba(11,8,10,.86);box-shadow:0 10px 40px rgba(0,0,0,.28)}
.site-header-inner{min-height:86px}
.site-nav a{position:relative;padding:10px 2px;font-size:.94rem;letter-spacing:.01em}
.site-nav a:not(.ghost-button):after{content:"";position:absolute;left:0;right:100%;bottom:3px;height:1px;background:linear-gradient(90deg,var(--al-gold),var(--al-gold-light));transition:right .25s ease}
.site-nav a:not(.ghost-button):hover:after{right:0}
.ghost-button,.lc-button,button,input[type="submit"],.button,.wp-element-button{
  border:1px solid rgba(244,210,127,.72)!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,#f0c966 0,#c98e32 48%,#9e541c 100%)!important;
  color:#1a0d0b!important;
  font-weight:800!important;
  letter-spacing:.01em;
  box-shadow:0 8px 22px rgba(149,78,25,.22),inset 0 1px 0 rgba(255,255,255,.45);
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease!important;
}
.ghost-button:hover,.lc-button:hover,button:hover,input[type="submit"]:hover,.button:hover,.wp-element-button:hover{
  transform:translateY(-2px);filter:brightness(1.05);box-shadow:0 12px 28px rgba(149,78,25,.34),inset 0 1px 0 rgba(255,255,255,.45)
}
.site-nav .ghost-button{padding:10px 18px}
.hero{min-height:72vh;padding:78px 22px 62px;background:radial-gradient(circle at 50% -10%,rgba(176,42,62,.38),transparent 41%),linear-gradient(180deg,rgba(30,14,20,.28),rgba(11,8,10,.92))}
.hero-inner{max-width:980px}
.hero-logo{width:min(430px,82vw);margin-bottom:13px}
.hero-kicker{font-size:.73rem;letter-spacing:.3em;color:#f1c968}
.hero h1{font-size:clamp(2.55rem,6vw,5.35rem);line-height:1.02;letter-spacing:-.035em;text-shadow:0 10px 38px rgba(0,0,0,.35)}
.hero p{max-width:700px;font-size:1.08rem;color:#d8cac5}
.hero-actions{gap:12px;margin-top:30px}
.hero-actions a{min-width:190px;text-align:center}
.al-home-benefits{max-width:1000px;margin:-36px auto 60px;padding:0 22px;position:relative;z-index:3;display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.al-benefit{padding:22px 20px;border:1px solid var(--al-line);border-radius:var(--al-radius);background:linear-gradient(145deg,rgba(41,23,31,.94),rgba(20,14,18,.97));box-shadow:var(--al-shadow);backdrop-filter:blur(14px)}
.al-benefit-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:rgba(211,162,70,.12);border:1px solid rgba(211,162,70,.3);color:var(--al-gold-light);font-size:1.05rem;margin-bottom:12px}
.al-benefit h3{margin:0 0 6px;font-family:Georgia,serif;font-size:1rem;color:var(--al-cream)}
.al-benefit p{margin:0;color:var(--al-muted);font-size:.86rem;line-height:1.55}
.site-main{padding-left:18px;padding-right:18px}
.entry{max-width:1120px}
.entry-content,.lc-form,.lc-card,.lc-member-card,.lc-profile-card,.lc-message-panel,.lc-dashboard>section,.lc-album-card,.lc-video-album-card{
  border-color:var(--al-line)!important;
}
.lc-form,.lc-card,.lc-profile-card,.lc-message-panel,.lc-dashboard>section,.lc-album-card,.lc-video-album-card{
  background:linear-gradient(145deg,rgba(39,22,29,.96),rgba(17,12,15,.98))!important;
  border-radius:var(--al-radius)!important;
  box-shadow:0 18px 45px rgba(0,0,0,.24)!important;
}
.lc-member-card{background:linear-gradient(145deg,rgba(36,21,27,.97),rgba(17,12,15,.98))!important;border-radius:16px!important;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.lc-member-card:hover{transform:translateY(-4px);border-color:rgba(244,210,127,.5)!important;box-shadow:0 20px 44px rgba(0,0,0,.35)!important}
input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="date"],input[type="file"],select,textarea{
  width:100%;background:#0e0a0c!important;color:var(--al-text)!important;border:1px solid rgba(211,162,70,.3)!important;border-radius:11px!important;padding:12px 13px!important;outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease
}
input:focus,select:focus,textarea:focus{border-color:var(--al-gold-light)!important;box-shadow:0 0 0 3px rgba(211,162,70,.13)!important;background:#120d10!important}
label{color:#eadfd9;font-weight:700}
.lc-tag,.lc-badge{border-radius:999px!important;background:rgba(211,162,70,.11)!important;border:1px solid rgba(211,162,70,.24)!important;color:#f3d68d!important}
.site-footer{margin-top:25px;padding:38px 22px;background:linear-gradient(180deg,#0b080a,#070506);color:#aa9c97}
.site-footer:before{content:"AdultLib";display:block;font-family:Georgia,serif;color:var(--al-gold-light);font-size:1.12rem;margin-bottom:6px}
@media(max-width:1024px){
 .site-header-inner{min-height:74px}.site-nav{border-radius:15px;top:calc(100% + 7px);left:14px;right:14px;padding:10px;background:rgba(20,13,17,.98)}
 .site-nav a{padding:11px 13px}.site-nav a:after{display:none}
}
@media(max-width:760px){
 .hero{min-height:auto;padding:55px 18px 75px}.hero h1{font-size:clamp(2.2rem,11vw,3.6rem)}.hero p{font-size:1rem;line-height:1.65}
 .al-home-benefits{grid-template-columns:1fr;margin-top:-48px;padding:0 16px;gap:11px}.al-benefit{padding:18px}
 .hero-actions a{width:100%;max-width:320px}.site-main{padding-left:12px;padding-right:12px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}


/* AdultLib 0.3.6 — badge des messages non lus */
.site-nav .nav-messages{display:inline-flex;align-items:center;gap:8px}
.nav-unread-badge{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:linear-gradient(135deg,#a51f38,#6f1023);border:1px solid rgba(255,220,145,.72);box-shadow:0 0 0 3px rgba(165,31,56,.16),0 5px 14px rgba(0,0,0,.28);color:#fff8e8;font-size:.7rem;font-weight:850;line-height:1}
.nav-unread-badge[hidden]{display:none!important}
.site-nav .nav-messages.has-unread{color:var(--al-gold-light)}
@media(max-width:1024px){.site-nav .nav-messages{justify-content:space-between}.nav-unread-badge{min-width:24px;height:24px}}


/* AdultLib 0.3.9 — badge des nouvelles visites */
.site-nav .nav-visitors{display:inline-flex;align-items:center;gap:8px}
.site-nav .nav-visitors.has-unread{color:var(--al-gold-light)}
@media(max-width:1024px){.site-nav .nav-visitors{justify-content:space-between}}
