:root{
    --custom-primary-color: #42439C;
    --custom-primary-rgb: 66,67,156;
    --custom-primary-hover-color: #22237C;
    --custom-primary-hover-rgb: 34,35,124;

    --bs-blue:                      var(--custom-primary-color);
    --bs-primary:                   var(--custom-primary-color);
    --bs-link-color:                var(--custom-primary-color);
    --bs-link-color-rgb:            var(--custom-primary-rgb);
    --bs-primary-rgb:               var(--custom-primary-rgb);
    --bs-link-hover-color:          var(--custom-primary-hover-color);
    --bs-link-hover-color-rgb:      var(--custom-primary-hover-rgb);
}

@font-face{
    font-family: Garet_Book;
    src: url("../fonts/Garet-Book.ttf");
}

@font-face{
    font-family: Garet_Heavy;
    src: url("../fonts/Garet-Heavy.ttf");
}

@font-face{
    font-family: Goodly_Regular;
    src: url("../fonts/Goodly Regular.otf");
}

@font-face{
    font-family: Disks;
    src: url("../fonts/disks.ttf");
}

@font-face{
    font-family: Showtime;
    src: url("../fonts/Showtime.ttf");
}

.font_title{
    font-family: Goodly_Regular;
}

.font_car{
    font-family: Garet_Book;
}
.font_car_heavy{
    font-family: Garet_Heavy;
}

.password_font{
    font-family: Disks;
}

#frm_quiz .container{
    max-width: 1280px;
}

.quiz_title{
    font-size: 3em;
    font-family: Showtime;
    color: #FF45BB;
    -webkit-animation: quiz_title_animation 5s;
    animation: quiz_title_animation 5s;
}

.password_font.form-control::placeholder{ /* Chrome, Firefox, Opera, Safari 10.1+ */
    font-family: Arial, Helvetica, sans-serif !important;
    opacity: 1; /* Firefox */
}

.password_font.form-control:-ms-input-placeholder{ /* Internet Explorer 10-11 */
    font-family: Arial, Helvetica, sans-serif !important;
}

.password_font.form-control::-ms-input-placeholder{ /* Microsoft Edge */
    font-family: Arial, Helvetica, sans-serif !important;
 }


body{
    min-height: 100%;
}

a{
    text-decoration: underline;
}
a:hover{
    text-decoration: none;
}

a:not(.nav-link):not(.btn):not(.page-link){
    color: var(--custom-primary-color);
}

label small{
    color: #888;
}

.smaller{
    font-size: .75em;
}

.iconsext_block{
    line-height: .8rem;
    height: 165px;
}

.definition .row,
.definition [class^=col-]{
    margin-bottom: 0;
}

.icon-blob{
    aspect-ratio: 1;
    clip-path: shape(from 87.45% 45.02%,curve to 92.48% 56.45% with 90.99% 50.00%,curve to 92.05% 69.35% with 93.97% 62.91%,curve to 82.42% 77.15% with 90.14% 75.80%,curve to 71.01% 83.22% with 74.69% 78.49%,curve to 61.91% 91.53% with 67.33% 87.95%,curve to 49.74% 96.95% with 56.49% 95.12%,curve to 38.70% 91.46% with 42.99% 98.79%,curve to 25.99% 85.79% with 34.41% 84.13%,curve to 15.38% 80.54% with 17.56% 87.44%,curve to 14.30% 66.90% with 13.20% 73.65%,curve to 13.33% 55.08% with 15.41% 60.16%,curve to 11.20% 44.30% with 11.25% 50.00%,curve to 11.95% 32.32% with 11.14% 38.59%,curve to 16.84% 21.25% with 12.75% 26.06%,curve to 27.31% 15.38% with 20.92% 16.44%,curve to 38.83% 11.12% with 33.70% 14.32%,curve to 50.39% 5.23% with 43.95% 7.93%,curve to 62.85% 5.60% with 56.83% 2.53%,curve to 72.70% 14.03% with 68.88% 8.67%,curve to 79.11% 24.51% with 76.53% 19.39%,curve to 82.80% 34.84% with 81.69% 29.63%,curve to 87.45% 45.02% with 83.91% 40.04%);
}

.icon-ragged{
    clip-path: shape(from 3.94px 1.44px,curve to calc(2.38% + 4.76px) 2.5px with calc(0% + 5px) 0px,curve to calc(7.14% + 4.29px) 3.5px with calc(4.76% + 4.52px) 5px,curve to calc(11.9% + 3.81px) 1.5px with calc(9.52% + 4.05px) 2px,curve to calc(16.67% + 3.33px) 0.5px with calc(14.29% + 3.57px) 1px,curve to calc(21.43% + 2.86px) 2px with calc(19.05% + 3.1px) 0px,curve to calc(26.19% + 2.38px) 2.5px with calc(23.81% + 2.62px) 4px,curve to calc(30.95% + 1.9px) 2px with calc(28.57% + 2.14px) 1px,curve to calc(35.71% + 1.43px) 1.5px with calc(33.33% + 1.67px) 3px,curve to calc(40.48% + 0.95px) 0.5px with calc(38.1% + 1.19px) 0px,curve to calc(45.24% + 0.48px) 2.5px with calc(42.86% + 0.71px) 1px,curve to calc(50% + 0px) 3px with calc(47.62% + 0.24px) 4px,curve to calc(54.76% + -0.48px) 2.5px with calc(52.38% + -0.24px) 2px,curve to calc(59.52% + -0.95px) 2.5px with calc(57.14% + -0.71px) 3px,curve to calc(64.29% + -1.43px) 2.5px with calc(61.9% + -1.19px) 2px,curve to calc(69.05% + -1.9px) 2.5px with calc(66.67% + -1.67px) 3px,curve to calc(73.81% + -2.38px) 3px with calc(71.43% + -2.14px) 2px,curve to calc(78.57% + -2.86px) 4px with calc(76.19% + -2.62px) 4px,curve to calc(83.33% + -3.33px) 4px with calc(80.95% + -3.1px) 4px,curve to calc(88.1% + -3.81px) 4.5px with calc(85.71% + -3.57px) 4px,curve to calc(92.86% + -4.29px) 3px with calc(90.48% + -4.05px) 5px,curve to calc(97.62% + -4.76px) 1px with calc(95.24% + -4.52px) 1px,curve to calc(100% - 3.59px) 1.59px with calc(100% - 5px) 1px,curve to calc(100% - 3.09px) 3.59px with calc(100% - 2.17px) 2.17px,curve to calc(100% - 4px) calc(2.5% + 4.75px) with calc(100% - 4px) calc(0% + 5px),curve to calc(100% - 3px) calc(7.5% + 4.25px) with calc(100% - 4px) calc(5% + 4.5px),curve to calc(100% - 2.5px) calc(12.5% + 3.75px) with calc(100% - 2px) calc(10% + 4px),curve to calc(100% - 4px) calc(17.5% + 3.25px) with calc(100% - 3px) calc(15% + 3.5px),curve to calc(100% - 4.5px) calc(22.5% + 2.75px) with calc(100% - 5px) calc(20% + 3px),curve to calc(100% - 4px) calc(27.5% + 2.25px) with calc(100% - 4px) calc(25% + 2.5px),curve to calc(100% - 3px) calc(32.5% + 1.75px) with calc(100% - 4px) calc(30% + 2px),curve to calc(100% - 1.5px) calc(37.5% + 1.25px) with calc(100% - 2px) calc(35% + 1.5px),curve to calc(100% - 0.5px) calc(42.5% + 0.75px) with calc(100% - 1px) calc(40% + 1px),curve to calc(100% - 1px) calc(47.5% + 0.25px) with calc(100% - 0px) calc(45% + 0.5px),curve to calc(100% - 1.5px) calc(52.5% + -0.25px) with calc(100% - 2px) calc(50% + 0px),curve to calc(100% - 1px) calc(57.5% + -0.75px) with calc(100% - 1px) calc(55% + -0.5px),curve to calc(100% - 2px) calc(62.5% + -1.25px) with calc(100% - 1px) calc(60% + -1px),curve to calc(100% - 2px) calc(67.5% + -1.75px) with calc(100% - 3px) calc(65% + -1.5px),curve to calc(100% - 2px) calc(72.5% + -2.25px) with calc(100% - 1px) calc(70% + -2px),curve to calc(100% - 2px) calc(77.5% + -2.75px) with calc(100% - 3px) calc(75% + -2.5px),curve to calc(100% - 1.5px) calc(82.5% + -3.25px) with calc(100% - 1px) calc(80% + -3px),curve to calc(100% - 2px) calc(87.5% + -3.75px) with calc(100% - 2px) calc(85% + -3.5px),curve to calc(100% - 1.5px) calc(92.5% + -4.25px) with calc(100% - 2px) calc(90% + -4px),curve to calc(100% - 2.5px) calc(97.5% + -4.75px) with calc(100% - 1px) calc(95% + -4.5px),curve to calc(100% - 3.79px) calc(100% - 4.29px) with calc(100% - 4px) calc(100% - 5px),curve to calc(100% - 4.29px) calc(100% - 1.79px) with calc(100% - 3.59px) calc(100% - 3.59px),curve to calc(97.62% - 4.76px) calc(100% - 2px) with calc(100% - 5px) calc(100% - 0px),curve to calc(92.86% - 4.29px) calc(100% - 2.5px) with calc(95.24% - 4.52px) calc(100% - 4px),curve to calc(88.1% - 3.81px) calc(100% - 1px) with calc(90.48% - 4.05px) calc(100% - 1px),curve to calc(83.33% - 3.33px) calc(100% - 3px) with calc(85.71% - 3.57px) calc(100% - 1px),curve to calc(78.57% - 2.86px) calc(100% - 3px) with calc(80.95% - 3.1px) calc(100% - 5px),curve to calc(73.81% - 2.38px) calc(100% - 3px) with calc(76.19% - 2.62px) calc(100% - 1px),curve to calc(69.05% - 1.9px) calc(100% - 3px) with calc(71.43% - 2.14px) calc(100% - 5px),curve to calc(64.29% - 1.43px) calc(100% - 2px) with calc(66.67% - 1.67px) calc(100% - 1px),curve to calc(59.52% - 0.95px) calc(100% - 2px) with calc(61.9% - 1.19px) calc(100% - 3px),curve to calc(54.76% - 0.48px) calc(100% - 2.5px) with calc(57.14% - 0.71px) calc(100% - 1px),curve to calc(50% - 0px) calc(100% - 3.5px) with calc(52.38% - 0.24px) calc(100% - 4px),curve to calc(45.24% - -0.48px) calc(100% - 3px) with calc(47.62% - -0.24px) calc(100% - 3px),curve to calc(40.48% - -0.95px) calc(100% - 3.5px) with calc(42.86% - -0.71px) calc(100% - 3px),curve to calc(35.71% - -1.43px) calc(100% - 3.5px) with calc(38.1% - -1.19px) calc(100% - 4px),curve to calc(30.95% - -1.9px) calc(100% - 3px) with calc(33.33% - -1.67px) calc(100% - 3px),curve to calc(26.19% - -2.38px) calc(100% - 3.5px) with calc(28.57% - -2.14px) calc(100% - 3px),curve to calc(21.43% - -2.86px) calc(100% - 3px) with calc(23.81% - -2.62px) calc(100% - 4px),curve to calc(16.67% - -3.33px) calc(100% - 1.5px) with calc(19.05% - -3.1px) calc(100% - 2px),curve to calc(11.9% - -3.81px) calc(100% - 1px) with calc(14.29% - -3.57px) calc(100% - 1px),curve to calc(7.14% - -4.29px) calc(100% - 0.5px) with calc(9.52% - -4.05px) calc(100% - 1px),curve to calc(2.38% - -4.76px) calc(100% - 1.5px) with calc(4.76% - -4.52px) calc(100% - 0px),curve to 3.59px calc(100% - 2.59px) with 5px calc(100% - 3px),curve to 2.09px calc(100% - 3.59px) with 2.17px calc(100% - 2.17px),curve to 2px calc(97.5% - 4.75px) with 2px calc(100% - 5px),curve to 1px calc(92.5% - 4.25px) with 2px calc(95% - 4.5px),curve to 1px calc(87.5% - 3.75px) with 0px calc(90% - 4px),curve to 2px calc(82.5% - 3.25px) with 2px calc(85% - 3.5px),curve to 1.5px calc(77.5% - 2.75px) with 2px calc(80% - 3px),curve to 1px calc(72.5% - 2.25px) with 1px calc(75% - 2.5px),curve to 0.5px calc(67.5% - 1.75px) with 1px calc(70% - 2px),curve to 1.5px calc(62.5% - 1.25px) with 0px calc(65% - 1.5px),curve to 1.5px calc(57.5% - 0.75px) with 3px calc(60% - 1px),curve to 0px calc(52.5% - 0.25px) with 0px calc(55% - 0.5px),curve to 2px calc(47.5% - -0.25px) with 0px calc(50% - 0px),curve to 2.5px calc(42.5% - -0.75px) with 4px calc(45% - -0.5px),curve to 2.5px calc(37.5% - -1.25px) with 1px calc(40% - -1px),curve to 3.5px calc(32.5% - -1.75px) with 4px calc(35% - -1.5px),curve to 3px calc(27.5% - -2.25px) with 3px calc(30% - -2px),curve to 3.5px calc(22.5% - -2.75px) with 3px calc(25% - -2.5px),curve to 3px calc(17.5% - -3.25px) with 4px calc(20% - -3px),curve to 1px calc(12.5% - -3.75px) with 2px calc(15% - -3.5px),curve to 0px calc(7.5% - -4.25px) with 0px calc(10% - -4px),curve to 2px calc(2.5% - -4.75px) with 0px calc(5% - -4.5px),curve to 3.44px 3.94px with 4px 5px,curve to 3.94px 1.44px with 2.88px 2.88px);
}

.icon-wavy{
    --s: 64px;
    width: var(--s);
    aspect-ratio: 1;
    --g:/calc(var(--s)*0.201) calc(var(--s)*0.201) radial-gradient(50% 50%,#000 99%,#0000 101%) no-repeat;
    mask: calc(50% + var(--s)*0.369) calc(50% + var(--s)*0) var(--g),calc(50% + var(--s)*0.261) calc(50% + var(--s)*0.261) var(--g),calc(50% + var(--s)*0) calc(50% + var(--s)*0.369) var(--g),calc(50% + var(--s)*-0.261) calc(50% + var(--s)*0.261) var(--g),calc(50% + var(--s)*-0.369) calc(50% + var(--s)*0) var(--g),calc(50% + var(--s)*-0.261) calc(50% + var(--s)*-0.261) var(--g),calc(50% + var(--s)*0) calc(50% + var(--s)*-0.369) var(--g),calc(50% + var(--s)*0.261) calc(50% + var(--s)*-0.261) var(--g),radial-gradient(calc(var(--s)*0.418),#000 99%,#0000 101%) subtract,calc(50% + var(--s)*0.447) calc(50% + var(--s)*0.185) var(--g),calc(50% + var(--s)*0.185) calc(50% + var(--s)*0.447) var(--g),calc(50% + var(--s)*-0.185) calc(50% + var(--s)*0.447) var(--g),calc(50% + var(--s)*-0.447) calc(50% + var(--s)*0.185) var(--g),calc(50% + var(--s)*-0.447) calc(50% + var(--s)*-0.185) var(--g),calc(50% + var(--s)*-0.185) calc(50% + var(--s)*-0.447) var(--g),calc(50% + var(--s)*0.185) calc(50% + var(--s)*-0.447) var(--g),calc(50% + var(--s)*0.447) calc(50% + var(--s)*-0.185) var(--g);
}
.taskbar_button .icon-wavy{
    --s: 32px;
}

.icon-starburst{
    width: 64px;
    aspect-ratio: 1;
    clip-path: polygon(100% 50%,78.98% 57.76%,93.3% 75%,71.21% 71.21%,75% 93.3%,57.76% 78.98%,50% 100%,42.24% 78.98%,25% 93.3%,28.79% 71.21%,6.7% 75%,21.02% 57.76%,0% 50%,21.02% 42.24%,6.7% 25%,28.79% 28.79%,25% 6.7%,42.24% 21.02%,50% 0%,57.76% 21.02%,75% 6.7%,71.21% 28.79%,93.3% 25%,78.98% 42.24%);
}

.icon-maltego{
    background-image: url("../images/icons/maltego.svg");
    background-repeat: no-repeat;
    width: 16px;
    height: 16px;
    display: inline-block;
    background-size: contain;
}

.icon-maltego.fa-2xl{
    width: 32px;
    height: 32px;
}

::-moz-selection{
  color: #fff !important;
  background: var(--custom-primary-color);
}

::selection{
  color: #fff !important;
  background: var(--custom-primary-color);
}

.btn-primary{
    background-image: linear-gradient(
        -45deg,
        rgba(0, 0, 0, .15) 25%,
        transparent 25%,
        transparent 50%,
        rgba(0, 0, 0, .15) 50%,
        rgba(0, 0, 0, .15) 75%,
        transparent 75%,
        transparent
    ) !important;
    background-size: 1rem 1rem !important;
    background-color: var(--custom-primary-color) !important;
    border-color: var(--custom-primary-color) !important;
}
.btn-primary:hover{
    background-color: var(--custom-primary-hover-color) !important;
    border-color: var(--custom-primary-hover-color) !important;
    -webkit-animation: 1s linear infinite btn-primary-stripes;
    animation: 1s linear infinite btn-primary-stripes;
}

.text_blink{
    animation: text_blink 1s linear infinite;
}

.newly_unlocked{
    animation: flash_once 1s ease-in-out 5;
}

#card_solved{
    opacity: 0;
    transition: 1s ease-out;
}
#card_solved.card_solved_visible{
    opacity: 1;
}

.desktop_ransomware .card{
    opacity: 1;
    transform: translateY(0);
    transition: 1s ease-out;
}

.fade-out-top-left{
    opacity: 0 !important;
    transform: translate(-200px, -200px) !important;
}
.fade-out-top-right{
    opacity: 0 !important;
    transform: translate(200px, -200px) !important;
}
.fade-out-bottom-left{
    opacity: 0 !important;
    transform: translate(-200px, 200px) !important;
}
.fade-out-bottom-right{
    opacity: 0 !important;
    transform: translate(200px, 200px) !important;
}

.site_title{
    font-size: 5rem;
    text-decoration: none;
    -webkit-text-fill-color: black;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: var(--custom-primary-color);
    text-shadow: 0 0 8px var(--custom-primary-color);
    transition: .3s;
}
.site_title:hover{
    -webkit-text-fill-color: #a2a3ff;
    text-shadow: none;
}

.breadcrumb a{
    text-decoration: none;
    color: var(--custom-primary-color);
}
.breadcrumb a:hover{
    text-decoration: underline;
}

.no-underline{
    text-decoration: none !important;
}

#img_logo_container{
    width: 118px;
    height: 118px;
}

.img_gray{
    filter: grayscale(1);
}

[id^="program_"]:not(.program_no_full_height){
    height: 80vh;
}

[id^="program_"]:not(.program_no_full_height) > .card-body{
    min-height: calc(80vh - 40.8px);
}

.program_buttons{
    margin-top: -3px;
}

#program_mailbox #mailbox-tab .nav-link,
#program_mailbox [id^=emails-tab-] .nav-link{
    border-radius: 0;
    font-size: .75em;
}
#program_mailbox #mailbox-tab .nav-link.active,
#program_mailbox [id^=emails-tab-] .nav-link.active{
    background-color: #ccc;
    color: #000;
    font-weight: bold;
}

.mail_content{
    height: calc(80vh - 24px - 93px - 77px);
}

.window_maximized .mail_content{
    height: calc(80vh - 24px - 94px);
}

#card_doubts{
    z-index: 999999;
    position: absolute;
    width: 500px;
    left: 300px;
    opacity: 0;
    transition: 1s;
}

.facebook_header{
    height: 300px;
    display: inline-block;
    overflow: hidden;
}

.facebook_header img{
    margin-top: -50px;
}

.facebook_textarea{
    resize: none;
}

a.btn_facebook_link{
    display: block;
    padding: 10px 8px 0px;
    width: 100%;
}

a.btn_facebook_link:hover{
    background: #ddd;
}

#facebook_right_contacts a.btn_facebook_link{
    padding-bottom: 10px;
}

#select_lang{
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='rgba(255, 255, 255, .55)' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    color: rgba(255, 255, 255, .55);
    border: none;
    text-align: center;
}

#select_lang option{
    background-color: #3b3f42;
}

#sidebar{
    min-width: 180px;
    width: 180px;
}

#sidebar > div{
    min-width: 180px;
    width: 180px;
}

#sidebar_right{
    min-width: 180px;
    max-width: 600px;
}

#clipboard_content{
    max-height: 600px;
}

.nav-pills{
    --bs-nav-pills-link-active-bg: var(--custom-primary-color);
}

.nav .nav-link{
    text-align: left;
}
.navbar .nav-link.dropdown-toggle{
    background-color: transparent;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='rgba(255, 255, 255, .55)' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    color: rgba(255, 255, 255, .55);
    border: none;
    text-align: right;
    background-repeat: no-repeat;
    background-position: right 0 center;
    background-size: 16px 12px;
    padding-right: 20px;
}
.navbar .nav-link.dropdown-toggle.active{
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='rgba(255, 255, 255, 1)' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    color: rgba(255, 255, 255, 1);
}
.navbar .nav-link.dropdown-toggle::after{
    content: none;
}
.navbar .dropdown-menu{
    background-color: #E9E9ED;
}
.navbar .dropdown-menu .dropdown-item,
#select_lang option{
    color: #000 !important;
}
.navbar .dropdown-menu .dropdown-item.active,
.navbar .dropdown-menu .dropdown-item:hover{
    background-color: #52525E;
    color: #fff !important;
}

.dropdown .dropdown-item.text-white:hover,
.dropdown .dropdown-item.text-white:active,
.dropdown .dropdown-item.text-white:focus,
.dropdown .dropdown-item.text-white:focus{
    color: #000 !important;
    background-color: #fff;
}

.card-body{
    padding: .2rem .7rem .7rem;
}

.card-text a.stretched-link{
    color: inherit !important;
    text-decoration: none;
}

.scale_12{
    transform: scale(1.2);
}
.scale_15{
    transform: scale(1.5);
}
.scale_1000{
    transform: scale(10);
}

.rounded-octagon{
    -webkit-clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
    clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
}

.hover_cursor:hover{
    cursor: pointer;
}

.normal_cursor:hover{
    cursor: default;
}

.not_allowed_cursor:hover{
    cursor: not-allowed;
}

.prevent_select{
    user-select: none;
}

.hover_underline:hover{
    text-decoration: underline;
}

.facebook_round, .facebook_round_double, .facebook_round_profile, .facebook_round_half{
    display: inline-block;
    width: 40px;
    height: 40px;
    text-align: center;
    border-radius: 50%;
}

.facebook_round_half{
    width: 32px;
    height: 32px;
    margin-left: -10px;
}

.facebook_round_double{
    width: 60px;
    height: 60px;
}

.facebook_round_profile{
    width: 168px;
    height: 168px;
    margin-top: -32px;
}

.facebook_round .fa-fw{
    padding-top: 4px;
}

#instagram_container{
    height: calc(100% - 38px);
}

#instagram_general_nav{
    /* width: 50px; */
}

.instagram_img_sm{
    width: 24px;
    height: 24px;
}

.instagram_img_md{
    width: 48px;
    height: 48px;
}

.instagram_img_lg{
    width: 64px;
    height: 64px;
}

.instagram_img_xl{
    width: 96px;
    height: 96px;
}

#instagram_search .input-group input,
#instagram_search .input-group button{
    font-size: .8em;
    height: 30px;
}

.instagram_feed_image_container{
    max-height: 800px;
    overflow: hidden;
}

.profile_pic,
.profile_fingerprint_pic{
    max-height: 100px;
}
.profile_pic_double{
    max-height: 200px;
}

.fingerprint_result_container{
    background-color: #f2f2f2 !important;
}
.profile_fingerprint_pic{
    mix-blend-mode: color-burn;
}

.windows_lock_screen_image{
    display: inline-block;
    width: 200px;
    height: 200px;
    text-align: center;
    border-radius: 50%;
}

#main_content:not(.desktop_lab) .profile_pic{
    border-radius: 50%;
}

.desktop_bitlocker{
    background-color: #2066B2;
}

.desktop_lab,
.desktop_victim,
.desktop_osint,
.desktop_ransomware,
.desktop_rccu,
.desktop_kidnapping_victim,
.desktop_murder_victim,
.desk_empty,
.desk_rccu,
.car_dashboard,
.garage_door,
.murder_arrest{
    background-color: #000;
    background-size: cover;
    background-position: center;
}

.desktop_victim{
    background-image: url("../images/backgrounds/bliss-min.jpg");
    display: none;
    opacity: 0;
    top: 0;
    width: 100%;
    transition: 1s ease;
}

.desktop_victim.show_decrypted_desktop{
    opacity: 1;
}

.desktop_lab{
    background-image: url("../images/backgrounds/bliss-min.jpg");
}

.desktop_osint{
    background-image: url("../images/backgrounds/fortnite-min.jpg");
}

.desktop_ransomware{
    background-image: url("../images/backgrounds/ransomware-min.jpg");
}

.desktop_rccu{
    background-image: url("../images/backgrounds/rccu2-min.jpg");
}

.desktop_kidnapping_victim{
    background-image: url("../images/backgrounds/victim-min.jpg");
    background-position: left top;
}

.desktop_murder_victim{
    background-image: url("../images/backgrounds/pokopia-min.png");
}

.desk_rccu{
    background-image: url("../images/backgrounds/desk-min.jpg");
}

.desk_empty{
    background-image: url("../images/kidnapping/desk_empty.jpg");
}

.car_dashboard.dashboard_no_pc{
    background-image: url("../images/kidnapping/dashboard_no_pc.jpg");
}
.car_dashboard.dashboard_spaceship{
    background-image: url("../images/kidnapping/dashboard_spaceship.jpg") !important;
}
.car_dashboard.dashboard_no_pc_open{
    background-image: url("../images/kidnapping/dashboard_no_pc_open.jpg");
}

.murder_arrest{
    background-image: url("../images/backgrounds/containers-min.jpg");
}

#btn_open_glovebox{
    top: calc(48% - 50px);
    left: calc(54% - 100px);
    width: 200px;
    height: 100px;
}

#btn_horn{
    top: calc(45% - 50px);
    left: calc(180px + 20px);
    width: 200px;
    height: 150px;
}

.garage_door{
    background-image: url("../images/kidnapping/garage_door_open.jpg");
}

#garage_image_closed{
    background-size: 100% 100%;
    background-position: top center;
    background-repeat: no-repeat;
    background-image: url("../images/kidnapping/garage_door_closed.jpg");
    width: 100%;
    height: 100%;
    margin-top: 0;
}

#garage_image_closed.garage_open{
    animation: garageOpenMotion 2s ease-in-out forwards;
}

#btn_open_garage{
    top: calc(65% - 50px);
    left: calc(50% - 100px);
    width: 200px;
    height: 100px;
}

#kidnapping_conclusion{
    opacity: 0;
    transition: 5s;
    margin-bottom: 800px !important; /* Extra margin to show the tied up victim */
}
#kidnapping_conclusion.show_conclusion{
    opacity: 100;
}

#frm_email_list,
#email_list_success{
    height: 38px;
}

#desk_laptop, #desk_phone{
    -webkit-filter: drop-shadow(0 0 10px #fd0);
    filter: drop-shadow(0 0 10px #fd0);
    position: absolute;
    transform: scale(.6);
    transition: .3s;
}

#desk_laptop:hover, #desk_phone:hover{
    -webkit-filter: drop-shadow(0 0 30px #fff);
    filter: drop-shadow(0 0 30px #fff);
    cursor: pointer;
}

#desk_laptop{
    top: 15%;
    left: 23%;
}

#desk_phone{
    top: 44%;
    left: 58%;
}

#input_enter_password_laptop::placeholder,
#input_enter_password_phone::placeholder{
    color: #fff !important;
}

#phone_kidnapping_phone{
    width: 360px;
    height: 728px;
    background-image: url("../images/backgrounds/phone-min.jpg");
    filter: drop-shadow(14px 16px 11px #000);
    -webkit-filter: drop-shadow(14px 16px 11px #000);
}

#phone_kidnapping_phone.white_background{
    background-image: none;
}

#phone_kidnapping_home,
#phone_app_messages,
#phone_app_gallery,
#phone_app_telegram{
    height: calc(100% - 24px - 80px);
}

.phone_header_buttons{
    position: sticky;
    top: 0;
    width: 360px;
    height: 24px;
}

.phone_header_buttons > div{
    width: 86px !important;
}

.phone_footer_buttons{
    position: absolute;
    bottom: 0;
    height: 80px;
}

.telegram_header{
    margin-top: -25px;
}

.telegram_chat_circle{
    width: 64px !important;
    height: 64px !important;
}

.telegram_chat_time{
    right: 4px;
    bottom: 0;
}

#telegram_chat{
    background-color: #000;
    background-attachment: fixed;
    background-position: center;
    background-image: url("../images/backgrounds/telegram-min.png");
}

#telegram_home{
    height: calc(728px - 80px);
}

.telegram_chat_container{
    height: calc(728px - 128px - 110px);
}

.telegram_from_user{
    border-bottom-right-radius: 0 !important;
    background-color: #eeffdd !important;
}
.telegram_from_other{
    border-bottom-left-radius: 0 !important;
    background-color: #f7f7f7 !important;
}

.desktop_fullscreen_window .card-body{
    max-height: calc(100vh - 125px);
    overflow: auto;
    height: auto;
}

.desktop_fullscreen_window.window_maximized{
    height: calc(100vh - 50px);
}

#program_username.desktop_fullscreen_window .card-body,
#program_location.desktop_fullscreen_window .card-body{
    max-height: calc(100vh - 158px);
}

#car_computer{
    width: 286px;
    height: 250px;
    margin-left: calc(50% - 143px);
    margin-top: calc(50% - 250px);
}

#car_computer_border{
    border-width: 15px !important;
}

#car_computer_screen{
    height: calc(100% - 36px);
}

#car_computer_buttons{
    height: 36px;
}

#car_locations_container{
    height: calc(100% - 29px);
}

.btn_car{
    background-color: #212529;
    transition: .3s;
}
.btn_car:hover{
    background-color: #333;
}

.btn_car_setting:active{
    opacity: .5;
}

#car_screen_rocket{
    background-color: #000;
    background-size: cover;
    background-position: center;
    background-image: url("../images/kidnapping/dashboard_pc_rocket.jpg");
}

[class^=car_setting_]{
    transition: .3s;
}

#car_audio{
    background: #212529;
    margin-bottom: -12px;
}

.desktop_button{
    text-decoration: none !important;
    color: #fff !important;
    text-shadow: -1px 0 black, 0 1px black, 1px 0 black, 0 -1px black;
}

.desktop_button .badge{
    width: 64px;
    height: 64px;
    padding-top: 20px;
}

.phone_button{
    text-decoration: none !important;
    color: #fff !important;
    text-shadow: -1px 0 black, 0 1px black, 1px 0 black, 0 -1px black;
}

.phone_button .badge{
    width: 48px;
    height: 48px;
    padding-top: 12px;
}

.square_container{
    position: relative;
    width: 100%;
    padding-bottom: 100%;
    overflow: auto;
}

.square_container img{
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.taskbar_button:hover{
    background: rgba(255, 255, 255, .3)
}

.taskbar_button .badge{
    width: 32px;
    height: 32px;
    padding-top: 9px;
}

#btn_windows .badge{
    padding-top: 7px;
    padding-left: 4px;
}

#program_explorer .explorer_nav_item:hover{
    background-color: #DEE4EA !important;
    cursor: pointer;
}

#program_explorer .explorer_file:hover{
    background-color: #CED4DA !important;
    cursor: pointer;
}

.program_no_full_height{
    position: absolute;
    top: 100px;
    width: 800px;
    left: 300px;
    max-height: 700px;
}

.program_no_full_height .program_buttons a:first-child,
.program_no_full_height .btn_maximize{
    display: none !important;
}

#preview_recipe textarea,
#preview_advertisement textarea,
#preview_budget textarea,
#preview_password_structure textarea,
#preview_fitness_schedule textarea{
    height: 500px;
    resize: none;
}

.dropup .taskbar_button::after{
    border: none !important;
    margin: 0px !important;
}

.fingerprint{
    mix-blend-mode: multiply;
}

blockquote{
    border-left: 5px solid var(--custom-primary-color);
    padding-left: 16px;
    padding-right: 16px;
    font-size: inherit !important;
}

input[type=radio],
input[type=checkbox]{
    border-color: #000;
}

#tbl_passwordfox{
    margin-top: 0px !important;
    margin-bottom: 0px !important;
}

#tbl_passwordfox_wrapper{
    height: 100% !important;
}

#tbl_myuninst{
    table-layout: fixed;
}

/* Chartist */

.ct-series-a .ct-bar,
.ct-series-a .ct-line,
.ct-series-a .ct-point,
.ct-series-a .ct-slice-donut{
    stroke: #dc3545;
}
.ct-series-b .ct-bar,
.ct-series-b .ct-line,
.ct-series-b .ct-point,
.ct-series-b .ct-slice-donut{
    stroke: #28a745;
}


/* Select2 */

.select2-container{
    width: 100% !important;
}


/* Datatables */

div.dtsp-panesContainer div.dtsp-searchPanes div.dtsp-searchPane div.dataTables_wrapper,
div.dtsp-panesContainer div.dtsp-searchPanes div.dtsp-searchPane div.dtsp-topRow{
    border: 1px solid #ccc !important;
    border-radius: 0 !important;
}

div.dtsp-topRow{
    background-color: #e2e3e5 !important;
    border-bottom: 0 !important;
}

input.dtsp-search{
    font-weight: bold !important;
    padding-left: 10px !important;
}

.dataTables_scrollBody{
    height: 158px !important;
}

.dtsp-pill{
    display: none !important;
}

.dtsp-searchPane .odd:hover,
.dtsp-searchPane .even:hover{
    background-color: #e2e3e5 !important;
}

.dtsp-searchPane .even{
    background-color: #f3f3f3 !important;
}

.btn-outline-primary{
    --bs-btn-color: var(--custom-primary-color);--bs-btn-color: var(--custom-primary-color);
    --bs-btn-border-color: var(--custom-primary-color);
    --bs-btn-hover-bg: var(--custom-primary-color);
    --bs-btn-hover-border-color: var(--custom-primary-color);
    --bs-btn-active-bg: var(--custom-primary-color);
    --bs-btn-active-border-color: var(--custom-primary-color);
    --bs-btn-disabled-color: var(--custom-primary-color);
    --bs-btn-disabled-border-color: var(--custom-primary-color);
}

#img_postit{
    position: absolute;
    width: 300px;
    left: calc(180px + 100px);
    top: 0;
    -webkit-filter: drop-shadow(-3px 4px 9px #000);
    filter: drop-shadow(-3px 4px 9px #000);
}

.storyline label{
    transition: .3s;
    transform: scale(1);
}

.storyline label:hover{
    transform: scale(1.05);
}

.storyline img{
    opacity: 1;
    transition: .3s;
}

.storylines .btn-check:checked + .btn img{
    opacity: .7;
}

.difficulties .difficulty{
    height: 200px;
}

.difficulties .difficulty button{
    transition: .3s;
    transform: scale(1);
    margin-top: -10px;
    margin-bottom: 0px;
}

.difficulties .difficulty:hover button{
    transform: scale(1.2);
    margin-top: 0px;
    margin-bottom: -10px;
}

.difficulties .difficulty p{
    margin-top: -89px;
    font-size: 1.3rem;
    color: #000;
}


#map_tracker_container,
#map_container{
    position: relative;
    width: 100%;
    margin: auto;
    overflow: hidden;
}

#map_tracker,
#map_general{
    width: 100%;
    height: auto;
}


#map_victim{
    position: absolute;
    top: 51%;
    left: 61%;
}
#map_garage_kidnapping{
    position: absolute;
    top: 48%;
    left: 60%;
}
#map_victim_kidnapping{
    position: absolute;
    top: 23%;
    left: 25%;
}
#map_lab{
    position: absolute;
    top: 57%;
    left: 7%;
}
#map_murder_lab{
    position: absolute;
    top: 52%;
    left: 72%;
}
#map_osint{
    position: absolute;
    top: 69%;
    left: 12%;
}
#map_suspect_wrong{
    position: absolute;
    top: 27%;
    left: 56%;
}
#map_suspect_kidnapping{
    position: absolute;
    top: 68%;
    left: 60%;
}
#map_suspect_car{
    position: absolute;
    top: 79%;
    left: 62%;
}
#map_murder_arrest{
    position: absolute;
    top: 27%;
    left: 53%;
}
#map_suspect,
#map_suspect_osint{
    position: absolute;
    top: 25%;
    left: 38%;
}
#map_murder_house_search{
    position: absolute;
    top: 67%;
    left: 49%;
}
#map_murder_intro{
    position: absolute;
    top: 69%;
    left: 34%;
}
#map_rccu{
    position: absolute;
    top: 71%;
    left: 4%;
}
#map_murder_rccu{
    position: absolute;
    top: 36%;
    left: 71%;
}
#map_prosecutor{
    position: absolute;
    top: 24%;
    left: 13%;
}
#map_food{
    position: absolute;
    top: 55.5%;
    left: 53%;
}
#map_murder_food{
    position: absolute;
    top: 36%;
    left: 30%;
}
#map_mayor{
    position: absolute;
    top: 84%;
    left: 52%;
}
#map_murder_mayor{
    position: absolute;
    top: 33%;
    left: 38%;
}
#map_easter_egg{
    position: absolute;
    top: 4%;
    left: 96%;
}
#map_murder_easter_egg{
    position: absolute;
    top: 18%;
    left: 96%;
}

.map_marker_hidden{
    top: -50px !important;
    left: -50px !important;
}

.ee_egg:hover,
.ee_hatching:hover,
.ee_chick:hover,
.ee_chicken:hover{
    cursor: pointer;
}

.powershell_output_command{
    color: #fff;
    margin: 6px 0 0;
}

#powershell_input:focus{
    outline: 0px none transparent !important;
    -moz-appearance: none !important;
    border: none !important;
    box-shadow: none !important;
}

#firefox_nav{
    height: 38px;
}

#firefox_page_copycats a.btn_facebook_link{
    width: calc(100% - 80px);
}


/* Pannellum */

.btn-pannellum{
    left: 16px;
    top: 16px;
}

#clue_row_container > dl:last-child{
    border-bottom: none !important;
}


/* Media queries */

@media only screen and (max-width: 767px){
    #sidebar_right{
        min-width: 180px;
    }
}

@media only screen and (min-width: 768px){
    .container, .container-lg, .container-md, .container-sm{
        max-width: calc(100% - 1rem);
    }
}

@media only screen and (max-width: 1600px){
    #sidebar_right{
        min-width: 400px;
        max-width: 400px;
    }

    #desk_laptop{
        top: 3%;
        left: 14%;
    }
}

@media only screen and (min-width: 1601px){
    #sidebar_right{
        min-width: 600px;
        max-width: 600px;
    }
}

@media only screen and (min-width: 1921px){
    #sidebar_right{
        min-width: 900px;
    }
}

/* Animations */

@keyframes text_blink{
  50%{
    opacity: 0;
  }
}

@keyframes flash_once{
    0%{
        background-color: #FFF1B3;
    }
    100%{
        background-color: #212529;
    }
}

@keyframes quiz_title_animation{
    0%{
        color: #FF45BB;
    }
    12.5%{
        color: #FFE545;
    }
    25%{
        color: #FF45BB;
    }
    37.5%{
        color: #FFE545;
    }
    50%{
        color: #FF45BB;
    }
    62.5%{
        color: #FFE545;
    }
    75%{
        color: #FF45BB;
    }
    87.5%{
        color: #FFE545;
    }
    100%{
        color: #FF45BB;
    }
}

@keyframes btn-primary-stripes{
    from{ background-position: 1rem 0; }
    to{ background-position: 0 0; }
}

@keyframes garageOpenMotion{
    0%{
        margin-top: 0;
        background-size: 100% 100%;
    }
    20%{
        margin-top: -10px;
        background-size: 100% 90%;
    }
    100%{
        margin-top: -100px;
        background-size: 100% 0%;
    }
}