@charset "UTF-8";
/* Shared CSS Variables (used across multiple pages) */
:root {
  --primary-red: #cd2026;
  --primary-red-dark: #981b1e;
  --strawberry-pink: #ff7784;
  --strawberry-light-pink: #FFB6B9;
  --fresh-green: #78d644;
  --dark-green: #329a73;
  --info-blue: #61C0BF;
  --facebook-blue: #3B5998;
  --twitter-blue: #1DA1F2;
  --accent-yellow: #ffd100;
  --text-primary: #333333;
  --text-secondary: #666666;
  --text-white: #ffffff;
  --bg-light: #f9f9f9;
  --bg-white: #ffffff;
  --section-padding: 80px 20px;
  --card-padding: 24px;
  --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.15);
  --radius-sm: 8px;
  --radius-md: 16px;
  --radius-full: 9999px;
}

/* Shared Utilities */
.container {
  margin: 0 auto;
  padding: 0 20px;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", " 游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", Hiragino Sans, "ヒラギノ角ゴシック", Hiragino Kaku Gothic ProN, "ヒラギノ角ゴ ProN W3", Verdana, sans-serif;
  color: #494949;
}

.logo-image {
  height: 80px;
  padding: 5px 8px;
}
@media screen and (max-width: 750px) {
  .logo-image {
    height: 72px;
  }
}
@media screen and (max-width: 380px) {
  .logo-image {
    height: 64px;
  }
}
@media screen and (max-width: 330px) {
  .logo-image {
    height: 56px;
  }
}

.logo-image-col {
  position: absolute;
  display: block;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  padding: 0;
}

.login-col {
  color: #ffffff;
  background-color: #FFB6B9;
  width: 100%;
  padding: 10px;
}
@media screen and (max-width: 750px) {
  .login-col {
    padding-left: 8px;
    padding-right: 8px;
    font-size: 16px;
  }
}
@media screen and (max-width: 380px) {
  .login-col {
    font-size: 16px;
  }
}
@media screen and (max-width: 330px) {
  .login-col {
    font-size: 16px;
    padding-left: 3px;
    padding-right: 3px;
  }
}

/* Card (used by cafe admin, access page) */
.card {
  border-color: lightcoral;
  margin-top: 16px;
  margin-bottom: 16px;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 720px;
}

a:not([href]):not([tabindex]) {
  color: #aeaeae;
}

a:not([href]):not([tabindex]):focus, a:not([href]):not([tabindex]):hover {
  color: #aeaeae;
}

.hide-area {
  display: none !important;
}

/* Loading / Overlay (used by booking_payment) */
.text-center .my-loading-spinner {
  position: fixed;
  color: #FFB6B9;
  top: 50%;
  bottom: 0;
  left: 50%;
  right: 0;
  width: 80px;
  height: 80px;
  margin-left: -40px;
  margin-top: -40px;
  z-index: 20001;
  display: none;
  transition: all 0.3s;
}

.overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 150;
  width: 100%;
  height: 120%;
  background: rgba(0, 0, 0, 0.7);
  opacity: 0;
  visibility: hidden;
  transition: 0s linear;
}
.overlay.open {
  opacity: 1;
  visibility: visible;
  transition: 0.3s ease-in;
}

/*# sourceMappingURL=booking-template_new.css.map */
