assets/css/style.css

Last modified Wed Aug 18 09:04:47 UTC 2021


/*-------------------------
	Simple reset
--------------------------*/

*{
	margin:0;
	padding:0;
}

/*-------------------------
	General Styles
--------------------------*/

html{
	overflow:hidden;
}

a, a:visited {
	outline:none;
}

a:hover{
	text-decoration:none;
}

section, footer, header, aside{
	display: block;
}

/*-------------------------
	The main page elements
--------------------------*/

body{
	font-family: system-ui, "Segoe UI", Roboto, Ubuntu, Oxygen, Cantarell, "Helvetica Neue", Arial, sans-serif;
	font-size: 20px;
	line-height: 1.3;
	color: #fff;
	width:100%;
	height:100%;
	position:absolute;
	overflow:hidden;
	margin: 0;
}

#stage{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
}

#stage > div{  /* The step divs */
	height:100%;
	position:relative;
}

#stage h1{
	font-weight:normal;
	font-size: 4.8vh;
	text-align:center;
	color:#fff;
	margin-bottom:60px;
	text-shadow: 3px 4px 0 #000;
}

.sitename{
	font-size: 8.16vh;
	font-weight: bold;
	line-height: 1.3;
}
#stage h1{
	line-height: 1.1;
}

#stage h2{
	font-weight: normal;
	font-size: 2.4vh;
	margin-top: 60px;
	margin-bottom: 5px;
	margin-left: 15vw;
	margin-right: 15vw;
}

.content{
	position:absolute;
	text-align:center;
	left:0;
	top:37.5%;
	width:100%;
}

.content input[type=file]{
	display:none;
}

a.back{
	width: 32px;
	height: 32px;
	background: url('../img/icons.svg') no-repeat -192px 0;
	position: absolute;
	cursor: pointer;
	top: 30px;
	left: 50%;
	z-index: 10;
	opacity: 0.8;
	margin-left: -16px;
	display: none;
}

a.back:hover{
	opacity:1;
}

a.info{
	position: absolute;
	cursor: pointer;
	bottom: 3%;
	right: 5%;
	z-index: 20;
	font-size: 2.75vh;
	opacity: 0.8;
	color: #ffffff;
	text-decoration: none;
	text-transform: lowercase;
}
a.info:hover{
	opacity:1;
}

a.privacy{
	position: absolute;
	cursor: pointer;
	bottom: 3%;
	left: 5%;
	z-index: 20;
	font-size: 2.75vh;
	opacity: 0.8;
	color: #ffffff;
	text-decoration: none;
	text-transform: lowercase;
}
a.privacy:hover{
	opacity:1;
}

a.disclaimer{
	position: absolute;
	cursor: pointer;
	right: 33%;
	left: 33%;
	width: 34%;
	bottom: 3%;
	font-size: 2.75vh;
	opacity: 0.8;
	z-index: 10;
	color: #ffffff;
	text-decoration: none;
	text-transform: lowercase;
	text-align: center;
}
a.disclaimer:hover{
	opacity:1;
}

p.cryptapp{
	position: absolute;
	width: 100%;
	top: 1.5%;
	font-size: 2.75vh;
	font-weight: normal;
	opacity: 0.8;
	z-index: 10;
	color: #ffffff;
	text-align: center;
}

img.busy{
	width: 160px;
	height: 160px;
	position: absolute;
	top: 30px;
 	left: 50%;
	margin-left: -80px;
	z-index: 10;
	visibility: hidden;
}
	
.sm{
	font-size: 90%;
	font-weight: bold;
	white-space: nowrap;
}

/*-------------------------
	Conditional classes
--------------------------*/

[class*="if-"]{
	display:none;
}

body.encrypt .if-encrypt{
	display:block;
}

body.decrypt .if-decrypt{
	display:block;
}

/*-------------------------
	Button styles
--------------------------*/

.button{
	width:240px;
	height:70px;
	text-align:center;
	text-decoration: none !important;
	color:#fff !important;
	text-transform: uppercase;
	font-weight: bold;
	border-radius:1px;
	display:block;
	line-height:70px;
	cursor: pointer;
	font-size:18px;
	margin:10px auto;
	opacity:1;
	border-style: solid;
	border-width: 1px;
	border-color: rgba(0,0,0,0.5);
	text-shadow: 1px 1px 0 #000;
}

.button:hover{
	border-style: dotted;
	border-color: #ffffff;
}

.button::before{
	content:'';
	background: url(../img/icons.svg) no-repeat;
	display: inline-block;
	width: 32px;
	height: 32px;
	vertical-align: middle;
	padding-right: 13px;
}

.button.green{
	background-color: #346228;
}

.button.magenta{
	background-color: #a31973;
}

.button.blue{
	background-color: #000;
}

.button.red{
	background-color: #000;
}

.button.save{
	background-color: #000;
}

/* Styles for specific buttons */

.button.browse{
	width:225px;
}

.button.process{
	width:190px;
}

.button.download{
	width:216px;
}

.button.encrypt::before{
	background-position: 0 0;
}

.button.decrypt::before{
	background-position: -96px 0;
}

.button.browse::before{
	background-position: -240px 0;
}

.button.process::before{
	background-position: -142px 0;
}

.button.download:before{
	background-position: -48px 0;
}

.wait{
	font-weight: 700;
}

/*-------------------------
	The steps
--------------------------*/

#step1{
	background-color: #113;
	background-image: linear-gradient(#002, #335, #446, #335, #113, #113, #002);
}

body.encrypt #step2{
	background-color: #346228;
}

body.decrypt #step2{
	background-color: #982a70;
}

#step3{
	background-color: #7d3100;
} 

#step3 input[type=password]{
	background-color: #fff;
	border: none;
	padding: 8px 18px;
	line-height: 1;
	font: inherit;
	display: inline-block;
	outline: none;
	width: 600px;
	margin-bottom: 18px;
	border-radius: 2px;
	box-shadow: 3px 3px 0 rgba(0,0,0,0.05);
	font-size: 36px;
	color: #555;
}

#step4{
	background-color: #6c3db3;
}

#step1 .content{	margin-top: -140px;}
#step2 .content{	margin-top: -110px;}
#step3 .content{	margin-top: -157px;}
#step4 .content{	margin-top: -100px;}

.prediv{	
	width: 90%;
	margin: auto;
}

#step3 input[type=text]{
	display: none;
}

@media screen and (max-width: 740px) {
	body { font-size: 13px; }
	.content { width: 98vw; left: 1vw; }
	.sitename { font-size: 150%; line-height: 1.15; }
	#stage h1 { font-size: 30px; text-shadow: 1px 1px 0 #000 !important; }
	#stage h2 { margin-left: 1vw; margin-right: 1vw; /* font-size: 20px;  */ }
	#step3 input[type=password] { margin-left: -2vw; }
}
@media screen and (max-width: 360px) {
 	.sitename { font-size: 120%; }
	#stage h1 { margin-bottom: 20px !important; }
	#stage h2 { margin-top: 20px !important; /* font-size: 18px; */ }
}
@media screen and (max-height: 400px) {
	#stage h1 { margin-bottom: 20px; }
	#stage h2 { margin-top: 20px; }
	img.busy { top: -25px; }
	a.back { top: -5000px; } /* hide off screen - can't do with display: none */
}
@media screen and (max-height: 750px) {
	#stage h1 { margin-bottom: 20px; }
	#stage h2 { margin-top: 20px; }
	img.busy { top: -25px; }
	a.back { top: -5000px; }
}
@media screen and (max-width: 360px) and (max-height: 600px) {
	body { line-height: 0.95; }
	#stage h1 { margin-bottom: 10px !important; }
	#stage h2 { margin-top: 10px !important; }
}
@media screen and (max-height: 400px) {
	#stage h1 { margin-top: 20px; margin-bottom: 25px; font-size: 25px; }
	#stage form { margin-bottom: -15px; }
	#stage h2 { margin-top: 20px; /* font-size: 19px; */ }
	p.cryptapp { top: -5000px; }
}
@media screen and (max-height: 540px) {
	a.back { top: -5000px; }
}