@import url('https://fonts.googleapis.com/css2?family=Nunito:ital,wght=0,200..1000;1,200..1000&display=swap');

@font-face {
  src: url(/fonts/Spirit.woff2);
  font-family: 'spirits';
  font-display: swap;
}

@font-face {
  src: url(/fonts/angel.woff2);
  font-family: 'angel';
  font-display: swap;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html,
body {
  cursor: url(/media/cursor/cursorhover.png), progress;
}

* {
  cursor: url(/media/cursor/cursorhover.png), progress !important;
}

body {
  background-image: url(/media/backgrounds/pinkcheck.png) !important;
  background-size: 40px !important;
  font-family: 'angel';
  font-size: 12px;
  color: #8d7c76;
  display: flex;
  min-height: 100vh; 
  margin: auto;
  align-items: center;
  justify-content: center;
  position: relative;
}

.center-cake {
  max-width: 80%;  
  max-height: 80vh;
  width: auto;     
  height: auto;
  object-fit: contain;
  transform: rotate(-1deg);
  filter: drop-shadow(0px 8px 4px rgba(0, 0, 0, 0.2));
}

a {
  text-decoration: none;
  color: #545454;
  transition: .1s;
}

a:link {
  color: #8d7c76;
  background-color: transparent;
  text-decoration: none;
}

a:visited {
  color: #8d7c76;
  background-color: transparent;
  text-decoration: none;
}

a:hover {
  color: #edaecb;
  background-color: transparent;
  text-decoration: dotted underline;
  font-style: italic;
}

a:active {
  color: #8d7c76;
  background-color: transparent;
  text-decoration: underline;
}

h3 {
  margin-bottom: 6px;
}

::selection {
  background-color: #feeef6;
  color: #616161;
}

:root {
  --mac-white: #ffffff;
  --mac-border: #dcdcdc;
}

mark {
  background-color: #ffe9f2;
  color: #8d7c76;
  padding: 0 4px;
  border-radius: 10px;
}

#lace {
  background-image: url(https://file.garden/aS-t0Aj4K3mdDujK/kkul/graphics/lacey.png);
  background-size: auto 100%;
  width: 100%;
  height: 20px;
  filter: drop-shadow(0px 1px #D1B9B3);
  position: fixed;
  top: 0px;
  left: 0px;
  z-index: 9999;
}

#lace-bottom {
  background-image: url(https://file.garden/aS-t0Aj4K3mdDujK/kkul/graphics/lacey.png);
  background-size: auto 100%;
  width: 100%;
  height: 20px;
  filter: drop-shadow(0px 1px #D1B9B3);
  position: fixed;
  bottom: 0px;
  left: 0px;
  transform: rotate(180deg);
  z-index: 9999;
}

.blink {
  animation: blink 2s infinite;
  display: inline;
}

@keyframes blink {
  0% { opacity: 1; }
  49% { opacity: 1; }
  60% { opacity: 0; }
  99% { opacity: 0; }
  100% { opacity: 1; }
}

@keyframes smoothFade {
  0% {
    opacity: 0;
    transform: translateY(10px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.zoom {
  transition: transform .2s;
}

.zoom:hover {
  -ms-transform: scale(1.15);
  -webkit-transform: scale(1.15);
  transform: scale(1.15);
}

.container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
  width: 100%;
  padding: 80px 0;
  box-sizing: border-box;
}

.bakery-display {
  background: #ffffff;
  border-radius: 200px 200px 20px 20px; 
  width: 800px; 
  height: 550px;
  padding: 150px 0 80px 0; 
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 100px; 
  box-shadow: 0 20px 40px rgba(141, 124, 118, 0.15); 
  border: 4px solid #ffffff; 
  margin-top: -75px;
}

.bakery-roof {
  height: 30px;
  width: 870px;
  background: repeating-linear-gradient(
    90deg,
    #f6dae8,
    #f6dae8 30px,
    #ffffff 30px,
    #ffffff 70px    
  );
  position: relative;
  border-radius: 8px;
  box-shadow: 0 20px 40px rgba(141, 124, 118, 0.15); 

}

.bakery-roof::before {
  content: "";
  position: absolute;
  top: -71px; 
  left: 0;
  right: 0;
  height: 72px;
  background: repeating-linear-gradient(
    90deg,
    #fbebf3,
    #fbebf3 30px,
    #ffffff 30px,
    #ffffff 70px    
  );
  transform: perspective(220px) rotateX(35deg); 
  transform-origin: bottom;
  box-shadow: inset 0 20px 30px rgba(0, 0, 0, 0.02);
}

.shelf-wrapper {
  position: relative;
  width: 650px; 
  perspective: 1000px;
  filter: drop-shadow(0px 12px 15px rgba(141, 124, 118, 0.2)); 
}

.glossy-shelf {
  height: 25px;
  width: 650px;
  background: #f6dae8;
  position: relative;
  z-index: 1;
  border-radius: 0 0 6px 6px;
}

.glossy-shelf::before {
  content: "";
  position: absolute;
  top: -14px; 
  left: 0;
  right: 0;
  height: 15px;
  background: #fbebf3; 
  transform: perspective(100px) rotateX(25deg);
  transform-origin: bottom;
  box-shadow: inset 0 -3px 6px rgba(0, 0, 0, 0.03), inset 0 1px 2px rgba(255, 255, 255, 0.6);
}

.glossy-shelf::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, 
    rgba(255,255,255,0.5) 0%, 
    rgba(255,255,255,0) 30%,
    rgba(0,0,0,0.04) 100%);
  border-radius: inherit;
}