* {
    cursor: url('cursor/hand-point.cur'), auto;
}

a:link {
  color: #ffffff;
  border-bottom: none;
  
}
a:visited {
  color: #ffffff;
  border-bottom: none;
}

  ::-webkit-scrollbar {
  width: 6px;
}
  
  ::-webkit-scrollbar-track {
  border:1px solid CE4CB4;
}

::-webkit-scrollbar-thumb {
  background: #CE4CB4;
  border-radius: 10px;
}

*::selection {
  background: #CE4CB4;
  color: #ffffff;
}
*::-moz-selection {
  background: #CE4CB4;
  color: #ffffff;
}
*::-webkit-selection {
  background: #CE4CB4;
  color: #ffffff;
}

a:hover, button:hover, .clickable:hover {
    cursor: url('cursor/hand-grab.cur'), pointer;
}

input, textarea, [contenteditable="true"] {
    cursor: url('cursor/hand-write.cur'), text;
}

.search:hover, [role="search"]:hover {
    cursor: url('cursor/mag-glass.cur'), pointer;
}

.loading {
    cursor: url('cursor/timer.cur'), wait;
}


.waiting {
    cursor: url('cursor/wait-hourglass.cur'), wait;
}

@font-face {
	font-family : 'jmh';
	src: url("font/jmh.otf") format('opentype');
}

body {
    background-image: url("img/bg3_abysse3.png");
    background-position: top center;
    background-attachment: scroll;
	overflow-x: hidden;
    background-size: cover;
    background-repeat: no-repeat;
    margin: 0;
    padding: 0;
    min-height: 150vh; /* Taille de la page */
    position: relative;
    padding-bottom: 600px;
}

#drag {
    position: absolute;
    width: 50%;
    z-index: 99;
    cursor: move;
}

@keyframes paintingMovement {
    0% { transform: translateY(0px); }
    100% { transform: translateY(50px); }
}

@keyframes inTheWorldMovement {
    0% { transform: translateX(0px); }
    100% { transform: translateX(70px); }
}

@keyframes galaxyMovement {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

#container3D canvas {
	width : 100vw;
	height: 100vh;
	position : absolute;
	top:0;
	left:0;
}

.insideFrame {
    background-image: url("img/spacebg.gif");
    /*background-size: cover;*/
    background-position: center;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    overflow: hidden;
    z-index: 1;
    box-sizing: border-box;
    overflow-y: scroll;
}

.insideFrame::-webkit-scrollbar {
  display: none;
}

.flex-container {
    display: flex;
    flex-direction: row;
    height: 100%;
    width: 100%;
    padding: 2%;
    gap: 2%;
    box-sizing: border-box;
	overflow: visible;
}

.insideFrame p {
    z-index: 10;
    color: white;
    margin: 0;
    padding: 2% 5%;
    width: 100%;
    height: auto;
    box-sizing: border-box;
    word-wrap: break-word;
    font-size: 1.5vh;
    line-height: 1.5;

    position: relative;
    float: none; 
}

.abyss {
    background-image: linear-gradient(rgb(0, 0, 0), rgb(0, 0, 0), rgb(0, 0, 0), rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.6)), url(img/water-4.gif);
    background-color: black;
    background-attachment: scroll;
    background-size: 50%;
    background-position: bottom center;
    background-repeat: repeat-x;
    position: absolute; /* Reste en bas du body quand on scroll */
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 700px;
    z-index: 10;
    padding: 20px 0;
}


.menu-bar {
    padding: 2px 4px;
    display: flex;
    gap: 2px;
    flex-wrap: wrap;
	font-family: 'Tahoma', 'Segoe UI', sans-serif;
}

.menu-item {
    padding: 1px;
    font-size: 12px;
    color: #000;
    cursor: default;
    border: 1px solid transparent;
    font-family: 'Segoe UI', Tahoma, sans-serif;
}

#windows-body {
	padding : 0;
	margin:0;
}

#windows-body.p {
	font-size:5;
}

fieldset {
	margin : 0;
}

@keyframes flicker {
  0% {
    opacity: 0.27861;
  }
  5% {
    opacity: 0.34769;
  }
  10% {
    opacity: 0.23604;
  }
  15% {
    opacity: 0.90626;
  }
  20% {
    opacity: 0.18128;
  }
  25% {
    opacity: 0.83891;
  }
  30% {
    opacity: 0.65583;
  }
  35% {
    opacity: 0.67807;
  }
  40% {
    opacity: 0.26559;
  }
  45% {
    opacity: 0.84693;
  }
  50% {
    opacity: 0.96019;
  }
  55% {
    opacity: 0.08594;
  }
  60% {
    opacity: 0.20313;
  }
  65% {
    opacity: 0.71988;
  }
  70% {
    opacity: 0.53455;
  }
  75% {
    opacity: 0.37288;
  }
  80% {
    opacity: 0.71428;
  }
  85% {
    opacity: 0.70419;
  }
  90% {
    opacity: 0.7003;
  }
  95% {
    opacity: 0.36108;
  }
  100% {
    opacity: 0.24387;
  }
}
@keyframes textShadow {
  0% {
    text-shadow: 0.4389924193300864px 0 1px rgba(0,30,255,0.5), -0.4389924193300864px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
  5% {
    text-shadow: 2.7928974010788217px 0 1px rgba(0,30,255,0.5), -2.7928974010788217px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
  10% {
    text-shadow: 0.02956275843481219px 0 1px rgba(0,30,255,0.5), -0.02956275843481219px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
  15% {
    text-shadow: 0.40218538552878136px 0 1px rgba(0,30,255,0.5), -0.40218538552878136px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
  20% {
    text-shadow: 3.4794037899852017px 0 1px rgba(0,30,255,0.5), -3.4794037899852017px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
  25% {
    text-shadow: 1.6125630401149584px 0 1px rgba(0,30,255,0.5), -1.6125630401149584px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
  30% {
    text-shadow: 0.7015590085143956px 0 1px rgba(0,30,255,0.5), -0.7015590085143956px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
  35% {
    text-shadow: 3.896914047650351px 0 1px rgba(0,30,255,0.5), -3.896914047650351px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
  40% {
    text-shadow: 3.870905614848819px 0 1px rgba(0,30,255,0.5), -3.870905614848819px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
  45% {
    text-shadow: 2.231056963361899px 0 1px rgba(0,30,255,0.5), -2.231056963361899px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
  50% {
    text-shadow: 0.08084290417898504px 0 1px rgba(0,30,255,0.5), -0.08084290417898504px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
  55% {
    text-shadow: 2.3758461067427543px 0 1px rgba(0,30,255,0.5), -2.3758461067427543px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
  60% {
    text-shadow: 2.202193051050636px 0 1px rgba(0,30,255,0.5), -2.202193051050636px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
  65% {
    text-shadow: 2.8638780614874975px 0 1px rgba(0,30,255,0.5), -2.8638780614874975px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
  70% {
    text-shadow: 0.48874025155497314px 0 1px rgba(0,30,255,0.5), -0.48874025155497314px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
  75% {
    text-shadow: 1.8948491305757957px 0 1px rgba(0,30,255,0.5), -1.8948491305757957px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
  80% {
    text-shadow: 0.0833037308038857px 0 1px rgba(0,30,255,0.5), -0.0833037308038857px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
  85% {
    text-shadow: 0.09769827255241735px 0 1px rgba(0,30,255,0.5), -0.09769827255241735px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
  90% {
    text-shadow: 3.443339761481782px 0 1px rgba(0,30,255,0.5), -3.443339761481782px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
  95% {
    text-shadow: 2.1841838852799786px 0 1px rgba(0,30,255,0.5), -2.1841838852799786px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
  100% {
    text-shadow: 2.6208764473832513px 0 1px rgba(0,30,255,0.5), -2.6208764473832513px 0 1px rgba(255,0,80,0.3), 0 0 3px;
  }
}
.crt::after {
  content: " ";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: rgba(18, 16, 16, 0.1);
  opacity: 0;
  z-index: 2;
  pointer-events: none;
  animation: flicker 0.15s infinite;
}
.crt::before {
  content: " ";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.25) 50%), linear-gradient(90deg, rgba(255, 0, 0, 0.06), rgba(0, 255, 0, 0.02), rgba(0, 0, 255, 0.06));
  z-index: 2;
  background-size: 100% 2px, 3px 100%;
  pointer-events: none;
}
.crt {
  animation: textShadow 1s infinite;
}

.zoom-card {
    transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.3s ease;
    z-index: 25;
}

.zoom-card:hover {
    transform: scale(1.2);
    box-shadow: 0 0 50px rgba(189, 51, 149, 0.4);
    z-index: 50;
}

.insideFrameUpdate {
    /*background-image: url("img/spacebg.gif");
	background-color:grey;*/
    background-size: cover;
    background-position: center;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    overflow-y: auto;
    overflow-x: hidden;
    z-index: 1;
    box-sizing: border-box;
    scrollbar-color: rebeccapurple green;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 10px;
}

.insideFrameUpdate .introtextheader {
    width: 100%;
    text-align: center;
    margin-bottom: 10px;
}

.vhs-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 50;
    pointer-events: none;
    background-image: url("img/static.gif"); 
    background-size: cover;
    background-position: center;
    mix-blend-mode: overlay;
}

.vhs-overlay::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: repeating-linear-gradient(0deg,rgba(0, 0, 0, 0.1) 0px,rgba(0, 0, 0, 0.1) 2px,transparent 2px,transparent 4px);
    pointer-events: none;
    z-index: 51;
}

.vhs-overlay::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(ellipse at center, transparent 60%, rgba(0, 0, 0, 0.6) 100%);
    pointer-events: none;
    z-index: 52;
}