html { box-sizing: border-box; scroll-behavior: smooth; }
*, *:before, *:after { box-sizing: inherit; }

body{
    margin:0;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size:16px;
    line-height:1.65;
    color:var(--fm-text);
    background:
        radial-gradient(circle at top left, rgba(216,193,120,.05), transparent 18%),
        radial-gradient(circle at top right, rgba(151,100,41,.04), transparent 20%),
        linear-gradient(180deg, #ffffff 0%, #fbfaf7 100%);
}
img{max-width:100%;height:auto;display:block;}
iframe{max-width:100%;}
a{color:var(--fm-primary-dark);text-decoration:none;transition:all .2s ease;}
a:hover{color:var(--fm-accent);}
p{margin:0 0 1rem;}
ul,ol{padding-left:1.2rem;}
.screen-reader-text{
    position:absolute !important;
    width:1px;height:1px;
    padding:0;margin:-1px;overflow:hidden;
    clip:rect(0, 0, 0, 0);border:0;
}
.site-main{padding:42px 0 0;}

/* v1.4.12 layout polish base rhythm */
.site-main{
    padding:38px 0 0;
}

@media (max-width:640px){
    .site-main{
        padding:32px 0 0;
    }
}


/* v1.5.3 premium pass - global rhythm */
.site-main{
    padding-top:34px;
}

@media (max-width:640px){
    .site-main{
        padding-top:30px;
    }
}


/* v1.5.4 remove all sidebars/widgets fallback */
.sidebar,
.widget-area,
.fanime-sidebar,
#secondary,
aside.widget-area,
aside.sidebar,
.site-sidebar{
    display: none !important;
}

body.blog .widget,
body.archive .widget,
body.post-type-archive-product .widget,
body.tax-product_cat .widget,
body.tax-product_tag .widget{
    display: none !important;
}

body.blog .site-main,
body.archive .site-main,
body.post-type-archive-product .site-main,
body.tax-product_cat .site-main,
body.tax-product_tag .site-main{
    width: 100% !important;
    max-width: 100% !important;
}



/* v2.3 announcement bar */
.fanime-announcement{
    background:var(--fanime-announcement-bg, #111111);
    color:var(--fanime-announcement-text, #ffffff);
    position:relative;
    z-index:1100;
}

.fanime-announcement__inner{
    min-height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:8px 14px;
}

.fanime-announcement__text,
.fanime-announcement__link{
    color:var(--fanime-announcement-text, #ffffff);
    font-size:.92rem;
    font-weight:700;
    line-height:1.3;
    letter-spacing:-0.01em;
    text-decoration:none;
}

.fanime-announcement__link:hover{
    opacity:.92;
    text-decoration:none;
}

@media (max-width:640px){
    .fanime-announcement__inner{
        min-height:40px;
        padding:8px 12px;
    }

    .fanime-announcement__text,
    .fanime-announcement__link{
        font-size:.88rem;
    }
}


/* v2.4 share system */
.fanime-share{
    margin-top:28px;
    padding-top:18px;
    border-top:1px solid rgba(33,33,33,.08);
}

.fanime-share__label{
    margin:0 0 10px;
    font-size:.92rem;
    font-weight:700;
    color:var(--fm-text-soft);
}

.fanime-share__buttons{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}

.fanime-share__button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:9px 14px;
    border-radius:999px;
    border:1px solid rgba(33,33,33,.08);
    background:#fff;
    color:var(--fm-text);
    font-weight:700;
    text-decoration:none;
    box-shadow:0 4px 10px rgba(20,16,12,.025);
    cursor:pointer;
}

.fanime-share__button:hover{
    color:var(--fm-primary-dark);
    border-color:rgba(164,124,53,.18);
}

@media (max-width:640px){
    .fanime-share{
        margin-top:24px;
        padding-top:16px;
    }

    .fanime-share__buttons{
        gap:8px;
    }

    .fanime-share__button{
        min-height:36px;
        padding:8px 12px;
        font-size:.92rem;
    }
}
