/* FunCleverFox Worksheet Manager - frontend + Elementor editor styles */
.fcf-alphabet-grid{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,52px));
    gap:14px;
    align-items:center;
    max-width:640px;
    margin:16px 0;
}
.fcf-alpha-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    width:52px;
    height:52px;
    min-width:0;
    min-height:52px;
    padding:0;
    border-radius:15px;
    background:linear-gradient(#f8fbfc,#d7e0e4);
    color:#0a5361;
    text-decoration:none;
    font-weight:700;
    font-size:28px;
    line-height:1!important;
    letter-spacing:.02em;
    border:1px solid #b7c3c9;
    box-shadow:inset 0 2px 0 rgba(255,255,255,.95), inset 0 -2px 3px rgba(0,0,0,.05), 0 2px 4px rgba(0,0,0,.25);
    transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.fcf-alpha-btn:hover,
.fcf-alpha-btn:focus{
    transform:translateY(-1px);
    background:linear-gradient(#ffffff,#c9edf5);
    color:#064b59;
    box-shadow:inset 0 2px 0 rgba(255,255,255,.95),0 4px 9px rgba(0,0,0,.24);
}
.fcf-alpha-btn span{display:block;line-height:1;}

/* K5 style left navigation with collapsed dropdowns */
.fcf-sidebar-nav{
    max-width:280px;
    width:100%;
    border:1px solid #9fb9c2;
    border-radius:6px;
    overflow:hidden;
    background:#fff;
    font-family:inherit;
    box-shadow:0 1px 3px rgba(0,0,0,.08);
}
.fcf-sidebar-title{
    display:block;
    background:#6fc247;
    color:#fff!important;
    text-decoration:none!important;
    font-weight:700;
    font-size:16px;
    line-height:1.25;
    padding:12px 14px;
}
.fcf-sidebar-list{
    list-style:none!important;
    margin:0!important;
    padding:0!important;
}
.fcf-sidebar-item{
    list-style:none!important;
    margin:0!important;
    padding:0!important;
}
.fcf-sidebar-row{
    display:flex;
    align-items:stretch;
    width:100%;
    border-bottom:1px solid #d6e1e5;
    background:#fff;
}
.fcf-sidebar-link{
    flex:1 1 auto;
    display:block!important;
    min-width:0;
    color:#4fb23f!important;
    text-decoration:none!important;
    font-size:14px;
    font-weight:700;
    line-height:1.35;
    padding:11px 12px;
    background:transparent!important;
    word-break:normal;
}
.fcf-sidebar-link:hover{background:#eff8fb!important;color:#2f8f25!important;}
.fcf-sidebar-toggle{
    flex:0 0 38px;
    width:38px;
    border:0!important;
    border-left:1px solid #e1e8eb!important;
    border-radius:0!important;
    background:#f7fbfc!important;
    color:#4fb23f!important;
    cursor:pointer;
    font-size:18px;
    font-weight:700;
    line-height:1;
    padding:0!important;
    display:flex;
    align-items:center;
    justify-content:center;
}
.fcf-sidebar-toggle:hover{background:#eef8eb!important;}
.fcf-sidebar-item.is-open > .fcf-sidebar-row .fcf-sidebar-toggle span{transform:rotate(45deg);display:inline-block;}
.fcf-sidebar-sublist[hidden]{display:none!important;}
.fcf-sidebar-sublist .fcf-sidebar-row{background:#fff;}
.fcf-sidebar-link.depth-0{padding-left:14px;}
.fcf-sidebar-link.depth-1{padding-left:26px;font-weight:600;}
.fcf-sidebar-link.depth-2{padding-left:38px;font-weight:500;}
.fcf-sidebar-link.depth-3{padding-left:50px;font-weight:500;}
.fcf-sidebar-link.is-active{background:#eef8eb!important;color:#2f8f25!important;font-weight:800;}
.fcf-sidebar-link.is-ancestor{font-weight:800;}
.fcf-sidebar-post-link{font-style:normal;color:#333!important;}

.fcf-category-children{display:grid;gap:10px;margin:15px 0;}
.fcf-category-children a{display:block;padding:10px 12px;border-bottom:1px solid #e1e1e1;color:#006070;text-decoration:underline;}
.fcf-pdf-viewer{border:1px solid #ddd;border-radius:8px;background:#fff;}

@media(max-width:767px){
    .fcf-alphabet-grid{gap:10px;max-width:100%;grid-template-columns:repeat(4,minmax(0,46px));}
    .fcf-alpha-btn{width:46px;min-width:0;height:46px;min-height:46px;font-size:23px;border-radius:13px;}
    .fcf-sidebar-nav{max-width:100%;}
}

/* Dynamic category cards/list widget */
.fcf-category-cards{
    display:grid;
    grid-template-columns:repeat(1,minmax(0,1fr));
    gap:18px;
    margin:18px 0;
}
.fcf-category-card{
    display:block;
    padding:0 0 18px 0;
    border-bottom:1px solid #e5e7eb;
    background:transparent;
}
.fcf-category-card-title{
    margin:0 0 8px 0!important;
    line-height:1.25!important;
    font-size:24px;
    font-weight:700;
}
.fcf-category-card-title a{
    color:#6fc247;
    text-decoration:underline;
    text-underline-offset:2px;
}
.fcf-category-card-title a:hover{
    color:#58a634;
}
.fcf-category-card-description{
    color:#3f4a52;
    font-size:16px;
    line-height:1.7;
}
.fcf-category-card-description p{
    margin:0!important;
}

/* Current category intro for dynamic category list */
.fcf-current-category-intro{
    margin:0 0 24px 0;
}
.fcf-current-category-title{
    margin:0 0 12px 0!important;
    color:#6fc247;
    font-weight:700;
    line-height:1.25!important;
}
.fcf-current-category-description{
    color:#263238;
    font-size:16px;
    line-height:1.75;
}
.fcf-current-category-description p{
    margin:0 0 12px 0!important;
}
.fcf-sidebar-item.is-ancestor > .fcf-sidebar-row,
.fcf-sidebar-item.is-open > .fcf-sidebar-row{
    background:#eef8eb;
}


/* Default category fallback template */
.fcf-default-category-template{
    padding:40px 15px;
}
.fcf-default-wrap{
    width:min(1180px,100%);
    margin:0 auto;
    display:grid;
    grid-template-columns:280px minmax(0,1fr) 280px;
    gap:36px;
    align-items:start;
}
.fcf-default-content .fcf-current-category-title{
    font-size:34px;
}
.fcf-default-content .fcf-category-card-title{
    font-size:26px;
}
@media(max-width:900px){
    .fcf-default-wrap{grid-template-columns:1fr;gap:24px;}
}

.fcf-default-right-sidebar{
    min-width:0;
}
.fcf-promo-sticky{
    position:sticky;
    top:90px;
}
.fcf-promo-card{
    text-align:center;
    margin:0 0 32px 0;
}
.fcf-promo-card img{
    display:block;
    width:100%;
    height:auto;
    border:0;
    margin:0 auto 18px auto;
}
.fcf-promo-image-link{
    display:block;
    text-decoration:none!important;
}
.fcf-promo-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:11px 26px;
    border-radius:999px;
    background:#6fc247;
    color:#fff!important;
    text-decoration:none!important;
    text-transform:uppercase;
    font-size:14px;
    font-weight:700;
    line-height:1.2;
    box-shadow:none;
}
.fcf-promo-button:hover,
.fcf-promo-button:focus{
    background:#58a634;
    color:#fff!important;
}
@media(max-width:1100px){
    .fcf-default-wrap{grid-template-columns:250px minmax(0,1fr);}
    .fcf-default-right-sidebar{display:none;}
}

/* v1.0.4.9: Default layout hard fix for Woodmart/theme containers */
#primary.fcf-default-category-template,
main.fcf-default-category-template,
.fcf-default-category-template{
    float:none!important;
    clear:both!important;
    width:100%!important;
    max-width:none!important;
    flex:0 0 100%!important;
    display:block!important;
    box-sizing:border-box!important;
    padding:40px 15px!important;
    overflow:visible!important;
}
.fcf-default-template .container,
.fcf-default-category-template .container{
    max-width:none!important;
}
.fcf-default-wrap{
    box-sizing:border-box!important;
    width:min(1220px, calc(100vw - 30px))!important;
    max-width:1220px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    display:grid!important;
    grid-template-columns:25% 50% 25%!important;
    gap:0!important;
    align-items:start!important;
}
.fcf-default-sidebar,
.fcf-default-content,
.fcf-default-right-sidebar{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    position:relative!important;
}
.fcf-default-sidebar{padding-right:36px!important;}
.fcf-default-content{padding:0 36px!important;}
.fcf-default-right-sidebar{padding-left:36px!important;}
.fcf-default-sidebar .fcf-sidebar-nav{max-width:100%!important;width:100%!important;}
.fcf-default-right-sidebar .fcf-promo-sticky{position:sticky!important;top:90px!important;width:100%!important;}
.fcf-default-right-sidebar .fcf-promo-card img{width:100%!important;max-width:100%!important;height:auto!important;}
.fcf-default-right-sidebar .fcf-promo-button{max-width:100%!important;text-align:center!important;white-space:normal!important;}
@media(max-width:1100px){
    .fcf-default-wrap{grid-template-columns:30% 70%!important;width:min(980px, calc(100vw - 30px))!important;}
    .fcf-default-sidebar{padding-right:24px!important;}
    .fcf-default-content{padding:0 0 0 24px!important;}
    .fcf-default-right-sidebar{display:none!important;}
}
@media(max-width:767px){
    .fcf-default-category-template{padding:24px 15px!important;}
    .fcf-default-wrap{grid-template-columns:1fr!important;width:100%!important;}
    .fcf-default-sidebar,.fcf-default-content{padding:0!important;}
    .fcf-default-content{margin-top:24px!important;}
}


/* v1.0.4.10: Default fallback layout isolation fix */
.fcf-default-template-v10{
    width:100% !important;
    max-width:none !important;
    padding:40px 15px !important;
    margin:0 !important;
    clear:both !important;
    float:none !important;
    box-sizing:border-box !important;
    overflow:visible !important;
}
.fcf-default-layout-v10{
    width:min(1220px, calc(100vw - 30px)) !important;
    max-width:1220px !important;
    margin:0 auto !important;
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:0 !important;
    box-sizing:border-box !important;
    overflow:visible !important;
}
.fcf-default-layout-v10 > .fcf-v10-left,
.fcf-default-layout-v10 > .fcf-v10-center,
.fcf-default-layout-v10 > .fcf-v10-right{
    float:none !important;
    clear:none !important;
    display:block !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    position:relative !important;
    margin:0 !important;
    overflow:visible !important;
}
.fcf-default-layout-v10 > .fcf-v10-left{
    width:25% !important;
    flex:0 0 25% !important;
    max-width:25% !important;
    padding:0 36px 0 0 !important;
}
.fcf-default-layout-v10 > .fcf-v10-center{
    width:50% !important;
    flex:0 0 50% !important;
    max-width:50% !important;
    padding:0 36px !important;
}
.fcf-default-layout-v10 > .fcf-v10-right{
    width:25% !important;
    flex:0 0 25% !important;
    max-width:25% !important;
    padding:0 0 0 36px !important;
}
.fcf-v10-left .fcf-sidebar-nav,
.fcf-v10-right .fcf-promo-sticky{
    width:100% !important;
    max-width:100% !important;
}
.fcf-v10-right .fcf-promo-sticky{
    position:sticky !important;
    top:90px !important;
}
.fcf-v10-right .fcf-promo-card img{
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    display:block !important;
}
.fcf-v10-center .fcf-current-category-title{font-size:34px!important;line-height:1.2!important;}
.fcf-v10-center .fcf-category-card-title{font-size:26px!important;line-height:1.25!important;}
@media(max-width:1100px){
    .fcf-default-layout-v10{width:min(980px, calc(100vw - 30px)) !important;}
    .fcf-default-layout-v10 > .fcf-v10-left{width:30%!important;flex-basis:30%!important;max-width:30%!important;padding-right:24px!important;}
    .fcf-default-layout-v10 > .fcf-v10-center{width:70%!important;flex-basis:70%!important;max-width:70%!important;padding:0 0 0 24px!important;}
    .fcf-default-layout-v10 > .fcf-v10-right{display:none!important;}
}
@media(max-width:767px){
    .fcf-default-template-v10{padding:24px 15px!important;}
    .fcf-default-layout-v10{width:100%!important;display:block!important;}
    .fcf-default-layout-v10 > .fcf-v10-left,
    .fcf-default-layout-v10 > .fcf-v10-center,
    .fcf-default-layout-v10 > .fcf-v10-right{
        width:100%!important;max-width:100%!important;flex-basis:100%!important;padding:0!important;display:block!important;
    }
    .fcf-default-layout-v10 > .fcf-v10-center{margin-top:24px!important;}
    .fcf-v10-right .fcf-promo-sticky{position:static!important;}
}


/* v1.0.4.11 - Sticky side columns for default fallback layout */
.fcf-default-layout-v10 > .fcf-v10-left{
    position:sticky !important;
    top:100px !important;
    align-self:flex-start !important;
    max-height:calc(100vh - 120px) !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    z-index:5 !important;
}
.fcf-default-layout-v10 > .fcf-v10-right{
    position:sticky !important;
    top:100px !important;
    align-self:flex-start !important;
    max-height:calc(100vh - 120px) !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    z-index:4 !important;
}
.fcf-default-layout-v10 > .fcf-v10-right .fcf-promo-sticky{
    position:static !important;
    top:auto !important;
}
.fcf-default-layout-v10 > .fcf-v10-left::-webkit-scrollbar,
.fcf-default-layout-v10 > .fcf-v10-right::-webkit-scrollbar{
    width:5px;
}
.fcf-default-layout-v10 > .fcf-v10-left::-webkit-scrollbar-thumb,
.fcf-default-layout-v10 > .fcf-v10-right::-webkit-scrollbar-thumb{
    background:rgba(111,194,71,.35);
    border-radius:10px;
}
@media(max-width:1100px){
    .fcf-default-layout-v10 > .fcf-v10-left,
    .fcf-default-layout-v10 > .fcf-v10-right{
        position:static !important;
        top:auto !important;
        max-height:none !important;
        overflow:visible !important;
    }
}
