html{
  /*global colors*/
  --bg-color:  ;
  --darker-color: ;
  --lighter-color:  #3cf816;
  --accent-color: white;

  --sidebar-width:140px;
  background-color: var(--bg-color);
  background-image: url(https://t4.ftcdn.net/jpg/05/25/15/35/360_F_525153525_3tVDBbD5fbMu6LMZbheSBB5pH1YbXJjW.jpg); /*tiled*/
  width: 100%;
  min-height: 100vh;
  position: relative;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, img, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var, u, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
	color: var(--darker-color);
	background-color: var(--lighter-color);
}
body {
	line-height: 1.3;
	background-color: var(--bg-color);
	text-align: center;
	margin:0px 10px 0px;
}
ol, ul {
	list-style: none;
	list-style-type: square;
}

h1 {
	width: calc(100% - 20px);
	font-size: 3em;
	font-weight: bold;
	padding: 25px 10px 10px;
}
h1 img{
	width: 10%;
	max-width:720px;
}

h2{
	font-size: 2em;
	font-weight:bold;
	padding: 10px 8px 10px;
}

h2 img{
	width: 100%;
	max-width:720px;
}

h3 img{
	width: 60%;
	max-width:720px;
}
.boxgallery{
	margin: auto;
	padding:15px 30px 15px;
	max-width: 100%;
	display: flex;
	flex-flow: row-reverse wrap-reverse;
	justify-content: center;
	background-color: var(--darker-color);
}

.box{
	display: block;
	position: relative;
	min-width: 300px;
	max-width: 400px;
	min-height: 300px;
	margin: 5px;
	flex-grow: 1;
	background-color: var(--accent-color);
	background-position: center;
	background-size:cover;
	border: 4px solid var(--accent-color);
}

.boxHover{
	position: absolute;
	top: 0;
	bottom:0;
	padding: 15px 0px 30px;
	width: 100%;
	opacity: 0;
	transition: opacity 0.6s ease;
	display:flex;
	flex-flow: column nowrap;
	overflow: hidden;
}

.boxHover:hover{
	opacity: 1;
	background: grey;
	background: rgba(0, 0, 0, 0.5);
	transition: opacity 0.6s;
}

.box a, .box p{
	display: inline-block;
	width: 90%;
	margin:auto;
	color:white;
	font-size: 130%;
	opacity: 0;
	transition: opacity 0.4s;
}

.boxHover:hover a, .boxHover:hover p{
	opacity: 1;
}

.content{
	background-color: white;
	border: 4px solid white;
	margin: auto;
	margin-bottom: 15px;
	text-align: left;
	max-width: 1300px;
}

p{
	padding: 10px 12px 10px;
}

footer{
	width: 100%;
}
wavebeem-balatro-pog {
  touch-action: none;
  --avatar-size: 400px;
  --avatar-padding: 0px;
  isolation: isolate;
  max-width: max-content;
  margin-block: 1.5rem;
  padding: var(--avatar-padding);
  border-radius: 9999px;
  --t: 2px;
  --k: 0.05turn;
  --transform: translate(calc(var(--t) * var(--x)), calc(var(--t) * var(--y)))
    rotateY(calc(var(--k) * var(--x))) rotateX(calc(var(--k) * var(--y)));
  display: flex;
  position: relative;
}

wavebeem-balatro-pog [data-element="background"] {
  z-index: 1;
}
wavebeem-balatro-pog [data-element="rainbow"] {
  z-index: 2;
}
wavebeem-balatro-pog [data-element="shine"] {
  z-index: 3;
}
wavebeem-balatro-pog [data-element="image"] {
  z-index: 4;
}

wavebeem-balatro-pog[data-state="inside"] {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}

wavebeem-balatro-pog img {
  z-index: 1;
  touch-action: none;
  display: flex;
  border-radius: 9999px;
  width: var(--avatar-size);
  height: var(--avatar-size);
  border: 16px solid black;
  box-sizing: content-box;
}

wavebeem-balatro-pog [data-element="background"] {
  position: absolute;
  inset: 0;
  clip-path: circle(50%);
  width: 100%;
  height: 100%;
  background-color: #aaa;
}

@media (prefers-reduced-motion: reduce) {
  wavebeem-balatro-pog {
    --k: 0turn;
  }
}

wavebeem-balatro-pog[data-state="outside"]
  :is([data-element="image"], [data-element="background"]) {
  transition-timing-function: ease;
  transition-duration: 500ms;
  transition-property: transform, box-shadow;
}

wavebeem-balatro-pog[data-state="inside"] img {
  pointer-events: none;
  transform: var(--transform);
  --k1: calc(-1 / 8);
  --k2: calc(1 / 16);
  box-shadow: calc(var(--k1) * var(--avatar-size) * var(--x))
    calc(var(--k1) * var(--avatar-size) * var(--y))
    calc(var(--k2) * var(--avatar-size) * var(--r)) #0002;
}

wavebeem-balatro-pog[data-state="inside"] :not([data-element="image"]) {
  transform: var(--transform);
}

wavebeem-balatro-pog :not([data-element="image"]) {
  pointer-events: none;
  width: calc(100% - 2 * var(--avatar-padding));
  height: calc(100% - 2 * var(--avatar-padding));
  left: var(--avatar-padding);
  top: var(--avatar-padding);
}

wavebeem-balatro-pog [data-element="shine"],
wavebeem-balatro-pog [data-element="rainbow"] {
  opacity: 0;
  clip-path: circle(50%);
  position: absolute;
}

wavebeem-balatro-pog [data-element="shine"] {
  mix-blend-mode: hard-light;

  /* https://css-pattern.com/wave-circles/ */
  --s: 30px; /* control the size*/
  --c1: hsl(0 0% 80%);
  --c2: hsl(0 0% 50%);

  --_g: var(--s) var(--s)
    radial-gradient(var(--c1) 17%, var(--c2) 18% 35%, #0000 36.5%);

  mask-image: linear-gradient(
    var(--angle),
    hsl(0 0% 0% / 70%),
    hsl(0 0% 0% / 0%) calc(100% * var(--r))
  );
  background:
    calc(var(--s) / -4) calc(var(--s) / -4) / var(--_g),
    calc(var(--s) / 4) calc(var(--s) / 4) / var(--_g),
    radial-gradient(var(--c2) 34%, var(--c1) 36% 68%, #0000 70%) 0 0 /
      calc(var(--s) / 2) calc(var(--s) / 2),
    repeating-linear-gradient(45deg, var(--c1) -12.5% 12.5%, var(--c2) 0 37.5%)
      0 0 / var(--s) var(--s);
}

wavebeem-balatro-pog [data-element="rainbow"] {
  mix-blend-mode: hard-light;
  background: linear-gradient(
      var(--angle),
      hsl(var(--angle) 100% 80% / 70%),
      hsl(var(--angle) 100% 80% / 10%) calc(100% * var(--r))
    )
    0 0 / 100% 100%;
}

wavebeem-balatro-pog[data-state="inside"] [data-element] {
  opacity: 1;
}

wavebeem-balatro-pog[data-state="outside"] [data-element] {
  transition: opacity 500ms;
}

@media (width <= 50rem) {
  wavebeem-balatro-pog {
    --avatar-size: 300px;
  }
}