#cc-window,
.cc-modal-window {
   display: flex;
   flex-direction: column;
}

.cc-window-blocker {
   background: rgba(0,0,0,.4);
   height: 100vh;
   left: 0;
   position: fixed;
   top: 0;
   width: 100vw;
   z-index: 9999;
}

#cc-window.cc-pos-center {
   left: 50%;
   padding: 0;
   pointer-events: none;
   position: fixed;
   top: 50%;
   width: auto;

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

.cc-modal {
   background: none;
}

#cc-window .cc-window-content,
.cc-modal-content {
   border-radius: 10px;
   display: flex;
   flex-direction: column;
   gap: 20px;
   margin: 10px;
   max-width: 400px;
   padding: 5px;
   position: relative;
}

.cc-modal-content {
   overflow: hidden;
}

.cc-modal-content .cc-modal-scroller {
   display: flex;
   flex-direction: column;
   gap: 20px;
   height: 100%;
   overflow: auto;
}

#cc-window-info .cc-modal-close,
#cc-window-settings .cc-modal-close,
#cc-window .cc-window-title {
   border-width: 0 0 1px 0;
   border-style: solid;
   height: 32px;
   line-height: 32px;
   margin: 0;
}

#cc-window .cc-window-title {
   pointer-events: none;
   text-align: center;
}

#cc-window-info .cc-modal-close,
#cc-window-settings .cc-modal-close {
   padding: 0 10px;
}

#cc-window .cc-window-message {
   padding: 0;
   position: relative;
   text-align: center;
}

#cc-window .cc-window-buttons,
.cc-window-settings-buttons {
   display: flex;
   flex-direction: row;
   gap: 10px;
   justify-content: center;
   margin-bottom: 10px;
   pointer-events: all;
}

#cc-window .cc-window-buttons button,
.cc-modal-window .cc-window-settings-buttons button {
   font-size: 14px;
   font-weight: normal;
   line-height: 30px;
   margin: 0;
   padding: 0 10px;
   position: relative;
   z-index: 1;
}

#cc-window .cc-window-buttons button:after,
#cc-window .cc-window-buttons button:before,
.cc-modal-window .cc-window-settings-buttons button:after,
.cc-modal-window .cc-window-settings-buttons button:before {
   border-radius: 5px;
   content: "";
   height: 100%;
   left: 0;
   position: absolute;
   top: 0;
   width: 100%;
}

#cc-window .cc-window-buttons button:after,
.cc-modal-window .cc-window-settings-buttons button:after {
   opacity: 0;
   z-index: -1;

   transition: opacity .33s;
}

#cc-window .cc-window-buttons button:hover:after,
.cc-modal-window .cc-window-settings-buttons button:hover:after {
   opacity: 1;
}


#cc-window .cc-window-buttons button:before,
.cc-modal-window .cc-window-settings-buttons button:before {
   z-index: -2;
}


/* =================== *
 * ## Modal windows ##
 * =================== */

.cc-modal-window {
   border: none;
   border-radius: 0;
   left: 50%;
   margin: 0;
   position: fixed;
   top: 50%;
   width: auto;

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


/* ===================== *
 * ## Settings Window ##
 * ===================== */

#cc-window-settings .cc-window-settings-cookie {
   border: none;
   gap: 10px;
   padding: 0 5px;
}

#cc-window-settings .cc-window-settings-cookie .cc-window-settings-cookie-desc { padding: 0; }
#cc-window-settings .cc-window-settings-cookie .cc-window-settings-cookie-value {
   align-items: center;
   display: flex;
   padding: 0;
}
#cc-window-settings .cc-window-settings-cookie input[type="checkbox"] {
   margin: 0;
}


/* ==================== *
 * ## Font overwrite ##
 * ==================== */

#cc-window .cc-window-message,
#cc-window .cc-window-title {
   font-family: 'Roboto', sans-serif;
   font-size: 14px;
   font-weight: 300;
   letter-spacing: .25px;
}

