/* First layer of the LP cookie banner, shared by modules/cookie_disclaimer and full_cookie_disclaimer_v3/v4.
   LPs load Bootstrap 3, 4 or both, so nothing here may rely on Bootstrap: px only (rem differs per version),
   an explicit line-height (the 2-line clamp depends on it) and no Bootstrap utility classes.
   Loaded after the module's own stylesheet. */
.cookie-disclaimer{
    box-sizing: border-box;
    max-height: 100vh;
    max-height: 100dvh;
    overflow-y: auto;
    padding: 6px 10px;
}

.cookie-disclaimer .cookie-text{
    position: relative;
    max-width: 760px;
    margin: 0 auto 6px auto;
    text-align: left;
}

.cookie-disclaimer .cookie-content .cookie-text p{
    margin: 0;
    font-size: 12px;
    line-height: 17px;
}

.cookie-disclaimer .cookie-text-short{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    max-height: 34px;
    overflow: hidden;
}

.cookie-disclaimer .cookie-text-full{
    display: none;
}

/* Sits on the end of the second line so it costs no height */
.cookie-disclaimer .cookie-read-more{
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 0 0 0 28px;
    border: 0;
    border-radius: 0;
    outline: none;
    background: linear-gradient(to right, rgba(255,255,255,0), #fff 24px);
    color: #000;
    font-family: inherit;
    font-size: 12px;
    font-weight: 700;
    line-height: 17px;
    letter-spacing: normal;
    text-decoration: underline;
    text-transform: none;
    cursor: pointer;
}

/* Larger tap area without changing the layout */
.cookie-disclaimer .cookie-read-more::after{
    content: '';
    position: absolute;
    top: -21px;
    right: -6px;
    bottom: -6px;
    left: 0;
}

.cookie-disclaimer .cookie-read-less-label{
    display: none;
}

.cookie-disclaimer.is-text-open .cookie-text-short{
    display: none;
}

.cookie-disclaimer.is-text-open .cookie-content .cookie-text .cookie-text-full{
    display: block;
    max-height: 40vh;
    overflow-y: auto;
}

.cookie-disclaimer.is-text-open .cookie-read-more{
    position: relative;
    right: auto;
    bottom: auto;
    display: block;
    margin: 2px 0 0 auto;
    padding: 0;
    background: none;
}

.cookie-disclaimer.is-text-open .cookie-read-more::after{
    top: -6px;
}

.cookie-disclaimer.is-text-open .cookie-read-more-label{
    display: none;
}

.cookie-disclaimer.is-text-open .cookie-read-less-label{
    display: inline;
}

/* Always one row: a long label wraps inside its button */
.cookie-disclaimer .cookie-actions{
    display: flex;
    justify-content: center;
}

.cookie-disclaimer .cookie-actions .accept-btn,
.cookie-disclaimer .cookie-actions .customise-btn{
    display: block;
    flex: 1 1 auto;
    width: auto;
    max-width: 280px;
    min-width: 0;
    min-height: 44px;
    margin: 0 4px;
    padding: 6px 10px;
    border: 0;
    border-radius: 4px;
    outline: none;
    font-family: inherit;
    font-size: 13px;
    font-weight: 400;
    line-height: 16px;
    letter-spacing: normal;
    text-transform: none;
    white-space: normal;
}

.cookie-disclaimer .cookie-actions .accept-btn{
    background-color: #28a745;
    color: #fff;
}

.cookie-disclaimer .cookie-actions .customise-btn{
    background-color: #dedede;
    color: #000;
}

.cookie-disclaimer .cookie-links{
    margin-top: 6px;
    color: #000;
    font-size: 11px;
    line-height: 15px;
    text-align: center;
}

.cookie-disclaimer .cookie-links .cookie-link{
    display: inline-block;
    color: #000;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 11px;
    font-weight: 400;
    text-decoration: underline;
    text-shadow: none;
}

@media(min-width: 768px){
    .cookie-disclaimer{
        padding: 8px 50px;
    }
}

@media(min-width: 992px){
    .cookie-disclaimer{
        padding: 8px 100px;
    }
}
