:root{
    --body-font: "mamemoji", "Yurumoji", "SerenityOS Emoji", sans-serif;
    --heading-font: "Cherish", "SerenityOS Emoji", var(--body-font);
	--black: hsl(348, 8%, 26%); 
    --aqua-bg: hsl(196, 100%, 85%);
    --aqua: hsl(196, 100%, 75%);
    --aqua-link: hsl(194, 56%, 52%);
    --white: #FDF9F6;

	/* spacing */
	
	--gap: calc(1rem + 1svw);
	--one-fourth-gap: calc(var(--gap) * 0.25);
	--half-gap: calc(var(--gap) / 2);
	--two-third-gap: calc(var(--gap) * 0.66);
	--three-fourth-gap: calc(var(--gap) * 0.75);
	--double-gap: calc(var(--gap) * 2);
	--full-height: calc(100svh - var(--double-gap));
	--full-width: calc(100svw - var(--double-gap));
	--mini-gap: 0.5vmax;    
    
    --drop-shadow-low: drop-shadow(0.3px 0.5px 0.7px hsl(var(--shadow-color) / 0.21)) drop-shadow(0.4px 0.8px 1px hsl(var(--shadow-color) / 0.21)) drop-shadow(1px 2px 2.5px hsl(var(--shadow-color) / 0.21));
    --shadow-color: 208deg 32% 59%;

    
	--text-shadow-white:
    calc(0.05em * 1) calc(0.05em * 0) 0
    var(--white),
calc(0.05em * 0.9239) calc(0.05em * 0.3827) 0
    var(--white),
calc(0.05em * 0.7071) calc(0.05em * 0.7071) 0
    var(--white),
calc(0.05em * 0.3827) calc(0.05em * 0.9239) 0
    var(--white),
calc(0.05em * 0) calc(0.05em * 1) 0
    var(--white),
calc(0.05em * -0.3827) calc(0.05em * 0.9239) 0
    var(--white),
calc(0.05em * -0.7071) calc(0.05em * 0.7071) 0
    var(--white),
calc(0.05em * -0.9239) calc(0.05em * 0.3827) 0
    var(--white),
calc(0.05em * -1) calc(0.05em * 0) 0
    var(--white),
calc(0.05em * -0.9239) calc(0.05em * -0.3827) 0
    var(--white),
calc(0.05em * -0.7071) calc(0.05em * -0.7071) 0
    var(--white),
calc(0.05em * -0.3827) calc(0.05em * -0.9239) 0
    var(--white),
calc(0.05em * 0) calc(0.05em * -1) 0
    var(--white),
calc(0.05em * 0.3827) calc(0.05em * -0.9239) 0
    var(--white),
calc(0.05em * 0.7071) calc(0.05em * -0.7071) 0
    var(--white),
calc(0.05em * 0.9239) calc(0.05em * -0.3827) 0
    var(--white);
}

body{
    font-size: calc(16px + 0.2svw);
    color: var(--black);
    font-family: var(--body-font);
    text-align: center;
    background-color: var(--aqua-bg);
    background-image: url("/assets/bg02.png");
      background-size: 8vmax auto;
      background-attachment: fixed;
    margin: 0;
}

body > *, h1, #seme, #uke, #error-popover{
    filter: var(--drop-shadow-low);
}

/*...........................................................

	links

..........................*/

a{
    color: var(--aqua-link);
}

a:is(:hover, :focus){
	color: var(--black);
}

a,
a:is(:hover, :focus){
	transition: color 0.2s ease-in-out;
}

a.hiddenlink,
a.hiddenlink:is(:hover, :focus){
	background: inherit;
	color: inherit;
	text-decoration: inherit;
	text-shadow: inherit;
	font-weight: inherit;
	padding: inherit;
	transform: inherit;
}

/*...........................................................

	headings

..........................*/

h1, h2, h3, h4, h5, h6{
    font-family: var(--heading-font);
}

h1{
    text-shadow: var(--text-shadow-white);
    padding-top: calc(var(--gap) * 1.5);
    margin-bottom: 0.25em;
}

h1 img:first-of-type{
    margin-left: 48px;
}

h2{
    margin-top: 0;
}

/*...........................................................

	cute sans protecting me hehehe

..........................*/

#bulldozer{
    background-image: url("/assets/bulldozer.gif");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: bottom left;
    image-rendering: pixelated;
    height: 10em;
    width: 13em;
    position: absolute;
        right: -13em;
        top: 14.44em;
    z-index: 99;
    animation: bulldoze 60s 2s linear forwards;
}

@keyframes bulldoze{
    from{right: -13em;}
    to{right: calc(100% + 13em);}
}

/*...........................................................

	footer

..........................*/

footer{
    font-size: 0.8em;
    margin: var(--gap) auto;
}

footer span:not(:last-child)::after{
    content: url("/assets/heart_p.png");
    margin-left: 0;
}

footer span:last-child::after{
    content: url("/assets/heart_p.png");
}

/*...........................................................

	input password field form

..........................*/

form{
    padding-left: calc(48px / 1.5);
}

#pw-form{
    display: flex;
    gap: var(--mini-gap);
}

.form{
    margin: 0 auto;
    text-align: center;
    width: fit-content;
    animation: byebye 44s 21s linear forwards;
    z-index: 999;
}

input{
    width: 27ch;
    padding: 1ch;
    /* font-size: 1em; */
    font-family: var(--body-font);
}

::placeholder {
    text-align: center; 
    letter-spacing: 0.25ch;
    font-family: "Yurumoji";
}

button{
    font-family: "Yurumoji";
    padding: 0.25ch 0.66ch 0.33ch 0.75ch;
}

/*...........................

	slides pw field away

..........................*/

@keyframes byebye{
    to{transform: translateX(calc((80vw + 30ch) * -1));}
}

/*...........................................................

	wrong password!!! wanna try again?

..........................*/

#error-popover{
    background: none;
    border: 0;
    margin-top: var(--double-gap);

    img{
        height: 80vh;
    }
}

/*.................................

	CUTE TOP AND BOTTOM OF PAGE DECORATION!!!!

..........................*/

#seme, #uke{
	width: 100svw;
	background-repeat: round no-repeat;
		background-size: auto 100%;
	position: fixed;
		left: 0;
	z-index: 999;
	box-sizing: border-box;
}

#seme{
	--seme-height: 6svh;
	height: var(--seme-height);
		background-position: top center;
		top: 0;
}

#uke{
	--uke-height: 6svh;
	height: var(--uke-height);
		background-position: bottom center;
		bottom: 0;
}

#seme, #uke{
    background-image: url("/assets/butterfwy.png");
}

#seme{
    top: var(--half-gap);
}

#uke{
    bottom: var(--half-gap);
}

/*...........................................................

		AT LAST IT'S TIME FOR THE FREAKING SCROLLBARS!!!!!

..........................*/

body::-webkit-scrollbar{
  width: 1rem;
  height: 1rem;
  box-sizing: border-box;
  outline: 0.1rem dotted;
}

body::-webkit-scrollbar-button:single-button{
	height: 1rem;
	width: 1rem;
	background-image: url("/assets/sansy.png");
		background-repeat: no-repeat no-repeat!important;
		background-position: center;
		background-size: 75%;
}

body::-webkit-scrollbar-track{
	background: var(--white);
}

body::-webkit-scrollbar-thumb{
	box-sizing: border-box;
	background: var(--aqua);
}

/*...........................................................

	style my freaking tooltip

..........................*/

:root{

	/* the tooltip */
	
	--black2: hsl(0, 0%, 26%);
	--black2-rgb: 55, 53, 49;
	--tooltip: var(--black2);
	--tooltip-rgb: var(--black2-rgb);
}

#s-m-t-tooltip{
	/* basic */
	max-width: 50svw;
	z-index:99999;
	margin:-49px 14px 7px 21px;
	/* style and design */
	padding:1ch;
	padding-top: 0.75ch;
	background: var(--tooltip); /* fallback if rgba not supported */
	background: rgba(var(--tooltip-rgb),0.88);
	-moz-border-radius:4px;
	-webkit-border-radius:4px;
	border-radius: 4px;
	border: 0.1ch dashed var(--white);
	outline: 0.33ch solid var(--tooltip);
	filter: 
		drop-shadow(2.8px 2.8px 0.5px rgba(0, 0, 0, 0.07))
		drop-shadow(4.4px 4.4px 1.1px rgba(0, 0, 0, 0.05))
		drop-shadow(6.7px 6.7px 2.2px rgba(0, 0, 0, 0.05));
	/* font */
	font-family: var(--body-font);
	font-size: 0.75em;
	line-height: 1;
	color: var(--white);
	text-align: center;
}