@charset "UTF-8";
.formfield {
  box-sizing: border-box;
  margin-bottom: 0.5em;
}
.formfield label {
  display: block;
  position: relative;
  float: left;
}
.formfield label.required span:after {
  content: "*";
}
.formfield [type=text],
.formfield [type=password],
.formfield [type=email],
.formfield [type=tel],
.formfield [type=url],
.formfield [type=number],
.formfield [type=search],
.formfield [type=date],
.formfield textarea {
  border-radius: 0.25em;
  padding: 1em 1em;
}
.formfield.checkbox {
  margin-bottom: 0;
}
.formfield input:focus,
.formfield textarea:focus {
  outline: 0;
  border-bottom: 1px solid #666;
  background-color: #fff;
  box-shadow: 1px 1px 2px rgba(255, 255, 255, 0.35) inset;
}
.formfield input {
  line-height: 1em;
}
.formfield .error {
  background-color: #ac3d00;
  color: #fff;
  padding: 0.2em 0.5em;
  border-radius: 0.25em;
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.35);
  display: inline-block;
}
.formfield.has-error input {
  border: 2px solid #ac3d00;
}
.formfield.select {
  background-color: #fff;
  padding: 0;
  border-radius: 0.15em;
  position: relative;
  margin-bottom: 1em;
  box-sizing: border-box;
}
.formfield.select.multiple {
  margin-bottom: 0;
}
.formfield.select.multiple small {
  margin: 0 !important;
}
.formfield.select select {
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.1) inset;
  color: inherit;
  width: 100%;
  border: 1px solid #d3d3d8;
  background-color: #fff;
  padding: 0.35em 0.45em;
  border-radius: 0.2em;
  appearance: none;
  line-height: 1.3em;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="28" height="28" viewBox="0 0 28 28"><path d="M26.297 12.625L14.703 24.203a.99.99 0 0 1-1.406 0L1.703 12.625a1.009 1.009 0 0 1 0-1.422l2.594-2.578a.99.99 0 0 1 1.406 0L14 16.922l8.297-8.297a.99.99 0 0 1 1.406 0l2.594 2.578a1.009 1.009 0 0 1 0 1.422z" fill="gray"/></svg>');
  background-size: 15px;
  background-repeat: no-repeat;
  background-position: calc(100% - 0.75em) 0.55em;
  box-sizing: border-box;
}
.formfield.select select[multiple] {
  font-size: 1em;
  background-image: none;
  padding: 0;
  margin-bottom: 0;
  overflow: auto;
}
.formfield.select select[multiple] option {
  padding: 0.15em 0.5em;
}

.errors {
  color: #ac3d00;
  font-weight: bold;
}

button {
  cursor: pointer;
}

select {
  box-sizing: border-box;
}

input,
select,
textarea,
button {
  box-sizing: border-box;
  padding: 0.4em 0.5em;
  font-family: inherit;
}

textarea {
  resize: vertical;
  min-height: 6em;
  width: 100%;
}

.checkbox,
.radio {
  padding: 0 0 0.7em 0.2em;
  margin-left: -0.2em;
}
.checkbox input[type=checkbox],
.checkbox input[type=radio],
.radio input[type=checkbox],
.radio input[type=radio] {
  opacity: 0;
  position: absolute;
}
.checkbox input[type=checkbox] + label::after,
.checkbox input[type=radio] + label::after,
.radio input[type=checkbox] + label::after,
.radio input[type=radio] + label::after {
  content: none;
}
.checkbox input[type=checkbox]:checked + label::after,
.checkbox input[type=radio]:checked + label::after,
.radio input[type=checkbox]:checked + label::after,
.radio input[type=radio]:checked + label::after {
  content: "";
}
.checkbox input[type=checkbox]:focus + label::before,
.checkbox input[type=radio]:focus + label::before,
.radio input[type=checkbox]:focus + label::before,
.radio input[type=radio]:focus + label::before {
  box-shadow: 0 0 5px 1px rgba(255, 255, 255, 0.8);
}

.checkbox label,
.radio label {
  top: 0;
  cursor: pointer;
  position: relative;
  display: inline-block;
  padding-left: 2em;
  padding-top: 0.2em;
}
.checkbox label:before, .checkbox label:after,
.radio label:before,
.radio label:after {
  position: absolute;
  content: "";
  display: inline-block;
  font-size: 1.2em;
}
.checkbox label:before,
.radio label:before {
  width: 22px;
  height: 22px;
  border: 1px solid #c5c5cc;
  left: 0;
  border-radius: 0.1em;
  background-color: #fff;
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.1) inset;
  border-bottom-color: #d3d3d8;
  border-right-color: #d3d3d8;
}

.checkbox label:before {
  left: 0;
}
.checkbox label:after {
  height: 5px;
  width: 10px;
  border-left: 4px solid #666;
  border-bottom: 4px solid #666;
  transform: rotate(-45deg);
  left: 5px;
  top: 0.5em;
}

.error {
  background-color: #ac3d00;
  color: #fff;
  line-height: 1.2em;
  padding: 0.5em 1em;
  font-weight: bold;
  border-radius: 0.2em;
  margin-top: 0;
}

.radio label:before, .radio label:after {
  border-radius: 50%;
}
.radio label:after {
  border: 0;
  height: 14px;
  width: 14px;
  background-color: #666;
  left: 5px;
  top: 5px;
}

.required-info {
  color: #818181;
  font-size: 0.8em;
  margin-bottom: 2em;
}

.checkbox-group-label {
  display: block;
  position: relative;
  top: 0.5em;
  margin-bottom: 0.5em;
  clear: both;
  font-size: 1.3em;
  line-height: 1em;
}

.fb-link {
  padding-top: 2em;
}

form small {
  display: block;
  opacity: 0.7;
}

input[type=text],
input[type=number],
input[type=email],
input[type=password],
select,
textarea {
  font-size: 16px;
}

input[type=file] {
  background: #fff;
  padding: 1.2em 0.5em;
  width: 100%;
  border-radius: 0.3em;
  border: 2px dotted #d0d0d6;
  position: relative;
  -webkit-appearance: none;
}

/* playfair-display-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/playfair-display-v37-latin-500.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* playfair-display-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 800;
  src: url("../fonts/playfair-display-v37-latin-800.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* sora-200 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Sora";
  font-style: normal;
  font-weight: 200;
  src: url("../fonts/sora-v12-latin-200.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* sora-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Sora";
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/sora-v12-latin-300.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* sora-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Sora";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/sora-v12-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* sora-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Sora";
  font-style: normal;
  font-weight: 800;
  src: url("../fonts/sora-v12-latin-800.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
#__bs_notify__ {
  font-size: 1em !important;
  color: transparent !important;
  opacity: 0.75;
  height: 1.5em;
  box-sizing: border-box;
  width: 1.5em;
  padding: 0 !important;
  top: 0.5em !important;
  right: 0.5em !important;
  background-color: #547f0d !important;
  border-radius: 50% !important;
  overflow: hidden;
}
#__bs_notify__:after {
  content: "BS";
  position: absolute;
  color: #fff;
  top: 0.1em;
  left: 0.25em;
  font-size: 0.8em;
}

@view-transition {
  navigation: auto;
}
::view-transition-group(root) {
  animation-duration: 0.1s;
}

strong {
  font-weight: 800;
  color: #666;
}

p {
  line-height: 1.6em;
}

body {
  min-width: 320px;
  color: #414141;
  font-family: "Sora", "Ubuntu", "Roboto Slab", "sans-serif";
  font-weight: 300;
  font-size: 1em;
  line-height: 1.5em;
  overflow-x: hidden;
  background-color: #efeded;
}
body.splashscreen {
  color: #414141;
}
body.splashscreen:after {
  background-image: none;
}

body.dark-mode {
  background-image: radial-gradient(circle at top, rgb(0, 18, 48), #000000);
  color: #eee;
}
body.dark-mode h1, body.dark-mode h2, body.dark-mode p,
body.dark-mode strong,
body.dark-mode .recipe-header h2 strong,
body.dark-mode h3,
body.dark-mode .recipe-detail .ingredients h3 {
  color: #eee;
}
body.dark-mode .recipe-header h2 strong {
  opacity: 0.5;
}
body.dark-mode .recipe-header img,
body.dark-mode .logo .name,
body.dark-mode .logo .back {
  filter: invert(1);
}
body.dark-mode .recipe-detail .ingredients {
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 0.2em;
  z-index: 15;
  margin-left: 1em;
  box-shadow: rgba(0, 0, 0, 0.1) -5px 1px 5px, rgba(12, 43, 36, 0.2) 5px 1px 15px;
}
body.dark-mode .stats-and-info .main-info {
  background-color: rgba(255, 255, 255, 0.05);
  border-radius: 0.2em;
  box-shadow: rgba(0, 0, 0, 0.1) -5px 1px 5px, rgba(12, 43, 36, 0.2) 5px 1px 15px;
}
body.dark-mode .infoblock {
  color: #414141;
}
body.dark-mode .infoblock .name {
  color: #000;
}
body.dark-mode .recipe2 {
  background: transparent;
  background-image: linear-gradient(35deg, rgba(238, 238, 238, 0.15) 50%, rgba(238, 238, 238, 0.05));
}
body.dark-mode .recipe2 .name {
  color: rgba(255, 255, 255, 0.9);
}
body.dark-mode .recipe2 .more-info {
  color: rgba(255, 255, 255, 0.5);
}
body.dark-mode .recipegroups-tags .tag {
  border: 0;
}
body.dark-mode .ingredient-show .block {
  background-color: rgba(255, 255, 255, 0.1);
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}
body.dark-mode .block {
  background-color: rgba(255, 255, 255, 0.1);
}
body.dark-mode .ingredients-wrapper {
  background-color: rgba(255, 255, 255, 0.1);
}
body.dark-mode .ingredients-wrapper input {
  color: inherit;
}

img,
svg {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

a {
  color: inherit;
}

input,
textarea,
button {
  font-family: inherit;
}

.inner {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  padding-left: 5%;
  padding-right: 5%;
  box-sizing: border-box;
}

.site {
  display: flex;
  min-height: 100vh;
  flex-direction: column;
}

.Site-content {
  flex: 1;
  padding-bottom: 3em;
}

.background {
  background-size: auto 100%;
  background-repeat: no-repeat;
  background-color: #efeded;
  background-position: 140% 90%;
  opacity: 0.5;
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 100%;
}

.page-wrapper {
  position: relative;
  z-index: 5;
  display: flex;
  min-height: 100vh;
  flex-direction: column;
  max-width: 100vw;
  overflow-x: hidden;
}
header,
footer {
  padding: 1em 0 0.5em;
  font-weight: bold;
  z-index: 1;
  position: relative;
}
.standalone header,
.standalone footer {
  display: none;
}

.standalone .back {
  display: none;
}

footer {
  font-size: 0.8em;
  background-color: #547f0d;
  color: #fff;
}
@media (min-width: 960px) {
  footer .inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}
footer a {
  color: #fff;
  font-weight: bold;
}
footer .unimportant {
  font-size: 1em;
}

.page-recipe-page header {
  position: absolute;
  top: 0;
  width: 100%;
}

h1,
h2,
h3 {
  color: #414141;
  font-family: "Playfair Display", "Roboto Slab", "sans-serif";
  line-height: 1.1em;
  font-weight: 500;
}

@media (max-width: 959px) {
  .recipe-header {
    padding-top: 2em;
  }
}
.recipe-header h1,
.recipe-header h2 {
  font-family: "Playfair Display", serif;
}
.recipe-header h1 {
  margin-top: 1.5em;
}
@media (min-width: 960px) {
  .recipe-header h1 {
    margin-top: 1.25em;
  }
}

header {
  color: #414141;
}
header .icon path {
  fill: rgba(255, 255, 255, 0.5);
}

.recipes,
.attachments {
  display: flex;
  flex-wrap: wrap;
  clear: both;
}

.recipes {
  width: 102%;
  margin-left: -1%;
}
.recipes img {
  border-radius: 0.25em;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.recipe {
  flex: 0 0 48%;
  justify-content: space-between;
  margin: 2%;
  position: relative;
  box-shadow: 0.1em 0.1em 1em rgba(0, 0, 0, 0.3);
  border-radius: 0.2em;
  overflow: hidden;
  height: 0;
  background-size: cover;
  background-position: center;
  background-color: #666;
  min-height: 9em;
}
@media (min-width: 620px) {
  .recipe {
    margin: 1%;
    flex: 0 0 31.33%;
    min-width: 0;
    min-height: 12em;
  }
}
@media (min-width: 1200px) {
  .recipe {
    margin: 1%;
    flex: 0 0 14.66%;
    min-width: 0;
    min-height: 12em;
  }
}
.recipe .image-container img {
  object-fit: cover;
}
.recipe .info-block {
  position: absolute;
  bottom: 0;
  padding: 0.5em 5%;
  box-sizing: border-box;
  width: 90%;
  margin-left: 10%;
  border-top-left-radius: 0.5em;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-bottom: 0;
  border-right: 0;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  line-height: 1.2em;
  font-size: 1em;
  font-weight: bold;
  background-color: rgba(0, 0, 0, 0.2);
  backdrop-filter: blur(4px);
}
@media (min-width: 960px) {
  .recipe .info-block {
    font-size: 0.9em;
  }
}
.recipe .kcal-info {
  position: absolute;
  display: block;
  z-index: 5;
  top: 0;
  left: 0;
  font-weight: normal;
  font-size: 0.7em;
  background-color: rgba(0, 0, 0, 0.5);
  background-size: cover;
  color: #fff;
  padding: 0.2em 0.5em;
  border-bottom-right-radius: 0.5em;
  border: 1px solid rgba(255, 255, 255, 0.2);
}
.recipe .name {
  text-shadow: none;
  margin: 0;
}
@media (max-width: 619px) {
  .recipe .name {
    font-size: 0.8em;
  }
}
.recipe .more-info {
  font-weight: normal;
  font-size: 0.6em;
    opacity: .7;
}
.recipe .image-container {
  position: relative;
  height: 100%;
}
.recipe .image-container img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: center;
}
.recipe .image-container:before {
  background-color: rgba(0, 0, 0, 0.7);
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  content: "";
  background-color: transparent;
  position: absolute;
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0));
}
.recipe .nutri {
  font-size: 0.7em;
  opacity: 0.5;
  font-weight: normal;
}

.recipe-ingredients {
  padding: 0;
  margin: 0;
  list-style-type: none;
}
.recipe-ingredients a {
  text-decoration: none;
}
.recipe-ingredients li {
  padding: 0.25em 1em;
  display: flex;
}
.recipe-ingredients li .amount {
  flex: 0 0 3em;
  text-align: right;
  margin-right: 0.5em;
}
.recipe-ingredients li:nth-child(odd) {
  background-color: rgba(0, 0, 0, 0.1);
}
.recipe-ingredients .ingredient-search {
  display: none;
}
.recipe-ingredients .ingredient-search .title {
  font-size: 1.2em;
}

.recipe-edit .ingredients-wrapper {
  padding: 0;
}
.recipe-edit .ingredients-wrapper h2 {
  padding: 0.75rem 1.5rem;
}
.recipe-edit .ingredients-wrapper .icon {
  margin-left: auto;
  display: inline-block;
}

.tabs {
  position: relative;
}
@media (max-width: 959px) {
  .tabs {
    margin-top: -2.5em;
  }
}
.tabs .inner {
  position: relative;
}
@media (min-width: 960px) {
  .tabs .ingredients-tab,
  .tabs .info-tab {
    display: none;
  }
}

.ingredients table {
  box-shadow: none;
  table-layout: fixed;
}
.ingredients .amount {
  text-align: right;
  padding-right: 0.5em;
  white-space: nowrap;
  width: auto;
  width: 4em;
}
.ingredients .amount strong {
  display: block;
  padding: 0.5em 0;
}
.ingredients td {
  line-height: 1.3em;
}
.ingredients td:first-child {
  white-space: nowrap;
  text-align: right;
}
.ingredients td:nth-child(2) {
  width: 75%;
  padding-left: 0.75em;
  padding-right: 1em;
}

.recipe-detail .main-info {
  box-sizing: border-box;
  position: relative;
}
@media (min-width: 960px) {
  .recipe-detail .main-info > * {
    flex-grow: 0;
    flex-shrink: 0;
  }
}
.recipe-detail .main-info .instructions {
  margin-bottom: 1em;
  margin-right: 5%;
  line-height: 1.7em;
  padding-top: 2em;
}
.recipe-detail .main-info .instructions a {
  text-decoration: none;
  font-weight: 900;
}
.recipe-detail .main-info .ingredients-tab {
  display: none;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 6%;
  background-color: #666;
  border-top: 1px solid #d3d3d8;
  margin-top: -1px;
  box-shadow: -5px 0 1px rgba(0, 0, 0, 0.5);
}
@media (min-width: 960px) {
  .recipe-detail .main-info .ingredients-tab {
    display: none !important;
  }
}
.recipe-detail .main-info .inner {
  width: 100%;
}
.recipe-detail .actions {
  margin-top: 3em;
  margin-bottom: 3em;
}
.recipe-detail .ingredients {
  background-color: #fff;
  padding: 1em;
  box-sizing: border-box;
  box-shadow: 0.5em 0.5em 1em rgba(0, 0, 0, 0.15);
  padding-bottom: 2em;
  position: relative;
  padding-right: 2.5em;
  /*	transform:skewY(1deg);

      .inner {
          transform:skewY(-1deg);
          padding-bottom:3em;
      }*/
}
@media (max-width: 619px) {
  .recipe-detail .ingredients {
    width: 95%;
    margin-left: 5%;
    margin-top: -1em;
  }
}
@media (min-width: 960px) {
  .recipe-detail .ingredients {
    border-top-right-radius: 0em;
    display: block !important;
    flex: 0 0 30%;
  }
}
.recipe-detail .ingredients .info-tab {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 6%;
  margin-top: -1px;
}
@media (min-width: 960px) {
  .recipe-detail .ingredients .info-tab {
    display: none;
  }
}
.recipe-detail .ingredients a {
  text-decoration: none;
  padding: 0.5em 0;
  line-height: 1.3em;
  display: block;
}
.recipe-detail .ingredients h3 {
  color: #414141;
}
.recipe-detail .ingredients li {
  line-height: 1.2em;
  padding: 0.25em 0;
}
.recipe-detail .ingredients .last {
  text-align: right;
  font-size: 0.8em;
}

.recipe-header {
  position: relative;
}
.recipe-header strong {
  color: inherit;
}
.recipe-header h2 {
  font-weight: 200;
  margin: 0 0 2em;
  color: rgba(65, 65, 65, 0.5);
}
.recipe-header h2 strong {
  font-weight: 200;
  color: #414141;
}
@media (max-width: 619px) {
  .recipe-header h2 {
    font-size: 1.2em;
  }
}
.recipe-header .back,
.recipe-header .edit {
  z-index: 5;
}
.recipe-header .back path,
.recipe-header .edit path {
  fill: #666;
}
.recipe-header .back {
  left: 4%;
}
.recipe-header .edit {
  right: 4%;
  display: none;
}
.recipe-header:hover .edit {
  display: inline-block;
}
.recipe-header .inner {
  text-align: center;
}
.recipe-header.without-image {
  min-height: 5em;
}
.recipe-header.without-image .back,
.recipe-header.without-image .edit {
  top: 3em;
}

.back {
  margin-right: 0.5em;
}
.back svg {
  transform: rotate(180deg);
}
.back path {
  fill: #fff;
}
.recipe-edit .back path {
  fill: #000;
}

.add-new {
  text-decoration: none;
  position: fixed;
  bottom: 0.75em;
  right: 0.25em;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0.9;
  border-radius: 50%;
  box-sizing: border-box;
  height: 1em;
  width: 1em;
  text-align: center;
  display: block;
  z-index: 5;
  padding: 0.215em;
  background-color: #9f9288;
  font-weight: bold;
  font-size: 2.5em;
  transition: transform 0.5s;
  color: #fff;
}
.add-new path {
  fill: #fff;
}
.add-new:hover, .add-new:focus {
  transform: rotate(360deg);
}

.logo {
  margin-top: 0.2em;
  text-decoration: none;
  font-size: 0.95em;
  display: inline-flex;
  color: #414141;
  font-weight: 900;
}
.logged-in .logo {
  font-size: 0.85em;
  margin-top: 0.1em;
}
.logo .icon {
  display: block;
  flex: 0 0 2em;
  margin-right: 0.25em;
  position: relative;
  top: 0.1em;
}
.logged-in .logo .icon {
  top: -0.05em;
}
.logo .name {
  line-height: 1em;
  width: 4em;
  opacity: 0.7;
}
.logo .back {
  width: 1.35em;
  opacity: 0.7;
  position: relative;
  top: 0.1em;
}
.logo .icon {
  position: relative;
}
.logo .icon path {
  fill: #666;
}
@media (max-width: 619px) {
  .logo .icon {
    height: 1em;
    width: 2em;
    display: inline-block;
  }
}

.splashscreen {
  background: #fff;
}
.splashscreen .image {
  background-image: url("../img/photo-1473093295043-cdd812d0e601.jpeg");
  background-size: cover;
  background-attachment: fixed;
  background-position: center;
  min-height: 60vh;
  box-sizing: border-box;
  padding-top: 10vh;
}
.splashscreen .image {
  text-align: center;
}
.splashscreen .image h2 {
  font-family: "Montserrat";
  font-weight: 200;
  font-size: 0.8em;
}
.splashscreen .text {
  min-height: 40vh;
  background: #fff;
  transform: skewY(-3deg);
  margin-top: -3em;
  padding-top: 5em;
  color: #000;
  box-sizing: border-box;
  text-align: center;
}
.splashscreen .text .inner {
  transform: skewY(3deg);
  max-width: 50em;
}

.page-splashscreen header {
    height:0 ;
    padding:0 ;
}

.photocredits,
.legal {
  font-size: 0.6em;
  text-decoration: none;
  padding: 0.2em 0.5em;
  line-height: 1em;
  border-radius: 0.2em;
}
.photocredits > *,
.legal > * {
  text-decoration: none;
}

.photocredits {
  position: absolute;
  bottom: 1em;
  right: 1em;
}

.legal {
  position: absolute;
  bottom: 1em;
  left: 1em;
}

.page-legal {
  padding: 2em;
  font-size: 1em;
}

.background-splash {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.background-splash img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  max-width: none;
}

.page-splash {
  background-repeat: no-repeat;
}
.page-splash path {
  fill: #fff;
}
.page-splash .part1 {
  text-align: left;
  padding-top: 0;
}
@media (max-width: 619px) {
  .page-splash .part1 {
    margin-top: 8em;
  }
}
.page-splash .part1 .inner {
  padding: 0;
}
.page-splash .part1 .subpart1 {
  padding: 0 5%;
  margin-bottom: 5em;
  width: 70%;
}
@media (min-width: 960px) {
  .page-splash .part1 .subpart1 {
    width: 50%;
  }
}
.page-splash .part1 .inner {
  margin: 0;
}
@media (min-width: 960px) {
  .page-splash .part1 .inner {
    display: flex;
  }
}
.page-splash .part1 img {
  width: 95%;
  height: 80%;
  object-fit: cover;
  object-position: center top;
  border-top-left-radius: 2em;
  margin-bottom: -3em;
  box-shadow: 0 0 1em rgba(51, 51, 51, 0.2), 0 0 2em rgba(51, 51, 51, 0.25), 0 0 0.5em rgba(0, 0, 0, 0.3);
}
.page-splash .part1 .with-image {
  padding-top: 2em;
  align-self: flex-end;
  text-align: right;
  overflow: hidden;
  margin-top: -3em;
}
.page-splash .part2 {
  text-align: right;
  position: relative;
  z-index: 1;
}
.page-splash .inner {
  width: 100%;
}
.page-splash h1,
.page-splash h2 {
  margin: 0;
}
.page-splash h1 {
  margin-bottom: 0.2em;
}

.page-splash .button {
  margin-bottom: 0.3em;
}

.attachment {
  position: relative;
  display: inline-block;
  margin: 1em 0;
}
.attachment img {
  height: 8em;
}
.attachment .delete {
  position: absolute;
  top: 0;
  right: 0;
}
.attachment .delete button {
  padding: 0.25em;
}

.delete {
  float: right;
}
.delete button {
  padding: 0.5em;
}
.delete path {
  fill: #fff;
}

input,
select,
textarea {
  border: 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
  transition: all 0.2s;
  font-weight: normal;
  margin-bottom: 0.25em;
  background-color: #fff;
  padding: 0.75em 1em;
  border-radius: 0.2em;
  color: #414141;
  resize: both;
  width: 100%;
  box-sizing: border-box;
  font-size: 0.9em !important;
}
input:focus,
select:focus,
textarea:focus {
  opacity: 1;
  background-color: rgba(255, 255, 255, 0.7);
  color: #414141;
}

button {
  cursor: pointer;
}
button.warn {
  background-image: linear-gradient(35deg, #ac3d00, #df4f00);
}

button,
.button {
  transition: background-color 0.15s, transform 0.15s;
  background-image: linear-gradient(35deg, #547f0d, #799f3a);
  color: #fff;
  border: 0;
  font-size: 1em;
  padding: 0.5em 1em;
  clear: both;
  font-weight: bold;
  float: none;
  display: inline-block;
  text-decoration: none;
  border-radius: 0.2em;
  box-shadow: 0 1px 1px rgba(55, 83, 8, 0.1), 2px 2px 2px rgba(55, 83, 8, 0.1), 2px 4px 4px rgba(55, 83, 8, 0.1), 4px 8px 8px rgba(55, 83, 8, 0.1), 16px 16px 16px rgba(55, 83, 8, 0.1);
}
button.secondary,
.button.secondary {
  border: 2px solid rgba(84, 127, 13, 0.7);
  background: transparent;
  color: #547f0d;
  font-weight: 400;
  box-shadow: none;
  transition: background-color 0.15s, color 0.15s, border-color 0.15s;
}
button.secondary:hover, button.secondary:focus,
.button.secondary:hover,
.button.secondary:focus {
  background-color: transparent;
  color: #45680b;
  border-color: #45680b;
  transform: none;
}
button:hover, button:focus,
.button:hover,
.button:focus {
  background-color: #545454;
  transform: scale(1.025);
}
button:active,
.button:active {
  background-color: #474747;
  box-shadow: 1px 1px 7px rgba(0, 0, 0, 0.4) inset;
}
button.small,
.button.small {
  font-size: 0.8em;
}

.create-pdf {
  float: right;
  display: inline-block;
  margin-bottom: 3em;
  font-size: 1.2em;
  text-decoration: none;
  font-weight: bold;
}

.positions {
  font-size: 0.8em;
  padding-left: 1.2em;
}

form {
  /*	display: flex;
      flex-direction: column;*/
}

textarea {
  min-height: 10em;
  line-height: inherit;
}

.ingredients ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.ingredients .inner {
  padding: 0;
}

.ingredients-and-info {
  position: relative;
}
@media (min-width: 960px) {
  .ingredients-and-info:before, .ingredients-and-info:after {
    content: none;
    position: absolute;
    top: 0;
    right: 0;
    width: 10%;
    height: 2px;
    background-color: rgba(65, 65, 65, 0.25);
    z-index: -1;
  }
  .ingredients-and-info:after {
    top: auto;
    bottom: 0;
    width: 20%;
  }
}
@media (min-width: 960px) {
  .ingredients-and-info {
    display: flex;
  }
}
.ingredients-and-info .image {
  flex: 0 0 70%;
  border-radius: 0.2em;
  height: 55vw;
}
@media (min-width: 960px) {
  .ingredients-and-info .image {
    height: 35vw;
  }
}
.ingredients-and-info .image img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
@media (min-width: 960px) {
  .ingredients-and-info .stats-and-info {
    flex: 0 0 32%;
  }
}
.ingredients-and-info .ingredients {
  padding: 0;
  margin: 0.5em;
}
@media (min-width: 960px) {
  .ingredients-and-info .ingredients {
    flex: 0 0 25%;
  }
}
.ingredients-and-info .ingredients table {
  margin-top: 1em;
}
.ingredients-and-info .ingredients td {
  vertical-align: top;
  position: relative;
}
.ingredients-and-info .ingredients .ingredient-name {
  padding-right: 2em;
}
.ingredients-and-info .ingredients .kcal-info {
  display: inline-block;
  padding: 0.2em 0.5em;
  line-height: 1.1em;
  position: relative;
  right: 2em;
  color: #fff;
  background-size: cover;
  background-position: center;
  border-radius: 0.5em;
  overflow: hidden;
  white-space: nowrap;
  position: absolute;
  right: -1em;
}
.ingredients-and-info .ingredients .kcal-info:before {
  background-color: rgba(0, 0, 0, 0.7);
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  content: "";
  position: absolute;
  background: rgba(0, 0, 0, 0.5);
}
.ingredients-and-info .ingredients .kcal-info .text {
  position: relative;
  z-index: 2;
}
.ingredients-and-info .ingredients .kcal-info img {
  height: 200%;
  position: absolute;
  width: 200%;
  left: -5%;
  top: -25%;
  filter: blur(1em);
  object-fit: cover;
  z-index: 1;
}
.ingredients-and-info .ingredients .kcal-info strong {
  color: #fff !important;
}
.ingredients-and-info .images-wrapper {
  position: relative;
  padding-right: 2em;
  margin: 0.5em;
  margin-right: -2em;
  margin-left: 0;
}
@media (min-width: 960px) {
  .ingredients-and-info .images-wrapper {
    flex: 0 0 40%;
  }
}
.ingredients-and-info .images-wrapper .image {
  position: relative;
  z-index: 3;
  height: 100%;
}
.ingredients-and-info .images-wrapper img {
  height: 100%;
  object-fit: cover;
}
.ingredients-and-info .images-wrapper .image-shadow {
  position: absolute;
  top: 1em;
  left: 0;
  opacity: 0.8;
  z-index: 1;
  width: 100%;
  height: 100%;
  filter: blur(2em);
  transform: scale(0.98);
}
.ingredients-and-info .main-info {
  flex: 1;
}

.unimportant {
  opacity: 1;
  font-size: 0.8em;
  font-weight: normal;
}
.unimportant a {
  text-decoration: none;
}

.user-actions {
  margin-left: auto;
  display: flex;
  position: relative;
}
.user-actions button {
  background: none;
  padding: 0.2em 0.5em;
  color: #414141;
}
.user-actions img {
  width: 1.5em;
}

.recipe-edit {
  padding-bottom: 2em;
}
.recipe-edit .back {
  width: 0.8em;
  height: 0.8em;
  position: relative;
  top: 0.35em;
  margin-right: 1em;
}
.recipe-edit .search-form {
  display: block;
  float: none;
}
.recipe-edit .amount {
  width: 4em;
  border: 1px solid rgba(211, 211, 216, 0.7);
  background: transparent;
  padding: 0.25em 0.2em 0.25em 0;
}
.recipe-edit .recipe-ingredients {
  align-items: center;
}
.recipe-edit.adding-new-ingredient .add-new-ingredient-container {
  position: fixed;
  max-height: 90vh;
  max-width: 90%;
  color: #414141;
  box-shadow: 0.1em 0.1em 0.5em rgba(0, 0, 0, 0.5);
  box-sizing: border-box;
  top: 5vh;
  z-index: 1;
}
.recipe-edit.adding-new-ingredient .add-new-ingredient-container:before {
  background-color: rgba(0, 0, 0, 0.7);
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  content: "";
  z-index: 0;
}
.recipe-edit.adding-new-ingredient .add-new-ingredient-container .add-new-ingredient-container-inner {
  position: relative;
  z-index: 2;
  background: #efeded;
  padding: 1em;
  border-radius: 0.25em;
}
.recipe-edit .mainblocks {
  position: relative;
}
.recipe-edit.live-updates .mainblocks:before {
  background-color: rgba(0, 0, 0, 0.7);
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  content: "";
  position: absolute;
}
.recipe-edit input,
.recipe-edit textarea {
  background-color: rgba(0, 0, 0, 0.1);
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.075) inset;
}
.recipe-edit input:active, .recipe-edit input:focus,
.recipe-edit textarea:active,
.recipe-edit textarea:focus {
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2) inset;
  background-color: rgba(0, 0, 0, 0.07);
}

.input-with-overlap {
  position: relative;
}
.input-with-overlap .overlapper {
  position: absolute;
  right: 0.5em;
  top: 0.25em;
}

.delete-recipe path {
  fill: #fff;
}

.button.warn {
  background-color: #ac3d00;
}

.shy-button {
  border: 1px solid #666;
  background-color: transparent;
  color: #666;
  padding: 0.2em 0.5em;
  font-size: 0.7em;
}
.shy-button:hover, .shy-button:focus {
  background-color: transparent;
}

.add-ingredient-to-database-toggler {
  margin: 0.5em 0 2em;
}

.recipe-edit .back {
  float: left;
}

.hide {
  display: none;
}

.ingredient-remove {
  cursor: pointer;
  margin-left: auto;
}
.ingredient-remove path {
  fill: #ac3d00;
}

.tabs {
  position: relative;
  display: none;
}
@media (max-width: 959px) {
  .tabs:after {
    height: 1px;
    width: 100%;
    background-color: #d3d3d8;
    position: absolute;
    bottom: 0px;
    content: "";
  }
}
.tabs .inner {
  display: flex;
}
.tabs .tab {
  padding: 0.5em 1em;
  color: #666;
  font-weight: bold;
  border: 1px solid #d3d3d8;
  border-bottom: 0;
  border-radius: 0.3em;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
  outline: none;
  cursor: pointer;
  position: relative;
  z-index: 6;
}
.tabs .ingredients-tab {
  background-color: #666;
  color: #fff;
}
.tabs .info-tab {
  margin-left: auto;
  background-image: linear-gradient(to bottom, #9f9288, #9f9288);
}

.fetch-content {
  color: #fff;
}

.card {
  box-shadow: 0.1em 0.1em 0.5em rgba(0, 0, 0, 0.1);
  background-color: #fff;
  margin: 0 1em 1em 0;
  text-decoration: none;
  display: block;
  border-radius: 0.2em;
  overflow: hidden;
}
.card .text {
  padding: 0.5em 1em;
}
.card h1,
.card h2,
.card h3 {
  margin: 0;
}
.card.recipegroup {
  float: left;
  width: calc(50% - 1em);
}
@media (min-width: 960px) {
  .card.recipegroup {
    width: calc(25% - 1em);
  }
}
@media (min-width: 1200px) {
  .card.recipegroup {
    width: calc(16.66% - 1em);
  }
}
.card.recipegroup .text {
  font-size: 0.8em;
}
.card.recipegroup .text:after {
  content: "";
  display: block;
  clear: both;
}
.card.recipegroup .count {
  float: right;
  font-size: 0.8em;
}
.card.recipegroup h3 {
  float: left;
  line-height: 1.3em;
}
.card.recipegroup.button {
  padding: 0.5em;
  box-sizing: border-box;
}
.card.recipegroup.button svg {
  width: 3em;
}
.card.recipegroup.button svg path {
  fill: #fff;
}

.recipegroups {
  display: flex;
  flex-wrap: wrap;
}
.recipegroups:after {
  content: "";
  display: block;
  clear: both;
}
.recipegroups h3 {
  font-size: 1.6em;
  hyphens: auto;
}

.recipegroup {
  position: relative;
}
.recipegroup .image-container {
  position: relative;
}
.recipegroup .image-container .count {
  position: absolute;
  top: 0;
  right: 0.5em;
  color: #fff;
  text-shadow: 0.1em 0.1em 0.1em rgba(0, 0, 0, 0.3);
  display: inline-block;
  font-size: 0.7em;
  font-weight: bold;
}
.recipegroup .text {
  position: absolute;
  bottom: 0;
  width: 100%;
  z-index: 1;
  box-sizing: border-box;
  background-color: rgba(0, 0, 0, 0.3);
  padding-bottom: 2em;
  transform: skewY(-3deg);
  margin-bottom: -0.5em;
}
.recipegroup .text h3 {
  color: #fff;
  transform: skewY(3deg);
}
.recipegroup .text .text-inner {
  transform: skewY(3deg);
}

.checkbox input {
  width: 2em;
}

h4 {
  margin-bottom: 0;
}

table {
  width: 100%;
  border-spacing: 0;
  border-collapse: collapse;
  box-shadow: 1em 1em 2em rgba(0, 0, 0, 0.1);
}
table a {
  text-decoration: none;
}
table.ingredients td {
  padding: 0.1em 0.25em;
}
table.ingredients th {
  text-align: left;
}
table.ingredients .action {
  text-align: right;
}
table.ingredients button {
  padding: 0.1em 0.5em;
}
table.ingredient-details {
  font-size: 0.8em;
}
table.ingredient-details th,
table.ingredient-details td {
  padding: 0.25em 0.5em;
  border-bottom: 1px solid #d3d3d8;
}
table.ingredient-details tr:last-child th,
table.ingredient-details tr:last-child td {
  border-bottom: 0;
}
table.ingredient-details th {
  background-color: #f2f2f2;
  text-align: left;
}
table.ingredient-details td {
  text-align: right;
}
table.ingredient-details {
  margin-bottom: 3em;
}
.pagination {
  display: flex;
  list-style-type: none;
  justify-content: center;
}
.pagination li a,
.pagination li span {
  padding: 0.5em;
}

.bitte-nicht-ausfuellen {
  opacity: 0;
  width: 1px;
  height: 0;
  position: absolute;
  overflow: hidden;
}

.thin {
  font-weight: 400;
}

.ingredient-edit .back path,
.ingredient-show .back path {
  fill: #414141;
}

.grid {
  display: flex;
  align-items: flex-start;
}
.grid .part1 {
  flex: 0 0 60%;
  box-shadow: 0em 1.5em 1em black;
  z-index: 1;
  padding: 0 0 0 3.5%;
  box-sizing: border-box;
}
.grid .part2 {
  display: flex;
  flex: 0 0 40%;
  width: 40%;
  height: 100vh;
  position: fixed;
  top: 0;
  right: 0;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.ingredient-show h1 {
  font-size: 1.7em;
}
@media (min-width: 620px) {
  .ingredient-show h1 {
    font-size: 4em;
  }
}
.ingredient-show h2 {
  margin-top: 0.2em;
  opacity: 0.7;
}
.ingredient-show .part1 {
  position: relative;
  box-shadow: none;
  align-self: center;
}
.ingredient-show .background {
  position: absolute;
  background-attachment: fixed;
  z-index: -3;
  top: 0;
  left: 0;
  background-size: cover;
  width: 100vw;
  height: 100vh;
  box-sizing: border-box;
}
.ingredient-show .block {
  margin-right: -3em;
  padding: 1em 1em 0.5em;
  background-color: #fff;
  margin-bottom: 3em;
  box-shadow: 2em 1em 2em rgba(0, 0, 0, 0.15);
  border-top: 1px solid #fff;
  border-radius: 0.2em;
}
.ingredient-show .block:after {
  content: "";
  display: block;
  clear: both;
}
.ingredient-show .block table {
  margin: 0;
}
.ingredient-show .block table td, .ingredient-show .block table th {
  background-color: transparent;
}
.ingredient-show .ingredient-details {
  box-shadow: none;
}

.unsplash-images {
  display: flex;
  flex-wrap: wrap;
  width: 102%;
  margin-left: -1%;
  margin-bottom: 3em;
}
.unsplash-images a {
  display: block;
  height: 5em;
  width: auto;
  margin: 1%;
  transition: transform 0.2s;
  cursor: pointer;
}
.unsplash-images a:hover {
  transform: scale(1.1);
}
.unsplash-images a.active {
  border: 3px solid #82c414;
}
.unsplash-images a img {
  height: 100%;
  width: auto;
}

.ingredients-wrapper {
  background-color: #fff;
  padding: 1em;
  box-shadow: 0.1em 0.1em 2em rgba(0, 0, 0, 0.2);
}
.ingredients-wrapper h2 {
  margin: 0.2em 0;
}

@media (max-width: 959px) {
  .not-logged-in .user-actions {
    padding: 0.5em !important;
  }
}

@media (max-width: 959px) {
  .logged-out-nav {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-end;
    padding: 0;
  }
}
.logged-out-nav a {
  padding: 0.5em 1em;
  box-sizing: border-box;
  text-decoration: none;
  margin: 0 0.5em;
  display: inline-block;
  line-height: 1.1em;
}
@media (max-width: 959px) {
  .logged-out-nav a {
    margin-right: 0 !important;
    margin-bottom: 0.5em !important;
  }
}
.logged-out-nav .button {
  margin: 0 1em;
}
.logged-out-nav .secondary {
  padding: 0.45em 1em;
  background-color: #fff;
}
.logged-out-nav a:last-child {
  margin-right: 0;
}

.form-item-wrapper {
  display: flex;
  align-items: center;
}
.form-item-wrapper .text {
  padding: 0.3em;
}
.form-item-wrapper .button {
  font-size: 0.75em;
  padding: 0.2em 1em;
  cursor: pointer;
  position: relative;
  top: -0.1em;
}

.recipegroups-adder {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.recipegroups-adder:after {
  content: "";
  display: block;
  clear: both;
}
.recipegroups-adder li a {
  border-radius: 1em;
  background-color: #87786d;
  padding: 0.2em 1em;
  border: 2px solid #6b5f56;
  float: left;
  margin-right: 0.5em;
  margin-bottom: 0.5em;
  cursor: pointer;
}
.recipegroups-adder li.active a {
  background-image: linear-gradient(35deg, #9f9288, #cdc6c0);
  color: #fff;
  box-shadow: 0.25em 0.25em 1em rgba(0, 0, 0, 0.15);
  font-weight: bold;
  border-color: #fff;
  box-sizing: border-box;
}

.more-infos-ingredients svg {
  transform: rotate(90deg);
  width: 1em;
  height: 1em;
}

form#recipe [type=submit] {
  width: 100%;
  font-size: 1.5em;
}

label h3 {
  margin-bottom: 0.25em;
}

.error-info {
  display: block;
  flex: 0 0 100%;
  background-color: #ac3d00;
  padding: 0.5em 1em;
  color: #fff;
}

h1 {
  bottom: 0;
  position: relative;
  z-index: 2;
  margin: 0.25em 0;
  padding-top: 0;
  font-weight: 900;
}
@media (min-width: 960px) {
  h1 {
    font-size: 4.5em;
    padding-top: 0.75em;
  }
}
h1 span {
  font-weight: 300;
}
.dashboard2 h1 {
  font-size: 3.5em;
}

.page-splash {
  margin: 0 auto;
  text-align: center;
  width: 100%;
}


.page-splashscreen .Site-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.page-splashscreen .user-actions {
    display: none;
}
.card-wrapper {
  text-align: center;
}

.styled-form {
  margin: 2em auto;
  font-size: 1rem;
  max-width: 55em;
}
@media (min-width: 620px) {
  .styled-form {
    display: flex;
  }
}
.styled-form h3 {
  margin-bottom: 0.3em;
  opacity: 0.8;
}
.styled-form .formfield {
  margin-bottom: 1.2em;
}
.styled-form .image-container {
  box-sizing: border-box;
  flex: 0 0 60%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url("../img/chad-montano-eeqbbemH9-c-unsplash.jpg");
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
@media (max-width: 959px) {
  .styled-form .image-container {
    min-height: 10em;
    flex: 0 0 50%;
  }
}
.styled-form form {
  box-sizing: border-box;
  flex: 0 0 40%;
  padding: 5em 2em 1em;
  text-align: left;
}
@media (max-width: 959px) {
  .styled-form form {
    flex: 0 0 50%;
  }
}
.styled-form .unimportant {
  display: block;
  text-decoration: none;
  opacity: 0.5;
}
.styled-form h1 {
  color: #fff;
  margin: 0.5em;
  font-size: 3rem;
  opacity: 0.9;
}
@media (min-width: 620px) {
  .styled-form h1 {
    text-align: right;
  }
}
@media (min-width: 960px) {
  .styled-form h1 {
    font-size: 6rem;
  }
}

.page-login .Site-content,
.page-register .Site-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
}

.head-line {
  display: flex;
  width: 101%;
  margin-left: -0.5%;
  flex-wrap: wrap;
  align-items: center;
  font-size: 0.85em;
}
.head-line > * {
  box-sizing: border-box;
  margin: 0.5%;
}
@media (max-width: 619px) {
  .head-line > * {
    flex: 0 0 49%;
  }
}
.head-line .button {
  padding: 0.25em 1em;
}

.search-form {
  display: none;
}
.search-form label {
  margin-right: 0.5em;
}
.search-form input {
  margin: 0;
  background-color: #fff;
  padding: 0.5em 1em;
  font-size: 1.5em !important;
}
@media (max-width: 959px) {
  .search-form {
    display: none;
  }
}

.fancybox__content {
  max-width: 700px !important;
  padding: 0;
  border-radius: 0.25em;
  overflow: hidden !important;
}

.fancybox__backdrop {
  background: rgba(0, 0, 0, 0.65);
}

.to-recipe {
  text-decoration: none;
}

.eatings-index time {
  opacity: 0.5;
}
.eatings-index .calcer {
  display: none;
}
.eatings-index .calcer:last-child {
  display: block;
  padding: 0.5em 0;
}
.eatings-index .calcer .info {
  opacity: 0.5;
}
.eatings-index .calcer .number {
  font-size: 1.5em;
}
.eatings-index .image-wrapper {
  width: 5em;
  height: 3em;
}
.eatings-index .image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.eatings-index .ingredient-name {
  line-height: 1em;
}
.eatings-index .button {
  line-height: 1em;
  white-space: nowrap;
  padding: 0.5em 1em;
}

.eating {
  display: flex;
  background-color: #fff;
  margin-bottom: 2px;
  padding: 0.5em;
  box-shadow: 0.2em 0.2em 0.5em rgba(0, 0, 0, 0.15);
  border-radius: 0.2em;
}
@media (max-width: 619px) {
  .eating {
    flex-wrap: wrap;
  }
}
.eating > * {
  flex: 0 0 15%;
}
@media (max-width: 619px) {
  .eating > * {
    flex: 0 0 100%;
  }
}
.eating .delete-form {
  margin-left: auto;
  font-size: 0.6em;
}
.eating .to-recipe {
  color: #9f9288;
  font-weight: bold;
}

.eatings-form h4 {
  margin: 0.2em 0 0;
}

.ingredient-results {
  max-height: 30em;
  overflow: auto;
}
.ingredient-results ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.ingredient-results li {
  background-color: #f2f2f2;
  min-height: 3em;
  border: 1px solid #fff;
}
.ingredient-results li > div {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.ingredient-results .image-wrapper {
  min-width: 5em;
  background-color: #fff;
  margin-right: 1em;
  text-align: center;
}
.ingredient-results img {
  max-height: 3em;
}
.ingredient-results .ingredient-name {
  margin-left: 0.5em;
}
.ingredient-name a:hover,
.ingredient-name a:focus
 {
  text-decoration: underline;
  text-underline-offset: 0.3em;

}
.ingredient-results .trackform {
  padding: 1em;
  display: none;
}

.bring-button-wrapper {
  position: relative;
}

.recipe-actions-new .bring-import-link-dark {
  width: 2.5em;
  overflow: hidden;
  padding: 0.25em !important;
}
.recipe-actions-new .bring-import-link-dark .bring-import-text-dark {
  color: transparent !important;
}

.bring-import-button-dark {
  filter: grayscale(1) !important;
  background-color: transparent !important;
  border: 0 !important;
  height: auto !important;
  padding: 0 !important;
  box-shadow: none !important;
  background-image: url("/img/shopping-bag.svg");
  background-size: 1.35em;
  background-repeat: no-repeat;
  background-position: left top;
}
.bring-import-button-dark .bring-import-image-dark {
  display: none;
}

.weekplan-wrapper {
  position: relative;
}
.weekplan-wrapper .icon {
  width: 1.4em;
  height: 1.4em;
  top: 0em;
  left: -0.1em;
}
.weekplan-wrapper form {
  position: absolute;
  top: 2em;
  z-index: 24;
}

.bring-import-text-dark {
  text-align: center;
  height: auto !important;
}

.tracker-results {
  list-style-type: none;
  padding: 0;
  background-color: #fff;
  display: block;
  border-radius: 0.3em;
  box-shadow: 0.1em 0.1em 2em rgba(0, 0, 0, 0.3);
}
.tracker-results li {
  border-bottom: 1px solid #d3d3d8;
}
.tracker-results .result {
  position: relative;
  display: flex;
}
.tracker-results .content {
  padding: 0.5em;
  display: inline-block;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  width: 100%;
}
.tracker-results .content .name {
  margin-right: 1em;
}
.tracker-results .content .button {
  font-size: 0.8em;
  margin-left: auto;
}
.tracker-results img {
  height: 4em;
  width: 3em;
  object-fit: cover;
}

.result-type {
  opacity: 0.5;
}

.result .name {
  font-weight: bold;
}

.pagination-wrapper {
  display: none;
}

.weight-blocks {
  display: flex;
  flex-wrap: wrap;
  margin: 1em 0;
}

.weight-block {
  padding: 1em 2em 1em;
  position: relative;
  background-color: #fff;
  border-radius: 0.3em;
  box-shadow: 0.1em 0.1em 1em rgba(0, 0, 0, 0.1);
  text-decoration: none;
  text-align: right;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin: 0.5em;
}
.weight-block .datetime {
  font-size: 0.6em;
  top: 0.5em;
  opacity: 0.5;
  right: 1em;
}
.weight-block .comment {
  font-size: 0.8em;
  text-align: left;
}
.weight-block .weight {
  font-size: 1.5em;
  font-weight: bold;
}

[name=bitte_nicht_ausfuellen] {
  opacity: 0;
  height: 0;
  width: 0;
  overflow: hidden;
  position: absolute;
}

.loader {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  display: inline-block;
  position: relative;
  border: 3px solid;
  border-color: #9f9288 #9f9288 transparent transparent;
  box-sizing: border-box;
  animation: rotation 6s linear infinite;
}

.loader::after,
.loader::before {
  content: "";
  box-sizing: border-box;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  border: 3px solid;
  border-color: transparent transparent #666 #666;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  box-sizing: border-box;
  animation: rotationBack 2s linear infinite;
  transform-origin: center center;
}

.loader::before {
  width: 32px;
  height: 32px;
  border-color: #9f9288 #9f9288 transparent transparent;
  animation: rotation 1.5s linear infinite;
}

@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes rotationBack {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(-360deg);
  }
}
.ingredient-item {
  cursor: pointer;
  display: flex;
  align-items: center;
}
.ingredient-item:hover {
  background-color: #d9d9d9;
}

.loading-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 1em;
  z-index: 10;
  background-color: rgba(255, 255, 255, 0.8);
  justify-content: center;
  align-items: center;
  padding: 2em;
  display: none;
}
.loading-wrapper .loader {
  margin: 0.5em;
}

.vue-data-container {
  display: none;
}

/*
@media (prefers-color-scheme: dark) {
    body {
        background:lighten($c-darkest,15);
        color:darken($c-negative,10);
    }
    .recipe-header {
        h2 {
            color:darken($c-negative,10);

            strong {
                color:darken($c-negative,30);
            }
        }
    }
    h1,h2 {
        color:darken($c-negative,10);
    }
    .recipe-detail {
        .ingredients {
            background-color: lighten($c-darkest,20);

            h3 {
                color:$c-negative;
            }
        }
    }
    header {
        .logo {
            color:$c-negative;
        }
        img {
            filter:invert(1);
        }
        .user-actions {
            button {
                color:$c-negative;
            }
        }
    }
    .stats {
        background-color: lighten($c-darkest,30);
        color:$c-negative;
    }
}
*/
.daily-meals {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  margin-top: 2em;
}
@media (max-width: 959px) {
  .daily-meals {
    grid-template-columns: repeat(2, 1fr);
  }
}
.daily-meals h2 {
  flex: 0 0 100%;
  margin: 2em 1% 0;
}
.daily-meals .day {
  padding: 1em 0.5em 2em;
  background-color: white;
  box-sizing: border-box;
  height: 100%;
  border-bottom: 1px solid rgba(84, 127, 13, 0.3);
  border-right: 1px solid rgba(84, 127, 13, 0.15);
  box-shadow: 0.1em -0.1em 0.6em rgba(0, 0, 0, 0.05);
}
.daily-meals .day:nth-child(2n) {
  background-color: rgba(255, 255, 255, 0.8);
}
.daily-meals .day:nth-child(3n) {
  background-color: rgba(255, 255, 255, 0.6);
}
.daily-meals .day:nth-child(4n) {
  background-color: rgba(255, 255, 255, 0.4);
}
.daily-meals .day:nth-child(5n) {
  background-color: rgba(255, 255, 255, 0.2);
}
.daily-meals .day:nth-child(6n) {
  background-color: rgba(255, 255, 255, 0.1);
}
.daily-meals .day:nth-child(7n) {
  background-color: rgba(255, 255, 255, 0);
}
@media (max-width: 959px) {
  .daily-meals .day {
    padding: 0.5em 0.6em;
  }
}
.daily-meals .day-head {
  padding: 0 1em;
  font-size: 0.75em;
  line-height: 1.3em;
  margin-bottom: 1em;
  letter-spacing: -0.5px;
  display: flex;
  justify-content: space-between;
}

.planned-meal {
  background-color: #fff;
  text-decoration: none;
  margin: 1%;
  position: relative;
  margin-bottom: 1em;
  box-shadow: 1em 1em 3em rgba(0, 0, 0, 0.5);
}
.planned-meal h2,
.planned-meal h3 {
  hyphens: auto;
}
.planned-meal .image {
  height: 5em;
  overflow: hidden;
}
.planned-meal .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.planned-meal .content {
  padding: 1em;
  font-size: 0.7em;
}
.planned-meal h3 {
  margin: 0;
}
@media (max-width: 619px) {
  .planned-meal h3 {
    font-size: 1em;
  }
}
.planned-meal .delete-button {
  position: absolute;
  top: -0.1em;
  right: -0.1em;
  padding: 0.25em;
  font-size: 0.8em;
}
.planned-meal .delete-button img {
  filter: invert(1);
}

.planned-meal-link {
  text-decoration: none;
}

.new-grid {
  width: 91%;
  flex-wrap: wrap;

}
@media (min-width: 620px) {
  .new-grid {
    display: flex;
    align-items: flex-start;
  }
}
@media (min-width: 1200px) {
  .new-grid {
    grid-template-columns: calc(20% - 0.75em) calc(20% - 0.75em) calc(20% - 0.75em) calc(20% - 0.75em) calc(20% - 0.75em);
  }
}
.new-grid .tile {
  border-radius: 0.15em;
  padding: 1em;
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.1), 0 5px 12px rgba(0, 0, 0, 0.15);
  z-index: 2;
  background-color: rgba(255, 255, 255, 0.8);
  text-decoration: none;
  min-height: 6em;
  display: block;
  position: relative;
  border-top: 1px solid rgba(159, 146, 136, 0.18);
  border-right: 1px solid rgba(159, 146, 136, 0.25);
  transition: transform 0.2s;
}
.new-grid .tile .important {
  font-size: 2em;
}
.new-grid .week-and-new {
  flex: 0 0 30%;
  margin-right: 5%;
}
.new-grid .weekplan {
  background-image: linear-gradient(125deg, rgba(84, 127, 13, 0.6), #547f0d);
  background-size: cover;
  position: relative;
  overflow: hidden;
  display: block;
  box-shadow: 0 1px 1px rgba(55, 83, 8, 0.1), 2px 2px 2px rgba(55, 83, 8, 0.1), 2px 4px 4px rgba(55, 83, 8, 0.1), 4px 8px 8px rgba(55, 83, 8, 0.1), 16px 16px 16px rgba(55, 83, 8, 0.1);
  /*        &:before {
              content:'';
              position: absolute;
              width:100%;
              height:100%;
              background-image:linear-gradient(135deg, rgba(darken($c-fond2,15),1), rgba(darken($c-fond2,15),.8));
              top:0;
              left:0;
          }*/
}
.new-grid .weekplan .text {
  position: relative;
  z-index: 2;
  color: #fff;
  font-weight: bold;
}
.new-grid .icon {
  filter: invert(1);
  opacity: 0.5;
}
.new-grid .daily-nutri {
  grid-column: auto/span 2;
  padding: 0;
  padding-bottom: 2em;
  min-height: 7em;
}
.new-grid .unimportant {
  font-size: 0.8em;
  padding: 0.2em 0.75em;
  margin: 0.2em 0;
}
.new-grid .cal-percent {
  width: 100%;
  height: 2em;
  background-color: #cbc5c5;
  position: absolute;
  bottom: 0;
}
.new-grid .cal-percent .filled {
  white-space: nowrap;
  width: 66%;
  height: 100%;
  background-image: linear-gradient(-45deg, #547f0d, #82c414);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  font-weight: bold;
  padding: 0.5em;
  box-sizing: border-box;
  max-width: 100%;
}
.new-grid .cal-percent .filled.warn {
  background-image: linear-gradient(-45deg, #ac3d00, #f95800);
}
.new-grid .cal-percent .filled.beginning {
  justify-content: flex-start;
}
.new-grid .content {
  padding: 1em 1em 2em;
}
.new-grid .track {
  padding: 0.25em 0.5em;
  border: 1px solid #d3d3d8;
  display: inline-block;
  border-radius: 0.5em;
}

.additional-nav-items,
.perso-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  height: auto;
  display: none;
  position: absolute;
  top: 2em;
  background-color: rgba(255, 255, 255, 0.9);
  width: 300px;
  box-sizing: border-box;
  z-index: 135;
  right: 0;
  border-radius: 0.3em;
  box-shadow: 0.1em 0.1em 0.5em rgba(0, 0, 0, 0.1);
  left: auto;
}
.additional-nav-items a,
.additional-nav-items form,
.perso-nav a,
.perso-nav form {
  text-decoration: none;
  padding: 1em;
  display: block;
  border-bottom: 1px solid rgba(84, 127, 13, 0.2);
  color: #414141;
}

.Site-content.center {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.perso-nav a {
  padding: 1.3em;
}

@media (min-width: 620px) {
  .dashboard2 {
    font-size: 1.4em;
  }
}
.dashboard2 .inner {
  min-height: 100%;
  width: 100%;
}
.dashboard2 .inner .head {
  margin-bottom: 0.5em;
}
.dashboard2 h2 {
  margin-bottom: 0;
}
.dashboard2 .favorites {
  margin-bottom: 3em;
  overflow: visible;
}
.dashboard2 .intro {
  margin-bottom: 4em;
}
.dashboard2 .head h1 {
  font-size: 2.5em;
}
.page-homepage .new-grid {
    padding:0 5%;
    background: rgba(84, 127, 13, 0.4);
    padding-top:4em;
    padding-bottom:4em;
}
.search-form {
  box-shadow: 0.1em 0.1em 0.5em rgba(0, 0, 0, 0.1);
  font-size: 1em;
}

.fancybox__content {
  max-width: 80% !important;
  margin-top: 5vh;
  min-height: 65vh !important;
}

.recipe-actions {
  margin-top: 2em;
  margin-bottom: 2em;
  opacity: 0;
  transition: opacity 1s;
}
.js-loaded .recipe-actions {
  opacity: 1;
}
@media (min-width: 620px) {
  .recipe-actions {
    display: flex;
  }
}
@media (max-width: 619px) {
  .recipe-actions {
    font-size: 0.8em;
    line-height: 1em;
  }
}

.big-button {
  border: 1px solid #d3d3d8;
  padding: 2em;
  margin-right: 1em;
}

.inner .head {
  margin: 1em 0;
}
.inner .head:after {
  content: "";
  display: block;
  clear: both;
}
.inner .head h1 {
  margin: 0;
  float: left;
}
.inner .search-form {
  position: relative;
  top: 0.5em;
  clear: both;
  width: 100%;
}

.swiper-pagination {
  bottom: -1.5em !important;
}

.swiper-button-next, .swiper-button-prev {
  color: #547f0d;
}

.swiper-pagination-bullet-active {
  background: #547f0d;
}

.recipe2 {
  background-color: #fff;
  background-image: linear-gradient(135deg, #fff, #f2f2f2);
  min-height: 16em;
  margin: 1%;
  overflow: visible;
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.1), 0 5px 12px rgba(0, 0, 0, 0.13);
}
.recipe2 a {
  text-decoration: none;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.recipe2 a:before {
  left: 0;
  width: 100%;
  content: "";
  position: absolute;
  height: 1.5em;
  background-image: linear-gradient(to top, #f2f2f2, rgba(255, 255, 255, 0));
  bottom: 0;
  z-index: 5;
}
.recipe2 .image-container {
  height: 60%;
  flex: 0 0 60%;
}
.recipe2 .image-container:before {
  content: none;
}
.recipe2 .infoblock {
  padding: 1em;
  overflow: hidden;
  box-sizing: border-box;
  position: relative;
}
.recipe2 .infoblock .name {
  hyphens: auto;
  font-size: 1em;
    margin-bottom:.5em;
}
.recipe2 .kcal-info {
  top: 1em;
  left: -0.5em;
  backdrop-filter: blur(5px);
  border-radius: 0.2em;
  box-shadow: 0.2em 0.2em 0.2em rgba(0, 0, 0, 0.1);
}

.recipegroups-tags {
  margin-bottom: 3em;
  display: flex;
}
.recipegroups-tags h3 {
  margin-left: 1%;
}
@media (min-width: 620px) {
  .recipegroups-tags {
    flex: 0 0 65%;
  }
}
.recipegroups-tags .text {
  font-weight: bold;
}
.recipegroups-tags .tag {
  font-size: 0.75em;
  text-decoration: none;

  padding: 1em 0 0 0;
  margin: 1%;
  border-radius: 0.4em;
  min-height: 7em;
  font-weight: bold;
  white-space: normal;
  background-size: cover;
  background-position: center;
  position: relative;
  width: 46.5%;
}
@media (min-width: 960px) {
  .recipegroups-tags .tag {
    width: 22%;
  }
}
@media (min-width: 1200px) {
  .recipegroups-tags .tag {
    width: 13.66%;
  }
}
.recipegroups-tags .tag.create .text {
  background: none;
  backdrop-filter: none;
}
.recipegroups-tags .tag .text {
  z-index: 5;
  bottom: 0.5em;
  right: -0.5em;
  border-radius: 0.2em;
  position: absolute;
  max-width: 100%;
  hyphens: auto;
  text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.35);
  backdrop-filter: blur(0.2em);
  padding: 0.5em;
  background-color: rgba(0, 0, 0, 0.45);
}
.recipegroups-tags .tag .text small {
  opacity: 0.7;
}
.new-grid .recipegroups-tags {
  background-color: transparent;
  box-shadow: none;
  border: 0;
  padding: 0;
}

h3 {
  margin: 0;
}

.intro {
  margin-bottom: 2em;
}

.wrap-items {
  display: flex;
  align-items: center;
}

.form-item-wrapper {
  min-width: 60%;
}

.eats {
  margin: 0.5em;
}

.person-choser {
  max-width: 40%;
}

.mark-as-fav-form {
  position: absolute;
  top: 1em;
  right: 3em;
  z-index: 5;
}
.mark-as-fav-form button {
  backdrop-filter: blur(1em);
  background: transparent;
  font-size: 0.8em;
  padding: 0.5em 1em;
  font-weight: 400;
}
.mark-as-fav-form img {
  width: 1.25em;
  position: relative;
  top: -0.15em;
  filter: invert(1);
  opacity: 0.5;
}

.headline-wrapper {
  display: flex;
  align-items: center;
}
.headline-wrapper h2 {
  margin: 0;
}
.headline-wrapper a {
  text-decoration: none;
  font-weight: bold;
  font-size: 1.5em;
  padding: 0 0.5em;
}

.table-wrapper {
  border-bottom: 1px solid rgba(211, 211, 216, 0.8);
  border-right: 1px solid rgba(211, 211, 216, 0.5);
  border-radius: 0.5em;
  box-shadow: 0.1em 0.1em 0.5em rgba(0, 0, 0, 0.05);
  overflow: auto;
  background-color: #fff;
}
.table-wrapper table {
  border-collapse: collapse;
}
.table-wrapper table td, .table-wrapper table th {
  font-size: 0.8em;
  background-color: #fff;
  padding: 0.5em;
  border-bottom: 1px solid rgba(211, 211, 216, 0.8);
}
.table-wrapper table td:first-child {
  font-weight: bold;
}
.table-wrapper table th {
  background-color: #cccccc;
}
.table-wrapper .chip {
  padding: 0.4em 0.8em;
  border-radius: 1em;
  font-size: 0.8em;
  font-weight: bold;
}
.table-wrapper .chip.paid {
  color: #547f0d;
  background-color: rgba(84, 127, 13, 0.2);
}
.table-wrapper .chip.unpaid {
  color: #ac3d00;
  background-color: rgba(172, 61, 0, 0.2);
}
.table-wrapper .pdf-link svg {
  width: 2em;
  height: 2em;
}
.table-wrapper .pdf-link svg path {
  fill: #666 !important;
}
@media (max-width: 999px) {
  .table-wrapper table {
    width: 100%;
    border-collapse: collapse;
  }
  .table-wrapper thead {
    display: none; /* Überschriften ausblenden */
    text-align: left;
  }
  .table-wrapper .ingredients td:first-child {
    text-align: left;
  }
  .table-wrapper tbody tr {
    display: block;
    margin-bottom: 1rem;
    border: 1px solid #ccc;
    padding: 0.5rem;
    border-radius: 0.5rem;
    background: #fff;
    text-align: right;
    box-shadow: 0 1px 1px rgba(55, 83, 8, 0.1), 2px 2px 2px rgba(55, 83, 8, 0.1), 2px 4px 4px rgba(55, 83, 8, 0.1), 4px 8px 8px rgba(55, 83, 8, 0.1), 16px 16px 16px rgba(55, 83, 8, 0.1);
    position: relative;
  }
  .table-wrapper tbody td {
    display: block;
    text-align: left;
    padding: 0.25rem 0;
    position: relative;
    background-color: transparent;
    border: 0;
  }
  .table-wrapper tbody td:not(.title)::before {
    content: attr(data-label); /* Holt das Label aus HTML */
    font-weight: bold;
    display: inline-block;
    margin-right: 1em;
    width: 5em;
    margin-bottom: 0.25rem;
  }
  .table-wrapper tbody td.brand {
    display: none;
  }
  .table-wrapper .button-wrap {
    position: absolute;
    top: 0.2em;
    right: -2em;
  }
  .table-wrapper .button-wrap .button {
    width: 2em;
    height: 2em;
    font-size: 2em;
  }
}

.sortable-chosen {
  opacity: 0.2;
}

.just-dragging {
  border: 2px solid red !important;
  background-color: #f0f0f0 !important;
  opacity: 0;
}

.clone {
  opacity: 0.5;
}

[data-load] {
  display: none;
}

.table-wrapper.working {
  opacity: 0.5;
}

.tag {
  display: inline-block;
  font-size: 0.75em;
  text-decoration: none;
  padding: 0.25em 0.5em;
  border-radius: 0.2em;
  line-height: 1em;
  color: #fff;
  margin-bottom: 0.3em;
  border-radius: 0.2em;
  background-color: #547f0d;
  font-weight: bold;
}

[data-load] {
  display: none;
}

.table-wrapper-outer {
  clear: both;
  margin-bottom: 3em;
}

.images-wrapper .recipe-actions {
  display: flex;
  position: absolute;
  bottom: 0;
  width: 100%;
  z-index: 4;
}
.images-wrapper .big-button {
  backdrop-filter: blur(2em);
  padding: 0.5em 1em;
  border-radius: 1.5em;
  overflow: hidden;
  border: 0;
  color: #fff;
  z-index: 5;
}
.images-wrapper .big-button .text {
  z-index: 7;
  position: relative;
  display: block;
}
.images-wrapper .big-button .icon {
  opacity: 0.7;
  margin-right: 0.3em;
}

.big-button.bring {
  padding: 0;
}

.bring-import-link-dark span,
.big-button span {
  color: #fff !important;
  font-weight: bold !important;
  flex-grow: 0 !important;
  white-space: normal !important;
}

.bring-import-link-dark {
  min-width: 0 !important;
}

.icon {
  width: 1.25em;
  position: relative;
  top: -0.1em;
  height: 1.25em;
}

.recipe-detail h3 {
  font-size: 1.75em;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  padding-bottom: 0.5em;
  padding-left: 1em;
  padding-top: 1em;
}
@media (max-width: 959px) {
  .recipe-detail h3 {
    padding-top: 1.5em;
  }
}

.stats-and-info {
  display: flex;
  flex-direction: column;
  margin: 0.5em;
  flex: 0 0 30%;
}
.stats-and-info .main-info {
  box-shadow: 0.5em 0.5em 1em rgba(0, 0, 0, 0.4);
}
.stats-and-info .stats {
  overflow: hidden;
  position: relative;
  border-radius: 0.5em;
  color: #fff;
  font-weight: bold;
  box-shadow: 0.5em 0.5em 1em rgba(0, 0, 0, 0.4);
}
.stats-and-info .stats h3, .stats-and-info .stats th, .stats-and-info .stats td {
  color: #fff !important;
  position: relative;
  z-index: 5;
}
.stats-and-info .stats img {
  filter: blur(2em);
  opacity: 0.7;
  position: absolute;
  width: 200%;
  height: 200%;
  left: 0;
  top: -50%;
}
.stats-and-info .stats .bg2 {
  filter: blur(2em);
}
.stats-and-info .stats table th {
  text-align: right;
  font-weight: normal;
  padding-right: 1em;
  width: 40%;
}
.stats-and-info .stats table th, .stats-and-info .stats table td {
  padding: 0.25em 0.5em;
  line-height: 1.2em;
  vertical-align: middle;
}
.stats-and-info .stats table tr:first-child th, .stats-and-info .stats table tr:first-child td {
  padding-top: 1em;
}
.stats-and-info .stats table tr:nth-child(2n) th, .stats-and-info .stats table tr:nth-child(2n) td {
  background-color: rgba(0, 0, 0, 0.1);
}
.stats-and-info .stats table tr:last-child th, .stats-and-info .stats table tr:last-child td {
  padding-bottom: 1.5em;
}
.stats-and-info .stats table td {
  font-size: 1em;
}
.stats-and-info .stats table .value {
  font-size: 1.5em;
}
.stats-and-info .main-info {
  background-color: rgba(255, 255, 255, 0.5);
  margin-top: 1em;
}
.stats-and-info .main-info,
.stats-and-info .images-wrapper,
.stats-and-info .ingredients,
.stats-and-info .stats {
  border-radius: 0.2em !important;
}
.stats-and-info .stats {
  position: relative;
}
.stats-and-info .stats:before {
  background-color: rgba(0, 0, 0, 0.7);
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  content: "";
  position: absolute;
  background-color: rgba(0, 0, 0, 0.3);
}

.remote-images {
  display: flex;
  flex-wrap: wrap;
}
.remote-images img {
  width: 5em;
  heigh: auto;
}

.recipe-main-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.instructions {
  hyphens: auto;
}
.instructions a {
  word-break: break-all;
}

.block {
  background-color: #fff;
  padding: 3%;
  border-radius: 0.2em;
  box-shadow: -1em 1em 2em rgba(0, 0, 0, 0.15);
  margin: 2em 0;
}

.block.with-subblocks {
  padding: 0;
}
@media (max-width: 959px) {
  .block.with-subblocks {
    display: block;
  }
}

.with-subblocks {
  display: flex;
}

.subblock {
  padding: 2%;
  flex: 1;
}
.subblock h2 {
  margin: 0;
}
.subblock.secondary {
  padding: 0;
  background-color: rgba(159, 146, 136, 0.1);
}
.subblock .search-form input {
  font-size: 1em !important;
}
.subblock .ingredients {
  position: absolute;
  top: 8em;
  z-index: 5;
  left: 0;
}
.subblock .ingredients tr td {
  white-space: normal;
}

.ingredient-search {
  position: relative;
}

.new-buttons-wrapper {
  font-size: 0.6em;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  position: fixed;
  bottom: 2em;
  right: 1em;
  z-index: 5;
}
.new-buttons-wrapper a {
  margin-bottom: 0.5em;
}

.ingredients.working {
  opacity: 0.25;
}

header {
  z-index: 15;
}
header .inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.form-wrapper {
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  overflow: hidden;
}
@media (min-width: 620px) {
  .form-wrapper > * {
    flex: 0 0 50%;
  }
}
.form-wrapper .form-inner {
  padding: 0 5vw;
  width: 100%;
  box-sizing: border-box;
}
.form-wrapper .form-inner .inner {
  padding: 0;
}
.form-wrapper form {
  flex: 0 0 34%;
}
.form-wrapper .image-container {
  flex: 0 0 66%;
}
@media (max-width: 959px) {
  .form-wrapper .image-container {
    flex: 1;
  }
}
@media (max-width: 619px) {
  .form-wrapper {
    flex-direction: column;
  }
}
.form-wrapper .image-container {
  position: relative;
}
.form-wrapper .image-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

::placeholder {
  opacity: 0.5;
  font-weight: normal;
}

.form-inner {
  box-sizing: border-box;
  align-self: center;
  padding-right: 2.5vw;
}
@media (max-width: 959px) {
  .form-inner {
    padding-top: 5em;
    margin-top: 8em;
    margin-bottom: 2em;
  }
}

.page-login main .inner,
.page-register main .inner {
  padding-left: 3.5vw;
}

.global-error-messsages {
  background-image: linear-gradient(45deg, #792b00, #df4f00);
  animation: color-change-2x 2s linear infinite alternate both;
  padding: 1em 3.5%;
  top: 0;
  left: 0;
  width: 100%;
}
.global-error-messsages ul {
  transform-origin: left top;
  padding-left: 1.25em;
  margin: 0;
}

.error-messages {
  background-image: linear-gradient(45deg, #792b00, #df4f00);
  animation: color-change-2x 2s linear infinite alternate both;
  padding: 1em 3.5%;
  top: 0;
  left: 0;
  width: 100%;
  color: #fff;
  border-top-left-radius: 0.5em;
  border-top-right-radius: 0.5em;
}
.error-messages ul {
  transform-origin: left top;
  padding-left: 1.25em;
  margin: 0;
}

.info-box,
.success-info,
.global-error-messsages {
  padding: 1.5em 3.5%;
  font-size: 1em;
  color: #fff;
  font-weight: bold;
  display: none;
}
.info-box:before,
.success-info:before,
.global-error-messsages:before {
  background-color: rgba(0, 0, 0, 0.7);
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  content: "";
  background-color: #fff;
  animation: blinker 8s linear infinite;
  opacity: 0;
}
.info-box.warn,
.success-info.warn,
.global-error-messsages.warn {
  background-image: linear-gradient(60deg, #ac3d00, #933400);
}

@keyframes blinker {
  0% {
    opacity: 0.25;
  }
  10% {
    opacity: 0.25;
  }
  20% {
    opacity: 0;
  }
  30% {
    opacity: 0.35;
  }
  65% {
    opacity: 0;
  }
  80% {
    opacity: 0.25;
  }
  100% {
    opacity: 0;
  }
}
.info-box,
.success-info {
  background-color: #547f0d;
  margin-bottom: 1em;
  font-size: 1.2em;
}

.global-info-box {
  background-image: linear-gradient(135deg, #547f0d 0%, rgba(84, 127, 13, 0));
  position: fixed;
  top: 5vh;
  z-index: 16;
  display: inline-block;
}
.global-info-box:before {
  display: none;
  content: none;
}
.global-info-box .remover {
  background-color: rgba(84, 127, 13, 0.9);
}

.global-error-messsages,
.global-info-box {
  opacity: 0.9;
  position: fixed;
  z-index: 5;
}
.global-error-messsages .remover,
.global-info-box .remover {
  position: absolute;
  top: -0.5em;
  right: -0.5em;
  font-size: 1.2em;
  box-sizing: border-box;
  border: 1px solid #fff;
  border-radius: 50%;
  height: 1.5em;
  width: 1.5em;
  text-align: center;
  padding-top: 0.1em;
  cursor: pointer;
}

.nav-toggler-mobile,
.nav-toggler-mobile:active {
  box-shadow: none;
  background: none;
  padding: 0;
  margin: 0;
  font-size: 1em;
  margin-left: auto;
}

header .inner {
  align-items: flex-start;
}

.add-to-favs button {
  width: auto;
  padding: 0;
  background: none;
}

.recipe-actions-new {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: 0.9em;
}
.recipe-actions-new button,
.recipe-actions-new a {
  padding: 0.5em !important;
  display: block;
  opacity: 0.5;
}
.recipe-actions-new .weekplan-wrapper img {
  opacity: 0.5;
}
.recipe-actions-new .weekplan-wrapper button {
  opacity: 1;
}
.recipe-actions-new .add-to-favs button {
  padding: 0;
  background: none;
}

.poss {
  margin: 0;
  box-sizing: border-box;
  padding: 0;
  color: #fff;
  width: 102%;
  margin-left: -1%;
}
@media (min-width: 960px) {
  .poss {
    display: flex;
  }
}
.poss .pos {
  padding: 5em;
  display: flex;
  box-sizing: border-box;
  text-align: left;
  flex-direction: column;
  flex-basis: 31.3333%;
  margin: 1%;
  justify-content: flex-start;
  border-radius: 0.4em;
  border-right: 1px solid rgba(255, 255, 255, 0.1);
  background-image: linear-gradient(135deg, #547f0d, rgba(69, 104, 11, 0.5));
  backdrop-filter: blur(10px);
  font-size: 0.85em;
  position: relative;
}
.poss .pos img {
  position: absolute;
  top: -1em;
  width: 4em;
  height: 4em;
  right: 1em;
}
.poss .pos:last-child {
  border-right: 0;
}
.poss h2 {
  color: rgba(255, 255, 255, 0.8);
  font-size: 2em;
  font-weight: bold;
}

h1 small {
  display: block;
  font-size: 0.35em;
}

.perso-nav-toggler img {
  width: 1.5em;
}

.nav-main1 {
  box-shadow: 2px 2px 20px rgba(0, 0, 0, 0.2);
  transform: translateZ(0);
}
.nav-main1.active {
  color: transparent;
  transform: scale(5);
}
.nav-main1.active ul {
  color: #fff;
}

.plus {
  user-select: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.nav-main1,
.plus {
  color: #fff;
  background: #547f0d;
  transition: all 0.32s cubic-bezier(0.15, 1.57, 0.87, 0.95);
  position: fixed;
  right: 0.25em;
  bottom: 0.25em;
  border-radius: 50%;
  width: 1em;
  font-size: 3em;
  height: 1em;
  box-sizing: border-box;
  text-align: center;
  padding: 0;
  line-height: 1em;
  cursor: pointer;
  z-index: 2;
}
.nav-main1 a,
.plus a {
  width: 0;
  height: 0;
  overflow: hidden;
  transition: transform 0.35s cubic-bezier(0.15, 1.57, 0.87, 0.95);
  opacity: 0;
}
.nav-main1 a path,
.plus a path {
  fill: #fff;
}

.nav-main1.active a {
  opacity: 1;
  transition: opacity 1s;
}
.nav-main1 a {
  transition: opacity 0.1s;
  width: 0.1em;
  height: 0.1em;
  top: 0;
  left: 0;
  display: block;
  position: absolute;
  opacity: 0;
}
.nav-main1 a svg {
  position: absolute;
  top: 0;
  left: 0;
  max-height: 100%;
}
.nav-main1 .deg30 {
  top: 0.45em;
  left: 0.1em;
}
.nav-main1 .deg60 {
  top: 0.25em;
  left: 0.225em;
}
.nav-main1 .deg90 {
  top: 0.1em;
  left: 0.45em;
  width: 0.135em;
  height: 0.135em;
}

.plus::selection {
  background-color: transparent;
}
.plus.active {
  transform: rotate(45deg);
}

.no-button {
  box-shadow: none !important;
}

.register-form {
  max-width: 30em;
}

.loader-wrapper {
  text-align: center;
  font-size: 3em;
}

.latest-recipes-wrapper,
.unsorted-recipes-wrapper {
  padding: 2em 0;
}
.latest-recipes-wrapper a {


}
.latest-recipes-wrapper .button,
.unsorted-recipes-wrapper .button {
  margin-top: 0.75em;
}
.latest-recipes-wrapper h3,
.unsorted-recipes-wrapper h3 {
  margin-bottom: 1em;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.latest-recipes-wrapper ul,
.unsorted-recipes-wrapper ul {
  padding: 0;
  margin: 0;
  list-style: none;
  font-size: 0.7em;
}
.latest-recipes-wrapper a,
.unsorted-recipes-wrapper a {
  text-decoration: none;
  display: block;
  border-bottom: 1px solid rgba(84, 127, 13, 0.2);
}
.unsorted-recipes-wrapper .recipe2 .infoblock {
    height:40%;
}

.latest-recipes-wrapper li a,
.unsorted-recipes-wrapper li a {
  display: flex;
  justify-content: space-between;
}
.latest-recipes-wrapper .date,
.unsorted-recipes-wrapper .date {
  opacity: 0.5;
  font-size: 0.8em;
}

.unsorted-recipes-wrapper {
  flex: 0 0 100%;

  padding-left: 5%;
  padding-right: 5%;
  box-sizing: border-box;
  border-radius: 0.3em;
}

.add-wrapper {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 5;
}

.add-something {
  background-image: linear-gradient(135deg, #547f0d, #45680b);
  font-size: 3em;
  padding: 0.75em 0.5em 0.5em 0.75em;
  color: #fff;
  border-top-left-radius: 50em;
  z-index: 5;
  position: relative;
}

.adder {
  background-color: rgba(221, 229, 207, 0.8);
  backdrop-filter: blur(1em);
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 2;
  padding: 2em;
  padding-bottom: 5em;
  border-top-left-radius: 1em;
  box-shadow: 0.2em 0.2em 2em rgba(42, 64, 7, 0.2);
}
.adder a {
  display: block;
}

.bigger {
  font-size: 1.4em;
}

h2 .button,
h3 .button {
  font-family: "Sora", "Ubuntu", "Roboto Slab", "sans-serif";
  font-size: 0.5em;
  padding: 0.25em 0.5em;
  line-height: 1.3em;
  position: relative;
  top: -0.3em;
}

.favorites .swiper-wrapper {
  opacity: 0;
  transition: opacity 0.5s;
}

.favorites.swiper-initialized .swiper-wrapper {
  opacity: 1;
}

.favorites.swiper-initialized .swiper-wrapper2 {
  opacity: 0;
  display: none;
}

.shimmer {
  position: relative;
  overflow: hidden;
  background: #e0e0e0;
}

.shimmer::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0) 100%);
  animation: shimmer 2s infinite;
}

@keyframes shimmer {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(100%);
  }
}
/* Example usage for recipe cards */
.shimmer-recipe {
  height: 300px;
  width: 100%;
  border-radius: 8px;
  margin-bottom: 1em;
}

/* For text lines */
.shimmer-text {
  height: 20px;
  width: 100%;
  margin-bottom: 8px;
  border-radius: 4px;
}

.shimmer-text.short {
  width: 25%;
}

.swiper-wrapper2 {
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
  height: 300px;
  width: 100%;
}

.swiper-slide2 {
  flex-shrink: 0;
  width: 23%;
  margin: 1%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.button.week-before, .button.week-after {
  padding: 0.25em 0.75em;
  font-size: 0.8em;
}
.button.week-before img, .button.week-after img {
  width: 0.75em;
  filter: invert(1);
}
.button.week-after {
  margin-left: 0.5em;
}
.button.week-before {
  margin-right: 0.5em;
}

.loader-image-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 10vw 0;
  text-align: center;
  color: rgba(255, 255, 255, 0.6);
  font-weight: bold;
  background-image: linear-gradient(135deg, #547f0d, rgba(84, 127, 13, 0.5));
}

.loader-image {
  width: 15vw;
  aspect-ratio: 1;
  color: #000;
  border: 2px solid rgba(255, 255, 255, 0.05);
  display: grid;
  margin: 0 auto;
  box-sizing: border-box;
  animation: l1 20s infinite linear;
}

.loader-image::before,
.loader-image::after {
  content: "";
  grid-area: 1/1;
  margin: auto;
  width: 60%;
  aspect-ratio: 1;
  border: 2px solid rgba(255, 255, 255, 0.1);
  box-sizing: content-box;
  animation: inherit;
}

.loader-image::after {
  width: 50%;
  aspect-ratio: 1;
  border: 2px solid rgba(255, 255, 255, 0.2);
  animation-duration: 10s;
}

@keyframes l1 {
  100% {
    transform: rotate(1turn);
  }
}
.weight-time-chart {
  display: block;
  width: 100vw;
  height: 50vh;
}

@media (min-width: 620px) {
  .big-buttons-wrapper {
    display: flex;
    justify-content: center;
    margin: 4em 0;
  }
}
@media (max-width: 619px) {
  .big-buttons-wrapper {
    margin-top: 2em;
  }
  .big-buttons-wrapper .very-big-button {
    width: 100%;
    box-sizing: border-box;
    margin-left: 0;
    margin-right: 0;
  }
}

.very-big-button {
  font-size: 1.5em;
  text-align: center;
  padding: 1em;
  margin: 1em;
}
.very-big-button .icon {
  width: 5em;
  height: 5em;
  filter: invert(1);
  opacity: 0.5;
  margin-bottom: 0.5em;
}

[v-show],
[v-if] {
  display: none;
}

[action="/logout"] {
  position: relative;
  padding: 0 !important;
}
[action="/logout"] button {
  width: 100%;
  height: 100%;
  text-align: left;
  padding: 1.2em;
}

.replace-button {
  padding: 0.25em 0.5em;
  font-size: 0.8em;
  cursor: pointer;
}

.empty-info {
  color: #ac3d00;
  font-size: 0.8em;
  display: flex;
  justify-content: space-between;
  display: block;
  width: 100%;
}

.usesless-vue-container {
  width: 100%;
}

.search-form.replace-form {
  background: #b3b3b3;
  padding: 0.5em;
  margin-bottom: 3em;
  box-sizing: border-box;
}
.search-form.replace-form .items-wrapper {
  display: flex;
  align-items: center;
}
.search-form.replace-form .grams-input {
  width: 5em;
  opacity: 0.8;
}
.search-form.replace-form .valuetype {
  padding: 0.5em;
}

.not-logged-in .user-actions {
  padding: 1em 2em;
  border-bottom-left-radius: 1em;
  background-color: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(12px);
  position: absolute;
  top: 0;
  right: 0;
}

.not-logged-in header {
  padding-top: 0;
}
.not-logged-in header .logo {
  padding-top: 0.75em;
}

.pricing-counter {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.pricing-counter .important {
  font-size: 4em;
  opacity: 1 !important;
  font-family: "Playfair Display";
  color: #547f0d;
  padding: 0 0.25em;
  margin-top: -0.3em;
}

.new-user-indicator {
  position: absolute;
  right: 3.5vw;
  font-size: 1rem;
  bottom: 10em;
  width: 15em;
  z-index: 0;
}
.new-user-indicator .arrow {
  width: 4em;
  position: absolute;
  bottom: -4em;
  right: 2em;
  transform: rotate(65deg);
}

.ingredient-adder {
  padding: 0.5em;
  text-align: center;
}

.ingredient-adder-form {
  padding: 1em;
  margin: 5%;
  width: 90% !important;
  box-sizing: border-box;
  background-color: #fff;
}

/* HTML: <div class="loader"></div> */
.loading-animation {
  width: fit-content;
  font-weight: bold;
  background: linear-gradient(90deg, #547f0d 50%, rgba(84, 127, 13, 0) 0) right/200% 100%;
  animation: l21 2s infinite linear;
  color: #fff;
}

.loading-animation::before {
  color: rgba(0, 0, 0, 0);
  background: inherit;
  background-image: linear-gradient(90deg, #fff 50%, #547f0d 0);
  -webkit-background-clip: text;
  background-clip: text;
  padding: 1em;
}

@keyframes l21 {
  100% {
    background-position: left;
  }
}
.tr {
  display: table-row;
}

.td {
  display: table-cell;
}

.loaderspin {
  transform: rotateZ(45deg);
  perspective: 1000px;
  border-radius: 50%;
  width: 1.5em;
  height: 1.5em;
  color: #82c414;
  margin-left: 1em;
}

.loaderspin:before,
.loaderspin:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: inherit;
  height: inherit;
  border-radius: 50%;
  transform: rotateX(70deg);
  animation: 1s spin linear infinite;
}

.loaderspin:after {
  color: #547f0d;
  transform: rotateY(70deg);
  animation-delay: 0.4s;
}

button .loaderspin {
  color: #fff;
  width: 1em;
  height: 1em;
  position: relative;
  top: 0.15em;
}
button .loaderspin:after {
  color: #fff;
}

@keyframes rotate {
  0% {
    transform: translate(-50%, -50%) rotateZ(0deg);
  }
  100% {
    transform: translate(-50%, -50%) rotateZ(360deg);
  }
}
@keyframes rotateccw {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) rotate(-360deg);
  }
}
@keyframes spin {
  0%, 100% {
    box-shadow: 0.2em 0px 0 0px currentcolor;
  }
  12% {
    box-shadow: 0.2em 0.2em 0 0 currentcolor;
  }
  25% {
    box-shadow: 0 0.2em 0 0px currentcolor;
  }
  37% {
    box-shadow: -0.2em 0.2em 0 0 currentcolor;
  }
  50% {
    box-shadow: -0.2em 0 0 0 currentcolor;
  }
  62% {
    box-shadow: -0.2em -0.2em 0 0 currentcolor;
  }
  75% {
    box-shadow: 0px -0.2em 0 0 currentcolor;
  }
  87% {
    box-shadow: 0.2em -0.2em 0 0 currentcolor;
  }
}
.loadspin-wrapper {
  position: relative;
  padding: 5%;
}

.loaderspin {
  display: inline-block;
  top: 0.5em;
  position: relative;
}

.with-fancybox .data-source img {
  display: none;
}

[disabled] {
  opacity: 0.5;
}

.very-small {
  font-size: 0.25em;
  font-family: "Sora";
}
.very-small .text {
  font-weight: 600;
  opacity: 0.4;
}

.ingredient-inputs {
  display: flex;
  flex-wrap: wrap;
  background: #d9d9d9;
  padding: 1em;
  border-radius: 0.5em;
  box-shadow: 0.5em 0.5em 2em rgba(0, 0, 0, 0.5);
  border: 1px solid rgba(255, 255, 255, 0.5);
}
.ingredient-inputs .formfield {
  margin: 0.5em;
  width: 10em;
  margin-bottom: 0.2em;
}
.ingredient-inputs .formfield test label {
  line-height: 1.1em;
}

.tr.tempingredient-not-found {
  opacity: 0.6;
  font-style: italic;
}
.tr.tempingredient-not-found .tempingredient-note {
  font-size: 0.85em;
  color: rgba(0, 0, 0, 0.5);
  margin-left: 0.5em;
}

/* Modern Homepage Styles - Dribbble-inspired */
.modern-homepage {
  position: relative;
  min-height: 100vh;
  overflow: hidden;
  background: linear-gradient(135deg, #f5f7fa 0%, #efeded 50%, #f0f4f8 100%);
}

/* Animated Background Orbs */
.modern-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 0;
}

.gradient-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(80px);
  opacity: 0.6;
  animation: float 20s ease-in-out infinite;
}

.orb-1 {
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, rgba(84, 127, 13, 0.4) 0%, rgba(121, 159, 58, 0.2) 50%, transparent 70%);
  top: -200px;
  left: -200px;
  animation-delay: 0s;
}

.orb-2 {
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(255, 220, 190, 0.5) 0%, rgba(255, 245, 238, 0.3) 50%, transparent 70%);
  top: 50%;
  right: -150px;
  animation-delay: -7s;
  animation-duration: 25s;
}

.orb-3 {
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, rgba(121, 159, 58, 0.3) 0%, rgba(84, 127, 13, 0.2) 50%, transparent 70%);
  bottom: -100px;
  left: 30%;
  animation-delay: -14s;
  animation-duration: 30s;
}

@keyframes float {
  0%, 100% {
    transform: translate(0, 0) scale(1);
  }
  33% {
    transform: translate(30px, -30px) scale(1.1);
  }
  66% {
    transform: translate(-20px, 20px) scale(0.9);
  }
}

/* Hero Section */
.hero-section {
  position: relative;
  z-index: 1;
  padding: 8em 5% 6em;
  display: flex;
  align-items: center;
}

@media (min-width: 960px) {
  .hero-section {
    padding: 10em 5% 8em;

  }
}

.hero-content {
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
  animation: fadeInUp 0.8s ease-out;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.hero-badge {
  display: inline-block;
  padding: 0.6em 1.4em;
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(10px);
  border-radius: 50px;
  font-size: 0.9em;
  font-weight: 600;
  color: #547f0d;
  margin-bottom: 2em;
  box-shadow: 0 4px 20px rgba(84, 127, 13, 0.1);
  border: 1px solid rgba(84, 127, 13, 0.1);
  animation: fadeInUp 0.8s ease-out 0.2s both;
}

.hero-title {
  font-size: 4em;
  font-weight: 800;
  line-height: 1.1;
  margin-bottom: 0.5em;
  color: #2d3748;
  letter-spacing: -0.02em;
  animation: fadeInUp 0.8s ease-out 0.3s both;
}

@media (max-width: 619px) {
  .hero-title {
    font-size: 2.2em;
  }
}

.hero-description {
  font-size: 1.3em;
  line-height: 1.7;
  color: #4a5568;
  margin-bottom: 2.5em;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
  animation: fadeInUp 0.8s ease-out 0.4s both;
}

@media (max-width: 619px) {
  .hero-description {
    font-size: 1.1em;
  }
}

.hero-description strong {
  color: #547f0d;
  font-weight: 800;
}

.hero-actions {
  display: flex;
  gap: 1em;
  justify-content: center;
  flex-wrap: wrap;
  animation: fadeInUp 0.8s ease-out 0.5s both;
}

.button-primary {
  display: inline-flex;
  align-items: center;
  gap: 0.6em;
  padding: 1em 2.2em;
  font-size: 1.1em;
  font-weight: 700;
  background: linear-gradient(135deg, #547f0d 0%, #799f3a 100%);
  color: #fff;
  border: none;
  border-radius: 12px;
  text-decoration: none;
  box-shadow: 0 8px 24px rgba(84, 127, 13, 0.3), 0 4px 8px rgba(84, 127, 13, 0.2);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
}

.button-primary::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
  transition: left 0.5s;
}

.button-primary:hover::before {
  left: 100%;
}

.button-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 32px rgba(84, 127, 13, 0.4), 0 6px 12px rgba(84, 127, 13, 0.3);
}

.button-primary:active {
  transform: translateY(0);
}

.button-primary svg {
  transition: transform 0.3s;
}

.button-primary:hover svg {
  transform: translateX(4px);
}

.button-secondary {
  display: inline-flex;
  align-items: center;
  padding: 1em 2.2em;
  font-size: 1.1em;
  font-weight: 600;
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(10px);
  color: #547f0d;
  border: 2px solid rgba(84, 127, 13, 0.2);
  border-radius: 12px;
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.button-secondary:hover {
  background: rgba(255, 255, 255, 1);
  border-color: #547f0d;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(84, 127, 13, 0.15);
  color: #45680b;
}

/* Features Section */
.features-section {
  position: relative;
  z-index: 1;
  padding: 4em 5% 8em;
}

@media (min-width: 960px) {
  .features-section {
    padding: 6em 5% 10em;
  }
}

.features-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2em;
  max-width: 1200px;
  margin: 0 auto;
}

@media (min-width: 768px) {
  .features-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (min-width: 960px) {
  .features-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 2.5em;
  }
}

.feature-card {
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(20px);
  border-radius: 24px;
  padding: 1.5em;
  border: 1px solid rgba(255, 255, 255, 0.8);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.06), 0 2px 8px rgba(0, 0, 0, 0.04);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
  animation: fadeInUp 0.8s ease-out both;
}

.feature-card:nth-child(1) {
  animation-delay: 0.1s;
}

.feature-card:nth-child(2) {
  animation-delay: 0.2s;
}

.feature-card:nth-child(3) {
  animation-delay: 0.3s;
}

.feature-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, #547f0d, #799f3a);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.feature-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 16px 48px rgba(84, 127, 13, 0.15), 0 4px 16px rgba(0, 0, 0, 0.08);
  border-color: rgba(84, 127, 13, 0.2);
}

.feature-card:hover::before {
  transform: scaleX(1);
}

.feature-icon-wrapper {
  position: relative;
  width: 80px;
  height: 80px;
  margin-bottom: 1.5em;
    margin:1em auto;
}



.feature-card:hover .feature-icon-bg {
  transform: rotate(5deg) scale(1.1);
}

.feature-icon {
  position: relative;
  width: 48px;
  height: 48px;
  filter: brightness(0) saturate(100%) invert(30%) sepia(85%) saturate(1000%) hue-rotate(60deg) brightness(0.9);
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.feature-card:hover .feature-icon {
  transform: scale(1.1);
}

.feature-title {
  font-size: 1.2em;
  font-weight: 700;
  margin-bottom: 0.8em;
  color: #2d3748;
  line-height: 1.2;
}

@media (max-width: 619px) {
  .feature-title {
    font-size: 1.3em;
  }
}

.feature-description {
  font-size: .9em;
  line-height: 1.7;
  color: #4a5568;
  margin-bottom: 1.5em;
}

.feature-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5em;
  color: #547f0d;
  font-weight: 600;
  font-size: 0.95em;
  text-decoration: none;
  transition: all 0.3s;
  margin-top: auto;
}

.feature-link svg {
  transition: transform 0.3s;
}

.feature-card:hover .feature-link {
  color: #45680b;
}

.feature-card:hover .feature-link svg {
  transform: translateX(4px);
}

/* Override old styles for modern homepage */
.modern-homepage .part1,
.modern-homepage .part2,
.modern-homepage .poss,
.modern-homepage .pos {
  display: none;
}
