:root {
  --base-0: rgba(10,10,10,1.0);
  --base-1: rgba(28,30,40,1.0);
  --base-2: rgba(20,21,27,1.0);
  --base-3: rgba(20,21,27,1.0);
  --base-3-dark: rgba(8,8,12,1.0);
  --text-0: rgba(240, 240, 240, 1.0);
  --text-link: rgba(200, 198, 160, 1.0);  
  --bright-0-lighten: rgba(160, 190, 224, 1.0);  
  --bright-0: rgba(70, 100, 120, 1.0);    
  --bright-0-darken: rgba(50, 60, 70, 1.0);
  --bright-0-darkest: rgba(32, 34, 45, 1.0);
  --light-0: rgba(200, 220, 244, 1.0);  
  --light-0-darken: rgba(90, 100, 122, 1.0);  
  --font-0: "Courier New", Courier, monospace;
  --font-1: "Tahoma", Geneva, monospace;  
  --font-size-0: 18px;
  --font-size-1: 24px;
  --font-size-2: 30px;
  --shadow-0: 5px 5px 5px 0px rgba(0,0,0,0.59);
  --shadow-0-downwards: 0px 5px 5px 0px rgba(0,0,0,0.59);
  --margin-half: 4px;
  --margin-standard: 8px;
  --margin-double: 16px;
  --margin-triple: 24px;
  --margin-huge: 50px;  
  --border-radius: 20px;
  --border-radius-button: 15px;
  --icon-size: 20px;
  --preview-content-height: 420px; /* Used in js also */    
  --preview-dark-height: 100px;
}

body {
    background-color: var(--base-0);
	font-family:  var(--font-0);
	color: var(--text-0);
}

h1, h2 {
    color: var(--text-0);
	text-shadow: 3px 3px 5px black;
	font-size: var(--font-size-2);
}
h2 {
	font-size: var(--font-size-1);
	margin-top: var(--margin-triple);
	margin-bottom: var(--margin-triple);
}

p {	    
    font-size: var(--font-size-0);
	padding: var(--margin-standard);
}

a {
    color: var(--text-link);
}

.title {
	text-shadow: 0px 0px 6px var(--light-0);
}

.basic-data > p {
	padding: var(--margin-half) var(--margin-standard) var(--margin-half) var(--margin-standard);
}

.frame {
	display: flex;	
	width: 100%;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin-bottom: var(--margin-standard);
}
.frame > p {
	padding: var(--margin-half);
	margin: var(--margin-half);
}
.frame > a > img, .frame > img {	
	max-width: 530px;
	max-height: 305px;	
	width: auto;
	height: auto;
}

#profileImg {
	filter: sepia(0.5);	
	-webkit-box-shadow: var(--shadow-0);
	-moz-box-shadow: var(--shadow-0);
	box-shadow: var(--shadow-0);
	border-radius: var(--border-radius-button);
}

.portfolio-base-wrapper {
	background-color: var(--base-1);
	width: 65%;		
	min-width: 500px;
	max-width: 1100px;
	padding: var(--margin-standard) var(--margin-huge) var(--margin-huge) var(--margin-huge);
	display: inline-block;
	border-radius: var(--border-radius);
	margin: var(--margin-double);
	text-align: left;
	-webkit-box-shadow: var(--shadow-0);
	-moz-box-shadow: var(--shadow-0);
	box-shadow: var(--shadow-0);
}

/* Artifact */

.all-artifacts-container {		
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	visibility: hidden; /* This will be visible, when loading done. */
	min-height: 500px;
}


.all-artifacts-loading {
	position: absolute;	
	left: 50%;	
	width: 30vw;
	height: 25vw;
	display: inline-block;	
    transform: translate(-50%, 0%);
}

.all-artifacts-loading-img {
	mix-blend-mode: lighten;
	position: absolute;
	left: 0px;
	right: 0px;
	width: 100%;	
	height: 100%;	
	opacity: 70%;	
}

.artifact {	
	background-color: var(--base-2);
	max-width: calc(100% - var(--margin-double));
    display: block;
	padding: 0 0 0 0;
	border-radius: var(--border-radius);
	margin: var(--margin-huge) var(--margin-standard) var(--margin-standard) var(--margin-standard);
	position: relative;
	-webkit-box-shadow: var(--shadow-0);
	-moz-box-shadow: var(--shadow-0);
	box-shadow: var(--shadow-0);
	overflow: hidden;
}

.artifact-header {		
	background: linear-gradient(0deg, var(--bright-0) 0%, var(--bright-0-lighten) 100%);
	font-size: var(--font-size-2);
	border-radius: var(--border-radius) var(--border-radius) 0 0;
	font-family: var(--font-1);
	padding: 12px 0px 12px 0px;    
	text-align: center;
	float: left;
	width: 100%;	
	text-shadow: 0px 0px 12px var(--light-0);	
	-webkit-box-shadow: var(--shadow-0-downwards);
	-moz-box-shadow: var(--shadow-0-downwards);
	box-shadow: var(--shadow-0-downwards);
}

.no-results {
	display: none;
	padding: var(--margin-standard);
}

.no-results.active {
	display: block;
}

.artifact-logo {
	width: 8%;		
	height: auto;
	position: absolute;
	padding-top: 11px;
	top: 0;
	left: 0;
	z-index: 10;
	overflow: hidden;	
	display: none; /* Hide this for now. So much already graphical content.*/
}

.artifact-logo-img {
	max-width: 35%;	
	height: auto;
}

.artifact-tags-menu {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}

.artifact-tags {		
	display: none; /* Make it hidden. We make alternative tag icons.*/
}

.artifact-short {	
	font-size: var(--font-size-1);
    display: block;
	padding: var(--margin-double);
}

.artifact-time {	
    display: flex;
	width: 100%;	
	justify-content: center;
	align-items: center;
	padding: var(--margin-double)
}

.artifact-content {		
	position: relative;
	background-color: var(--base-3);
	width: 100%;
    display: block;		
	overflow: hidden;
	text-align: left;		
	height: var(--preview-content-height);
    transition: all 1.0s ease-in-out;	
	padding-bottom: var(--margin-huge);
}

.artifact-content.expanded {	
    /* height: Will be adjusted in script to match inner content height actually */
}

.artifact-content-inner {		
	padding: var(--margin-double);
}


/* Tags */

.artifact-tag-list {
	padding: var(--margin-double) 0px  var(--margin-double) 0px;	
	display: flex;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}

.tag-img {
	margin: var(--margin-half);
	width: var(--icon-size);
	height: var(--icon-size);
}

.artifact-tag {
	display: inline-block; 
	margin: var(--margin-double) var(--margin-half) var(--margin-half) var(--margin-half);
	padding:  var(--margin-standard);
	border-radius: var(--border-radius-button);
	box-shadow: 0px 0px 8px var(--bright-0-darken);
	background: linear-gradient(0deg, var(--bright-0-darkest) 0%, var(--bright-0-darken) 100%);
	transition: all 0.25s;
}

.artifact-tag-toggle {	
	cursor: pointer;
}

.artifact-tag.active {	
	box-shadow: 0px -2px 7px var(--light-0);
	background: linear-gradient(0deg, var(--bright-0) 0%, var(--bright-0-lighten) 100%);
}

.artifact-tag-toggle:hover,.artifact-tag-toggle.active:hover {
	box-shadow: 0px -2px 7px var(--light-0);
	background: linear-gradient(0deg, var(--bright-0) 0%, var(--light-0) 100%);
	transform: scale(1.1);
}


.artifact-tag-text {
	padding: var(--margin-standard); 
	font-size: var(--font-size-1);
	-webkit-user-select: none;        
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.custom-tag-data {
	display: none;
}

/* Toggle artifact content */

.artifact-toggle-content {	
	position: absolute;
	bottom: 0;
	height: var(--preview-dark-height);
	cursor: pointer;
	display: block;	
	width: 100%;
	left: 0;
	justify-content: center;
	align-items: center;			
}

.artifact-toggle-content:after {	
	position: absolute;
	width: 100%;
	height: var(--preview-dark-height);
	left: 0;
	top: 0;
	content: "";	
	background: linear-gradient(0deg, var(--base-3-dark) 0%, var(--base-3-dark) 50%, rgb(0,0,0,0) 100%);	
	transition: all 1s;
	opacity: 1.0;
}

.artifact-content.expanded > .artifact-toggle-content:after {
	opacity: 0.2;
}

.show-more,.show-less {		
	position: relative;
	width: 100%;	
	height: var(--preview-dark-height);
	padding-bottom: var(--margin-double);	
	opacity: 1.0;	
	transition: all 0.25s;
}

.artifact-toggle-content:hover > .show-more > .show-fg  {
	color: var(--light-0);
	text-shadow: 0px 0px 5px var(--light-0);
	opacity: 1.0;
	transform: scale(1.05);
}

.show-fg {
	z-index: 2;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;	
	height: 100%;
	display: flex;
	flex-direction: horizontal;
	align-items: center;
	justify-content: center;
	-webkit-user-select: none;        
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;		
}

.show-img {
	width: var(--icon-size);
	height: var(--icon-size);
	background-repeat: no-repeat;
	background-size: cover;
	margin: var(--margin-standard);
}

.show-more .show-img {
	background-image: url('icons/showmore.png');
}

.show-less .show-img {
	background-image: url('icons/showless.png');
}


