<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">/* Use custom properties here instead of inside manifest.json
UNLESS there is a way to grab things from manifest and throw into here */
:root {
  --bespoke-background-color: #126164;
}

#app {
  --background-color: #126164;
  --foreground-color: #eef1e9;
  --main-text-color: #132040;
  --main-button-color: #126164;
  --main-button-text-color: #ffffff;
  --error-color: #d30a0a;
  --input-outline-color: #126164;
  --input-text-color: #000000;
  --input-text-hint-color: #878787;
  --input-selected-color: #d34b56;
}

/* 
  - Main CSS that typically isn't changed
  - involves #app, #background-page, and #main-page
  */

#app #background-page {
  background-color: var(--background-color);
}

#app #background-page .light-mode {
  background-color: var(--foreground-color);
}

#app #background-page .dark-mode {
  background-color: var(--background-color);
}

#app .navigation-container button {
  background-color: var(--main-button-color);
  color: var(--main-button-text-color);
  font-size: 36px;
  padding: 8px 20px;
  font-family: "Mrs Eaves OT", times, serif;
}

#bespoke-pages {
  height: 100%;
}

.input_container {
  margin: 8px auto 0;
  text-align: center;
}

.input_container input {
  border: 2px solid var(--input-outline-color);
  color: var(--input-text-color);
}

.input_container input:focus {
  box-shadow: 0px 0px 0px 5px var(--input-outline-color);
  outline: 1px solid var(--foreground-color);
}

/* bespoke 4 caption font is Mrs Eaves OT, overwriting base CSS*/
#bespoke-pages .input_container .caption label,
#bespoke-pages .input_container .error label {
  font-family: Mrs Eaves OT Italic, times, serif;
  font-size: 28px;
  text-transform: none;
}

/* bespoke 4 caption font is italic in the name, but the font-style should not also be italic */
#bespoke-pages .input_container .caption label i,
#bespoke-pages .input_container .error label i {
  font-style: normal;
}

#app #bespoke-pages .input_container .caption label {
  color: var(--main-text-color);
}

#app #bespoke-pages .input_container .error label {
  color: var(--error-color);
}

.input_container input::placeholder {
  color: var(--input-text-hint-color);
}

#app {
  color: var(--main-text-color);
}

/* overwrites to overcome funny generic website stuff (: */
#app label {
  text-transform: none;
}

.page-title {
  color: var(--main-text-color);
  font-family: Jax, jaxfont2;
  font-size: 34px;
  font-weight: 400;
  letter-spacing: 0;
  margin: 10px auto 0px auto;
  padding-top: 55px;
  text-align: center;
}

@media (max-width: 800px) {
  #app .input_container.navigation-container {
    margin: 25px auto 20px auto;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
  }

  .page-title {
    padding-top: 0;
    max-width: 290px;
  }
}

/* NAVIGATION */
#next-btn,
#back-btn {
  width: 193px;
}

/* WELCOME PAGE */
#welcome-title {
  font-family: "Mrs Eaves OT", times, serif;
  font-size: 34px;
  font-weight: normal;
  letter-spacing: 2.5px;
  color: var(--main-text-color);
  margin: 1.7em auto 1px auto;
  text-align: center;
  text-transform: uppercase;
}

#welcome-caption {
  font-family: "Jax", "jaxfont2";
  font-size: 34px;
  font-weight: normal;
  line-height: 140%;
  color: var(--main-text-color);
  margin: 10px auto 15px auto;
  max-width: 550px;
  position: relative;
  text-align: center;
  top: 5px;
}

#welcome-title strong {
  font-weight: 400;
}

#welcome-page #spotart_container {
  top: 4px;
}

#welcome-page #spotart_welcome {
  max-width: 473px;
  margin: 0;
}

@media (max-width: 800px) {
  #welcome-page .spotart_container #spotart_welcome {
    max-width: 320px;
    margin: 0 0 32px 0;
  }
  #welcome-page #welcome-title {
    font-size: 29px;
    letter-spacing: 1px;
    line-height: 1.3;
    padding: 10px;
    margin: 0.5em auto 1px;
  }
  #welcome-page #welcome-title strong {
    font-weight: 500;
  }
  #welcome-page #welcome-caption {
    font-size: 28px;
    padding: 0 41px;
  }

  #welcome-page #get-started-btn {
    padding: 10px 20px;
  }

  #welcome-page-container .navigation-container {
    margin: 44px auto 6px auto;
  }

  #app .navigation-container button#get-started-btn {
    font-size: 28px;
    padding: 8px 20px;
  }
}

/* OCCASION PAGE */
#page-one-container {
  height: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
}

#page-one-container .navigation-container {
  margin: 0px auto 30px auto;
}

#page-one-container .page-title {
  font-size: 34px;
  padding-bottom: 40px;
}

fieldset#occasion {
  display: flex;
  justify-content: center;
  border-width: 0px;
  margin: 0px 0px 30px 30px;
}

ul#jl_occasion_ul {
  position: relative;
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-content: center;
  justify-content: space-around;
  flex-direction: column;
}

li.jl_occasion_li {
  padding-top: 27px;
  padding-bottom: 4px;
  margin: initial;
}

label.jl_occasion_label {
  color: var(--main-text-color);
  text-transform: none;
  font-family: "Mrs Eaves OT", times, serif;
  font-size: 29px;
  font-style: normal;
  margin: initial;
  letter-spacing: 1px;
  font-weight: 400;
  padding-bottom: 20px;
}

.jl_occasion_label input[type="radio"] {
  appearance: none;
  position: relative;
  width: 25px;
  height: 25px;
  border: 3px solid var(--foreground-color);
  outline: 2px solid var(--background-color);
  border-radius: 50%;
  accent-color: var(--main-text-color) !important;
  padding-right: 10px;
  min-width: 25px;
  font-size: 1em;
  background: transparent;
  margin: 0px 10px -3px 0px !important;
}

.jl_occasion_label input[type="radio"]:checked {
  background-color: var(--main-text-color);
  border: 3px solid var(--foreground-color);
  outline: 2px solid var(--background-color);
}

.jl_occasion_label input[type="radio"]:checked::after {
  display: none;
}

@media (max-width: 1100px) {
  #page-one-container .page-title {
    padding-top: 20px;
  }
}

@media (max-width: 800px) {
  #page-one-container .navigation-container {
    margin: 15px auto 20px auto;
  }

  #page-one-container .page-title {
    max-width: 100%;
  }
}

@media (max-width: 650px) {
  #page-one-container .page-title {
    max-width: 300px;
  }
}

/* BIRTHDAY &amp; CONGRATULATION PAGES */

#congrats_name_input {
  padding-bottom: 5px;
}

#birthday_age_input,
#congrats_year_input {
  max-width: 425px;
}

#page-two-container label,
#page-eight-container label {
  color: var(--main-text-color);
}

#page-eight-container .input_container .error label,
#page-two-container .input_container .error label {
  margin-top: 5px;
}

@media (max-width: 1100px) {
  #page-two-container .page-title,
  #page-eight-container .page-title {
    padding-top: 20px;
  }
}

@media (max-width: 800px) {
  #page-two-container .page-title,
  #page-eight-container .page-title {
    max-width: 100%;
  }
}

@media (max-width: 750px) {
  #page-eight-container .page-title {
    max-width: 270px;
  }
}

@media (max-width: 650px) {
  #page-two-container .page-title {
    max-width: 300px;
  }
}

@media (max-width: 450px) {
  #page-two-container #birthday_age_input .caption label {
    max-width: 210px;
  }
}

@media (max-width: 400px) {
  #page-eight-container .no-number-label,
  #page-two-container .no-number-label {
    max-width: 190px;
  }
}

/* ANNIVERSARY PAGE */
#page-five-container {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: center;
}

#main-page #bespoke-pages #page-five-container .input_container {
  margin: 8px auto 0;
}

#bespoke-pages
  #page-five-container
  .input_container
  .error
  label[for="jl_anniversary_milestone"] {
  font-size: 24px;
}

#page-five-container .input_container #exception label {
  font-size: 24px;
}

#page-five-container &gt; * {
  flex: 1 1 100%;
  max-width: 710px;
}

#page-five-container #anniversary_name-parent {
  display: inline-flex;
}

#page-five-container div span /*fix to include id for anniversary-copy-ui */ {
  font-family: Mrs Eaves OT Italic, times, serif;
  width: 100%;
  display: inline-block;
  text-align: center;
  font-style: normal;
  font-size: 28px;
}

#page-five-container .navigation-container {
  margin-top: 4px;
}

@media (max-width: 1100px) {
  .page-title {
    padding-top: 30px;
  }
}

@media (max-width: 800px) {
  #page-five-container #anniversary_name-parent {
    display: block;
  }

  #page-five-container input#jl_anniversary_name_1 {
    margin-top: 30px;
  }

  #page-five-container input#jl_anniversary_name_2,
  #page-five-container input#jl_anniversary_milestone {
    margin-top: 7px;
  }

  #page-five-container .input_container #exception {
    vertical-align: normal;
  }

  #page-five-container .input_container #exception label[for="no_number"] {
    text-align: left;
    max-width: 206px;
  }

  #bespoke-spotart-anniversary-1 {
    display: none;
  }

  #bespoke-spotart-anniversary-2 {
    display: none;
  }

  .jl-spotart-container img#bespoke-spotart-anniversary-4 {
    display: block;
    position: initial;
    margin: 0 auto;
  }

  #page-five-container div span /*fix to include id for anniversary-copy-ui */ {
    padding-top: 23px;
  }
}

/* ANNIVERSARY - SPOT ART */

#bespoke-spotart-anniversary-1 {
  scale: 0.8;
  left: 2em;
  top: 18em;
}

#bespoke-spotart-anniversary-2 {
  scale: 0.8;
  right: 3em;
  top: 18em;
}

#bespoke-spotart-anniversary-3 {
  scale: 0.8;
  left: 9em;
  top: 15em;
}

#bespoke-spotart-anniversary-4 {
  display: none;
}

@media (max-width: 1100px) {
  #bespoke-spotart-anniversary-2 {
    right: 1em;
  }

  #bespoke-spotart-anniversary-3 {
    display: none;
  }
}

/* LOADING SCREEN */
#app .jl-loading-dots {
  background-color: var(--background-color);
}

#loading-screen-container #card-ready-title {
  text-align: center;
  font-family: Jax, times, serif;
  font-size: 40px;
  font-weight: 400;
  letter-spacing: 0;
  margin: 40px auto 15px auto;
}

#loading-screen-container .loading-img {
  height: 229px;
  width: auto;
  margin: 70px auto 0;
}

#loading-screen-container .preview-img,
#loading-screen-container .preview-img-loaded {
  display: flex;
  margin: 0 auto;
  width: fit-content;
  padding-bottom: 1em;
}

#loading-screen-container .preview-msg i {
  font-style: normal;
}

#loading-screen-container .preview-build {
  line-height: 1.17;
  font-size: 28px;
  font-family: Mrs Eaves OT Italic, times, serif;
  margin: 0 auto;
  max-width: 620px;
  padding: 0 20px;
  text-align: center;
  white-space: normal;
  word-break: break-word;
  color: var(--main-text-color);
}

#loading-screen-container .preview-loaded {
  font-size: 40px;
  font-family: Jax, times, serif;
  color: var(--main-text-color);
  margin: 0 auto 70px;
  max-width: 500px;
  text-align: center;
  line-height: 1;
}

#loading-screen-container .dot-container {
  margin-top: 3rem;
}

#loading-screen-container .loading-msg {
  font-family: Jax, times, serif;
  font-size: 30px;
  margin: 0 auto;
  max-width: 620px;
  padding: 20px 20px;
  text-align: center;
  white-space: normal;
  word-break: break-word;
  color: var(--main-text-color);
}

#loading-screen-container .receiver-loading-img {
  margin: 45px auto 50px;
}

@media (max-width: 1100px) {
  #loading-screen-container .navigation-container {
    margin: 25px 0px 25px 0px;
  }
}

@media (max-width: 800px) {
  #loading-screen-container #card-ready-title {
    margin: 20px auto;
  }

  #loading-screen-container .loading-img {
    margin: 45px auto 0;
  }

  #loading-screen-container .preview-loaded {
    font-size: 38px;
  }

  #loading-screen-container .receiver-loading-img {
    margin: 25px auto 50px;
  }

  #loading-screen-container .navigation-container {
    margin: 25px auto 6px auto;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
  }

  #loading-screen-container .loading-msg + #dot-container {
    margin: 5em auto 2em;
  }
}

@media (max-width: 600px) {
  #loading-screen-container .loading-msg {
    max-width: 330px;
  }

  #loading-screen-container .receiver-loading-img {
    max-width: 320px;
  }
}

@media (max-width: 500px) {
  #loading-screen-container .preview-msg {
    max-width: 310px;
    font-size: 30px;
  }

  #loading-screen-container #card-ready-title {
    font-size: 36px;
  }
}

/* VIDEO SCREEN */

#app .dark-mode .navigation-container {
  margin: 5px auto 0px auto;
}

#app .navigation-container button#skip-btn {
  background: transparent;
  font-family: Jax, times, serif;
  font-size: 25px;
  padding: 8px 20px;
}

/* RADIO INPUT (IMAGE) */

#season {
  border: initial;
  border-bottom: 2px solid transparent;
  border-image: linear-gradient(
      to right,
      var(--foreground-color),
      var(--background-color),
      var(--foreground-color)
    )
    1;
  width: 90%;
  margin: 0 auto;
}

.jl_video_label input {
  display: none;
}

.jl_video_label p {
  font-family: Jenson, times, serif;
  letter-spacing: 1.5px;
  margin: 10px 0;
  text-align: center;
}

#music-parent fieldset {
  margin: 0 auto;
}

@media (max-width: 940px) {
  #jl_selection_ul {
    flex-wrap: wrap;
  }
}

/* NAME INPUT (INPUTTEXT) */

#name-parent {
  overflow: auto;
}
@media (max-width: 800px) {
  #name-parent .input_container {
    margin: 0px auto 0px auto;
  }
}
/* AGE INPUT (NUMBERTEXT) */

#age_input {
  margin: 15px auto 0;
}

input[type="number"] {
  border: 2px solid var(--input-outline-color);
  color: var(--input-text-color);
}

#no_number {
  background-color: #ffffff;
  border: 3px solid var(--input-outline-color);
}

#app #bespoke-pages .input_container #exception #no_number:checked::after {
  width: 15px;
  height: 15px;
  background: var(--main-button-color);
  color: var(--main-button-color);
}

/*  MUSIC INPUT */

#music-parent .page-title {
  margin: 10px auto;
  padding-top: 10px;
}

/* SPOT ART */

#bespoke-spotart-1,
#bespoke-spotart-birthday-1 {
  left: 2em;
  top: 15em;
}

#bespoke-spotart-2,
#bespoke-spotart-birthday-2 {
  right: 3em;
  top: 15em;
}

#bespoke-spotart-3,
#bespoke-spotart-birthday-3 {
  left: 10em;
  top: 10em;
}

#bespoke-spotart-4,
#bespoke-spotart-birthday-4 {
  display: none;
}

/* END SCREEN */

.end-screen-buttons {
  text-align: center;
  justify-content: space-between;
  display: flex;
}

#jl-personalization-container {
  position: relative;
  max-width: 1024px;
  max-height: 576px;
  width: 100%;
  height: auto;
  overflow: hidden;
}

#jl-end-background {
  width: 100%;
  height: 100%;
}

#jl_show_hide_message,
#play-card-again-btn,
#edit-card-btn {
  border: none;
  font-size: 25px;
  letter-spacing: 1.5px;
  line-height: 1;
  margin: 0px !important;
  padding: 10px 20px;
  cursor: pointer;
  font-family: "Jax", "jaxfont2";
  background: none;
  color: #ffffff;
}

#jl_show_hide_message p,
#edit-card-btn p {
  color: unset;
  font-size: unset;
  line-height: unset;
  margin: unset;
}

#message-container {
  top: 31%;
  left: 0;
  right: 0;
  width: 100%;
  margin: auto;
  max-width: 675px;
  max-height: 343px;
  width: 100%;
  height: 100%;
  position: absolute;
  overflow: hidden;
}

#notecard {
  background: no-repeat;
  background-size: 100%;
  max-width: 675px;
  max-height: 343px;
  width: 100%;
  height: 100%;
  inset: 0;
  margin: auto;
  position: absolute;
  overflow: hidden;
}

#notecard-message {
  position: relative;
  line-height: 1.5;
  color: var(--main-text-color);
  font-family: "Jax", times, serif;
  overflow-x: hidden;
  overflow-y: auto;
  word-wrap: break-word;
  white-space: pre-line;
  max-width: 600px;
  text-align: center;
  margin: 5% auto 0 auto;
  height: 75%;
  width: 90%;
  padding: 0 10px;
}

#notecard-message p {
  color: var(--input-text-color);
  font-size: 28px;
}

#notecard p::-webkit-scrollbar-thumb {
  background-color: #c1c1c1;
  border-radius: 10px;
}

#notecard p::-webkit-scrollbar-track {
  box-shadow: inset 0 0 5px grey;
  border-radius: 10px;
}

#notecard p::-webkit-scrollbar {
  width: 10px;
  border-radius: 10px;
}

@media (max-width: 1100px) {
  #message-container {
    max-width: 570px;
    max-height: 292px;
  }
}

@media (max-width: 800px) {
  #message-container {
    max-width: 470px;
    max-height: 240px;
  }

  #notecard-message p {
    font-size: 24px;
  }
}

@media (max-width: 650px) {
  #message-container {
    top: 15%;
  }
}

@media (max-width: 550px) {
  #message-container {
    top: 10%;
  }
}

@media (max-width: 500px) {
  #message-container {
    top: 0%;
  }
}

/* ANIMATION */

.reveal-enter-active,
.reveal-leave-active {
  transition: all 2s ease;
}
.reveal-enter-from,
.reveal-leave-to {
  transform: translateY(120%);
}

/* ACCESSIBILITY */

@media (max-width: 1100px) {
  #bespoke-spotart-1,
  #bespoke-spotart-2 {
    top: 11em;
  }

  #bespoke-spotart-3 {
    top: 7em;
  }

  #bespoke-spotart-birthday-3 {
    display: none;
  }
}

@media (max-width: 991px) {
  #bespoke-spotart-1,
  #bespoke-spotart-2,
  #bespoke-spotart-3,
  #bespoke-spotart-birthday-1,
  #bespoke-spotart-birthday-2 {
    transform: scale(0.85);
  }

  #bespoke-spotart-1 {
    left: 3em;
  }

  #bespoke-spotart-birthday-1 {
    left: 1em;
  }

  #bespoke-spotart-2,
  #bespoke-spotart-birthday-2 {
    right: 1em;
  }

  #bespoke-spotart-birthday-1,
  #bespoke-spotart-birthday-2 {
    top: 16em;
  }

  #bespoke-spotart-3 {
    left: 8em;
  }

  #jl-personalization-container .notecard {
    bottom: 0;
    left: 0;
    right: 0;
    transform: translate(0, 0);
    max-width: 570px;
    max-height: 292px;
    top: 32%;
  }

  #bespoke-spotart-3 {
    display: none;
  }
}

@media (max-width: 835px) {
  #jl-personalization-container .notecard {
    max-width: 470px;
    max-height: 240px;
    top: 31%;
  }

  #jl-personalization-container .notecard p {
    width: 80%;
    font-size: 20px;
  }
}

@media (max-width: 800px) {
  #bespoke-spotart-birthday-1,
  #bespoke-spotart-birthday-2 {
    top: 14em;
  }

  #bespoke-spotart-birthday-2 {
    right: 0em;
  }
}

@media (max-width: 750px) {
  #bespoke-spotart-birthday-1,
  #bespoke-spotart-birthday-2 {
    display: none;
  }

  #bespoke-spotart-birthday-4 {
    display: block;
    position: initial;
    margin: auto;
  }
}

@media (max-width: 690px) {
  #jl-personalization-container .notecard {
    max-width: 370px;
    max-height: 190px;
    top: 33%;
  }
}

@media (max-width: 650px) {
  #bespoke-spotart-1,
  #bespoke-spotart-2 {
    display: none;
  }

  #bespoke-spotart-4 {
    display: block;
    position: initial;
  }

  fieldset#occasion {
    margin: 0px 0px 0px 30px;
  }
}

@media (max-width: 585px) {
  .end-screen-buttons {
    display: grid;
    justify-content: center;
    margin: auto;
  }
}

@media (max-width: 500px) {
  #jl_show_hide_message,
  #play-card-again-btn,
  #edit-card-btn {
    margin: 0 auto;
  }
  #jl-personalization-container .notecard {
    max-width: 400px;
    max-height: 205px;
    top: 0%;
  }
}
</pre></body></html>