@import url('/olimpo/css/webdb.css');
@import url('/olimpo/css/fontawesome.css');

@font-face {
	font-family: 'cgothic';
	src: url('/olimpo/fonts/cgothic.woff2') format('woff2');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'optima';
	src: url('/olimpo/fonts/optima.woff2') format('woff2');
	font-weight: normal;
	font-style: normal;
}

:root {
	--ofnt: 'cgothic';
	--ofnts: .91em;
	--ofg:	#333; /* Foreground */
	--obg:	#FFF; /* Background */
	--obgt:	rgba(255,255,255,0.6); /* Background transparent */
	--obgc: #DDD; /* Background content */
	--osel: #E90; /* Selection background */
	--oslt: rgba(255,200,0,0.4); /* Selection background transparent */
	--ostx: #FA0; /* Selection text background */
	--osfg: #FFF; /* Selection foreground */
	--ohdr: #444; /* Header background */
	--ohdo: #333; /* Header over background */
	--ohfg: #FFF; /* Header foreground */
	--otit: #59C; /* Title foreground */
	--otbg: #CCC; /* Title background */
	--obfg: #FFF; /* Box foreground */
	--oibc: #CCC; /* Input border color */
	--odsf: #AAA; /* Disabled foreground */
	--odbg: #EEE; /* Disabled background */
	--oreq: #C33; /* Required foreground */
	--osep: #DDD; /* Separator */
	--oshd: #888; /* Shadow */
	--obfo: #FFF; /* Button over foreground */
	--osbg: #FFF; /* Select background */
}

@media (prefers-color-scheme: dark) {}
[data-theme='dark'] {
	--ofg:	#B1B1B1;
	--obg:	#1D1D1D;
	--obgt:	rgba(0,0,0,0.8);
	--obgc: #232323;
	--osel: #4B9EFF;
	--oslt: rgba(75,158,255,0.4);
	--ostx: #FA0;
	--osfg: #FFF;
	--ohdr: #222;
	--ohdo: #111;
	--ohfg: #B1B1B1;
	--otit: #FA0;
	--otbg: #282828;
	--obfg: #FFF;
	--oibc: #333;
	--odsf: #555;
	--odbg: #333;
	--oreq: #C66;
	--osep: #272727;
	--oshd: #000;
	--obfo: #FFF;
	--osbg: #444;
}

body {
	margin: 0px;
	height: 100%;
	background: var(--obg);
}
/*body > div {
	min-height: 100%;
	position: relative;
}*/
img {
	border: 0px;
	max-width: 100%;
}

div, td, input, select {
	color: var(--ofg);
	font: var(--ofnts) var(--ofnt);
}
option {
	font-family: verdana;
}

a:link, a:visited, .lnk {
	color: var(--osel);
	text-decoration: none;
	transition: all .4s linear;
}
a:hover, a:active, .lnk:hover {
	color: var(--otit);
	text-decoration: none;
}

select, textarea, .txt, .txa {
	color: var(--ofg);
	padding: 4px;
	border-radius: 4px;
	border: 1px solid var(--oibc);
	background: var(--obg);
	transition: box-shadow .3s linear;
}
.txa {
	background-image: linear-gradient(to top, var(--obgc) 20%, var(--obg) 80%);
}

.bar {
	color: var(--obgc);
	background: var(--ofg);
	margin: 4px;
	padding: 6px 12px;
	font-weight: bold;
	border-radius: 6px;
}

.button {
	color: var(--obfo);
	background: var(--osel);
	margin: 2px;
	padding: 4px 10px;
	cursor: pointer;
	border: 0px;
	border-radius: 4px;
	transition: all .4s linear;
}
.button:hover:enabled {
	color: var(--ofg);
	background: var(--obg);
}
.button:active:enabled {
	top: 1px;
	position: relative;
}
select:disabled,
.button:disabled {
	color: var(--odsf);
	background: var(--odbg);
}

.select {
	overflow: hidden;
	position: relative;
	display: inline-block;
	width: 150px;
	vertical-align: middle;
	background: var(--osbg);
	border: 1px var(--oibc) solid;
	border-radius: 3px;
	background-image: linear-gradient(to bottom,transparent,rgba(0,0,0,.2));
	box-shadow: 0 1px 1px rgba(0,0,0,.08);
}
.select:before, .select:after {
	top: 9px;
	right: 10px;
	width: 0;
	height: 0;
	content: '';
	position: absolute;
	border: 4px dashed;
	border-color: #888 transparent;
	pointer-events: none;
}
.select:before {
	border-top: none;
	border-bottom-style: solid;
}
.select:after {
	margin-top: 7px;
	border-bottom: none;
	border-top-style: solid;
}
.select > select {
	position: relative;
	width: 130%;
	margin: 0;
	padding: 6px 8px 6px 10px;
	height: 28px;
	line-height: 14px;
	font-size: 12px;
	color: var(--ofg);
	text-shadow: 0 1px var(--obg);
	background: rgba(0,0,0,0) !important;
	border: 0;
	border-radius: 0;
	-webkit-appearance: none;
}
.select > select:focus-visible {
	width: 100%;
	color: var(--ofg);
	outline-offset: -2px;
	outline: 2px solid var(--osel);
}
.select > select option {
	background: var(--osbg);
	text-shadow: 0 1px var(--obg);
}

.tc {
	text-align: center;
}
.tl {
	text-align: left;
}
.vt {
	vertical-align: top;
}
.vm {
	vertical-align: middle;
}
.cw {
	color: #FFF;
}

::selection, .selelm:hover, .selelma {
	color: var(--osfg);
	background-color: var(--ostx);
}
:is(textarea, .txt, .txa):focus-visible, .txt:focus-within, .button:hover:enabled {
	outline: 0;
	box-shadow: 0px 0px 3px 1px var(--osel);
}
:is(textarea, .txt, .txa, .select > select):disabled, .disabled {
	color: var(--odsf);
	background: var(--odbg);
}
.readonly, textarea:read-only, .txt:read-only, .txa:read-only {
	color: #008;
}
select[readonly] {
	color: #7688DA;
	touch-action: none;
	pointer-events: none;
}

.obgc {
	background: var(--obgc);
	backdrop-filter: blur(2px);
}
.ost {
	font-size: 1.5rem;
}
.osb {
	font-size: 2rem;
}
.osn {
	font-size: 1rem;
}
.oss {
	font-size: .8rem;
}
.tit {
	color: var(--otit);
}
.tbg {
	background: var(--otbg);
}
.req {
	color: var(--oreq);
}
.sep {
	color: var(--osep);
}

.blk {
	padding: 0px 9px;
	margin-right: 5px;
	border-radius: 3px;
	font-size: .875em;
	font-weight: bold;
	color: var(--ofg);
	border: 1px solid var(--otbg);
	text-shadow: 0px 1px 0px var(--obg);
	box-shadow: inset 0px 1px 0px var(--obg),0px 1px 3px rgba(128,128,128,.5);
	background-image: linear-gradient(to bottom, var(--obg) 20%, var(--otbg) 80%);
	transition: all .4s linear;
}
.blk:link, .blk:visited {
	color: var(--ofg);
}
.blk:hover, .blk:active {
	color: var(--osfg);
	background: var(--osel);
	text-shadow: var(--ofg);
	box-shadow: inset 0px 1px 0px var(--osel),0px 1px 3px #888;
}
.blk.active {
	border-color: transparent;
	color: var(--obg);
	background: var(--ofg);
	text-shadow: var(--obgc);
	box-shadow: inset 0px 1px 0px var(--ofg),0px 1px 3px #888;
}

.cnt {
	margin: 4px;
	font-size: 1rem;
	color: var(--ofg);
	background: var(--obgc);
	border-radius: 4px;
	box-shadow: 0px 0px 4px 0px var(--oshd);
}
.cnt div {
	padding: 6px;
}
.cnt div:first-child {
	background: var(--oibc);
}

.sqs {
	width: 97%;
	padding: 10px;
	border-radius: 4px;
	background: #DDD;
}

.rtbl {
	background: #FFF;
	border-radius: 2px;
	border-collapse: collapse;
	box-shadow: 1px 1px 2px 0px #888;
}
.rtbl tr {
	border-radius: 6px;
	border: 1px solid #DDD;
}
.rtbl th, .rtbl td {
	color: #333;
	padding: .3em;
}
.rtbl th {
	font-size: .9rem;
	color: var(--ohfg);
	background: var(--ohdr);
	font-weight: normal;
	border-right: 1px solid var(--ohfg);
}
.rtbl th div {
	cursor: pointer;
}
.rtbl th a:link div, .rtbl th a:visited div {
	font-size: .9rem;
	color: var(--ohfg);
	border-radius: 6px;
	text-decoration: none;
	transition: all .3s linear;
}
.rtbl th a:hover div, .rtbl th a:active div {
	color: var(--osel);
	background: var(--ohdo);
	text-decoration: none;
}
.rtbl td {
	overflow: hidden;
	text-overflow: ellipsis;
}
.rtbl tr:nth-of-type(odd) {
	background: #EEE;
}
.rtbl tr:hover {
	background-color: var(--oslt) !important;
}
@media screen and (max-width: 600px) {
  .rtbl {
	box-shadow: none;
	background: transparent;
  }
  .rtbl thead {
	position: absolute;
	clip: rect(0 0 0 0);
  }
  .rtbl tr {
	display: block;
	background: #FFF;
	margin-bottom: .625em;
	border-bottom: 3px solid #DDD;
  }
  .rtbl td {
	display: block;
	font-size: .8em;
	text-align: right;
	border-bottom: 1px solid #DDD;
  }
  .rtbl td::before {
	float: left;
	font-weight: bold;
	padding-right: 6px;
	text-transform: uppercase;
	content: attr(data-cn);
  }
  .rtbl td:last-child {
	border-bottom: 0;
  }
}

.mnu, .mnu ul {
	margin: 0;
	padding: 0;
	position: absolute;
	list-style-type: none;
}
.mnu li {
	display: inline-block;
	float: left;
	color: var(--ofg);
}
.mnu li a, .mnu li div, .mnue {
	height: 26px;
	line-height: 26px;
	display: block;
	color: var(--ofg);
	text-decoration: none;
	transition: all .3s linear;
}
.mnu li a span, .mnu li span {
	padding: 0px 20px;
}
.mnu li:hover a, .mnu li:hover > div, .mnu li:hover ul a:hover {
	cursor: pointer;
	border-radius: 2px;
	color: var(--osfg);
	background: var(--osel);
}
.mnu li:hover ul a, .mnu ul li {
	color: var(--ofg);
	background: var(--obg);
}
.mnu li ul {
	opacity: 0;
	visibility: hidden;
	padding: 1px;
	border-radius: 0px 0px 4px 4px;
	box-shadow: 1px 1px 3px 2px rgba(128,128,128,0.2);
	transition: visibility .4s, opacity .4s ease-in-out;
}
.mnu li ul li {
	display: block;
	float: none;
}
.mnu li ul li a {
	width: auto;
	padding: 0 20px;
	min-width: 100px;
}

.mnu li a:hover + .mnuh, .mnu li div:hover + .mnuh, .mnuh:hover {
	opacity: 1;
	display: block;
	visibility: visible;
}
@media screen and (max-width: 720px) {
  .mnu, .mnu ul {
	display: none;
	position: static;
  }
  .mnu li, .mnu li a, .mnu li div {
	width: 100%;
  }
}

[data-tooltip] {
	position: relative;
}
[data-tooltip]:before {
	position: absolute;
	padding: 2px 4px;
	opacity: 0;
	top: -28px;
	left: 50%;
	transform: translateX(-50%);
	color: #FFF;
	font-size: 12px;
	text-align: center;
	white-space: nowrap;
	background: rgba(0,0,0,.8);
	backdrop-filter: blur(2px);
	border-radius: 6px;
	content: attr(data-tooltip);
	transition: .3s ease-in-out;
	pointer-events: none;
}
[data-tooltip]:hover:before {
	top: -21px;
	opacity: .9;
}
@media (max-width: 600px) {
  [data-tooltip]:before {
	display: none;
  }
}
input[type="checkbox"]:disabled + label {
	color: #BBB;
}

.loader1 {
	display: inline-block;
	width: 16px;
	height: 16px;
	border: 5px solid var(--obgc);
	border-top: 5px solid var(--osel);
	border-radius: 50%;
	animation: loader1 2s linear infinite;
}
@keyframes loader1 {
	from {rotate: 0deg}
	to {rotate: 360deg}
}
.loader2 {
	display: inline-block;
	width: 21px;
	height: 21px;
	margin: 0;
	background: transparent;
	border-radius: 50%;
	border-top: 4px solid var(--osel);
	border-right: 4px solid transparent;
	animation: 1s loader2 linear infinite;
}
@keyframes loader2 {
	from {rotate: 0deg}
	to {rotate: 360deg}
}
.loader3 {
	display: inline-block;
	width: 20px;
	height: 20px;
	border: 0 solid transparent;
	border-radius: 50%;
	position: relative;
}
.loader3:before, .loader3:after {
	content: '';
	border: .2em solid var(--osel);
	border-radius: 50%;
	width: inherit;
	height: inherit;
	position: absolute;
	top: 0;
	left: 0;
	animation: loader3 1s linear infinite;
	opacity: 0;
}
.loader3:before {
	animation-delay: 1s;
}
.loader3:after {
	animation-delay: .5s;
}
@keyframes loader3 {
	0% {scale: 0; opacity: 0}
	50% {opacity: 1}
	100% {scale: 1; opacity: 0}
}
.loader4 {
	display: inline-block;
	color: var(--osel);
	position: relative;
	transform: translateZ(0);
	animation-delay: -0.1s;
	top: -1em;
	left: 12px;
	margin-right: 22px;
}
.loader4:before, .loader4:after, .loader4 {
	width: 15px;
	height: 15px;
	border-radius: 50%;
	animation-fill-mode: both;
	animation: loader4 1.8s infinite ease-in-out;
}
.loader4:before {
	right: 100%;
	animation-delay: -0.2s;
}
.loader4:after {
	left: 100%;
}
.loader4:before, .loader4:after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	width: inherit;
	height: inherit;
}
@keyframes loader4 {
	0%,80%,100% {box-shadow: 0 1em 0 -1em}
	40% {box-shadow: 0 1em 0 -.2em}
}
.loader5 {
	display: inline-block;
	width: 15px;
	height: 15px;
	color: var(--osel);
	border-radius: 50%;
	box-shadow: 0 1em 0 -.2em var(--osel);
	position: relative;
	animation: loader5 .8s ease-in-out alternate infinite;
	animation-delay: .32s;
	top: -1.55em;
	left: 12px;
	margin-right: 22px;
}
.loader5:after, .loader5:before {
	content: '';
	position: absolute;
	width: inherit;
	height: inherit;
	border-radius: inherit;
	box-shadow: inherit;
	animation: inherit;
}
.loader5:before {
	left: -1em;
	animation-delay: .48s;
}
.loader5:after {
	right: -1em;
	animation-delay: .16s;
}
@keyframes loader5 {
	0% {box-shadow: 0 2em 0 -.2em currentcolor}
	100% {box-shadow: 0 1em 0 -.2em currentcolor}
}
