/*
Theme Name: ANERIS IDOL Theme
Theme URI: https://aneris.jp/
Author: ANERIS tokyo
Description: アイドル・アーティスト公式サイト向けWordPressテーマ。ANERIS IDOL Coreと連携し、NEWS / LIVE / MEMBER / DISCOGRAPHY / MOVIE / CONTACTを管理できます。
Version: 1.5.0
Requires at least: 6.5
Requires PHP: 8.0
Text Domain: aneris-idol
*/
:root{--aneris-bg:#fff8fc;--aneris-card:#fff;--aneris-text:#26232a;--aneris-muted:#766f7d;--aneris-accent:#ff5fa2;--aneris-accent2:#b28cff;--aneris-border:#f0dce7;--aneris-radius:22px;--aneris-shadow:0 10px 30px rgba(71,46,60,.08);--aneris-width:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--aneris-bg);color:var(--aneris-text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;line-height:1.75}body.nav-open{overflow:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}.container{width:min(calc(100% - 32px),var(--aneris-width));margin:auto}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,248,252,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(240,220,231,.8)}.header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.site-brand{display:flex;align-items:center;z-index:102}.site-brand img,.custom-logo{max-height:48px;width:auto}.site-title{font-weight:800;letter-spacing:.08em}.primary-nav ul,.footer-menu ul{display:flex;gap:20px;list-style:none;padding:0;margin:0;align-items:center}.primary-nav a{font-weight:700;font-size:.94rem}.menu-toggle{display:none;border:0;background:transparent;width:44px;height:44px;padding:10px;cursor:pointer;z-index:102}.menu-toggle span{display:block;height:2px;background:var(--aneris-text);margin:6px 0;transition:.25s}
.hero{min-height:70vh;display:grid;place-items:center;position:relative;overflow:hidden;background:linear-gradient(135deg,#fff0f7,#f8f0ff)}.hero.has-image{background-position:center;background-size:cover}.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(255,255,255,.04),rgba(255,248,252,.42))}.hero-inner{position:relative;z-index:2;text-align:center;padding:80px 0}.hero-logo{max-width:min(620px,86vw);margin:0 auto 20px}.hero-copy{font-size:clamp(1rem,2vw,1.35rem);font-weight:700;text-shadow:0 2px 16px rgba(255,255,255,.9)}
.section{padding:80px 0}.section.alt{background:rgba(255,255,255,.44)}.section-title{text-align:center;margin:0 0 34px;font-size:clamp(1.8rem,4vw,2.8rem);letter-spacing:.08em}.section-title small{display:block;font-size:.75rem;color:var(--aneris-accent);margin-top:4px;letter-spacing:.12em}.section-more{text-align:center;margin-top:30px}.grid{display:grid;gap:24px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}
.card{background:var(--aneris-card);border:1px solid var(--aneris-border);border-radius:var(--aneris-radius);box-shadow:var(--aneris-shadow);overflow:hidden}.card-body{padding:22px}.card h3{margin:.15em 0 .55em;line-height:1.45}.meta{font-size:.86rem;color:var(--aneris-muted)}.thumb{aspect-ratio:16/10;object-fit:cover;width:100%;background:#f1e7ed}.member-card .thumb{aspect-ratio:4/5}.member-color{height:5px;background:var(--member-color,var(--aneris-accent))}.member-name{font-size:1.25rem;font-weight:800}.member-role{color:var(--member-color,var(--aneris-accent));font-weight:700}
.live-list{overflow:hidden}.live-item{display:grid;grid-template-columns:140px 1fr auto;gap:20px;align-items:center;padding:22px;border-bottom:1px solid var(--aneris-border)}.live-item:last-child{border-bottom:0}.live-date{font-size:1.05rem;font-weight:800;color:var(--aneris-accent)}.live-venue{color:var(--aneris-muted)}.live-MORE{display:grid;grid-template-columns:140px 1fr;gap:10px 20px;margin:28px 0}.live-MORE dt{font-weight:800}.live-MORE dd{margin:0}
.button{display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;border-radius:999px;background:linear-gradient(135deg,var(--aneris-accent),var(--aneris-accent2));color:#fff;font-weight:800;border:0;cursor:pointer}.button.ghost{background:transparent;color:var(--aneris-text);border:1px solid var(--aneris-border)}
.content-area{padding:64px 0}.entry-content{background:#fff;border:1px solid var(--aneris-border);border-radius:var(--aneris-radius);padding:clamp(24px,5vw,54px);box-shadow:var(--aneris-shadow)}.entry-content h1,.entry-content h2,.entry-content h3{line-height:1.45}.entry-content>h1:first-child{margin-top:0}.entry-thumbnail{margin:24px 0;border-radius:16px;overflow:hidden}.archive-header{padding:54px 0 28px;text-align:center}.archive-header h1{font-size:clamp(2rem,5vw,3.2rem);margin-bottom:8px}.archive-grid{padding-bottom:70px}.pagination{margin:35px 0;text-align:center}
.social-links{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:18px 0}.social-links a{padding:8px 12px;background:#fff;border:1px solid var(--aneris-border);border-radius:999px}.site-footer{padding:44px 0;border-top:1px solid var(--aneris-border);text-align:center;color:var(--aneris-muted)}.footer-menu ul{flex-wrap:wrap;justify-content:center}.copyright{margin-top:16px}.notice{padding:20px;background:#fff;border:1px dashed var(--aneris-border);border-radius:16px;color:var(--aneris-muted);text-align:center}
.contact-wrap{max-width:760px;margin:auto}.aneris-contact-form{display:grid;gap:18px}.aneris-contact-form label{font-weight:700}.aneris-contact-form input,.aneris-contact-form textarea{width:100%;padding:13px 14px;border:1px solid var(--aneris-border);border-radius:12px;background:#fff;font:inherit}.aneris-contact-form textarea{min-height:180px;resize:vertical}.aneris-contact-form .hp{position:absolute;left:-9999px}.contact-message{padding:16px 18px;border-radius:14px;margin-bottom:22px;background:#fff;border:1px solid var(--aneris-border)}.contact-message.success{border-color:#a9ddbd}.contact-message.error{border-color:#f2a9bd}.movie-embed iframe{width:100%;aspect-ratio:16/9;height:auto;border:0;border-radius:14px}
@media(max-width:900px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}.menu-toggle{display:block}.primary-nav{position:fixed;inset:0 0 auto 0;min-height:100vh;background:rgba(255,248,252,.98);padding:100px 28px 40px;transform:translateY(-110%);transition:.28s;z-index:101}.nav-open .primary-nav{transform:translateY(0)}.primary-nav ul{display:flex;flex-direction:column;gap:8px}.primary-nav li{width:100%;text-align:center}.primary-nav a{display:block;padding:12px;font-size:1.05rem}.nav-open .menu-toggle span:nth-child(1){transform:translateY(8px) rotate(45deg)}.nav-open .menu-toggle span:nth-child(2){opacity:0}.nav-open .menu-toggle span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.hero{min-height:58vh}.live-item{grid-template-columns:1fr}.live-item .button{justify-self:start}}
@media(max-width:560px){.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}.section{padding:56px 0}.header-inner{min-height:64px}.site-brand img,.custom-logo{max-height:38px}.hero-inner{padding:56px 0}.live-item{padding:18px}.entry-content{border-radius:18px}.live-MORE{grid-template-columns:1fr;gap:2px}.live-MORE dd{margin-bottom:10px}}

/* MOVIE v1.1.1 */
.movie-card{overflow:hidden}.movie-play{position:relative;display:block;width:100%;padding:0;border:0;background:#111;cursor:pointer;overflow:hidden;aspect-ratio:16/9}.movie-play .thumb{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.movie-play:hover .thumb{transform:scale(1.025)}.movie-play-icon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:rgba(0,0,0,.72);color:#fff;font-size:26px;line-height:1;padding-left:4px;box-shadow:0 4px 24px rgba(0,0,0,.25)}.movie-placeholder{display:grid;place-items:center;width:100%;height:100%;color:#fff;font-weight:800;letter-spacing:.16em}.movie-card .movie-embed,.movie-play.is-playing{aspect-ratio:16/9}.movie-play.is-playing iframe,.movie-card iframe{display:block;width:100%;height:100%;border:0}.movie-embed{aspect-ratio:16/9;background:#111;border-radius:14px;overflow:hidden}.movie-embed iframe{display:block;width:100%;height:100%;border:0}


/* ABOUT + four-member layout v1.1.2 */
.about-card{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;background:var(--aneris-card);border:1px solid var(--aneris-border);border-radius:var(--aneris-radius);box-shadow:var(--aneris-shadow);overflow:hidden}.about-visual{height:100%;min-height:360px}.about-visual img{width:100%;height:100%;object-fit:cover}.about-copy{padding:clamp(28px,5vw,58px)}.about-copy h3{margin:0 0 18px;font-size:clamp(1.55rem,3vw,2.25rem);line-height:1.4}.about-text p:last-child{margin-bottom:0}#member .grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){.about-card{grid-template-columns:1fr}.about-visual{min-height:280px}#member .grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){#member .grid-4{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.member-card .card-body{padding:14px}.member-name{font-size:1rem}.member-role{font-size:.85rem}.about-copy{padding:26px}.about-visual{min-height:220px}}

/* MEMBER thumbnail v1.1.3 */
.member-thumb-wrap{position:relative;width:100%;aspect-ratio:4/5;overflow:hidden;background:linear-gradient(135deg,#fff0f7,#f5efff)}.member-thumb{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .28s ease}.member-card:hover .member-thumb{transform:scale(1.025)}.member-thumb-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,color-mix(in srgb,var(--member-color) 16%,white),#fff);color:var(--member-color);font-size:clamp(2.5rem,7vw,5rem);font-weight:900}.member-thumb-placeholder span{display:grid;place-items:center;width:88px;height:88px;border-radius:50%;background:rgba(255,255,255,.8);box-shadow:0 8px 28px rgba(0,0,0,.06)}


/* LIVE calendar v1.1.4 */
.aneris-live-calendar{margin:0 0 28px;background:#fff;border:1px solid var(--aneris-border);border-radius:22px;overflow:hidden}
.aneris-calendar-head{display:flex;align-items:center;justify-content:center;padding:18px 16px;background:linear-gradient(135deg,rgba(255,232,244,.8),rgba(239,235,255,.8))}
.aneris-calendar-head h3{margin:0;font-size:1.25rem;letter-spacing:.06em}
.aneris-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.aneris-calendar-weekday,.aneris-calendar-day{border-right:1px solid var(--aneris-border);border-bottom:1px solid var(--aneris-border)}
.aneris-calendar-weekday:nth-child(7n),.aneris-calendar-day:nth-child(7n){border-right:0}
.aneris-calendar-weekday{padding:10px 4px;text-align:center;font-size:.78rem;font-weight:800;background:#fafafa}
.aneris-calendar-weekday:first-child{color:#e85b87}.aneris-calendar-weekday:nth-child(7){color:#5b79d8}
.aneris-calendar-day{min-height:112px;padding:8px;background:#fff}
.aneris-calendar-day.is-empty{background:#fcfcfc}
.aneris-calendar-date{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-size:.82rem;font-weight:800;margin-bottom:5px}
.aneris-calendar-day.is-today .aneris-calendar-date{background:var(--aneris-accent);color:#fff}
.aneris-calendar-events{display:flex;flex-direction:column;gap:4px}
.aneris-calendar-event{display:block;padding:5px 6px;border-radius:7px;background:rgba(255,225,240,.75);color:inherit;text-decoration:none;font-size:.72rem;font-weight:700;line-height:1.3;overflow-wrap:anywhere}
.aneris-calendar-event:hover{filter:brightness(.97);transform:translateY(-1px)}
.aneris-calendar-more{font-size:.68rem;color:var(--aneris-muted);padding:2px 4px}
@media(max-width:700px){
 .aneris-calendar-day{min-height:68px;padding:4px}
 .aneris-calendar-date{width:24px;height:24px;font-size:.74rem;margin-bottom:2px}
 .aneris-calendar-event{font-size:0;padding:0;width:9px;height:9px;border-radius:50%;background:var(--aneris-accent);margin:3px auto}
 .aneris-calendar-events{align-items:center;gap:1px}
 .aneris-calendar-more{font-size:.6rem;text-align:center;padding:0}
 .aneris-calendar-weekday{font-size:.7rem;padding:8px 2px}
}


/* LIVE calendar month navigation v1.1.5 */
.aneris-calendar-head{justify-content:space-between;gap:10px}
.aneris-calendar-head h3{flex:1;text-align:center}
.aneris-calendar-nav{
    display:inline-flex;align-items:center;justify-content:center;
    min-width:92px;padding:8px 10px;border-radius:999px;
    background:rgba(255,255,255,.8);border:1px solid var(--aneris-border);
    color:inherit;text-decoration:none;font-size:.78rem;font-weight:800;
    white-space:nowrap
}
.aneris-calendar-nav:hover{background:#fff;transform:translateY(-1px)}
@media(max-width:700px){
 .aneris-calendar-head{padding:12px 8px}
 .aneris-calendar-head h3{font-size:1rem}
 .aneris-calendar-nav{min-width:auto;padding:7px 9px;font-size:.7rem}
}

/* Post thumbnail slideshow v1.1.6 */
.aneris-post-slider{position:relative;overflow:hidden;background:#111}
.aneris-post-slider-track{display:flex;transition:transform .7s ease;will-change:transform}
.aneris-post-slide{position:relative;flex:0 0 100%;display:block;aspect-ratio:16/7;overflow:hidden;background:#eee;text-decoration:none}
.aneris-post-slide img{width:100%;height:100%;display:block;object-fit:cover;transition:transform 4s ease}
.aneris-post-slide:hover img{transform:scale(1.025)}
.aneris-slider-dots{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);display:flex;gap:7px;z-index:3}
.aneris-slider-dot{width:7px;height:7px;border:0;border-radius:50%;padding:0;background:rgba(255,255,255,.5);box-shadow:0 1px 5px rgba(0,0,0,.25);cursor:pointer}
.aneris-slider-dot.is-active{background:#fff;transform:scale(1.25)}
@media(max-width:700px){
 .aneris-post-slide{aspect-ratio:16/9}
 .aneris-slider-dots{bottom:9px}
}

/* v1.1.7: header logo always aligned to the far left */
.site-header .container,
.header-inner{
    max-width:none !important;
    width:100% !important;
    margin:0 !important;
    padding-left:12px !important;
    padding-right:18px !important;
}
.site-brand,
.site-branding,
.custom-logo-link{
    margin-left:0 !important;
    margin-right:auto !important;
    justify-self:start !important;
    text-align:left !important;
}
.site-brand img,
.site-branding img,
.custom-logo{
    display:block !important;
    margin-left:0 !important;
    margin-right:auto !important;
}
@media(max-width:700px){
    .site-header .container,
    .header-inner{
        padding-left:8px !important;
        padding-right:12px !important;
    }
    .site-brand,
    .site-branding,
    .custom-logo-link{
        margin-left:0 !important;
    }
}

/* v1.1.8: definitive header edge alignment */
.site-header{width:100%}
.site-header .header-inner{
    box-sizing:border-box !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 20px 0 0 !important;
    display:flex !important;
}
.site-header .site-brand{
    margin:0 auto 0 0 !important;
    padding:0 !important;
    flex:0 0 auto;
}
.site-header .custom-logo-link{
    display:flex !important;
    align-items:center !important;
    margin:0 !important;
    padding:0 !important;
}
.site-header .custom-logo{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
}
@media(max-width:700px){
    .site-header .header-inner{padding-right:8px !important;padding-left:0 !important}
}

/* v1.1.9: comfortable left inset for header logo */
.site-header .header-inner{
    padding-left:24px !important;
    padding-right:24px !important;
}
@media(max-width:700px){
    .site-header .header-inner{
        padding-left:14px !important;
        padding-right:10px !important;
    }
}

/* v1.2.1: desktop LIVE calendar balance */
@media(min-width:701px){
    .aneris-live-calendar{
        width:min(100%, 920px);
        margin-left:auto;
        margin-right:auto;
        border-radius:18px;
        overflow:hidden;
    }
    .aneris-calendar-head{
        min-height:54px;
        padding:8px 14px;
    }
    .aneris-calendar-head h3{
        font-size:1.05rem;
        margin:0;
    }
    .aneris-calendar-nav{
        min-width:78px;
        padding:7px 10px;
        font-size:.74rem;
    }
    .aneris-calendar-grid{
        font-size:.86rem;
    }
    .aneris-calendar-grid > *{
        min-width:0;
    }
    .aneris-calendar-weekday{
        padding:8px 5px;
        font-size:.76rem;
    }
    .aneris-calendar-day{
        min-height:88px;
        padding:7px;
    }
    .aneris-calendar-date{
        font-size:.78rem;
        margin-bottom:5px;
    }
    .aneris-calendar-event{
        padding:4px 6px;
        margin-top:4px;
        border-radius:7px;
        font-size:.68rem;
        line-height:1.35;
    }
    #live .live-list{
        width:min(100%, 1040px);
        margin-left:auto;
        margin-right:auto;
    }
    #live .section-more{
        margin-top:24px;
    }
}


/* v1.2.3 MEMBER cards + profile */
.member-card{position:relative}
.member-main-link{display:block}
.member-card .card-body{text-align:center}
.member-card .member-name{margin-bottom:10px}
.member-socials{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:7px;
    padding:0 12px 16px;
}
.member-socials a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:38px;
    height:32px;
    padding:0 10px;
    border:1px solid var(--aneris-border);
    border-radius:999px;
    background:#fff;
    font-size:.72rem;
    font-weight:800;
    line-height:1;
    transition:.2s ease;
}
.member-socials a:hover{
    transform:translateY(-1px);
    border-color:var(--member-color);
    color:var(--member-color);
}
.member-profile-info{
    display:grid;
    gap:14px;
    margin:20px 0 24px;
}
.member-profile-row{
    display:grid;
    grid-template-columns:110px 1fr;
    gap:16px;
    align-items:start;
    padding-bottom:12px;
    border-bottom:1px solid var(--aneris-border);
}
.member-profile-label{font-weight:800;color:var(--aneris-muted)}
.member-profile-color{
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-weight:800;
}
.member-profile-color::before{
    content:"";
    width:14px;
    height:14px;
    border-radius:50%;
    background:var(--member-color);
    box-shadow:0 0 0 3px color-mix(in srgb,var(--member-color) 18%,white);
}
.member-profile-message{
    margin:22px 0;
    padding:20px 22px;
    border-radius:16px;
    background:color-mix(in srgb,var(--member-color) 7%,white);
    border:1px solid color-mix(in srgb,var(--member-color) 20%,white);
}
.member-profile-socials{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:22px;
}
@media(max-width:560px){
    .member-socials{gap:5px;padding:0 8px 12px}
    .member-socials a{min-width:32px;height:29px;padding:0 8px;font-size:.66rem}
    .member-profile-row{grid-template-columns:88px 1fr;gap:10px}
}

/* v1.2.4 member profile details */
.member-profile-info{margin-top:14px}
.member-profile-row>div:last-child{white-space:pre-line}
.member-profile-message strong{display:block;margin-bottom:6px}

/* v1.2.5: member color shown as icon + color name */
.member-profile-color{
    display:inline-flex;
    align-items:center;
    gap:9px;
}
.member-color-dot{
    display:inline-block;
    width:16px;
    height:16px;
    flex:0 0 16px;
    border-radius:50%;
    background:var(--member-color);
    border:2px solid #fff;
    box-shadow:0 0 0 1px rgba(0,0,0,.12);
}

/* v1.2.6: translucent title overlays on thumbnails */
.card .thumb-wrap,
.card .member-thumb-wrap,
.movie-card .movie-play{
    position:relative;
}
.card .thumb-title,
.card .image-title,
.member-card .card-body{
    background:rgba(255,255,255,.58) !important;
    backdrop-filter:blur(5px);
    -webkit-backdrop-filter:blur(5px);
}
.card .thumb-title,
.card .image-title,
.member-card .member-name{
    color:var(--aneris-card-title-color) !important;
    text-shadow:0 1px 5px rgba(0,0,0,.28);
}
/* When a card body is visually over the thumbnail, keep the image visible beneath it. */
.member-card .card-body{
    position:absolute;
    left:0;
    right:0;
    bottom:48px;
    z-index:2;
    padding:10px 12px !important;
}
.member-card .member-name{margin:0 !important}

/* v1.2.7: NEWS thumbnail slider — 4-up desktop / 1-up mobile */
.aneris-post-slider{
    width:min(calc(100% - 40px), 920px);
    margin:22px auto 34px;
    background:transparent;
    border-radius:16px;
}
.aneris-post-slider-track{gap:12px}
.aneris-post-slide{
    flex:0 0 calc((100% - 36px)/4);
    aspect-ratio:16/9;
    border-radius:12px;
    box-shadow:0 5px 18px rgba(0,0,0,.08);
}
.aneris-slider-dots{
    position:static;
    transform:none;
    justify-content:center;
    margin-top:12px;
}
.aneris-slider-dot{
    background:rgba(0,0,0,.20);
    box-shadow:none;
}
.aneris-slider-dot.is-active{background:var(--aneris-accent)}
@media(max-width:700px){
    .aneris-post-slider{
        width:calc(100% - 28px);
        margin:16px auto 28px;
    }
    .aneris-post-slider-track{gap:0}
    .aneris-post-slide{
        flex-basis:100%;
        aspect-ratio:16/9;
        border-radius:12px;
    }
}

/* v1.2.8: unified thumbnail title overlays + balanced MEMBER SNS */
.media-title-card{position:relative;overflow:hidden}
.media-title-card .thumb{display:block;width:100%;margin:0}
.media-title-overlay{
    position:absolute;
    left:0;right:0;bottom:0;
    z-index:2;
    padding:11px 13px;
    background:rgba(255,255,255,.58);
    backdrop-filter:blur(5px);
    -webkit-backdrop-filter:blur(5px);
    color:var(--aneris-card-title-color);
    text-shadow:0 1px 5px rgba(0,0,0,.28);
}
.media-title-overlay h3{margin:0;color:inherit;font-size:.95rem;line-height:1.35}
.media-title-overlay .meta{margin-top:3px;color:inherit;opacity:.82;font-size:.72rem}
.movie-card{position:relative;overflow:hidden}
.movie-card .card-body{
    position:absolute;
    left:0;right:0;bottom:0;
    z-index:3;
    padding:11px 13px !important;
    background:rgba(255,255,255,.58) !important;
    backdrop-filter:blur(5px);
    -webkit-backdrop-filter:blur(5px);
    pointer-events:none;
}
.movie-card .card-body h3{
    margin:0;
    color:var(--aneris-card-title-color) !important;
    text-shadow:0 1px 5px rgba(0,0,0,.28);
    font-size:.95rem;
}
.member-socials{
    min-height:48px;
    padding:8px 8px 10px !important;
    display:grid !important;
    grid-template-columns:repeat(3,1fr);
    gap:6px !important;
    background:#fff;
}
.member-socials a{
    width:100%;
    min-width:0 !important;
    height:30px !important;
    padding:0 4px !important;
    border-radius:8px !important;
    font-size:.63rem !important;
    letter-spacing:-.02em;
    white-space:nowrap;
}
.member-socials a[data-sns="X"]{font-size:.78rem !important}
@media(max-width:700px){
    .member-socials{gap:4px !important;padding:7px 5px 9px !important}
    .member-socials a{height:28px !important;font-size:.56rem !important;padding:0 2px !important}
    .member-socials a[data-sns="X"]{font-size:.72rem !important}
    .media-title-overlay,.movie-card .card-body{padding:9px 10px !important}
    .media-title-overlay h3,.movie-card .card-body h3{font-size:.84rem}
}

/* v1.2.9: TOP NEWS is text-only, centered, max 3 rows */
.news-simple-list{
    width:min(100%,760px);
    margin:0 auto;
    border-top:1px solid var(--aneris-border);
}
.news-simple-item{
    display:grid;
    grid-template-columns:100px minmax(0,1fr);
    gap:18px;
    align-items:center;
    min-height:58px;
    padding:12px 8px;
    border-bottom:1px solid var(--aneris-border);
    text-decoration:none;
}
.news-simple-item time{
    font-size:.74rem;
    color:var(--aneris-muted);
    letter-spacing:.04em;
}
.news-simple-item span{
    min-width:0;
    font-size:.92rem;
    font-weight:700;
    line-height:1.45;
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
}
.news-simple-item:hover span{color:var(--aneris-accent)}
@media(max-width:700px){
    .news-simple-list{width:100%}
    .news-simple-item{
        grid-template-columns:76px minmax(0,1fr);
        gap:10px;
        min-height:54px;
        padding:10px 2px;
    }
    .news-simple-item time{font-size:.66rem}
    .news-simple-item span{font-size:.84rem}
}

/* v1.3.1: keep TOP header/main visual at the same ratio on PC and mobile */
.hero{
    width:100%;
    min-height:0 !important;
    aspect-ratio:16/7;
    background-size:cover !important;
    background-position:center center !important;
}
@media(max-width:700px){
    .hero{
        min-height:0 !important;
        aspect-ratio:16/7;
        background-size:cover !important;
        background-position:center center !important;
    }
}

/* v1.3.2: refined spacing and typography */
body{
    font-size:15px;
    line-height:1.68;
}
.section{
    padding:56px 0;
}
.section-title{
    margin-bottom:24px;
    font-size:clamp(1.55rem,2.7vw,2.15rem);
    letter-spacing:.065em;
    line-height:1.15;
    font-weight:700;
}
.section-title small{
    margin-top:5px;
    font-size:.66rem;
    letter-spacing:.11em;
    font-weight:600;
}
.section-more{margin-top:22px}
.card h3,
.news-simple-item span{
    font-weight:650;
}
.news-simple-item{
    min-height:52px;
    padding-top:9px;
    padding-bottom:9px;
}
.member-name{font-size:.9rem}
.media-title-overlay h3,
.movie-card .card-body h3{
    font-size:.88rem;
}
.button{
    font-size:.78rem;
    letter-spacing:.06em;
}
#member.section,
#discography.section,
#movie.section,
#news.section,
#live.section{
    padding-top:54px;
    padding-bottom:54px;
}
@media(max-width:700px){
    body{font-size:14px;line-height:1.65}
    .section,
    #member.section,
    #discography.section,
    #movie.section,
    #news.section,
    #live.section{
        padding-top:42px;
        padding-bottom:42px;
    }
    .section-title{
        margin-bottom:20px;
        font-size:1.5rem;
        letter-spacing:.055em;
    }
    .section-title small{font-size:.62rem}
    .section-more{margin-top:18px}
    .member-name{font-size:.84rem}
}

/* v1.3.3: hide ANERIS MOVIE overlay/title while inline YouTube is playing */
.movie-card.is-playing .card-body{
    display:none !important;
}
.movie-card.is-playing .movie-play-icon{
    display:none !important;
}
.movie-card.is-playing{
    background:#111;
}

/* v1.3.4 Widget areas */
.aneris-widget-area{padding:28px 0}
.aneris-widget-area .widget{margin:0 auto 18px}
.aneris-widget-area .widget:last-child{margin-bottom:0}
.aneris-widget-area .widget-title{text-align:center;margin:0 0 14px;font-size:1.05rem;letter-spacing:.05em}
.aneris-widget-area img{max-width:100%;height:auto}
.aneris-widget-area iframe{max-width:100%}
.aneris-widget-area .wp-block-image{margin-top:0;margin-bottom:0}
.aneris-widget-aneris_footer_widget{padding:30px 0;background:rgba(255,255,255,.38)}
@media(max-width:700px){
  .aneris-widget-area{padding:22px 0}
  .aneris-widget-area .widget-title{font-size:.95rem}
}

/* v1.3.5: align NEWS slider with main content width + refined YouTube play button */
.aneris-post-slider{
    width:min(calc(100% - 32px),var(--aneris-width));
}
.movie-play-icon{
    width:44px;
    height:44px;
    font-size:17px;
    padding-left:2px;
    background:rgba(0,0,0,.64);
    box-shadow:0 3px 14px rgba(0,0,0,.20);
}
@media(max-width:700px){
    .aneris-post-slider{
        width:calc(100% - 28px);
    }
    .movie-play-icon{
        width:38px;
        height:38px;
        font-size:15px;
    }
}

/* v1.3.6: refined DISCOGRAPHY detail */
.discography-detail .entry-content{max-width:1000px;margin:0 auto}
.discography-detail .entry-content>h1{
    text-align:center;
    font-size:clamp(1.65rem,3vw,2.35rem);
    margin-bottom:32px;
}
.discography-detail-layout{
    display:grid;
    grid-template-columns:minmax(220px,320px) minmax(0,1fr);
    gap:44px;
    align-items:start;
}
.discography-jacket img{
    display:block;
    width:100%;
    height:auto;
    border-radius:14px;
    box-shadow:0 8px 28px rgba(0,0,0,.08);
}
.discography-info{min-width:0}
.discography-meta{
    display:grid;
    grid-template-columns:90px 1fr;
    gap:7px 16px;
    margin:0 0 24px;
}
.discography-meta dt{font-size:.75rem;font-weight:700;letter-spacing:.08em;color:#777}
.discography-meta dd{margin:0;font-size:.9rem}
.discography-info h2{font-size:1rem;letter-spacing:.08em;margin:24px 0 10px}
.discography-description{margin-top:26px;font-size:.94rem;line-height:1.8}
@media(max-width:700px){
    .discography-detail .entry-content>h1{
        font-size:1.55rem;
        margin-bottom:22px;
    }
    .discography-detail-layout{
        display:flex;
        flex-direction:column;
        gap:22px;
    }
    .discography-jacket{
        width:100%;
        max-width:100%;
    }
    .discography-jacket img{
        width:100%;
        border-radius:12px;
    }
    .discography-info{width:100%}
    .discography-meta{
        grid-template-columns:76px 1fr;
        margin-bottom:20px;
    }
    .discography-description{
        margin-top:22px;
        font-size:.9rem;
        line-height:1.78;
    }
}

/* v1.3.7 DISCOGRAPHY commentary + lyrics */
.discography-commentary,.discography-lyrics{margin-top:28px}
.discography-commentary h2,.discography-lyrics h2{font-size:.9rem;letter-spacing:.11em;margin:0 0 10px}
.discography-commentary>div{font-size:.92rem;line-height:1.8}
.discography-lyrics{
    padding-top:22px;
    border-top:1px solid var(--aneris-border);
}
.discography-lyrics>div{
    font-size:.76rem;
    line-height:1.9;
    color:#666;
    white-space:normal;
}
@media(max-width:700px){
    .discography-commentary,.discography-lyrics{margin-top:24px}
    .discography-commentary>div{font-size:.88rem}
    .discography-lyrics>div{font-size:.72rem;line-height:1.85}
}

/* v1.3.8: DISCOGRAPHY thumbnails are square jacket artwork */
#discography .media-title-card{aspect-ratio:1/1}
#discography .media-title-card .thumb{
    width:100%;
    height:100%;
    aspect-ratio:1/1;
    object-fit:cover;
    display:block;
}

/* v1.3.9: clean solid header */
.site-header{
    background:#fff;
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
}

/* v1.4.0: center incomplete rows on TOP */
#member .grid,
#movie .grid,
#discography .grid{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
}
#member .grid > *,
#movie .grid > *,
#discography .grid > *{
    width:calc((100% - 48px) / 3);
}
#member .grid.grid-4 > *{
    width:calc((100% - 72px) / 4);
}

/* Center NEWS thumbnail slider when fewer than the desktop visible count exist */
.aneris-post-slider-track{
    justify-content:center;
}

@media(max-width:700px){
    #member .grid,
    #movie .grid,
    #discography .grid{
        gap:14px;
    }
    #member .grid > *{
        width:calc((100% - 14px) / 2);
    }
    #movie .grid > *,
    #discography .grid > *{
        width:100%;
    }
    .aneris-post-slider-track{
        justify-content:flex-start;
    }
}

/* v1.4.2: prevent duplicate member color dots */
.member-profile-color::before{
    content:none !important;
    display:none !important;
}

/* v1.4.3: remove all visual veils from header / main visual */
.site-header{
    background:#fff !important;
    background-image:none !important;
    opacity:1 !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
}
.site-header::before,
.site-header::after,
.header-inner::before,
.header-inner::after{
    content:none !important;
    display:none !important;
    background:none !important;
}
.hero::before,
.hero::after{
    content:none !important;
    display:none !important;
    background:none !important;
}
.hero.has-image{
    background-blend-mode:normal !important;
    opacity:1 !important;
    filter:none !important;
}

/* v1.4.4: MEMBER mobile layout is always max 2 columns */
@media(max-width:700px){
 #member .grid,#member .grid.grid-4{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
  justify-content:center !important;
 }
 #member .grid > *,#member .grid.grid-4 > *{
  width:auto !important;
  min-width:0 !important;
 }
}

/* v1.4.5 */
.member-detail-image{display:block;width:100%;height:auto!important;max-height:none!important;object-fit:contain!important;object-position:center top!important;border-radius:16px}
