* {		/* basics */
	margin: auto;
	text-decoration: none;
	font-family: "VT323";
	font-size: 1em;
	line-height: 1;
	color: #999999;
	box-sizing: border-box;
}

/* for div tracking purposes 
div {
	border-style: dotted;
}
*/

	/* -----fonts----- */
@font-face {	/* Audiowide */
	font-family: "Audiowide";
	src: url('fonts/Audiowide-Regular.ttf') format('truetype');
}

@font-face {	/* BrunoAceSC */
	font-family: "Bruno";
	src: url('fonts/BrunoAceSC-Regular.ttf') format('truetype');
}

@font-face {	/* Offside */
	font-family: "Offside";
	src: url('fonts/Offside-Regular.ttf') format('truetype');
}

@font-face {	/* Tektur */
	font-family: "Tektur";
	src: url('fonts/Tektur-VariableFont_wdth,wght.ttf') format('truetype');
}

@font-face {	/* VT323 */
	font-family: "VT323";
	src: url('fonts/VT323-Regular.ttf') format('truetype');
}
	
body {					/*-----root: general-----*/
	background: #808080 url("background.jpg") fixed;
	background-size: 150%;
}

body a, p, button, li {
	font-size: 2em;
	line-height: 0.95;
}

li a {
	font-size: 1em;
}

p {
	hyphens: auto;
	text-align: justify;
	padding-top: 20px;
}

h1 {
	font-weight: bold;
	font-size: 3em;
	padding-top: 20px;
}

h2 {
	font-weight: normal;
	font-size: 2.5em;
	padding-top: 10px;
}

h3 {
	font-size: 2.2em;
	padding-top: 20px;
}

table {
	font-size: 2em;
	margin-top: 20px;
}

th {
	background-color: #000;
	padding: 5px;
	text-align: left;
	font-size: 1.5em;
}

tr:nth-child(odd) {
	background-color: #cccccc;
}

tr:nth-child(even) {
	background-color: #ffffff;
}

tr:hover {
	background-color: #808080;
}

td {
	padding: 5px;
	color: black;
}


.header {					/*-----class: general-----*/
	display: block;
	width: 100%;
	z-index: 1;
	text-align: center;
}

#title {
	color: white;
	font-size: 10em;
	text-align: center;
	line-height: 0.8;
}

.body {
	position: relative;
	display: block;
	width: 95%;
	padding-bottom: 20px;
	z-index: 0;
}

.lilhr {
	margin: auto;
	margin-top: 10px;
	margin-bottom: 10px;
	color: #000000;
	width: 50%;
}

.img-box {
	width: 30%;
	border: 2px solid #fff;
	margin: 20px 10px;
}
							/*-----monitor effect-----*/
.monitor {			/* Monitor Frame */
	margin-top: 70px;
	margin-bottom: 70px;
	width: 1000px;
	height: 750px;
	background: #333;
	padding: 30px; /* Creates the bezel effect */
	border-radius: 10px;
	box-shadow: 0 10px 20px rgba(0,0,0,0.5);
	position: relative;
}

.screen {			/* Internal Screen */
	position: relative;
	width: 100%;
	height: 100%;
	background: #000;
	border: 1px solid #444;
	overflow-y: auto;
	overflow-x: hidden;
		/* Firefox */
	scrollbar-width: none;
		/* IE and Edge */
	-ms-overflow-style: none;
}

/* Chrome, Safari, and Opera */
.screen::-webkit-scrollbar {
  display: none;
}

.screen a {
	color: white;
}

.screen:hover {
	cursor: url("pointer_big.png"), auto;
}

.screen a:hover{
	cursor: url("pointer_link.png"), auto;
}

.screen-overlay {			/* makes glossy screen effect */
    /* Sticky keeps it pinned to the top of the .screen scroll area */
    position: sticky;
    top: 0;
    left: 0;
    
    /* These ensure it covers the viewable area but doesn't push text down */
    width: 100%;
    height: 690px; /* Match monitor height */
    margin-bottom: -690px; /* Pulls text back up so it starts at the top */
    
    /* Combined Glossy and Glass Gradient */
    background: 
        linear-gradient(135deg, rgba(255, 255, 255, 0.15) 0%, rgba(255, 255, 255, 0) 50%),
		/* Gloss */
		repeating-linear-gradient(
            0deg,
            rgba(0, 0, 0, 0.1) 0px,
            rgba(0, 0, 0, 0.1) 1px,
            transparent 2px,
            transparent 4px
        ),
		
        linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05)); /* Tint */
		background-size: 100% 100%, 100% 4px, 100% 100%;
	
    /* Frosted Effect */
    backdrop-filter: blur(0.5px);
    -webkit-backdrop-filter: blur(0.5px);
    
    /* The Magic Line: Allows clicking and scrolling through to text */
    pointer-events: none;
    z-index: 10;
    
    /* Optional: Subtle border to define the glass edge */
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    border-left: 1px solid rgba(255, 255, 255, 0.1);	
}

.power-light {
	position: relative;
	float: right;
	margin-top: 8px;
	margin-right: 20px;
  width: 10px;
  height: 10px;
  background-color: #66FF00; /* Bright red core */
  border-radius: 50%;
  
  /* Multiple box shadows create the glow layers */
  box-shadow: 
    0 0 10px #66FF00,   /* Inner soft glow */
    0 0 20px #66FF00,   /* Mid glow */
    0 0 40px #66FF00,   /* Large outer glow */
    0 0 80px #66FF00;   /* Far-reaching light */
}

.cyan-light {
	position: relative;
	float: right;
	margin-top: 8px;
	margin-right: 20px;
  width: 10px;
  height: 10px;
  background-color: #00FFFF; /* Bright red core */
  border-radius: 50%;
  
  /* Multiple box shadows create the glow layers */
  box-shadow: 
    0 0 10px #00FFFF,   /* Inner soft glow */
    0 0 20px #00FFFF,   /* Mid glow */
    0 0 40px #00FFFF,   /* Large outer glow */
    0 0 80px #00FFFF;   /* Far-reaching light */
	
	text-shadow: 0 0 10px #0fa, 0 0 20px #0fa, 0 0 40px #0fa;
  animation: flicker-heavy 4.1s infinite,
    flicker-subtle 7.3s infinite;
	opacity: 0.8;
	transition: opacity 0.1s;
}

/* The 'Activity' class applied by JS */
.reading {
  animation: hdd-crunch 0.15s infinite;
}

@keyframes hdd-crunch {
  0%, 100% { 
    background-color: #00FFFF; 
    box-shadow: 0 0 10px #00FFFF; 
  }
  50% { 
    background-color: #00b2b2; 
    box-shadow: none; 
  }
}


.title-container p {		/*-----logs-----*/
	text-align: right;
	margin-right: 5px;
}

.title-container a {
	font-size: inherit;
}

.init-container {
	margin-left: 0 10px;
}

.log-body {
	width: 80%;
}

.log-body-line hr {
	margin-top: 20px;
	border: 2px dashed #999999;
}

.good-text {
	color: #66FF00;
}

#prx-log {
	color: #66FF00;
}

#log-type {
	background-color: transparent;
	resize: none;
	line-height: 0.5;
	padding: 0;
	border: none;
	width: 90%;
}

#log-type:focus {
    outline: none;
    box-shadow: none; /* Some browsers use box-shadow instead */
}

.container-links {			/*-----link containers-----*/
	display: block;
	text-align: center;
	width: 100%;
}

.leftbtn {
	position: relative;
	display: inline-block;
	padding: 5px 8px;	
}

.leftbtn:hover {
	text-decoration: underline;
}

.leftbtnhere {
	position: relative;
	display: inline-block;
	padding: 5px 10px;
	font-weight: bold;
}


ul {						/*-----lists-----*/
	display: block;
	margin-left: 25px;
	margin-right: 25px;
}

ul li {
	text-align: justify;
	padding-top: 10px;
}

ul li:before {
	content: '\002A';
    margin: 0 0.5em;    /* any design */
}

.sessions {
	list-style-type: none;
	padding: 5px 0;
}

.sessions-diag {
	list-style-type: none;
	padding: 5px;
}

.sessions-diag li {
	hyphens: auto;
	text-align: justify;
	
}

.sessions-diag li:before {
	content: '';
}

.log-list li {
	list-style-type: none;
	line-height: inherit;
}

.error {
	color: red;
}

.tam {
	color: #FF00FF;
}

.morale-box {
	width: 50%;
	margin: auto;
	margin-top: 20px;
	border: outset #fff 4px;
	
}

.morale-box h1 {
	padding: 0 10px 10px 10px;
}

.morale-box p {
	padding: 10px;
}

#yellow {
	color: #FFFF00;
}

.party-container {				/*----- party box in index -----*/
	display: block;
	width: 80%;
}

.partyp {
	width: 33%;
	float: left;
	padding: 0 20px;	
}

.partyp p {
	text-align: left;
	line-height: 0.75;
}

.portimg {
	max-width: 100%;
	border: 4px outset #fff;
}

.portimg:hover {
	border-color: #66FF00;
}

.party-retired-container {
	display: block;
	margin: 0 10px;
	width: 100%;
}

.partyp-r {
	width: 15%;
	float: left;
	padding: 0 5px;
}

.partyp-r p {
	text-align: left;
	font-size: 1.2em;
	line-height: 0.75;
}

.partyp-r img {
	filter: grayscale(100%);
}

.ccbtn {					/*-----creative commons button-----*/
	position: relative;
}

#ccsize {
	height: 22px;	
}

@media screen and (max-width: 620px) {
	body a, p, button, li {
		font-size: 1.2em;
	}
	h1 {
	  font-size: 1.5em;
	}
	#title {
	  font-size: clamp(4rem, 40vw + 5rem, 7rem);
	}
	.monitor {			/* getting rid of frame */
	margin-top: 0;
	width: 100%;
	height: 100%;
	background: #333;
	padding: 0; /* Creates the bezel effect */
	border-radius: 10px;
	position: relative;
	}
	.screen-overlay {
	  height: 100%;
	  margin-bottom: 0;
	}
	.party-container {
		width: 100%;
	}
	.partyp {
		padding: 5px;
	}
	.partyp-r {
	width: 30%;
	float: left;
	padding: 0 5px;
	}
	.partyp-r p {
	text-align: left;
	font-size: 1em;
	line-height: 0.75;
	}
}