/* ==========================================
   Flygblad
========================================== */

.kd-flygblad-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
    gap:30px;
    margin:40px 0;
}

.kd-flygblad-card{
    text-align:center;
}

.kd-flygblad-card img{
    width:100%;
    height:auto;
    display:block;
    border-radius:12px;
    box-shadow:0 8px 20px rgba(0,0,0,.15);
    transition:.25s;
    cursor:pointer;
}

.kd-flygblad-card img:hover{
    transform:translateY(-4px);
    box-shadow:0 15px 40px rgba(0,0,0,.25);
}

/* ==========================================
   Popup
========================================== */

#kd-flygblad-popup{
    display:none;
    position:fixed;
    inset:0;
    z-index:999999;
}

.kd-popup-overlay{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.82);
}

.kd-popup-window{

    position:absolute;

    left:50%;
    top:50%;

    transform:translate(-50%,-50%);

    width:min(1100px,96vw);

    height:100dvh;

    background:#fff;

    border-radius:14px;

    padding:12px;

    display:flex;
    flex-direction:column;

    overflow:hidden;

    box-shadow:0 30px 70px rgba(0,0,0,.45);

}

/* ==========================================
   Bild
========================================== */

.kd-popup-image-wrapper{

    position:relative;

    flex:1;

    display:flex;

    justify-content:center;

    align-items:center;

    min-height:0;

}

.kd-popup-image{

    position:relative;

    width:100%;
    height:100%;

    display:flex;

    justify-content:center;

    align-items:center;

}

#kd-popup-img{

    max-width:100%;
    max-height:100%;

    width:auto;
    height:auto;

    object-fit:contain;

    display:block;

    border-radius:10px;

    cursor:pointer;

    box-shadow:0 12px 30px rgba(0,0,0,.20);

}

/* ==========================================
   Hjälptext
========================================== */

.kd-popup-tip{

    position:absolute;

    left:50%;
    bottom:15px;

    transform:translateX(-50%);

    background:rgba(0,0,0,.75);

    color:#fff;

    padding:8px 18px;

    border-radius:30px;

    font-size:14px;

    white-space:nowrap;

    pointer-events:none;

}

/* ==========================================
   Pilar
========================================== */

.kd-popup-arrow{

    position:absolute;

    top:50%;

    transform:translateY(-50%);

    width:58px;
    height:58px;

    border:none;

    border-radius:50%;

    background:#003E7E;

    color:#fff;

    font-size:30px;

    cursor:pointer;

    z-index:20;

    transition:.2s;

    box-shadow:0 8px 20px rgba(0,0,0,.35);

}

.kd-popup-arrow:hover{

    background:#0057b8;

    transform:translateY(-50%) scale(1.08);

}

.kd-popup-arrow-left{

    left:10px;

}

.kd-popup-arrow-right{

    right:10px;

}

/* ==========================================
   Stäng
========================================== */

.kd-popup-close{

    position:absolute;

    top:calc(env(safe-area-inset-top) + 15px);

    right:20px;

    width:46px;

    height:46px;

    border:none;

    border-radius:50%;

    background:#fff;

    color:#333;

    font-size:30px;

    cursor:pointer;

    z-index:100;

    box-shadow:0 3px 10px rgba(0,0,0,.25);

}

.kd-popup-close:hover{

    background:#003E7E;

    color:#fff;

}

/* ==========================================
   Räknare
========================================== */

#kd-popup-counter{

    text-align:center;

    margin:12px 0;

    font-size:18px;

    font-weight:600;

}

/* ==========================================
   Mobil
========================================== */

.kd-mobile-toolbar{
    display:none;
}

@media (max-width:768px){

    .kd-popup-window{

        width:100vw;

        height:100dvh;

        border-radius:0;

        padding:10px;

    }

    .kd-popup-tip{

        display:none;

    }

    .kd-popup-arrow{

        width:48px;

        height:48px;

        font-size:24px;

    }

    /* Flytta ut pilarna från bilden */

    .kd-popup-arrow-left{

        left:-4px;

    }

    .kd-popup-arrow-right{

        right:-4px;

    }

    .kd-popup-close{

        top:calc(env(safe-area-inset-top) + 10px);

        right:12px;

    }

    .kd-mobile-toolbar{

        display:flex;

        justify-content:center;

        margin-top:18px;

        margin-bottom:8px;

    }

    #kd-popup-flip-mobile{

        width:100%;

        max-width:320px;

        border:none;

        border-radius:10px;

        background:#003E7E;

        color:#fff;

        font-size:18px;

        font-weight:600;

        padding:14px 20px;

        cursor:pointer;

    }

}