:root {
	--text: #fafafa;
	--line: #000;
	--accent: #814fff;
	--bg: transparent;
	--fill: #333;
}

@view-transition {
	navigation: auto;
}



/* HTML: <div class="loader"></div> */
.loader {
  width: 120px;
  height: 22px;
  border-radius: 40px;
  color: #514b82;sl
  border: 2px solid;
  position: relative;
}
.loader::before {
  content: "";
  position: absolute;
  margin: 2px;
  width: 25%;
  top: 0;
  bottom: 0;
  left: 0;
  border-radius: inherit;
  background: currentColor;
  animation: l3 1s infinite linear;
}
@keyframes l3 {
    50% {left:100%;transform: translateX(calc(-100% - 4px))}
}


body { 
	color: var(--text);
	font-family: "Roboto", "Asta Sans", sans-serif; 
	font-size: 13px;
  list-style: inside;
  text-align: justify;
  overflow: auto;
  line-height: 180%;
}


::selection {
    background: var(--accent);
    color: var(--text);
}


* { 
	margin: 0;
	padding: 5;
	box-sizing: border-box;
	scrollbar-color: var(--text) var(--line) }

*::-webkit-scrollbar { width: 3px; }
*::-webkit-scrollbar-track { background: var(--line); }
*::-webkit-scrollbar-thumb { background-color: var(--text); border: transparent; }
  

img { 
  max-width: 110%;
  padding: 15px;
  margin-left:10px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  border-radius: 15px;
  transition: all 0.5s ease;
}

img::before {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(
    0deg, 
    transparent, 
    transparent 10%, 
    rgba(220, 212, 255, 0.73)
  );
  transform: rotate(-45deg);
  transition: all 1s ease;
  opacity: 0;
  
}

img:hover {
  transform: scale(1.05);
}

img:hover::before {
  opacity: 1;
  transform: rotate(-45deg) translateY(100%);
}

nav {
	float: left;
	width: 15%;
	height: 100vh;
	position: relative;
	background-color: var(--bg);
	z-index: 10;
	margin-top: 15px;
}

nav div {
	height: fit-content;
  max-width: 100%;
	position: relative;
	top: 50%;
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	right: -2.25vw;
	font-family: "DotGothic16", "Roboto", "Asta Sans", sans-serif;
	z-index: 10; 
}

.btn-3 {
  font-family: "DotGothic16", sans-serif;
  text-transform: uppercase;
  font-size: 0.8em;
  letter-spacing: 1px;
  line-height: 170%;
  padding: 3px;
  }


/* Dropdown Menu */
    .dropdown {
      position: relative;
      display: block;
      z-index: 10; 
      border-radius: 0.5rem;
    }

    .dropdown-content {
      font-family: "DotGothic16", sans-serif;
      text-transform: uppercase;
      font-size: 0.8em;
      letter-spacing: 1px;
      float: center;
      position: absolute;
      top: 100%;
      left: 0;
      background: white;
      min-width: 50px;
      max-width: 180px;
      box-shadow: 0 2px 5px rgba(0,0,0,0.1);
      opacity: 0;
      transform: translateY(-10px);
      transition: all 0.3s;
      pointer-events: none;
      border-radius: 0.5rem;
      z-index: 10; 
    }

    .dropdown:hover .dropdown-content {
      opacity: 1;
      transform: translateY(0);
      pointer-events: auto;
      
    }

    .dropdown-content a {
      color: #374151;
      padding: 0.5rem 1rem;
      text-decoration: none;
      display: block;
    }

    .dropdown-content a:hover {
      background: #f3f4f6;
      border-radius: 0.5rem;
    }

/* Password Form */

   
.pswd {
	text-align: center;
	float: center;
	width: 100%;
	height: 100px;
  position: fixed;
  top: 50%;
  left: 50%;
	background-color: var(--bg);
	z-index: 10;
  font-size: 11px;
	text-align: center;
	font-family: "DotGothic16", sans-serif;
	display: block;
}



.input
  {type="submit";
  padding: 10px;
  margin: 5px;
  font-family: "DotGothic16", sans-serif;
  text-transform: uppercase;}
  
.label {
  margin-top: 150px;
	padding: 10px;
	margin: 10px;
	letter-spacing: 2px;
	line-height: 2em;
	font-size: 12px;
}


/* main */

main {
	float:left;
	width: 82%;
	height: 100vh;
	padding: 2em;
	background-color: var(--bg);
	z-index: 9;
}

.container { max-width: auto; } /*원래 1500*/

section {
	margin: 2em 0;
	padding: 1em;
	background-color: var(--fill);
	border: 1px solid var(--accent);
	filter: drop-shadow(3px 3px 3px var(--accent));
}


hr {
	border: none;
	border-top: 1px solid var(--accent);
	padding: 5px;
}



.stripe {
	float: left;
	width: 3%;
	height: 100vh;
	background-color: var(--line);
	color: var(--line);
}

header {
	font-size: 12px;
	line-height: 160%;
	font-family: "DotGothic16", sans-serif;
	margin-bottom: 2rem;
	letter-spacing: 1px;
	color:var(--fill);
	filter: drop-shadow(1px 1px 0 var(--text))
			drop-shadow(-1px 1px 0 var(--text))
			drop-shadow(0 -1px 0 var(--text))
			drop-shadow(1px 0 var(--text));
}

h2, p, table, cite, blockquote, img {
	margin: 1rem 0;
	font-weight: 400;
	font-family: "DotGothic16", "Roboto", "Asta Sans", sans-serif;
	font-size: 1rem;
  list-style: inside;
  text-align: justify;
  overflow: auto;
  line-height: 180%;
}

details {
	font-weight: 400;
	font-family: "DotGothic16", "Roboto", "Asta Sans", sans-serif;
	font-size: 1em;
	line-height: 180%;
}

ul, ol, dl {
	margin: 1rem 0 1rem 2rem;
	font-size: 1em;
}

ul ul, ol ol { 
	margin: 0 0 0 2rem;
	font-size: 1em;
	margin-top: 5px;
}

p, table,  ul, ol, dl {
	font-size: 1em;
}

a { 
	color: var(--accent);
	padding: 2px;
}

p a:hover { 
	color: var(--fill);
	background-color: var(--accent);
}

h6 { font-size: 0.9em;
font-family: "DotGothic16", sans-serif;
color: #ededed;}

h5 { font-size: 1.25em; font-weight: bold; letter-spacing: 2px; }

h7 { 
  font-family: "DotGothic16", "Roboto", "Asta Sans", sans-serif;
  font-size: 1.5em; font-weight: bold;
  letter-spacing: 1px;}

h4 { font-size: 0.8em;
  font-family: "DotGothic16", sans-serif;
  line-height: 160%;
  letter-spacing: 1px;
  padding: 2px;
  color: #333;}
  
h3 { font-size: 0.8em;
	font-weight: 400;
  margin: 3px 0;
  text-align: right;
  font-size: 0.8em;
	font-family: "DotGothic16", sans-serif;
	text-transform: uppercase;
	font-weight:bold;
	margin-bottom: 2rem;
	letter-spacing: 1px;
	color:var(--fill);
	filter: drop-shadow(1px 1px 0 var(--accent))
			drop-shadow(-1px 1px 0 var(--accent))
			drop-shadow(0 -1px 0 var(--accent))
			drop-shadow(1px 0 var(--accent));}
			
h2 { font-size: 1.3em;
	text-align: right;
	background-color: var(--accent);
	padding: 3px; 
	letter-spacing: 1px;}

blockquote {
	background-color: var(--accent);
	color: var(--fill);
	padding: 1em;
}

blockquote a, blockquote code {
	color: var(--text);
}

cite { 
	display: block;
	text-align: right;
}

code, details, pre {
	background-color: var(--bg);
}

code { 
	font-family: 'Courier New', monospace; 
	padding: 2px;
}

details, pre {
	padding: 1em;
}

pre { overflow-x: auto; }

details p { margin: 1rem 0 1rem 2rem; }

table {	border: 5px solid var(--line); }
tr, td, th { border: 2px solid var(--line); }
td, th { padding: 3px }

figcaption { 
	text-align: center;
	margin: -0.5em 1em 1em 1em;
}

footer { 
	font-size: 11px;
  text-align: center;
	margin-top: 1em;
	margin-bottom: 0;
	overflow-x: hidden;
	overflow-x: hidden;
	padding: 10px;
	letter-spacing: 1px;
	font-family: "DotGothic16", sans-serif;
}

footer a { color: var(--text); }

.flex-box {
    display:flex;
    flex-wrap:wrap;
    margin: -1em;
 	  align-items: flex-start;
}

.flex-box section {
	margin: 1em;
	}

.full { flex: 1 1 100%;}
.web { flex: 1 1 100%;
  border: 1px solid var(--accent);
  background-color: #fafafa;
  padding: 2px;
  border-radius: 5px;}
.half { flex: 1 1 calc(50% - 2em); }
.third { flex: 1 1 calc(33% - 2em); }
.twothird { flex: 1 1 calc(66% - 2em); }
.quarter { flex: 1 1 calc(25% - 2em); }
.threequarter { flex: 1 1 calc(75% - 2em); }



@media screen and (max-width: 800px){

	nav, main, .stripe {
		float: none;
		width: 100%;
		height: fit-content;
	}
	
	nav { padding: 2vw }
	
	nav div {
		height: fit-content;
		width: 100%;
		position: static;
		-ms-transform: translateY(0);
		transform: translateY(0);
		text-align: left;
		padding: 3px;
		display: block;
	}
	

	nav img {
  width: 100%;
  height: 1300%;
  padding: 3px;
  display: block;
  justify-content: center;
  align-items: center;
  position: absolute;
  border-radius: 15px;
  transition: all 0.5s ease;
  z-index: -1;
  margin-top: 30px;
  margin-bottom: 10px;
}
	
	nav a {
		display: inline-block;
		margin: 5px;
		font-size: 13px;
		width: 90%;
		position: relative;
	}
	
	main { 
		padding: 2em 1em;
		position: relative;
		font-size: 0.9em;
		line-height: 160%;
		z-index: 10;
		display: block;
		margin-top: 230px;
	}
	
	header { 
		font-size: 11px;
	  font-weight:bold;
		line-height: 160%;
		letter-spacing: 1px;
		z-index: 10;
		position: relative;
		display: block;
		margin-top: 230px;
	}
	
	.stripe { height: 30px; }
		
	section { padding: 0 1em; z-index: 10; }
	

	*::-webkit-scrollbar { width: 3px; }
	
}



/* Start https://www.cursors-4u.com */ * {cursor: url(https://cur.cursors-4u.net/cursors/cur-11/cur1054.cur), auto !important;} /* End https://www.cursors-4u.com */

