/*
Additional classes to adapt BULMA css to regify needs.
*/

/* remove margin of last element in hgroup (columns class) */
.columns:not(:last-child) {
    margin-bottom: 0;
}

/* add empty class for columns */
div.column.empty {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* the tabs container section (tab panel) */
section.tab-content {
    padding: 1.25rem;
    border-left: 1px solid #dbdbdb;
    border-bottom: 1px solid #dbdbdb;
    border-right: 1px solid #dbdbdb;
    margin: -1.5rem 0 1rem 0;
}

section.section {
    padding-top: 0.5rem !important;
}

/* fix missing tab focus */
.tabs ul li a:focus {
    border-color: #485fc7;
    box-shadow: 0 0 0 .125em rgba(72,95,199,.25);
}

/* indicate sortable table headers */
th.sortHeader {
    cursor: pointer;
}
th.sortHeader::after {
    /* decided to not use this as it is confusing
    content: ' \21F5';
    color: #bbbbbb;
    font-size: 80%;
    */
}

/* disabled select items class */
option:disabled {
    color: #cccccc;
}

/* mark required fields */
input:required,
textarea:required,
select:required {
    background-image: url("images/required.png");
    background-repeat: no-repeat;
    background-size: .65rem;
    background-position: right 2px top 2px;
}

label.checkbox[required]:after {
    content: "\a0\a0\a0\a0";
    color: red;
    background-image: url("images/required.png");
    background-repeat: no-repeat;
    background-size: .6rem;
    background-position: right top;
}

/* reset bulma cleared lists */

label.checkbox {
    margin-left: 1.15rem;
    text-indent: -1.15rem;
}

li {
    margin-left: 1rem;
    text-indent: -1rem;
}

ul { 
    list-style-type: disc; 
    list-style-position: inside; 
}
ol { 
    list-style-type: decimal; 
    list-style-position: inside; 
}
ul ul, ol ul { 
    list-style-type: circle; 
    list-style-position: inside; 
    margin-left: 15px; 
}
ol ol, ul ol { 
    list-style-type: lower-latin; 
    list-style-position: inside; 
    margin-left: 15px; 
}

/* enable multiline buttons */

.button.is-multiline {
    min-height: 2.25em;
    white-space: unset;
    height: auto;
    flex-direction: column;
}
  
/* This isn't the actual suggested CSS - but it is just */
/* a quick fix to replicate the functionality           */
.button.is-multiline .icon {
    margin: 0! important;
}

@media(max-width: 767px) { /* <== You can change this break point as per your  needs */
    .reverse-columns-mobile {
      flex-direction: column-reverse;
      display: flex;
    }
}

.notification.is-success,
.notification.is-danger {
    animation-duration: 0.5s;
    animation-name: animate-pop;
    animation-timing-function: cubic-bezier(.26, .53, .74, 1.28);
}

@keyframes animate-pop {
    0% {
      opacity: 0;
      transform: scale(0.8, 0.8);
    }
  
    100% {
      opacity: 1;
      transform: scale(1, 1);
    }
}

/* special image format with optional label (see regiForm image)  */
.imgDiv {
    width: 100%;
    text-align: center;
}

.imgDiv span,
.imgDiv img
{
    display: inline-block;
    vertical-align: middle;
}

/* our own header implementation */
.rgHeader {
    width: 100%;
    text-align: center;
    color: #888888;
    font-size: 130%;
    margin: 1rem 0 2rem 0;
    border-top: 1px solid #888888;
    border-bottom: 1px solid #888888;
}

/* fix bulma table-container to prevent missing top border on scrollable */
.table-container {
    padding-bottom: 1px;
}

/* add sticky table header class */
.sticky-header thead th {
    position: sticky;
    position: -webkit-sticky;
    top: 0;
    z-index: 1;
    box-shadow: inset 0 1px 0 #dbdbdb, inset 0 -1px 0 #dbdbdb;
    padding: 2px 0;
    background-clip: padding-box;
}

.sticky-header tbody:nth-of-type(1) tr:nth-of-type(1) td {
    border-top: none !important;
}

.sticky-header tr:last-child th {
    border-bottom-width: 0 !important;
    border-top-width: 0 !important;
}

/* drag/drop file upload */

#drop-area {
    border: 4px dotted #c6c6c6;
    border-radius: 1rem;
}

#drop-area.highlight {
    border-color: rgb(45, 89, 170);
}

.logo {
    background-image: url("images/logo.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center left;
    width: 9rem;
    height: 2.2rem;
}

/* our own tooltip */
.tooltipIcon {
    display: inline-block;
    position: relative;
    background: transparent;
    padding: 0 0.3rem 0 0.3rem;
    margin-left: 0.1rem;
    font-size: small;
    font-weight: normal;
    width: 1.5rem;
    height: 1.5rem;
    text-align: center;
    font: 20px 'typicons', bold;
    color:#68bd72;
    cursor: pointer;
    text-indent: 0;
}
.tooltip {
    display: block;
    width: 18rem;
    padding: 0.6rem;
    word-wrap: break-word;
    font-size: small;
    font-weight: normal;
    text-align: left;
    background-color: #f0f0f0;
    border-radius: 0.6rem;
    position: absolute;
    z-index: 100;
    display: none;
    left: -8rem;
    color: black;
    cursor: pointer;
    box-shadow: 0 0 1.5rem #777;
    text-indent: 0;
}

.typIconSmall span, 
.typIconMedium span, 
.typIconBig span, 
.typIconVeryBig span {
    margin-left: 0.1rem !important;
}

.typIconSmall:before, 
.typIconMedium:before, 
.typIconBig:before, 
.typIconVeryBig:before {
    color: inherit;
    text-align: center;
}

.typIconSmall:before {
    font: 1.4rem 'typicons', bold;
    width: 1.4rem;
}

.typIconMedium:before {
    font: 2rem 'typicons', bold;
    width: 2rem;
}

.typIconBig:before {
    font: 2.6rem 'typicons', bold;
    width: 2.6rem;
}

.typIconVeryBig:before {
    font: 5rem 'typicons', bold;
    width: 5rem;
}

.input:invalid,
textarea:invalid {
    border-color: rgb(235, 76, 36) !important;
}

/* loader effect */

#loader {
    border: 1em solid #f3f3f3;
    border-radius: 50%;
    border-top: 1em solid #506c91;
    width: 8em;
    height: 8em;
    animation: spin 2s linear infinite;
}
  
@keyframes spin {
    100% {
        transform: rotate(360deg);
    }
}
  
.loader-back {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

#loader-overlay {
    background-color: rgba(0, 0, 0, 0.3);
    font-size: 1.6rem;
    color: white;
    width: 100%;
    height: 100%;
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    text-align: center;
}

.loader-status {
    position: absolute;
    bottom: 7%;
    left: 0;
    right: 0;
    margin: auto;
    width: 80%;
    color: #444444;
    padding: 0.2rem;
    background-color: #f2f2f2;
    font-size: 65%;
    border-radius: 0.3rem;
    border: 2px solid black;
}

td.clip {
    vertical-align: middle;
}

td.clip:before {
    font: 1.5rem 'typicons', bold;
    content: '\e027';
    margin-right: 0.3rem;
    color: #0475b9;
}

td.size {
    vertical-align: middle;
}

td.noFiles {
    color: grey;
    font-style: italic;
}

.showLink {
    color: blue;
    text-decoration: none;
    overflow: hidden;
    overflow-wrap: anywhere;
    word-break: break-all;
    word-wrap: anywhere;
}

td.senderInfoLeft {
    font-weight: bold;
    width: 35%;
}

td.senderInfoRight {
    font-weight: normal;
}

.bubble {
    background-color: #cccccc;
    border-radius: 5px;
    padding: 4px 8px;
    display: initial;
    position: absolute;
    animation-duration: 1s;
    animation-name: animate-fade;
    animation-timing-function: ease-out;
    opacity: 0;
    pointer-events: none;
}

@keyframes animate-fade {
    0% { opacity: 0; transform: translate(0,0) scale(0.5); }
    50% { opacity: 1; }
    90% { opacity: 1; }
    92% { opacity: 1; transform: translate(20px,-50px) scale(1); }
    100% { opacity: 0; transform: translate(20px,-50px) scale(2); }
}

.headIcon {
    font: 1.8rem 'typicons', bold;
    display: inline;
    margin-left: 5px;
}

.circle{
    height: 3rem;
    width: 3rem;
    border-radius: 50%;
    color: #fff;
    background-color: #8cc4a8;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    font-weight: bold;
    position: absolute;
    top: -0.5rem;
    right: 0.3rem;
    border: 3px solid white;
}

.link_image {
    background-image: url("images/regipost_links.png");
    background-position: right top;
    background-size: 14rem;
    background-repeat: no-repeat;
    padding-right: 11rem;
    padding-bottom: 2rem;
}

.advertisement {
    width: calc(6vw + 60px);
    box-shadow: 4px 4px 12px #dbdbdb;
    cursor: pointer;
    border-radius: 5px;
}

@media only screen and (max-width: 740px) {
    .advertisement {
        width: 200px !important;
    }
}

.lang-dropdown .navbar-dropdown {
    width: 180px;
}
.lang-dropdown .navbar-dropdown .navbar-item {
    display: flex;
    align-items: center;
}
.lang-dropdown .navbar-dropdown .navbar-item img {
    display: block;
    height: 26px;
    width: 26px;
    min-width: 26px;
    border-radius: 50%;
}
.lang-dropdown .navbar-dropdown .navbar-item span {
    display: block;
    margin-left: 10px;
}

@keyframes blinkAnimation {
    0% { opacity:0.1; }
    10%   { opacity:1; }
    50%   { opacity:1; }
    100% { opacity:0.1; }
}
/* Safari, Chrome and older stuff */
@-webkit-keyframes blinkAnimation {
    0% { opacity:0.1; }
    10%   { opacity:1; }
    50%   { opacity:1; }
    100% { opacity:0.1; }
}

.browserWarning {
    display:block;
    position: fixed;
    top: 0;
    right: 0;
    margin: 14px 10px 1px 10px;
    z-index: 100;
    cursor:pointer;
    opacity:0.1; /* Start hidden*/
    animation: blinkAnimation 1.5s infinite; /*FIRE FOX*/
    -webkit-animation:blinkAnimation 1.5s infinite; /* Safari and Chrome */
}

#video, #preview {
    width: 550px;
    object-fit: contain;
    border: 3px solid #666666;
    border-radius: 0 0 6px 6px;
}

.videoLayer {
    background-color: #666666;
    color: white;
    padding: 5px;
    display: block;
    position: relative;
    border-radius: 6px 6px 0 0;
}