:root {
  --base-background-color: white;
  --base-background-darker-color: #f7f7f7;
  --base-color: #333333;
  --base-light-color: #666666;
  --base-light-border-color: #cbcbcb;
  --shading-light-color: white;
  --shading-grey-color: #f4f4f4;
  --highlight-action-color: #f2ffeb;
  --tab-panel-background-color: #462147;
  --tab-panel-color: #FFFFFF;
  --tab-panel-button-background: rgba(0, 0, 0, 0.5);
  --tab-panel-hover-background: rgba(0, 0, 0, 0.1);
  --tab-panel-input-background: rgba(255, 255, 255, 0.75);
  --font-family-main: Nunito Sans, Roboto, Open Sans, sans-serif;
  --font-family-numbers: Helvetica Neue, Helvetica, Arial, sans-serif;
  --help-panel-background-color: #ffffff;
  --help-panel-color: #333;
  --help-panel-border-color: #ff8b0f;
  --highlight-action-background: #1c70b0;
  --highlight-action-background_transparent: rgba(28, 112, 176, 0.5); }

/* clearfix can be used on blocks containing floating content
 * to ensure the box contains all the content.
 *
 * use by adding `@include clearfix();` to a class
 */
/* replacement for cellspacing=0 and cellpadding=0 */
/* from http://zerosixthree.se/vertical-align-anything-with-just-3-lines-of-css/ */
html {
  box-sizing: border-box; }

*, *:before, *:after {
  margin: 0;
  padding: 0;
  box-sizing: inherit; }

a, a:hover, a:visited {
  outline: none; }

strong {
  font-weight: 700; }

p {
  margin: 0 0 10px 0; }

img {
  border: none; }

th, td {
  line-height: 1.4em;
  padding: 6px 10px; }

table {
  border-collapse: collapse; }

input, textarea, select, button {
  font-size: inherit;
  border: 1px solid;
  border-radius: 8px;
  padding: 4px;
  font-family: inherit;
  max-width: 100%;
  outline: none; }

fieldset {
  border: none; }

.justify-align {
  text-align: justify !important; }

.right-align {
  text-align: right !important; }

.left-align {
  text-align: left !important; }

.left-align-centered {
  text-align: left;
  width: fit-content;
  margin-left: auto;
  margin-right: auto; }

.center-align {
  text-align: center; }

.inline {
  display: inline-block !important; }

.center-h {
  margin-left: auto !important;
  margin-right: auto !important; }

.center-h-content {
  margin-left: auto !important;
  margin-right: auto !important;
  width: fit-content; }

.left-float {
  float: left; }

.right-float {
  float: right; }

.valign-top {
  vertical-align: top; }

.valign-middle {
  vertical-align: middle; }

.valign-bottom {
  vertical-align: bottom; }

.fit-to-parent {
  width: 100%;
  height: 100%; }

.fit-width {
  width: 100%; }

.pad {
  padding: 0.5em 1em 0.5em 1em !important; }

.small-pad {
  padding: 0.2em 0.3em 0.2em 0.3em !important; }

.large-pad {
  padding: 1.5em !important; }

.no-pad {
  padding: 0 !important; }

.clickable {
  cursor: pointer; }

.underline {
  text-decoration: underline; }

.relative-position {
  position: relative; }

.flex-center-content, .flex-justify-content {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  flex-wrap: wrap; }

.flex-justify-content {
  justify-content: space-evenly; }

.small-text {
  font-size: 80%;
  line-height: 1.5em; }

.hidden, .hidden-initial {
  display: none; }

.text-overflow-ellipsis {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.two-line-ellipsis {
  overflow: hidden;
  white-space: normal;
  text-overflow: ellipsis;
  line-height: 1.1em;
  max-height: 2.2em;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical; }

.vertical-text {
  writing-mode: vertical-lr;
  transform: rotate(0deg);
  transform-origin: center; }

.disabled-section {
  opacity: 0.5;
  cursor: default;
  pointer-events: none;
  position: relative; }
  .disabled-section.dark::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(200, 200, 200, 0.5);
    content: ' ';
    z-index: 2; }

.disabled-children {
  opacity: 0.5;
  cursor: default; }
  .disabled-children * {
    pointer-events: none;
    opacity: 70%; }

.err, .error, .err h3, .err h2, .err h4, .err h1, .error h3, .error h2, .error h1, .error h4, .error .number, .error .value {
  font-weight: bold;
  color: #ee0000;
  margin-top: 0.3em;
  margin-bottom: 0.3em; }

/* default class used by Django for displaying errors in forms */
ul.errorlist {
  font-weight: bold;
  color: #ee0000;
  padding-left: 40px;
  max-width: fit-content; }

.number, .value {
  font-family: var(--font-family-numbers);
  color: #777; }

.white .number, .value {
  color: inherit; }

td.number,
th.number,
td.value,
th.value {
  text-align: right;
  vertical-align: top; }

td.divider, th.divider {
  border-left: solid 2px #ddd; }

.black tbody.zebra tr:nth-child(Even),
.zebra tr:nth-child(Even),
.zebra .form-row:nth-child(Even) {
  background-color: var(--shading-grey-color); }

.modal-container .zebra tr:nth-child(Odd),
.modal-container .zebra .form-row:nth-child(Odd) {
  background-color: var(--shading-light-color); }

table.zebra {
  border-spacing: 0;
  border-collapse: collapse; }

input[type='button'],
input[type='submit'] {
  cursor: pointer;
  border: none;
  border-radius: 25px;
  padding: 0.8em 40px 0.8em 40px;
  color: #fafafa;
  font-size: 130%;
  text-align: center;
  min-width: 10em; }

/* NB: tried combining these with comma, but it failed in Chrome */
::placeholder {
  color: var(--base-light-border-color); }

:-ms-input-placeholder {
  color: var(--base-light-border-color); }

::-webkit-input-placeholder {
  color: var(--base-light-border-color); }

h1, h2, h3 {
  text-align: center;
  margin: 0 auto;
  font-family: var(--font-family-main);
  font-weight: 300;
  line-height: 1.3em; }

h1.highlight, h2.highlight, h3.highlight,
h1 .highlight, h2 .highlight, h3 .highlight {
  color: #008077; }

h1 {
  font-size: 2.3em; }

h2, h1.small {
  font-size: 1.75em; }

h3, h2.small {
  font-size: 1.4em; }

h3.small {
  font-size: 1.2em; }

.black .section-separator, .black.section-separator, .section-separator {
  border-top: solid 1px var(--base-light-border-color); }

.columns-2 {
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2; }

html {
  height: 100%; }

body {
  font-size: 18px;
  font-family: var(--font-family-main);
  padding-top: 75px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  color: var(--base-color);
  line-height: 1.5em;
  background-color: var(--base-background-color);
  min-height: 100%; }
  @media print {
    body {
      background-color: white;
      padding: 0;
      font-size: 10pt; } }

.no-selection,
.no-selection :not(input):not(textarea) {
  -webkit-user-select: none;
  /* webkit (safari, chrome) browsers */
  -moz-user-select: none;
  /* mozilla browsers */
  -khtml-user-select: none;
  /* webkit (konqueror) browsers */
  -ms-user-select: none;
  /* IE10+ */
  user-select: none; }

/* responsive */
.blocks2, .blocks3, .blocks4 {
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center;
  vertical-align: top;
  width: 100%; }

.block {
  display: inline-block;
  min-width: 100px;
  padding: 1em;
  text-align: left;
  vertical-align: top; }

.blocks2 .block.no-pad,
.blocks3 .block.no-pad,
.blocks4 .block.no-pad {
  padding: 0; }

.blocks2 .block {
  width: 46%; }

.blocks3 .block {
  width: 30%; }

.blocks4 .block {
  width: 23%; }

@media only screen and (max-width: 770px) {
  h1 {
    font-size: 140%; }
  h2, h1.small {
    font-size: 130%; }
  h3, h2.small {
    font-size: 120%; }
  h3.small {
    font-size: 105%; }
  .blocks2 .block, .blocks3 .block {
    width: 100%;
    padding: 4px; }
  .blocks4 .block {
    width: 50%;
    padding: 4px; }
  .no-mobile {
    display: none !important; }
  .no-mobile-initial {
    display: none; }
  .mobile-only-inline {
    display: inline-block !important; }
  .mobile-only-block {
    display: block !important; } }

@media only screen and (min-width: 771px) {
  .mobile-only-inline, .mobile-only-block {
    display: none !important; }
  .mobile-only-initial {
    display: none; } }

@media print {
  .mobile-only-inline, .mobile-only-block, .mobile-only-initial {
    display: none; } }

.round-border-large,
.round-border-xlarge,
.round-border-medium,
.round-border-large img,
.round-border-xlarge img,
.round-border-medium img {
  background-clip: padding-box;
  overflow: hidden; }

.round-border-round, .round-border-round img {
  border-radius: 50%; }

.round-border-round .round-border-bottom {
  border-bottom-left-radius: 500px;
  border-bottom-right-radius: 500px; }

.round-border-round .round-border-top {
  border-top-left-radius: 500px;
  border-top-right-radius: 500px; }

.round-border-xlarge, .round-border-xlarge img {
  border-radius: 100px; }

.round-border-large, .round-border-large img {
  border-radius: 60px; }

.round-border-medium, .round-border-medium img {
  border-radius: 30px; }

.round-border-xlarge .round-border-bottom {
  border-bottom-left-radius: 100px;
  border-bottom-right-radius: 100px; }

.round-border-xlarge .round-border-top {
  border-top-left-radius: 100px;
  border-top-right-radius: 100px; }

.round-border-large .round-border-bottom {
  border-bottom-left-radius: 60px;
  border-bottom-right-radius: 60px; }

.round-border-large .round-border-top {
  border-top-left-radius: 60px;
  border-top-right-radius: 60px; }

.round-border-medium .round-border-bottom {
  border-bottom-left-radius: 30px;
  border-bottom-right-radius: 30px; }

.round-border-medium .round-border-top {
  border-top-left-radius: 30px;
  border-top-right-radius: 30px; }

.light-text {
  color: #a6a6a6; }

.no-height {
  height: 0;
  overflow: hidden; }

/*===================================================*/
/* ================== controls ==================== */
.multi-select .active, .multi-select .inactive {
  font-weight: normal;
  text-decoration: none;
  margin: 0.5em 0.75em 0.5em 0.75em;
  cursor: pointer;
  white-space: nowrap;
  background-repeat: no-repeat;
  background-position: 0 center;
  background-size: 16px;
  padding-left: 20px;
  opacity: 1; }

.multi-select.toggle-tokens .active, .multi-select.toggle-tokens .inactive {
  border: solid 1px var(--base-light-color);
  border-radius: 20px;
  padding: 4px 10px;
  background-image: none !important;
  margin: 4px 2px;
  display: inline-block;
  min-width: 80px; }
  .multi-select.toggle-tokens .active:hover, .multi-select.toggle-tokens .inactive:hover {
    box-shadow: 1px 1px 5px 0 var(--base-light-color);
    opacity: 1; }

.multi-select.toggle-tokens .active {
  background-color: var(--base-light-color);
  color: var(--base-background-color); }

.multi-select.toggle-tokens .inactive {
  opacity: 0.9; }

.multi-select.toggle-tokens.highlight .active, .multi-select.toggle-tokens.highlight .inactive {
  line-height: 1.75em !important;
  border-color: var(--highlight-action-background); }

.multi-select.toggle-tokens.highlight .active {
  background-color: var(--highlight-action-background);
  color: var(--highlight-action-color); }

.multi-select .disabled .active, .multi-select .disabled .inactive {
  cursor: default; }

.multi-select div.active, .multi-select div.inactive {
  display: inline-block; }

.multi-select .inactive {
  opacity: 0.5; }

.multi-select.radio {
  display: table;
  border-spacing: 12px;
  margin: auto; }
  .multi-select.radio input[type='radio'] {
    display: none; }
  .multi-select.radio input[type='radio'] + label {
    width: 10em;
    height: 5em;
    margin: 1.5em auto;
    font-size: 120%;
    border: solid 1px var(--base-light-color);
    border-radius: 16px;
    padding: 1em;
    background-image: none;
    display: table-cell;
    vertical-align: middle;
    text-align: center; }
  .multi-select.radio input[type='radio']:checked + label {
    background-color: var(--base-light-color);
    color: var(--base-background-color); }

.light_text .multi-select .active,
.white .multi-select .active,
.multi-select.white .active {
  background-image: url("img/ico-check-white.492a0482203b.png"); }

.dark_text .multi-select .active,
.black .multi-select .active,
.multi-select.black .active {
  background-image: url("img/ico-check-black.4d1373fd57b2.png"); }

.black input[type='checkbox'], .white input[type='checkbox'],
.black input[type='radio'], .white input[type='radio'],
input[type='checkbox'].pretty {
  display: none; }

.black input[type='checkbox'] + label, .white input[type='checkbox'] + label,
.black input[type='radio'] + label, .white input[type='radio'] + label,
input[type='checkbox'].pretty + label {
  font-weight: normal;
  text-decoration: none;
  margin: 0.5em 0.75em 0.5em 2.5em;
  cursor: pointer;
  white-space: nowrap;
  background-repeat: no-repeat;
  background-position: left top;
  padding-left: 26px;
  background-size: 20px;
  display: inline-block;
  padding-top: 3px;
  height: 25px; }

.black .in-list input[type='checkbox'] + label, .white .in-list input[type='checkbox'] + label {
  margin: 2px; }

.black .no-margin input[type='checkbox'] + label, .white .no-margin input[type='checkbox'] + label,
.no-margin input[type='checkbox'].pretty + label {
  margin-left: 0; }

.black input[type='checkbox'] + label,
.black input[type='radio'] + label,
input[type='checkbox'].pretty.black + label {
  background-image: url("img/ico-checkbox-black.07529d6d6644.png"); }

.black input[type='checkbox']:checked + label,
.black input[type='radio']:checked + label,
input[type='checkbox'].pretty.black:checked + label {
  background-image: url("img/ico-checkbox-checked-black.2e0ad9638451.png"); }

input[type='checkbox'].pretty.white + label, .white input[type='checkbox'] + label {
  background-image: url("img/ico-checkbox-white.efa2d977c218.png"); }

input[type='checkbox'].pretty.white:checked + label, .white input[type='checkbox']:checked + label {
  background-image: url("img/ico-checkbox-checked-white.88e8fcece0d0.png"); }

.black .toggle-switch input[type='checkbox'] + label, .black .toggle-switch input[type='radio'] + label, .black .toggle-switch .toggle-button, .black .toggle-switch .multi-select .active, .black .toggle-switch .multi-select .inactive, .black.toggle-switch input[type='checkbox'] + label, .black.toggle-switch input[type='radio'] + label, .black.toggle-switch .toggle-button, .black.toggle-switch .multi-select .active, .black.toggle-switch .multi-select .inactive {
  min-width: 46px;
  background-size: 46px;
  height: 22px;
  line-height: 22px;
  margin: 2px 10px 2px 0;
  cursor: pointer;
  background-repeat: no-repeat;
  background-position: 0 center;
  background-image: url("img/ico-flip-switch-off.d7b88510014a.png");
  display: inline-block;
  vertical-align: middle;
  padding-top: 0; }

.black .toggle-switch.spaced input[type='checkbox'] + label, .black .toggle-switch.spaced input[type='radio'] + label, .black.toggle-switch.spaced input[type='checkbox'] + label, .black.toggle-switch.spaced input[type='radio'] + label {
  margin: 12px 0; }

.black .toggle-switch input[type='checkbox'] + label, .black .toggle-switch input[type='radio'] + label, .black .toggle-switch .multi-select .active, .black .toggle-switch .multi-select .inactive, .black.toggle-switch input[type='checkbox'] + label, .black.toggle-switch input[type='radio'] + label, .black.toggle-switch .multi-select .active, .black.toggle-switch .multi-select .inactive {
  padding-left: 55px; }

.black .toggle-switch input[type='checkbox']:checked + label, .black .toggle-switch input[type='radio']:checked + label, .black .toggle-switch .toggle-button.checked, .black .toggle-switch .multi-select .active, .black.toggle-switch input[type='checkbox']:checked + label, .black.toggle-switch input[type='radio']:checked + label, .black.toggle-switch .toggle-button.checked, .black.toggle-switch .multi-select .active {
  background-image: url("img/ico-flip-switch-on.afccebd5fe20.png"); }

.black .toggle-switch .toggle-button, .black.toggle-switch .toggle-button {
  padding-left: 55px; }
  .black .toggle-switch .toggle-button.large-text, .black.toggle-switch .toggle-button.large-text {
    font-size: 120%; }

.black .radio-switch input[type='checkbox'] + label, .black .radio-switch input[type='radio'] + label, .black .radio-switch .toggle-button, .black .radio-switch .multi-select .active, .black .radio-switch .multi-select .inactive, .black.radio-switch input[type='checkbox'] + label, .black.radio-switch input[type='radio'] + label, .black.radio-switch .toggle-button, .black.radio-switch .multi-select .active, .black.radio-switch .multi-select .inactive {
  min-width: 46px;
  background-size: 30px;
  height: 30px;
  line-height: 30px;
  margin: 6px 10px 6px 0;
  cursor: pointer;
  background-repeat: no-repeat;
  background-position: 0 center;
  background-image: url("img/radio_button_off.066f72878198.png");
  display: inline-block;
  vertical-align: middle;
  padding-left: 40px; }

.black .radio-switch input[type='checkbox'] + label, .black .radio-switch input[type='radio'] + label, .black .radio-switch .multi-select .active, .black .radio-switch .multi-select .inactive, .black.radio-switch input[type='checkbox'] + label, .black.radio-switch input[type='radio'] + label, .black.radio-switch .multi-select .active, .black.radio-switch .multi-select .inactive {
  padding-left: 40px; }

.black .radio-switch input[type='checkbox']:checked + label, .black .radio-switch input[type='radio']:checked + label, .black .radio-switch .toggle-button.checked, .black .radio-switch .multi-select .active, .black.radio-switch input[type='checkbox']:checked + label, .black.radio-switch input[type='radio']:checked + label, .black.radio-switch .toggle-button.checked, .black.radio-switch .multi-select .active {
  background-image: url("img/radio_button_green_on.7ae0ee62e26f.png"); }

.regular-checkbox input[type='checkbox'] {
  display: initial; }

.radio_select {
  list-style: none; }
  .radio_select label {
    vertical-align: top; }

.black .link {
  display: inline-block;
  text-decoration: underline;
  color: #009090;
  margin: 0.2em;
  cursor: pointer; }

.black .form-row.link, .black .form-row.link a {
  color: inherit;
  text-decoration: none; }

.app-button,
.app-button-main,
input[type='submit'] {
  cursor: pointer;
  font-size: 120% !important;
  padding: 0.3em 1.5em 0.3em 1.5em !important;
  min-width: 120px;
  text-align: center;
  display: inline-block;
  color: inherit;
  margin: 0.3em;
  -webkit-appearance: none;
  /* don't use iPhone specific styling */ }
  .app-button[disabled], .app-button.disabled,
  .app-button-main[disabled],
  .app-button-main.disabled,
  input[type='submit'][disabled],
  input[type='submit'].disabled {
    cursor: default;
    opacity: 0.35;
    pointer-events: none; }
    .app-button[disabled]:hover, .app-button.disabled:hover,
    .app-button-main[disabled]:hover,
    .app-button-main.disabled:hover,
    input[type='submit'][disabled]:hover,
    input[type='submit'].disabled:hover {
      box-shadow: none; }
  @media only screen and (max-width: 400px) {
    .app-button,
    .app-button-main,
    input[type='submit'] {
      padding: 0.3em 1em 0.3em 1em !important; } }

.small-text .app-button, .small-text .app-button-main, .small-text input[type='submit'] {
  min-width: 110px;
  margin: 0.3em 2px; }

a.app-button,
a.app-button-main {
  text-decoration: none; }

.app-button.small,
.app-button-main.small {
  font-size: 100%; }

.app-button-main.white,
.white .app-button-main,
.white input[type='submit'] {
  border: 1px solid white;
  border-radius: 6px;
  background-color: transparent;
  color: var(--shading-light-color); }

.app-button-main.black,
.black .app-button-main,
.modal-dialog .modal-button.main,
.black input[type='submit'] {
  border: 1px solid #4d4d4d;
  border-radius: 8px;
  background-color: var(--base-background-darker-color);
  color: var(--base-color); }
  .app-button-main.black:hover,
  .black .app-button-main:hover,
  .modal-dialog .modal-button.main:hover,
  .black input[type='submit']:hover {
    box-shadow: 3px 3px 5px 0 var(--base-light-color);
    border-color: var(--base-color); }

.app-button {
  background-color: var(--base-background-color);
  color: var(--base-color);
  min-width: 100px;
  border: solid 2px var(--base-light-color);
  padding-left: 1em;
  padding-right: 1em;
  border-radius: 8px; }
  .app-button:hover {
    box-shadow: 3px 3px 5px 0 var(--base-light-color); }

.controls {
  text-align: center; }
  .controls.left-align {
    text-align: left; }
  .controls a {
    text-decoration: none;
    color: inherit; }

.app-button-main.subtle {
  opacity: 0.4; }

.app-button-main.subtle:hover {
  opacity: 1; }

.app-button-main.highlight {
  border-color: var(--base-color);
  color: var(--base-background-color) !important;
  background-color: var(--base-light-color) !important; }

.app-button-main.disabled {
  pointer-events: none;
  cursor: default;
  opacity: 0.3; }

.app-button-main.data-changed {
  background-color: var(--highlight-action-color) !important;
  font-weight: bold; }

.app-button-main.arrow-down {
  background-size: 25px;
  padding-right: 50px; }

.black .small-button.highlight {
  background-color: var(--highlight-action-color) !important;
  color: var(--base-color); }

.app-button.arrow-down {
  background-size: 25px;
  padding-right: 50px; }

.dark_text .app-button.arrow-down, .dark_text .app-button-main.arrow-down, .app-button.arrow-down, .app-button-main.arrow-down {
  background: url("img/cmd-arrow-down-black.d0ed8fce6f79.png") no-repeat right 16px;
  background-size: 30px;
  padding-left: 1.5em !important;
  padding-right: 2.5em !important; }

.light_text .app-button.arrow-down, .light_text .app-button-main.arrow-down, .app-button.arrow-down.white {
  background: url("img/cmd-arrow-down-white.498683f5fb21.png") no-repeat calc(100% - 6px) center;
  background-size: 22px; }

.app-button.block, .app-button-main.block {
  margin: 0.5em 0.25em 0.5em 0.25em; }

@media only screen and (max-width: 770px) {
  .app-button,
  .app-button-main,
  input[type='submit'] {
    margin-top: 0.75em;
    margin-bottom: 0.75em; } }

.black .small-button {
  color: var(--base-light-color);
  background-color: var(--shading-grey-color);
  border: solid 1px var(--base-light-color);
  text-align: center;
  border-radius: 8px;
  cursor: pointer;
  padding: 0.35em 1em;
  display: inline-block;
  min-width: 60px;
  text-decoration: none;
  margin: 0.1em;
  line-height: 1em; }
  .black .small-button:hover {
    box-shadow: 3px 3px 5px 0 var(--base-light-color); }
  .black .small-button .unread-count {
    float: right; }
  .black .small-button.more-actions {
    background-image: url("img/cmd_more_actions.c70ac49ed2f3.png");
    background-size: 4px;
    background-position: right 10px top 6px;
    background-repeat: no-repeat;
    text-align: left;
    padding: 6px 30px 6px 10px; }
  .black .small-button.small-symbol {
    width: 28px;
    height: 28px;
    min-width: auto;
    padding: 0;
    margin: 0 0 0 2px;
    font-size: 16px;
    line-height: 28px;
    vertical-align: middle;
    border-radius: 50%;
    text-align: center;
    font-weight: bold; }

.black .small-text .small-button {
  min-height: 30px;
  line-height: 1.4em; }

table .controls div {
  vertical-align: middle; }

table .controls .small-button {
  padding: 4px 1em; }

.ajax-wait-indicator {
  position: fixed;
  top: 200px;
  left: 50%;
  width: 70px;
  height: 70px;
  margin-left: -35px;
  border: 6px solid #a1e6e6;
  border-radius: 38px;
  background: rgba(255, 255, 255, 0.9) url("img/ajax-loader.4573685fef46.gif") no-repeat center;
  z-index: 9999999999; }

.local-wait-indicator {
  margin: 0 auto 0 auto;
  border: 6px solid #a1e6e6;
  border-radius: 38px;
  width: 70px;
  height: 70px;
  background: rgba(255, 255, 255, 0.9) url("img/ajax-loader.4573685fef46.gif") no-repeat center; }

.plus-minus,
.plus-minus-spacer {
  display: inline-block;
  width: 40px;
  height: 40px;
  line-height: 34px;
  text-align: center;
  font-size: 220%;
  vertical-align: middle; }

.plus-minus {
  cursor: pointer;
  border: solid 1px var(--base-light-border-color);
  border-radius: 50%;
  margin: 0 8px; }
  .plus-minus:hover {
    box-shadow: 2px 1px 5px 0 var(--base-light-border-color); }

.value-plus-minus {
  display: inline-block; }
  .value-plus-minus input[type=text] {
    width: 3.4em !important;
    white-space: nowrap; }
  .value-plus-minus.white .plus-minus {
    background-size: 20px;
    color: transparent; }
  .value-plus-minus.white .plus-minus.minus {
    background: url("img/cmd-minus-white.62f187f3da39.png") center no-repeat; }
  .value-plus-minus.white .plus-minus.plus {
    background: url("img/cmd-plus-white.fadf8922a237.png") center no-repeat; }

/* center image and shrink if browser is smaller than image width */
.image-container img {
  display: block;
  margin: 0 auto;
  max-width: 100%; }

@keyframes pulsate {
  0% {
    -webkit-transform: scale(0.9, 0.9);
    transform: scale(0.9, 0.9);
    opacity: 0.7; }
  50% {
    opacity: 1.0; }
  100% {
    -webkit-transform: scale(1.05, 1.05);
    transform: scale(1.05, 1.05);
    opacity: 0.7; } }

.ideas-center-button {
  position: fixed;
  top: 85px;
  right: 10px;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: url("img/cmd-lightbulb.5d9f8f63da87.png") center no-repeat;
  background-size: 100%;
  display: none;
  z-index: 10;
  cursor: pointer;
  -webkit-animation: pulsate 1s ease-in-out;
  -webkit-animation-iteration-count: 5;
  animation: pulsate 1s ease-in-out;
  animation-iteration-count: 5; }
  @media only screen and (max-width: 770px) {
    .ideas-center-button {
      bottom: 150px;
      top: auto;
      right: 30px; } }

.ideas-center-content {
  display: none;
  padding-top: 1em; }
  .ideas-center-content .controls {
    padding: 0 1em 0 1em; }
  .ideas-center-content .app-button {
    display: block; }
  .ideas-center-content .section-box {
    width: 500px;
    margin: 0.5em auto 0.5em auto;
    padding: 1em;
    border: solid 1px lightgrey; }
    @media only screen and (max-width: 770px) {
      .ideas-center-content .section-box {
        width: 310px; } }

.black select.e-table {
  background: white;
  cursor: pointer; }

.black textarea.e-table, .black input.e-table {
  background: white; }

/*========== login ==============*/
.modal-container .login-form {
  width: 320px; }
  .modal-container .login-form .notes {
    font-size: 75%; }

.err {
  font-family: var(--font-family-numbers);
  color: darkred; }
  .err input, .err select {
    color: inherit; }

/*===================================================*/
/*=============== modal dialog ======================*/
.modal-fence-opaque {
  background: rgba(100, 100, 100, 0.8);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 99999; }

.modal-dialog {
  position: relative;
  width: fit-content;
  max-width: 95%;
  min-width: 30%;
  height: 80%;
  margin: auto;
  top: 50%;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%); }
  .modal-dialog.narrow {
    max-width: 500px; }
  .modal-dialog.vertical-fit-content {
    height: fit-content;
    max-height: 80%; }
  @media only screen and (max-height: 800px) {
    .modal-dialog {
      height: 90%; } }
  .modal-dialog .modal-container {
    background-color: var(--base-background-color);
    border: 1px solid;
    border-radius: 1em;
    width: 100%;
    height: 100%;
    overflow: hidden; }
    .modal-dialog .modal-container.top-controls {
      position: relative;
      padding-top: 70px; }
      .modal-dialog .modal-container.top-controls .modal-head {
        position: absolute;
        top: 0;
        left: 0;
        height: 70px;
        width: 100%;
        padding: 16px 0 16px 24px;
        text-align: right; }
        .modal-dialog .modal-container.top-controls .modal-head h3 {
          text-align: left;
          float: left; }
        .modal-dialog .modal-container.top-controls .modal-head .controls {
          text-align: right; }
          .modal-dialog .modal-container.top-controls .modal-head .controls * {
            vertical-align: middle; }
          .modal-dialog .modal-container.top-controls .modal-head .controls .small-button {
            background-color: white; }
          .modal-dialog .modal-container.top-controls .modal-head .controls .close-button {
            width: 30px;
            height: 30px;
            margin: 0 12px 0 12px;
            cursor: pointer;
            background-image: url("img/cmd-close.2bd57dc6b5bd.png");
            background-repeat: no-repeat;
            background-position: center;
            display: inline-block;
            vertical-align: middle; }
  .modal-dialog .modal-content {
    height: 100%;
    overflow: auto;
    padding-left: 1.5em;
    padding-right: 1.5em; }
    .modal-dialog .modal-content#modal-content-modal_filters_combo_selector {
      padding: 10px 1em; }
  .modal-dialog.no-content-padding .modal-content {
    padding: 0; }
  .modal-dialog .modal-close {
    position: absolute;
    top: -10px;
    right: -10px;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    cursor: pointer;
    background-color: var(--shading-light-color);
    background-image: url("img/cmd-close.2bd57dc6b5bd.png");
    background-repeat: no-repeat;
    background-position: center;
    box-shadow: 0 2px 6px #cccccc;
    z-index: 10000; }
    .modal-dialog .modal-close:hover {
      background-color: var(--highlight-action-color); }
    .modal-dialog .modal-close:active {
      background-color: var(--highlight-action-color); }
  .modal-dialog .modal-header {
    position: absolute;
    top: 1px;
    left: 1px;
    right: 1px;
    text-align: center;
    padding: 0.5em 1em;
    background-color: var(--base-background-color);
    border-bottom: solid 1px var(--base-light-border-color);
    border-top-left-radius: 1em;
    border-top-right-radius: 1em;
    height: 60px;
    z-index: 1200; }
    .modal-dialog .modal-header.dark {
      background-color: var(--base-background-darker-color); }
    .modal-dialog .modal-header .app-button-main {
      padding: 10px 1.2em !important;
      line-height: 1em;
      margin: 2px;
      font-size: 110% !important;
      min-width: 100px; }
    .modal-dialog .modal-header .content {
      display: inline-block;
      text-align: right; }
    .modal-dialog .modal-header .controls {
      float: right; }
      .modal-dialog .modal-header .controls.dark {
        background-color: var(--base-background-darker-color); }
      .modal-dialog .modal-header .controls.search-pane {
        padding: 0; }
        .modal-dialog .modal-header .controls.search-pane .svg-holder {
          height: 1.5em; }
  .modal-dialog .modal-controls {
    position: absolute;
    left: 1px;
    bottom: 1px;
    right: 1px;
    text-align: center;
    padding: 0.5em 1em;
    background-color: var(--base-background-color);
    border-top: solid 1px var(--base-light-border-color);
    border-bottom-left-radius: 1em;
    border-bottom-right-radius: 1em;
    z-index: 1200; }
    .modal-dialog .modal-controls .app-button-main.highlight {
      background-color: var(--base-light-color) !important;
      color: var(--base-background-color); }
    .modal-dialog .modal-controls.dark {
      background-color: var(--base-background-darker-color); }
      .modal-dialog .modal-controls.dark .app-button-main {
        background-color: var(--base-background-color); }
  .modal-dialog .modal-button {
    text-align: center;
    min-width: 10em;
    padding-left: 10px;
    padding-right: 10px;
    cursor: pointer;
    display: inline-block; }
    .modal-dialog .modal-button.grayed {
      border: none;
      font-size: 90%;
      text-decoration: underline; }
  .modal-dialog .error {
    text-align: center;
    font-size: 110%;
    color: darkred; }
  .modal-dialog.left-align h1, .modal-dialog.left-align h2, .modal-dialog.left-align h3 {
    text-align: left; }
  .modal-dialog.left-align .modal-header {
    text-align: left; }
    .modal-dialog.left-align .modal-header h1, .modal-dialog.left-align .modal-header h2, .modal-dialog.left-align .modal-header h3 {
      text-align: left; }
  .modal-dialog.close-inside .modal-close {
    top: 6px;
    right: 6px;
    box-shadow: none;
    background-color: transparent; }
    .modal-dialog.close-inside .modal-close:hover {
      box-shadow: 2px 2px 5px var(--base-light-color);
      background-color: transparent; }

.modal-dialog .modal-container.bottom-controls, .modal-actions-fork.bottom-controls, .modal-dialog.bottom-controls .modal-container {
  padding-bottom: 74px; }

.modal-dialog .modal-container.top-header, .modal-actions-fork.top-header, .modal-dialog.top-header .modal-container {
  padding-top: 60px; }

.modal-dialog.simple-message, .modal-dialog.wait-message {
  width: 310px;
  height: 17em; }

.modal-dialog.simple-message .modal-content, .modal-dialog.wait-message .modal-content {
  padding: 12px; }

.modal-dialog.no-close .modal-close {
  display: none; }

.modal-dialog.simple-message .modal-button {
  width: 130px;
  min-width: 130px; }

@media only screen and (max-width: 770px) {
  .modal-dialog {
    width: 95%;
    height: 85%; }
  .modal-crop-dialog {
    width: 100%;
    height: 95%;
    top: 1%; } }

/*==== modal action selector ==== */
.modal-actions-fork {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background-color: var(--base-background-color);
  width: 550px;
  max-height: 97%;
  margin-left: auto;
  margin-right: auto;
  padding: 1em 0;
  border-radius: 1em;
  text-align: center;
  overflow: hidden;
  position: relative; }
  @media only screen and (max-width: 770px) {
    .modal-actions-fork {
      width: 300px; } }
  .modal-actions-fork .title {
    /*
    text-align: center;
    font-size: 1.4em;
    line-height: 1.15em;
    margin: 0 auto 1em auto;
    border-bottom: solid 1px var(--base-light-border-color);
    padding: 0 10px 10px 10px;
    */
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; }
  .modal-actions-fork .selection-choices {
    height: 100%;
    overflow-x: hidden;
    overflow-y: auto; }
  .modal-actions-fork.in-iframe {
    top: 25%; }
  .modal-actions-fork div {
    margin-top: 0.5em; }
  .modal-actions-fork .message, .modal-actions-fork .message-before, .modal-actions-fork .message-after {
    text-align: left;
    padding: 0 1em 1em 1em;
    line-height: 1.2; }
    .modal-actions-fork .message ul, .modal-actions-fork .message-before ul, .modal-actions-fork .message-after ul {
      margin-left: 1em;
      line-height: 1.1em; }
  .modal-actions-fork .message-before {
    padding-bottom: 0; }
  .modal-actions-fork .app-button, .modal-actions-fork .app-button-main {
    padding: 0.7em 0.4em !important;
    line-height: 1.1em;
    display: block; }
  .modal-actions-fork .app-button {
    text-decoration: none;
    border: solid 1px var(--base-light-border-color);
    padding: 12px 0;
    border-radius: 8px;
    margin: 12px 8px; }
    .modal-actions-fork .app-button.cancel {
      margin: 0 auto;
      width: auto;
      display: inline-block;
      padding: 10px !important; }
  .modal-actions-fork .app-button-main, .modal-actions-fork .app-button {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    font-size: 22px !important;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    position: relative; }
    .modal-actions-fork .app-button-main.has-icon, .modal-actions-fork .app-button.has-icon {
      border-color: var(--base-light-border-color);
      border-radius: 12px;
      text-align: left;
      padding: 4px; }
      .modal-actions-fork .app-button-main.has-icon .icon, .modal-actions-fork .app-button.has-icon .icon {
        display: inline-block;
        width: 45px;
        height: 45px;
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
        vertical-align: middle;
        margin-right: 0.5em;
        margin-left: 0.25em; }
      .modal-actions-fork .app-button-main.has-icon .label, .modal-actions-fork .app-button.has-icon .label {
        display: inline-block;
        max-width: 70%;
        vertical-align: middle;
        text-align: left; }
      .modal-actions-fork .app-button-main.has-icon.has_notification_marker .notification_marker, .modal-actions-fork .app-button.has-icon.has_notification_marker .notification_marker {
        top: 2px;
        right: 2px; }
    .modal-actions-fork .app-button-main.selected, .modal-actions-fork .app-button.selected {
      background-color: var(--base-light-color);
      color: var(--base-background-color); }
  .modal-actions-fork .separator {
    border-top: solid 1px #CCCCCC;
    margin: 1em 0;
    position: relative; }
    .modal-actions-fork .separator .label {
      position: absolute;
      top: -0.6em;
      left: 1em;
      background: white;
      padding: 0 10px;
      font-size: 140%; }
  .modal-actions-fork .group .group-items {
    display: none; }
    .modal-actions-fork .group .group-items .app-button {
      font-size: 90%;
      background-color: var(--base-background-darker-color);
      color: var(--base-color);
      border-radius: 10px;
      max-width: 75%;
      margin: 6px auto; }
  .modal-actions-fork .bottom-controls {
    border-top: solid 1px var(--base-light-border-color);
    padding-top: 16px;
    margin-top: 20px; }
    .modal-actions-fork .bottom-controls .app-button {
      width: 40%;
      display: inline-block;
      margin: 2px 6px; }
      .modal-actions-fork .bottom-controls .app-button.data-changed, .modal-actions-fork .bottom-controls .app-button.highlight {
        background-color: var(--base-color) !important;
        color: var(--base-background-color) !important; }
  .modal-actions-fork .modal-header {
    position: absolute;
    top: 1px;
    left: 1px;
    right: 1px;
    text-align: center;
    padding: 0.5em 1em;
    background-color: var(--base-background-color);
    border-bottom: solid 1px var(--base-light-border-color);
    border-top-left-radius: 1em;
    border-top-right-radius: 1em;
    height: 60px;
    z-index: 1200;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden; }
    .modal-actions-fork .modal-header h1, .modal-actions-fork .modal-header h2 {
      font-size: 150%;
      overflow: hidden;
      text-overflow: ellipsis; }
    .modal-actions-fork .modal-header h3 {
      font-size: 140%;
      overflow: hidden;
      text-overflow: ellipsis; }
    .modal-actions-fork .modal-header .app-button-main {
      padding: 10px 1.2em !important;
      line-height: 1em;
      margin: 2px;
      font-size: 110% !important;
      min-width: 100px; }
    .modal-actions-fork .modal-header .content {
      display: inline-block;
      text-align: right; }
    .modal-actions-fork .modal-header .controls {
      float: right; }
      .modal-actions-fork .modal-header .controls.search-pane {
        padding: 0;
        float: none; }
        .modal-actions-fork .modal-header .controls.search-pane .svg-holder {
          height: 1.5em; }
  .modal-actions-fork .modal-controls {
    position: absolute;
    left: 1px;
    bottom: 1px;
    right: 1px;
    text-align: center;
    padding: 0.5em 1em;
    background-color: var(--base-background-color);
    border-top: solid 1px var(--base-light-border-color);
    border-bottom-left-radius: 1em;
    border-bottom-right-radius: 1em;
    z-index: 1200; }
    .modal-actions-fork .modal-controls .app-button-main.highlight {
      background-color: var(--base-light-color) !important;
      color: var(--base-background-color); }
  .modal-actions-fork.small-buttons .app-button {
    font-size: 90% !important; }

.modal-actions-fork a, a.plain {
  text-decoration: none;
  color: inherit; }

/*======== image upload elements =====*/
.image-upload, .form-row .image-upload {
  position: relative;
  width: 70%;
  padding-bottom: 34%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 4px; }
  .image-upload.with-border, .form-row .image-upload.with-border {
    border: solid 1px var(--base-light-color); }
  .image-upload img, .form-row .image-upload img {
    position: absolute;
    top: 0;
    left: 0;
    min-width: 100%;
    min-height: 100%;
    object-fit: contain; }
  .image-upload .drop-area, .form-row .image-upload .drop-area {
    position: absolute;
    overflow: hidden;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    border: none; }
    .image-upload .drop-area .upload-controls, .image-upload .drop-area .upload-message, .form-row .image-upload .drop-area .upload-controls, .form-row .image-upload .drop-area .upload-message {
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      text-align: center;
      padding: 6px;
      font-size: 80%;
      background-color: rgba(20, 20, 20, 0.5);
      color: white;
      text-shadow: 0 0 6px black; }
    .image-upload .drop-area img, .form-row .image-upload .drop-area img {
      max-height: 100%;
      max-width: 100%; }
    .image-upload .drop-area .upload-message, .form-row .image-upload .drop-area .upload-message {
      display: none; }
    .image-upload .drop-area a span,
    .image-upload .drop-area .select-button, .form-row .image-upload .drop-area a span,
    .form-row .image-upload .drop-area .select-button {
      border: 3px solid #add9d5;
      padding: 4px 10px;
      border-radius: 20px;
      margin-left: 4px;
      background-color: rgba(0, 0, 0, 0.3);
      color: #a3e6de;
      white-space: nowrap;
      font-size: 120%;
      display: inline-block;
      z-index: 10 !important;
      cursor: pointer; }
  .image-upload .message, .form-row .image-upload .message {
    margin-top: 2em; }

.modal-dialog.modal-crop-dialog {
  width: 95%;
  height: 95%; }
  .modal-dialog.modal-crop-dialog .modal-content {
    padding-bottom: 75px; }
  .modal-dialog.modal-crop-dialog #image_upload_frame {
    height: 100%; }
  .modal-dialog.modal-crop-dialog #image_select_frame #image_selection_holder {
    padding: 1em; }
  .modal-dialog.modal-crop-dialog .image-upload {
    height: 90%; }
    .modal-dialog.modal-crop-dialog .image-upload .drop-box {
      width: 400px;
      margin: 2em auto 0 auto; }
      .modal-dialog.modal-crop-dialog .image-upload .drop-box img {
        object-fit: contain;
        width: 100%;
        position: initial; }
      .modal-dialog.modal-crop-dialog .image-upload .drop-box .message {
        top: 165px;
        position: relative;
        color: white;
        font-size: 130%;
        text-shadow: 1px 1px 14px black; }
    .modal-dialog.modal-crop-dialog .image-upload .upload-controls .app-button-main {
      width: 400px;
      background-color: var(--base-light-color);
      color: var(--base-background-color);
      margin: 3px; }
    .modal-dialog.modal-crop-dialog .image-upload .upload-message.has-content {
      padding-top: 2em;
      font-weight: bold; }
  .modal-dialog.modal-crop-dialog .modal-image-crop-content {
    height: 90%; }
    .modal-dialog.modal-crop-dialog .modal-image-crop-content img {
      object-fit: contain;
      height: 100%; }
    .modal-dialog.modal-crop-dialog .modal-image-crop-content .cropper-tool-container {
      position: relative;
      width: 100%;
      height: 100%;
      padding-top: 60px;
      padding-bottom: 60px; }
      .modal-dialog.modal-crop-dialog .modal-image-crop-content .cropper-tool-container .title {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 60px; }
      .modal-dialog.modal-crop-dialog .modal-image-crop-content .cropper-tool-container .cropper-tool-controls {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 60px;
        text-align: center;
        background-color: var(--base-light-color); }
        .modal-dialog.modal-crop-dialog .modal-image-crop-content .cropper-tool-container .cropper-tool-controls .cmd {
          display: inline-block;
          width: 40px;
          height: 40px;
          background-repeat: no-repeat;
          background-position: center;
          background-size: 70%;
          border: solid 1px var(--base-light-border-color);
          border-radius: 10px;
          margin: 10px 0;
          cursor: pointer; }
      .modal-dialog.modal-crop-dialog .modal-image-crop-content .cropper-tool-container .upload-controls, .modal-dialog.modal-crop-dialog .modal-image-crop-content .cropper-tool-container .upload-message {
        position: relative;
        width: 100%;
        text-align: center;
        padding: 6px;
        color: var(--base-color); }

/*========= proportionate sizing ======*/
.proportionate-wrap-1-015 {
  position: relative;
  width: 100% !important;
  padding-bottom: 15% !important; }

.proportionate-wrap-1-03 {
  position: relative;
  width: 90% !important;
  padding-bottom: 30% !important; }

.proportionate-wrap-1-05 {
  position: relative;
  width: 70% !important;
  padding-bottom: 35% !important; }

.proportionate-wrap-1-1 {
  position: relative;
  width: 90% !important;
  padding-bottom: 90% !important; }

.proportionate-content {
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important; }

@media only screen and (max-width: 1280px) {
  .image-upload {
    width: 80%;
    padding-bottom: 39%; } }

@media only screen and (max-width: 770px) {
  .image-upload {
    width: 90%;
    padding-bottom: 43.5%; }
  .proportionate-wrap-1-03 {
    width: 90% !important;
    padding-bottom: 30% !important; }
  .proportionate-wrap-1-05 {
    width: 90% !important;
    padding-bottom: 45% !important; }
  .proportionate-wrap-1-1 {
    width: 90% !important;
    padding-bottom: 90% !important; } }

@media only screen and (max-width: 400px) {
  .image-upload {
    width: 100%;
    padding-bottom: 48%; }
  .proportionate-wrap-1-03 {
    width: 100% !important;
    padding-bottom: 33% !important; }
  .proportionate-wrap-1-05 {
    width: 100% !important;
    padding-bottom: 50% !important; }
  .proportionate-wrap-1-1 {
    width: 100% !important;
    padding-bottom: 100% !important; } }

/*======== image crop =============*/
.modal-image-crop-content {
  position: relative;
  text-align: center; }
  .modal-image-crop-content .modal-image-crop-frame {
    margin: 0 auto 0 auto;
    overflow: hidden;
    max-height: 100%;
    max-width: 100%; }
  .modal-image-crop-content #controls {
    text-align: center;
    width: 300px;
    margin: 0 auto 0 auto; }
    .modal-image-crop-content #controls div {
      background-position: center center;
      background-repeat: no-repeat;
      border-radius: 18px;
      color: whitesmoke;
      width: 40px;
      height: 40px;
      display: inline-block;
      cursor: pointer;
      margin: 3px 0 3px 0; }

.cmd-rotate-left {
  background-image: url("img/cmd-rotate-left.7c79f379fa74.png"); }

.cmd-rotate-right {
  background-image: url("img/cmd-rotate-right.259586e4c2bb.png"); }

.cmd-zoom-out {
  background-image: url("img/cmd-zoom-out.32e6f340c1d8.png"); }

.cmd-zoom-in {
  background-image: url("img/cmd-zoom-in.85a12eacc3ad.png"); }

/*===================================================*/
/* ================== Base Page ==================== */
#body_container_for_load {
  min-width: 100%;
  min-height: 100%; }
  #body_container_for_load.side-navigation {
    position: relative;
    padding-left: 65px; }
    #body_container_for_load.side-navigation #main_side_navigator {
      position: fixed;
      left: 0;
      top: 75px;
      width: 65px;
      background-color: var(--tab-panel-background-color);
      border-right: solid 1px var(--tab-panel-color);
      height: calc(100% - 75px);
      z-index: 2; }
      #body_container_for_load.side-navigation #main_side_navigator .navigation-icon {
        height: 50px;
        margin: 12px 0;
        cursor: pointer; }
        @media only screen and (max-height: 800px) {
          #body_container_for_load.side-navigation #main_side_navigator .navigation-icon {
            margin: 8px 0; } }
        #body_container_for_load.side-navigation #main_side_navigator .navigation-icon:first-child {
          margin: 16px 0; }
        #body_container_for_load.side-navigation #main_side_navigator .navigation-icon .notification_marker {
          top: -2px;
          right: 4px; }
    #body_container_for_load.side-navigation .tab_navigation_view .state-list {
      left: 65px; }
  #body_container_for_load.no-navigation #main_side_navigator {
    display: none; }

.page-header,
.page-footer {
  position: fixed;
  height: 75px;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.95);
  text-shadow: 0 0 4px white;
  z-index: 1000; }
  .page-header #main_menu_extra_options,
  .page-footer #main_menu_extra_options {
    margin-left: 2em; }
    @media only screen and (max-width: 1030px) {
      .page-header #main_menu_extra_options,
      .page-footer #main_menu_extra_options {
        margin-left: 1em; } }
  .page-header .navigator,
  .page-footer .navigator {
    position: absolute;
    height: 35px;
    right: 40px;
    top: 50%;
    margin-top: -20px;
    text-align: right;
    line-height: 1.2em; }
  .page-header a,
  .page-footer a {
    color: inherit; }
  .page-header .link,
  .page-footer .link {
    display: inline-block;
    padding: 0 12px;
    margin: 0;
    cursor: pointer;
    color: var(--base-light-color);
    font-size: 120%; }
    .page-header .link.top-link,
    .page-footer .link.top-link {
      width: 100px; }
    .page-header .link:hover,
    .page-footer .link:hover {
      font-weight: bold; }
    @media only screen and (max-width: 1030px) {
      .page-header .link,
      .page-footer .link {
        padding: 0 6px 0 6px;
        font-size: 100%; } }
    @media only screen and (max-width: 770px) {
      .page-header .link,
      .page-footer .link {
        padding: 0 6px 0 6px;
        font-size: 90%; } }
    @media only screen and (max-width: 400px) {
      .page-header .link,
      .page-footer .link {
        font-size: 80%; } }
  .page-header .link.active,
  .page-footer .link.active {
    text-decoration: underline;
    color: var(--base-color); }
  .page-header .mobile-menu-curtain,
  .page-footer .mobile-menu-curtain {
    display: none;
    position: fixed;
    top: 35px;
    left: 0;
    bottom: 50px;
    width: 100vw;
    background-color: var(--base-light-color);
    opacity: 0.5; }
  .page-header .mobile-more-menu-holder,
  .page-footer .mobile-more-menu-holder {
    display: none;
    position: absolute;
    right: 0;
    bottom: 50px;
    text-align: right;
    z-index: 2;
    border-top: solid 1px var(--base-light-border-color);
    background-color: var(--base-background-color);
    color: var(--base-color);
    font-size: 110%;
    width: 100vw;
    padding: 45px 1.5em 0.25em 1.5em; }
    .page-header .mobile-more-menu-holder .mobile-more-menu-close,
    .page-footer .mobile-more-menu-holder .mobile-more-menu-close {
      position: absolute;
      top: 8px;
      left: 8px;
      width: 36px;
      height: 36px;
      background-image: url("img/cmd-close-simple-black.5f567333c0f1.png");
      background-size: 20px;
      background-repeat: no-repeat;
      border: solid 1px var(--base-light-color);
      border-radius: 50%;
      background-position: center; }
    .page-header .mobile-more-menu-holder a,
    .page-footer .mobile-more-menu-holder a {
      text-decoration: none; }
    .page-header .mobile-more-menu-holder .link, .page-header .mobile-more-menu-holder .screen-action-button,
    .page-footer .mobile-more-menu-holder .link,
    .page-footer .mobile-more-menu-holder .screen-action-button {
      display: block;
      margin: 5px 0;
      padding: 0.5em;
      text-align: right;
      color: var(--base-color);
      font-size: 110%;
      text-decoration: none; }
      .page-header .mobile-more-menu-holder .link.top-separator, .page-header .mobile-more-menu-holder .screen-action-button.top-separator,
      .page-footer .mobile-more-menu-holder .link.top-separator,
      .page-footer .mobile-more-menu-holder .screen-action-button.top-separator {
        border-top: solid 1px var(--base-light-border-color); }
      .page-header .mobile-more-menu-holder .link.bottom-separator, .page-header .mobile-more-menu-holder .screen-action-button.bottom-separator,
      .page-footer .mobile-more-menu-holder .link.bottom-separator,
      .page-footer .mobile-more-menu-holder .screen-action-button.bottom-separator {
        border-bottom: solid 1px var(--base-light-border-color); }
    .page-header .mobile-more-menu-holder #mobile_screen_action_holder :last-child,
    .page-footer .mobile-more-menu-holder #mobile_screen_action_holder :last-child {
      border-bottom: solid 1px var(--base-light-border-color); }
  .page-header .image-drop-down-button,
  .page-footer .image-drop-down-button {
    height: 44px;
    display: inline-block;
    border: solid 1px var(--base-light-border-color);
    border-radius: 20px;
    vertical-align: middle;
    background-image: url("img/drop_down_triangle.ae17ae29b181.png");
    background-repeat: no-repeat;
    background-position: right 10px center;
    padding-right: 30px;
    text-align: left;
    cursor: pointer;
    font-size: 90%;
    color: #AAAAAA;
    margin-left: 1em;
    max-width: 240px;
    white-space: nowrap; }
    .page-header .image-drop-down-button:hover,
    .page-footer .image-drop-down-button:hover {
      box-shadow: 1px 2px 6px var(--base-light-color);
      margin-top: -1px; }
    .page-header .image-drop-down-button .name,
    .page-footer .image-drop-down-button .name {
      display: inline-block;
      width: calc(100% - 35px);
      overflow: hidden;
      text-overflow: ellipsis; }
    .page-header .image-drop-down-button img,
    .page-footer .image-drop-down-button img {
      margin: 1px 4px 1px 2px;
      width: 40px;
      height: 40px; }
    .page-header .image-drop-down-button *,
    .page-footer .image-drop-down-button * {
      vertical-align: middle; }
  .page-header #top_account_menu_box,
  .page-footer #top_account_menu_box {
    position: fixed;
    top: 75px;
    right: 30px;
    width: 260px;
    background-color: var(--base-background-color);
    border: solid 1px var(--base-light-border-color);
    border-radius: 8px;
    display: none;
    padding: 8px;
    text-align: left; }
    .page-header #top_account_menu_box .profile-header,
    .page-footer #top_account_menu_box .profile-header {
      padding: 0.5em;
      color: var(--base-light-color);
      font-style: italic; }
    .page-header #top_account_menu_box .link,
    .page-footer #top_account_menu_box .link {
      color: inherit;
      display: block;
      font-size: inherit;
      padding: 8px 2px; }
      .page-header #top_account_menu_box .link.active,
      .page-footer #top_account_menu_box .link.active {
        text-decoration: none;
        color: var(--base-light-color); }
      .page-header #top_account_menu_box .link.disabled,
      .page-footer #top_account_menu_box .link.disabled {
        text-decoration: none;
        cursor: default;
        color: var(--base-light-border-color); }
        .page-header #top_account_menu_box .link.disabled.hover,
        .page-footer #top_account_menu_box .link.disabled.hover {
          font-weight: normal;
          background-color: var(--base-background-color); }
      .page-header #top_account_menu_box .link:hover,
      .page-footer #top_account_menu_box .link:hover {
        background-color: var(--base-background-darker-color); }
    .page-header #top_account_menu_box .separator,
    .page-footer #top_account_menu_box .separator {
      border-top: solid 1px var(--base-light-border-color);
      margin: 3px 0; }

.page-header {
  top: 0;
  border-bottom: solid 1px #f0f0f0;
  display: flex;
  align-items: center;
  padding: 0 290px 0 330px; }
  .page-header img.logo {
    position: absolute;
    height: 45px;
    left: 14px;
    top: 50%;
    margin-top: -20px; }
  .page-header .screen-title {
    display: inline-block;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    font-size: 180%;
    width: 100%;
    height: 60px;
    text-align: center;
    line-height: 1.75em;
    position: relative; }
  .page-header input[type='text'] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0 6px;
    text-align: center;
    font-size: 85%;
    border-color: var(--base-light-border-color); }
  .page-header #screen_title_holder {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding-top: 1px;
    cursor: text; }
    .page-header #screen_title_holder:hover {
      border: solid 1px var(--base-light-border-color);
      border-radius: 8px;
      font-size: 85%; }
  .page-header .navigator {
    margin-left: 10px; }
  @media (max-width: 770px) {
    .page-header {
      height: 35px; }
      .page-header img.logo {
        height: 60%;
        left: 15px;
        margin-top: -8px; } }

.page-footer {
  bottom: 0;
  border-top: solid 1px #f0f0f0;
  text-align: center;
  /*
   ISSUES:
   - following requires viewport-fit=cover to work
   - menu items near the bottom ignore the click and bring up the
     browser's bottom menu instead.
   - viewport-fit=cover works in Android, but the `safe-area-inset-XXX`
     is ignored

  // Browsers which partially support CSS Environment variables (iOS 11.0-11.2).
  @supports (padding-bottom: constant(safe-area-inset-bottom)) {
    padding-bottom: constant(safe-area-inset-bottom);
  }
  // Browsers which fully support CSS Environment variables (iOS 11.2+).
  @supports (padding-bottom: env(safe-area-inset-bottom)) {
    padding-bottom: env(safe-area-inset-bottom);
  }
  */ }
  .page-footer .navigator {
    position: relative;
    right: auto;
    left: auto; }
  .page-footer:not(.mobile-only-initial) {
    height: 50px;
    border-top: solid 1px var(--base-light-color); }
  @media (max-width: 770px) {
    .page-footer {
      height: 50px;
      border-top: solid 1px var(--base-light-color); } }

.company-info {
  background-color: var(--shading-grey-color);
  color: var(--base-light-color);
  text-align: center;
  margin-top: 8em;
  padding: 2em; }
  .company-info a {
    color: inherit;
    text-decoration: none;
    margin: 2em; }
    @media only screen and (max-width: 770px) {
      .company-info a {
        margin: 0.75em; } }
  .company-info .address {
    font-size: 90%;
    margin-top: 1em; }
  @media print {
    .company-info {
      display: none; } }

/* ------------- ratings ---------------*/
.food-rating-1, .food-rating-2, .food-rating-3, .food-rating-4, .food-rating-5, .food-rating-highlights {
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: 80%; }

.food-rating-1 {
  background-image: url("img/food-rating-1.d44e5c9fee14.png");
  color: #b35e49;
  border-color: #e69e8a; }

.food-rating-2 {
  background-image: url("img/food-rating-2.6fa8f3c9481f.png");
  color: #b37e49;
  border-color: #e6b58a; }

.food-rating-3 {
  background-image: url("img/food-rating-3.7d7c5b5e0bdc.png");
  color: #b39f49;
  border-color: #e6d38a; }

.food-rating-4 {
  background-image: url("img/food-rating-4.69ac6d6c9863.png");
  color: #a4b349;
  border-color: #d8e68a; }

.food-rating-5 {
  background-image: url("img/food-rating-5.87ae384a7e4b.png");
  color: #62b364;
  border-color: #8ae68b; }

.food-rating-highlights {
  background-image: url("img/logo-leaf.0b02300538d4.png");
  color: white;
  border-color: white;
  background-size: 40px; }

.food-rating-highlights.on-white {
  border-color: var(--base-light-border-color); }

.rating-button {
  background-position: bottom 8px center;
  border-radius: 10px;
  border-style: solid;
  border-width: 1px;
  width: 200px;
  height: 70px;
  margin: 1.75em auto 1.4em auto;
  letter-spacing: 1px;
  text-align: center;
  font-size: 80%;
  cursor: pointer;
  color: inherit; }
  @media print {
    .rating-button {
      -webkit-print-color-adjust: exact;
      /* allows printing background image in Chrome */
      height: 60px; } }

.dialog-nutrition-details {
  max-width: 500px;
  margin: 1em auto 1em auto; }
  .dialog-nutrition-details .healthy-head, .dialog-nutrition-details .unhealthy-head {
    background-position: 10px center;
    background-size: 35px auto;
    background-repeat: no-repeat;
    padding-top: 0.5em;
    padding-bottom: 0.5em; }
  .dialog-nutrition-details .item {
    padding-left: 1em;
    padding-right: 1em;
    font-weight: bold; }
  .dialog-nutrition-details .item-details {
    padding-left: 2em;
    font-size: 70%; }
  .dialog-nutrition-details .nutrition-rating-details-sample {
    background: url("img/healthy-unhealthy-sample.495ea3690f8a.png") center no-repeat;
    background-size: 310px auto;
    min-height: 300px; }

@media only screen and (max-width: 770px) {
  .nutrition-tips-sample {
    background-size: 100% auto; } }

/*---------- nutrition facts label -----------------*/
.nutrition-facts {
  border: solid 2px var(--base-light-border-color);
  font-family: var(--font-family-numbers);
  color: #595959;
  padding: 0.5em;
  max-width: 20em;
  min-width: 10em; }
  .nutrition-facts h1 {
    color: inherit;
    font-size: 1.3em;
    font-weight: bold; }
  .nutrition-facts .thick-divider {
    height: 10px;
    background-color: var(--base-light-border-color); }
  .nutrition-facts .value-level-0,
  .nutrition-facts .value-level-1 {
    border-top: solid 1px var(--base-light-color);
    padding: 4px 0; }
    .nutrition-facts .value-level-0 .label,
    .nutrition-facts .value-level-1 .label {
      margin-right: 1.1em; }
  .nutrition-facts .value-level-0 .label {
    font-weight: 600; }
  .nutrition-facts .value-level-1 {
    margin-left: 1em;
    font-size: 90%; }

/*===================================================*/
/* ================== Plan ==================== */
.plan.with-info-panel {
  padding-right: 250px; }

.plan {
  transition: padding-right 1s; }
  .plan .food-form {
    width: 80%;
    text-align: left;
    padding-top: 0; }
    @media (max-width: 1280px) {
      .plan .food-form {
        width: 98%; }
        .plan .food-form .horizontal-tabs .panes .pane {
          padding: 1em 0.5em; }
          .plan .food-form .horizontal-tabs .panes .pane .week-calendar .day input[type='checkbox'] + label {
            margin: 0; } }
    .plan .food-form h2 {
      text-align: left;
      margin-bottom: 16px; }
    .plan .food-form .selection-item {
      margin: 6px 2px;
      min-width: 4em;
      text-align: center; }
    .plan .food-form label {
      margin-right: 1.5em;
      margin-bottom: 10px;
      display: inline-block; }
    .plan .food-form .selected-display {
      margin-left: 1.5em; }
    .plan .food-form input[type='number'] {
      width: 5em; }
    .plan .food-form .horizontal-tabs .tabs .tab {
      width: 50%;
      height: 3.5em;
      border: none; }
  .plan .leftovers-pane .week-calendar.navigation .left-arrow, .plan .leftovers-pane .week-calendar .navigation .left-arrow {
    background-image: url("img/cmd-arrow-left-black.5feeccf8d2a4.png"); }
  .plan .leftovers-pane .week-calendar.navigation .right-arrow, .plan .leftovers-pane .week-calendar .navigation .right-arrow {
    background-image: url("img/cmd-arrow-right-black.84313dd0722a.png"); }
  .plan .leftovers-pane .leftovers-calendar-pane .recipe, .plan .leftovers-pane .leftovers-calendar-pane .food {
    opacity: 0.4; }
  .plan .leftovers-pane .leftovers-calendar-pane .recipe.highlight, .plan .leftovers-pane .leftovers-calendar-pane .simple-food.highlight {
    opacity: 1;
    font-weight: bold;
    color: #74996d; }
  .plan .leftovers-pane .leftovers-calendar-pane .recipe.highlight-light {
    opacity: 1;
    font-weight: bold;
    color: #b2ccad; }
  .plan .leftovers-pane .leftovers-calendar-pane .day-container:nth-child(Even) .day {
    background-color: var(--shading-grey-color); }
  .plan .schedule-recipe-form {
    padding-top: 1em; }
    .plan .schedule-recipe-form .horizontal-tabs .tab {
      min-width: 30%; }
    .plan .schedule-recipe-form .horizontal-tabs .edit-form {
      padding-left: 2em; }
      .plan .schedule-recipe-form .horizontal-tabs .edit-form .form-row:first-of-type {
        margin-top: 0; }
      .plan .schedule-recipe-form .horizontal-tabs .edit-form .form-row label {
        width: 9em;
        display: inline-block; }
      .plan .schedule-recipe-form .horizontal-tabs .edit-form .form-row input[type='checkbox'] + label {
        margin: 0; }
      .plan .schedule-recipe-form .horizontal-tabs .edit-form .form-row.long-field label {
        width: auto; }
  .plan .recipe_title_list .message {
    padding: 0.5em 1.5em;
    background-color: var(--tab-panel-button-background);
    width: fit-content;
    margin: 10px auto 0 auto;
    font-size: 80%; }

/*===== info panel ===*/
.plan-info-panel {
  position: fixed;
  right: 0;
  top: 75px;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
  width: 250px;
  color: var(--base-color);
  background-color: var(--base-background-color);
  font-size: 75%;
  line-height: 1.1em;
  height: calc(100vh - 151px);
  z-index: 2;
  transition: width 1s, padding 1s; }
  .plan-info-panel .extra-title {
    position: relative;
    padding: 5px; }
    .plan-info-panel .extra-title .title-controls {
      position: absolute;
      top: 0;
      right: 0; }
      .plan-info-panel .extra-title .title-controls .cmd-small {
        width: 25px;
        height: 25px;
        background-size: contain;
        margin-top: 0;
        border: none;
        border-radius: 0; }
  .plan-info-panel .day-values {
    padding: 4px 0; }
    .plan-info-panel .day-values .weekday {
      font-size: 75%; }
    .plan-info-panel .day-values .day-value {
      width: 12.8%;
      display: inline-block;
      text-align: right; }
      .plan-info-panel .day-values .day-value .value {
        padding-top: 6px;
        font-size: 90%; }
  .plan-info-panel h2 {
    color: var(--tab-panel-color);
    font-size: 100%;
    font-weight: bold;
    padding: 10px 2px;
    position: relative; }
    .plan-info-panel h2::before {
      content: " ";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      opacity: .7;
      z-index: -1;
      background-color: var(--tab-panel-background-color); }
  .plan-info-panel h3 {
    color: inherit;
    font-size: 100%; }
  .plan-info-panel .nutrients {
    max-height: 48%;
    overflow-x: hidden;
    overflow-y: auto;
    border-bottom: 1px solid #aaaaaa;
    padding-bottom: 10px; }
  .plan-info-panel .servings {
    max-height: 20%;
    overflow-x: hidden;
    overflow-y: auto;
    border-bottom: 1px solid #aaaaaa;
    margin-bottom: 0.5em; }
  .plan-info-panel .no-servings .nutrients {
    max-height: 68%; }
  .plan-info-panel .no-nutrients .servings {
    max-height: 68%; }
  .plan-info-panel .macro-balance {
    overflow-x: hidden;
    overflow-y: auto;
    border-bottom: 1px solid #aaaaaa; }
  .plan-info-panel .rating-button {
    margin-top: 5px;
    margin-bottom: 5px;
    position: absolute;
    bottom: 185px;
    left: 50%;
    margin-left: -100px; }
  .plan-info-panel tbody tr:nth-child(Odd) {
    background-color: var(--shading-grey-color); }
  .plan-info-panel td {
    padding: 4px 4px 4px 4px; }
  .plan-info-panel td.label {
    border-top: solid 1px var(--base-light-border-color); }
  .plan-info-panel td.value {
    color: inherit;
    border-top: solid 1px var(--base-light-border-color); }
  .plan-info-panel td.value.anomaly, .plan-info-panel .value.anomaly {
    color: red; }
  .plan-info-panel .section-separator td {
    border-top: 1px dashed #ddd; }
  .plan-info-panel .cmd-small {
    position: relative;
    border-radius: 50%;
    border: solid 1px;
    margin-top: 35px;
    margin-left: 12px;
    width: 40px;
    height: 40px;
    background-size: 70%;
    display: inline-block;
    vertical-align: middle; }
    @media (max-height: 900px) {
      .plan-info-panel .cmd-small {
        display: none; } }
    .plan-info-panel .cmd-small .counter {
      position: absolute;
      right: -3px;
      top: -6px;
      background: rgba(255, 255, 255, 0.75);
      font-weight: bold;
      white-space: nowrap; }
      .plan-info-panel .cmd-small .counter .new {
        color: red; }
  .plan-info-panel .cmd-small.prep {
    background-image: url("img/cmd-prep.411fb3712b72.png"); }
  .plan-info-panel .cmd-small.print {
    background-image: url("img/cmd-print.d5eccffec4d7.png");
    background-size: 60%; }
  .plan-info-panel.loading-screen {
    background: rgba(100, 100, 100, 0.5); }
    .plan-info-panel.loading-screen .wait-indicator {
      position: fixed;
      top: 50%;
      right: 90px;
      width: 70px;
      height: 70px;
      margin-left: -35px;
      border: 6px solid #a1e6e6;
      border-radius: 38px;
      background: rgba(255, 255, 255, 0.9) url("img/ajax-loader.4573685fef46.gif") no-repeat center; }

.has-screen-action-bar .plan-info-panel {
  padding-bottom: 75px; }

#info-panel-button {
  position: fixed;
  top: 140px;
  right: 250px;
  height: 40px;
  width: 20px;
  border: solid 1px #AAAAAA;
  border-right: none;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
  z-index: 2;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
  color: #333333;
  transition: right 1s;
  background-image: url("img/cmd-arrow-right-black.84313dd0722a.png");
  background-color: var(--base-background-darker-color);
  background-repeat: no-repeat;
  background-size: contain;
  background-origin: content-box;
  padding: 6px 4px; }

.closed #info-panel-button {
  right: 0;
  transition: right 1s;
  background-image: url("img/cmd-arrow-left-black.5feeccf8d2a4.png"); }

.closed .plan-info-panel {
  width: 0;
  padding: 0;
  margin: 0;
  transition: width 1s, padding 1s; }

.modal-shopping-preview .item {
  width: 600px;
  margin: 0 auto 0 auto; }
  .modal-shopping-preview .item .new {
    color: #ff0000; }

#calendar-pane-holder .bkg-home-top {
  min-width: 1000px;
  /* make sure background covers calendar */ }

@media only print {
  #calendar-pane-holder {
    page-break-after: always; }
    #calendar-pane-holder .plan-pane {
      padding: 0; }
    #calendar-pane-holder .bkg-home-top {
      background: none; }
    #calendar-pane-holder .bkg-home-top-colors {
      color: black; }
      #calendar-pane-holder .bkg-home-top-colors .rating-button {
        border-color: black !important; }
    #calendar-pane-holder .week-calendar .meal-type-section .control.add .icon {
      display: none; }
    #calendar-pane-holder .week-calendar .left-arrow,
    #calendar-pane-holder .week-calendar .right-arrow {
      display: none; }
    #calendar-pane-holder .week-calendar.navigation {
      padding: 0; } }

@media only print {
  .plan #shopping-holder {
    display: none; } }

.bkg-home-top-colors {
  background-color: var(--tab-panel-background-color);
  color: var(--tab-panel-color); }
  .bkg-home-top-colors .calculated-servings {
    border-radius: 50%;
    border: solid 1px var(--tab-panel-color);
    display: inline-block;
    width: 2em;
    height: 1.75em;
    line-height: 1.75em;
    margin-bottom: 4px; }
  .bkg-home-top-colors a {
    color: inherit; }
  .bkg-home-top-colors .meal-type-section.drop-hover {
    background-color: rgba(255, 255, 255, 0.1);
    border: solid 1px rgba(255, 255, 255, 0.2); }
  .bkg-home-top-colors input[type='text'], .bkg-home-top-colors textarea, .bkg-home-top-colors select {
    border: solid 1px var(--tab-panel-color);
    background: var(--tab-panel-input-background); }
    .bkg-home-top-colors input[type='text']:focus, .bkg-home-top-colors textarea:focus, .bkg-home-top-colors select:focus {
      box-shadow: 0 0 3px 0 var(--base-light-color); }
    .bkg-home-top-colors input[type='text']#food-amount, .bkg-home-top-colors textarea#food-amount, .bkg-home-top-colors select#food-amount {
      margin: 0 1em; }
  .bkg-home-top-colors .rating-button {
    border-color: var(--tab-panel-color); }
  .bkg-home-top-colors .measure-select .inactive {
    border: solid 1px var(--tab-panel-color); }
  .bkg-home-top-colors .measure-select .active {
    background-color: var(--tab-panel-color);
    color: var(--tab-panel-background-color); }
  .bkg-home-top-colors .app-button {
    background-color: transparent;
    color: var(--tab-panel-color);
    border-color: var(--tab-panel-color); }
  .bkg-home-top-colors .app-button-main, .bkg-home-top-colors #advanced_search_button {
    background-color: var(--tab-panel-button-background);
    color: var(--tab-panel-color);
    border-color: var(--tab-panel-color); }

.bkg-home-bottom-colors {
  color: inherit;
  border-color: #999999; }

.plan-pane {
  padding-top: 30px;
  padding-bottom: 40px;
  position: relative; }

.plan-pane .curtain {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--base-background-color);
  z-index: 1;
  display: none; }

.plan-pane .bookmark-name {
  text-align: center; }

.week-calendar {
  width: 100%;
  min-width: 900px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  border-color: inherit;
  position: relative;
  z-index: 2;
  font-size: 90%; }
  @media (max-width: 1280px) {
    .week-calendar {
      font-size: 80%; } }
  .week-calendar .frame {
    width: 100%;
    font-size: 0; }
  .week-calendar .month-header {
    text-align: center;
    min-height: 2em;
    font-size: 120%;
    opacity: 0.75; }
    .week-calendar .month-header::after {
      content: "";
      display: block;
      clear: both; }
  .week-calendar .day-container {
    display: inline-block;
    width: 13.5%;
    font-size: 16px; }
    .week-calendar .day-container.unscheduled-meals {
      width: 97%; }
    .week-calendar .day-container .day {
      border: solid 1px var(--base-light-border-color);
      margin: 0 0 0 -1px;
      width: 100%; }
      .week-calendar .day-container .day.higlight-border {
        border: solid 3px var(--highlight-action-background); }
  .week-calendar .day {
    display: inline-block;
    vertical-align: top;
    text-align: left; }
    .week-calendar .day .day-header {
      padding: 8px;
      font-size: 110%;
      background-color: var(--base-background-darker-color);
      position: relative; }
      .week-calendar .day .day-header .icon-button {
        position: absolute;
        right: 4px;
        top: 6px; }
      @media (max-width: 770px) {
        .week-calendar .day .day-header {
          margin-bottom: 5px; } }
    .week-calendar .day .day-title {
      font-size: 110%;
      display: inline; }
    .week-calendar .day .day-section {
      border-top: solid 1px var(--base-light-border-color); }
      @media (max-width: 770px) {
        .week-calendar .day .day-section {
          border: none; } }
  .week-calendar .meal-type-section {
    min-height: 60px; }
    @media (max-width: 770px) {
      .week-calendar .meal-type-section {
        padding-bottom: 5px; } }
    .week-calendar .meal-type-section .section-title {
      opacity: 0.7;
      margin-right: 10px;
      font-size: 95%;
      font-weight: bold; }
    .week-calendar .meal-type-section .control {
      height: 35px;
      cursor: pointer;
      vertical-align: top;
      white-space: nowrap;
      padding: 8px 10px 36px 10px; }
    .week-calendar .meal-type-section .control.add .icon {
      display: inline-block;
      margin-left: 5px;
      width: 30px;
      height: 30px;
      vertical-align: top;
      font-size: 30pt;
      opacity: 0.5; }
    .week-calendar .meal-type-section .food, .week-calendar .meal-type-section .recipe {
      padding-left: 1em;
      padding-right: 0.5em; }
  .week-calendar.leftover-week-calendar .meal-type-section .control.check {
    padding-left: 2px; }
    .week-calendar.leftover-week-calendar .meal-type-section .control.check .section-title {
      margin-left: 30px; }
  .week-calendar .schedule-recipe-unchanged {
    background-color: #ffecec;
    padding: 4px;
    line-height: 1.25em; }
  .week-calendar #unscheduled_meals {
    border: solid 1px var(--base-light-border-color); }
  .week-calendar .auto-snacks .day .day-section {
    border-bottom: solid 1px rgba(255, 255, 255, 0.3); }
  .week-calendar .auto-snacks .day .day-section:last-child {
    border-bottom: none; }
  .week-calendar a {
    color: inherit;
    text-decoration: none; }
  .week-calendar .recipe, .week-calendar .food, .week-calendar .note {
    line-height: 1.2em;
    border-top: dotted 1px var(--base-light-border-color);
    border-bottom: dotted 1px var(--base-light-border-color);
    padding: 8px; }
    .week-calendar .recipe:hover, .week-calendar .food:hover, .week-calendar .note:hover {
      background-color: var(--shading-grey-color);
      color: var(--base-color); }
    .week-calendar .recipe.highlight, .week-calendar .food.highlight, .week-calendar .note.highlight {
      color: var(--tab-panel-background-color);
      background-color: var(--tab-panel-color); }
  .week-calendar .note {
    background-color: rgba(156, 156, 156, 0.2);
    border-radius: 5px;
    padding: 3px 5px;
    font-weight: bold;
    min-height: 1.5em; }
    .week-calendar .note img {
      display: block;
      max-width: 100%;
      height: auto;
      margin: 5px auto; }
  .week-calendar .unscheduled-meals {
    padding: 1em; }
    .week-calendar .unscheduled-meals .plan-draggable {
      display: inline-block;
      margin: 0.5em 1em;
      max-width: 250px;
      vertical-align: top;
      border: solid 1px rgba(255, 255, 255, 0.1);
      padding: 0.5em; }
    .week-calendar .unscheduled-meals .day-title {
      font-size: 110%;
      background-color: var(--base-light-color);
      color: var(--base-background-darker-color);
      padding: 6px; }
    .week-calendar .unscheduled-meals .plan-draggable {
      position: relative;
      border: solid 1px var(--base-light-border-color); }
  .week-calendar.plan-schedule .day .day-section {
    padding: 0; }
  .week-calendar.plan-schedule .meal-type-section .controls {
    height: 38px;
    vertical-align: top;
    white-space: nowrap;
    padding: 4px;
    margin: 0;
    text-align: left;
    position: relative;
    background-color: var(--base-light-border-color); }
    .week-calendar.plan-schedule .meal-type-section .controls * {
      vertical-align: middle; }
    .week-calendar.plan-schedule .meal-type-section .controls .commands {
      position: absolute;
      top: 4px;
      right: 4px; }
    .week-calendar.plan-schedule .meal-type-section .controls .cmd {
      display: inline-block;
      width: 25px;
      height: 25px;
      vertical-align: middle;
      font-size: 30pt;
      opacity: 0.9;
      cursor: pointer;
      border-radius: 30%;
      text-align: center;
      background-size: 70%;
      background-repeat: no-repeat;
      background-position: center;
      background-color: var(--base-light-color);
      margin-right: 2px; }
      .week-calendar.plan-schedule .meal-type-section .controls .cmd:hover {
        background-color: var(--base-color); }
    @media (max-width: 1280px) {
      .week-calendar.plan-schedule .meal-type-section .controls .section-title {
        margin-right: 4px;
        max-width: 60px;
        white-space: normal;
        display: inline-block;
        line-height: 1.1em; }
      .week-calendar.plan-schedule .meal-type-section .controls .commands {
        right: 2px; } }
    .week-calendar.plan-schedule .meal-type-section .controls .cmd.add {
      background-image: url("img/cmd-plus-white.fadf8922a237.png"); }
    .week-calendar.plan-schedule .meal-type-section .controls .cmd.sort {
      background-image: url("img/cmd-sort-white.4461c1b795b5.png"); }

.bkg-home-top-colors .week-calendar .day-container .day {
  border-color: var(--tab-panel-color); }
  .bkg-home-top-colors .week-calendar .day-container .day .day-section {
    border-color: var(--tab-panel-color); }
  .bkg-home-top-colors .week-calendar .day-container .day .day-header {
    background-color: var(--tab-panel-button-background);
    color: var(--tab-panel-color); }
  .bkg-home-top-colors .week-calendar .day-container .day .meal-type-section .control {
    background-color: var(--tab-panel-button-background);
    color: var(--tab-panel-color); }

.bkg-home-top-colors .week-calendar .meal-type-section .recipe:hover, .bkg-home-top-colors .week-calendar .meal-type-section .food:hover, .bkg-home-top-colors .week-calendar .meal-type-section .note:hover {
  background-color: var(--tab-panel-hover-background);
  color: var(--tab-panel-color); }

.bkg-home-top-colors .week-calendar .unscheduled-meals {
  border: solid 1px var(--tab-panel-color);
  margin-top: 1.5em;
  padding: 0; }
  .bkg-home-top-colors .week-calendar .unscheduled-meals .plan-draggable {
    border-color: var(--tab-panel-color); }
  .bkg-home-top-colors .week-calendar .unscheduled-meals .day-title {
    background-color: var(--tab-panel-color);
    color: var(--tab-panel-background-color);
    margin-bottom: 10px; }

.week-calendar.navigation, .week-calendar .navigation {
  position: relative;
  padding-left: 40px;
  padding-right: 40px; }
  .week-calendar.navigation .left-arrow, .week-calendar.navigation .right-arrow, .week-calendar .navigation .left-arrow, .week-calendar .navigation .right-arrow {
    position: absolute;
    top: 0;
    height: 100%;
    width: 40px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 30px; }
  .week-calendar.navigation .left-arrow, .week-calendar .navigation .left-arrow {
    left: 0;
    background-image: url("img/cmd-arrow-left-black.5feeccf8d2a4.png"); }
  .week-calendar.navigation .right-arrow, .week-calendar .navigation .right-arrow {
    right: 0;
    background-image: url("img/cmd-arrow-right-black.84313dd0722a.png"); }

.dark_text .week-calendar.navigation .left-arrow, .light_text .week-calendar .navigation .left-arrow {
  left: 0;
  background-image: url("img/cmd-arrow-left-black.5feeccf8d2a4.png"); }

.dark_text .week-calendar.navigation .right-arrow, .light_text .week-calendar .navigation .right-arrow {
  right: 0;
  background-image: url("img/cmd-arrow-right-black.84313dd0722a.png"); }

.light_text .week-calendar.navigation .left-arrow, .light_text .week-calendar .navigation .left-arrow {
  left: 0;
  background-image: url("img/cmd-arrow-left-white.f9f4bdcd4350.png"); }

.light_text .week-calendar.navigation .right-arrow, .light_text .week-calendar .navigation .right-arrow {
  right: 0;
  background-image: url("img/cmd-arrow-right-white.cc1947064b0b.png"); }

.bkg-home-bottom-colors,
.bkg-home-bottom-colors .week-calendar .meal-type-section .control.add .icon {
  display: none; }

.white .week-calendar .control.check .icon, .white .week-calendar .control.check .icon, .black .week-calendar .control.check .icon, .black .week-calendar .control.check .icon {
  border: solid 1px;
  width: 20px;
  height: 20px;
  margin-top: 4px;
  float: left;
  margin-left: 6px;
  margin-right: -6em; }
  @media (max-width: 1280px) {
    .white .week-calendar .control.check .icon, .white .week-calendar .control.check .icon, .black .week-calendar .control.check .icon, .black .week-calendar .control.check .icon {
      margin-left: 2px; } }

.white .week-calendar .day-header.control.check .icon, .black .week-calendar .day-header.control.check .icon {
  float: none;
  display: inline-block;
  margin-right: 0.5em; }

.black .week-calendar .control.check .icon {
  border-color: var(--base-color);
  color: transparent; }

.black .week-calendar .control.check.selected .icon {
  background-color: var(--base-color); }

.white .week-calendar .control.check .icon {
  border-color: var(--tab-panel-color); }

.white .week-calendar .control.check.selected .icon {
  background-color: var(--tab-panel-color); }

.shopping-screen .week-calendar {
  text-align: left;
  min-width: 320px; }
  .shopping-screen .week-calendar .navigation .left-arrow, .shopping-screen .week-calendar .navigation .right-arrow {
    background-position: center; }
  .shopping-screen .week-calendar .control.check .icon {
    margin-right: 0.75em;
    color: transparent; }
  .shopping-screen .week-calendar .recipe, .shopping-screen .week-calendar .food {
    margin-left: 2em;
    font-size: 80%; }
  .shopping-screen .week-calendar .month-header {
    display: none; }
  .shopping-screen .week-calendar .frame {
    padding-left: 1em; }

.plan-draggable.ui-draggable-dragging {
  text-shadow: 0 0 1px black;
  z-index: 10;
  width: fit-content; }

.plan-draggable.ui-draggable-dragging.adding {
  background-image: url("img/ico-plus.c807be4e07a9.png");
  background-size: 20px;
  background-position: left bottom;
  background-repeat: no-repeat;
  padding-bottom: 30px;
  padding-left: 20px; }

.week-start-month {
  float: left; }

.week-end-month {
  float: right; }

@media only screen and (max-width: 770px) {
  /** Schedule mobile version **/
  .plan {
    /* remove non-mobile week navigation arrows */ }
    .plan .week-calendar {
      text-align: inherit; }
      .plan .week-calendar .frame {
        border: none;
        padding: 0; }
      .plan .week-calendar .day {
        display: inline-block;
        width: auto;
        white-space: nowrap;
        border: 1px solid;
        border-color: inherit;
        padding: 1em;
        padding-right: 0;
        margin: 0.5em 1.6%;
        text-align: left;
        min-width: 96.8%; }
      .plan .week-calendar .day-container {
        overflow-x: auto;
        display: block;
        text-align: left; }
      .plan .week-calendar .month-header {
        min-height: inherit;
        margin: 0.5em; }
        .plan .week-calendar .month-header .week-end-month {
          display: none; }
      .plan .week-calendar .auto-snacks .day .day-section {
        border-bottom: none; }
    .plan #calendar-pane-holder .bkg-home-top, .plan .week-calendar {
      min-width: 0; }
    .plan .week-calendar {
      padding-left: 0;
      padding-right: 0;
      width: auto; }
      .plan .week-calendar .left-arrow, .plan .week-calendar .right-arrow {
        height: 2em; }
    .plan .day .day-header,
    .plan .day .day-section {
      display: inline-block;
      margin-top: 0;
      padding-right: 1em;
      vertical-align: top;
      text-align: center; }
    .plan .auto-snacks .day-section {
      border-bottom: none; }
    .plan .day .day-section {
      /* below is to make it so day sections can't be infinitely long
         BUT... it seems to break the border box */
      white-space: normal;
      width: 10em;
      padding-right: 0.2em; }
    .plan .plan-pane {
      padding: 1px 0 1px;
      /* stop margins collapsing */ }
    .plan .shopping {
      margin-top: 1em; }
    .plan #calendar-pane-holder .rating-button {
      margin-bottom: 20px; }
  .shopping-screen .week-calendar .day .day-header, .shopping-screen .week-calendar .day .meal-type-section, #leftovers-calendar-pane .day .day-header, #leftovers-calendar-pane .day .meal-type-section {
    text-align: inherit;
    width: 9em;
    margin-right: 1em; }
  #leftovers-calendar-pane .control.check .icon {
    margin-right: 0.75em; } }

.meal-type-section.drop-hover, #unscheduled_meals.drop-hover {
  background-color: rgba(224, 237, 222, 0.5);
  border: solid 1px rgba(193, 220, 188, 0.75); }

#delete_droppable {
  display: none;
  width: 110px;
  height: 110px;
  position: fixed;
  bottom: 12px;
  left: 50%;
  margin-left: -40px;
  background-color: var(--base-background-color);
  background-image: url("img/cmd-trash.70d5aaa7e13c.png");
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 50%; }
  @media (max-width: 770px) {
    #delete_droppable {
      bottom: 55px; } }

.has-screen-action-bar #delete_droppable {
  bottom: 75px; }

#delete_droppable.drop-hover {
  background-color: #ffb0b0;
  border: 1px solid #f56733; }

#delete_droppable.above-fixed-controls {
  bottom: 76px; }
  @media (max-width: 770px) {
    #delete_droppable.above-fixed-controls {
      bottom: 147px; } }

.calendar-week-drop-template {
  display: none;
  position: relative;
  top: 0;
  background-color: #3B6D47; }

.white input[type='text'], .white textarea, .white select {
  color: var(--shading-light-color);
  border: solid 1px white;
  background: transparent;
  padding: 6px 9px 6px 9px; }
  .white input[type='text']:focus, .white textarea:focus, .white select:focus {
    box-shadow: 0 0 6px 0 var(--shading-light-color); }

.black input, .black textarea, .black select {
  color: var(--base-color);
  border: solid 1px #b3b3b3;
  background: var(--tab-panel-input-background);
  padding: 4px 7px; }
  .black input:focus, .black textarea:focus, .black select:focus {
    box-shadow: 0 0 6px 0 #b3b3b3; }

.black .bottom-border-input input {
  border: none;
  border-bottom: solid 1px var(--base-light-color);
  border-radius: 0; }

.black :disabled, .black input[readonly], .black textarea[readonly] {
  background: #d3d3d3; }
  .black :disabled.date-input, .black input[readonly].date-input, .black textarea[readonly].date-input {
    cursor: pointer;
    background-color: var(--base-background-darker-color);
    width: 11em; }

.black .err input, .black .err select {
  color: inherit;
  border-color: inherit; }

.black input.picker__input[readonly] {
  /* to support pickadate inputs */
  background: transparent; }

#calendar-pane-holder .rating-button {
  margin-bottom: 0; }

#calendar-pane-holder .bkg-home-top .rating-button {
  background-color: rgba(0, 0, 0, 0.3); }

#title-pane-holder div.label {
  margin-bottom: 0.5em; }

#title-pane-holder .value-plus-minus {
  margin-left: 2em; }

.white #title-pane-holder .value-plus-minus input {
  border-color: rgba(255, 255, 255, 0.25); }

#search-pane-holder {
  height: 0;
  overflow: hidden; }

.plan .search-pane, .cookbook-screen .search-pane {
  padding-top: 10px;
  padding-bottom: 10px;
  text-align: center; }
  .plan .search-pane #search-term, .cookbook-screen .search-pane #search-term {
    width: 40em;
    border-radius: 30px;
    max-width: 80%;
    margin-right: 15%;
    vertical-align: middle;
    padding: 6px 9px; }
    @media (max-width: 770px) {
      .plan .search-pane #search-term, .cookbook-screen .search-pane #search-term {
        margin: 0; } }
  .plan .search-pane .multi-select, .cookbook-screen .search-pane .multi-select {
    margin-top: 1.5em; }
  .plan .search-pane .controls, .cookbook-screen .search-pane .controls {
    margin-top: 2em; }

.multi-select.top-white-tabs {
  border-bottom: solid 1px var(--base-light-border-color); }
  .multi-select.top-white-tabs .active {
    border-top: solid 1px var(--base-light-border-color);
    border-left: solid 1px var(--base-light-border-color);
    border-right: solid 1px var(--base-light-border-color);
    border-bottom: solid 2px var(--base-background-color);
    border-radius: 10px 10px 0 0;
    padding: 8px 14px 6px 30px;
    background-position-x: 8px; }
  .multi-select.top-white-tabs .active, .multi-select.top-white-tabs .inactive {
    display: inline-block;
    margin-bottom: -1px; }

.local-modal-container {
  position: relative; }
  .local-modal-container .modal-curtain {
    position: absolute;
    background-color: rgba(255, 255, 255, 0.7);
    left: 0;
    width: 100%; }
    .local-modal-container .modal-curtain.dark {
      background-color: rgba(200, 200, 200, 0.75); }

.search-pane {
  padding-top: 1.5em;
  padding-bottom: 1.5em;
  text-align: center; }
  .search-pane .svg-holder {
    display: inline-block;
    vertical-align: middle; }
    .search-pane .svg-holder svg {
      opacity: 1;
      width: 25px;
      height: 25px; }
  .search-pane input.search-term {
    width: 30em;
    border-top: none;
    border-left: none;
    border-right: none;
    border-radius: 0;
    border-bottom: 1px solid var(--base-light-color);
    max-width: 80%;
    vertical-align: middle;
    padding: 6px 9px;
    font-size: 105%; }
    .search-pane input.search-term:focus {
      box-shadow: none; }
    .search-pane input.search-term:disabled {
      background: #fafafa;
      color: #bdbdbd;
      border-bottom: none; }
  .search-pane input#search-term:focus {
    box-shadow: none; }
  .search-pane .app-button-main {
    min-width: 260px; }
  .search-pane .controls {
    margin-top: 2em; }

.search-plugin {
  position: relative; }
  .search-plugin .advanced-filters-frame {
    padding: 1em 0 1em 0;
    text-align: left; }
    .search-plugin .advanced-filters-frame .multi-select.toggle-tokens .choice-container .active, .search-plugin .advanced-filters-frame .multi-select.toggle-tokens .choice-container .inactive {
      font-size: 90%;
      min-width: 6em;
      text-align: center; }
    .search-plugin .advanced-filters-frame .controls {
      text-align: right;
      margin-bottom: 1em; }
      .search-plugin .advanced-filters-frame .controls * {
        vertical-align: center; }
      .search-plugin .advanced-filters-frame .controls .small-button {
        text-align: center;
        background-color: white;
        color: var(--base-light-color);
        border-color: var(--base-light-color); }
        .search-plugin .advanced-filters-frame .controls .small-button.highlight {
          border-color: var(--base-color);
          color: var(--base-background-color) !important;
          background-color: var(--base-light-color) !important; }
        .search-plugin .advanced-filters-frame .controls .small-button.disabled {
          pointer-events: none;
          cursor: default;
          opacity: 0.3; }
      .search-plugin .advanced-filters-frame .controls .close-button {
        width: 30px;
        height: 30px;
        margin: 0 12px 0 12px;
        cursor: pointer;
        background-image: url("img/cmd-close.2bd57dc6b5bd.png");
        background-repeat: no-repeat;
        background-position: center;
        display: inline-block;
        vertical-align: middle; }
  .search-plugin .advanced-filters-form.edit-form {
    text-align: left;
    padding: 0 1em 0 1em; }
    .search-plugin .advanced-filters-form.edit-form .form-row.long-field label {
      display: block;
      width: auto;
      margin-bottom: 0.25em;
      line-height: 1.2; }
    .search-plugin .advanced-filters-form.edit-form .form-row.long-field input {
      width: 100%; }
    .search-plugin .advanced-filters-form.edit-form .form-row.long-field.section-separator {
      margin-top: 2em;
      padding-top: 0; }
    .search-plugin .advanced-filters-form.edit-form .form-row .description {
      margin: 1em 0; }
    .search-plugin .advanced-filters-form.edit-form .form-row .help {
      margin-bottom: 1.5em; }
    .search-plugin .advanced-filters-form.edit-form.plan-filters .tabs .tab {
      width: 25%; }
    .search-plugin .advanced-filters-form.edit-form .sliders .slider-holder {
      margin: 0.75em 0.5em;
      font-size: 90%; }
      .search-plugin .advanced-filters-form.edit-form .sliders .slider-holder label {
        display: inline-block;
        width: 200px;
        line-height: 1.1em;
        vertical-align: top;
        margin: 0.25em 0; }
      .search-plugin .advanced-filters-form.edit-form .sliders .slider-holder .slider-range {
        display: inline-block;
        width: 550px;
        margin: 0.6em 0 0.6em 1em; }
        .search-plugin .advanced-filters-form.edit-form .sliders .slider-holder .slider-range .number-slider-handle {
          width: 42px;
          height: 42px;
          top: 50%;
          margin-top: -21px;
          text-align: center;
          line-height: 42px;
          border-radius: 50%;
          font-size: 75%;
          letter-spacing: -1px;
          box-shadow: 0 3px 4px 4px rgba(200, 200, 200, 0.2); }
        .search-plugin .advanced-filters-form.edit-form .sliders .slider-holder .slider-range.special-symbol .number-slider-handle.special-symbol-allowed {
          font-size: 150%; }
        .search-plugin .advanced-filters-form.edit-form .sliders .slider-holder .slider-range.ui-slider .ui-widget-header {
          background: #90d0d0; }
      .search-plugin .advanced-filters-form.edit-form .sliders .slider-holder .ui-slider-horizontal {
        height: 0.4em; }
    .search-plugin .advanced-filters-form.edit-form .diet-list {
      -webkit-column-count: 3;
      -moz-column-count: 3;
      column-count: 3; }
      .search-plugin .advanced-filters-form.edit-form .diet-list #id_diet .checkbox-row {
        margin: 0.4em 0;
        font-size: 90%; }
        .search-plugin .advanced-filters-form.edit-form .diet-list #id_diet .checkbox-row:first-child {
          margin-top: 0; }
    .search-plugin .advanced-filters-form.edit-form .meal-type-choices {
      -webkit-column-count: 5;
      -moz-column-count: 5;
      column-count: 5; }
  .search-plugin .search-results-head.black, .search-plugin .search-results-head {
    text-align: left;
    padding: 1em;
    margin: 0; }
    .search-plugin .search-results-head.black.small-section, .search-plugin .search-results-head.small-section {
      margin: 0 auto;
      width: calc(100% - 25px); }
    .search-plugin .search-results-head.black label, .search-plugin .search-results-head label {
      margin-right: 0.25em;
      display: inline-block; }
      .search-plugin .search-results-head.black label.unified, .search-plugin .search-results-head label.unified {
        width: 4em; }
    .search-plugin .search-results-head.black .multi-select .active, .search-plugin .search-results-head.black .multi-select .inactive, .search-plugin .search-results-head .multi-select .active, .search-plugin .search-results-head .multi-select .inactive {
      margin: 0.5em 0.3em 0.5em 0.3em;
      line-height: 2em;
      letter-spacing: -0.5px; }
    .search-plugin .search-results-head.black .ui-selectmenu-button, .search-plugin .search-results-head .ui-selectmenu-button {
      border-color: var(--base-color); }
      .search-plugin .search-results-head.black .ui-selectmenu-button:hover, .search-plugin .search-results-head .ui-selectmenu-button:hover {
        box-shadow: 0 0 3px 3px var(--base-light-border-color); }
      .search-plugin .search-results-head.black .ui-selectmenu-button.highlight, .search-plugin .search-results-head .ui-selectmenu-button.highlight {
        color: var(--highlight-action-background); }
      @media (max-width: 770px) {
        .search-plugin .search-results-head.black .ui-selectmenu-button, .search-plugin .search-results-head .ui-selectmenu-button {
          margin: 5px; } }
      .search-plugin .search-results-head.black .ui-selectmenu-button:last-of-type, .search-plugin .search-results-head .ui-selectmenu-button:last-of-type {
        margin-right: 4px; }
      .search-plugin .search-results-head.black .ui-selectmenu-button#__data_subset_select-button, .search-plugin .search-results-head .ui-selectmenu-button#__data_subset_select-button {
        font-size: 110%;
        min-width: 200px;
        margin-left: 4px; }
    .search-plugin .search-results-head.black .controls, .search-plugin .search-results-head .controls {
      text-align: left;
      font-size: 90%; }
      .search-plugin .search-results-head.black .controls *, .search-plugin .search-results-head .controls * {
        vertical-align: middle; }
    .search-plugin .search-results-head.black .filters, .search-plugin .search-results-head .filters {
      float: left; }
      .search-plugin .search-results-head.black .filters *, .search-plugin .search-results-head .filters * {
        vertical-align: middle; }
      @media (max-width: 770px) {
        .search-plugin .search-results-head.black .filters, .search-plugin .search-results-head .filters {
          margin-bottom: 15px; } }
      .search-plugin .search-results-head.black .filters .button, .search-plugin .search-results-head .filters .button {
        cursor: pointer;
        display: inline-block;
        border: solid 1px var(--base-color);
        border-radius: 18px;
        margin: 0 2px;
        padding: 0 10px;
        min-width: 5em;
        text-align: center; }
        .search-plugin .search-results-head.black .filters .button:hover, .search-plugin .search-results-head .filters .button:hover {
          box-shadow: 0 0 3px 3px var(--base-light-border-color); }
        .search-plugin .search-results-head.black .filters .button.highlight, .search-plugin .search-results-head .filters .button.highlight {
          color: var(--highlight-action-background); }
        .search-plugin .search-results-head.black .filters .button.disabled, .search-plugin .search-results-head .filters .button.disabled {
          cursor: default;
          opacity: 0.35;
          pointer-events: none; }
          .search-plugin .search-results-head.black .filters .button.disabled:hover, .search-plugin .search-results-head .filters .button.disabled:hover {
            box-shadow: none; }
    .search-plugin .search-results-head.black .sort, .search-plugin .search-results-head .sort {
      float: right;
      text-align: right;
      margin-top: 8px; }
      .search-plugin .search-results-head.black .sort *, .search-plugin .search-results-head .sort * {
        vertical-align: middle; }
  .search-plugin.view_list .search-results-head {
    padding-bottom: 1em;
    margin-bottom: 0;
    border-bottom: solid 1px var(--base-light-border-color); }
  .search-plugin .panes .search-results-head.small-section {
    margin-top: 1.75em; }
  .search-plugin .search-results {
    padding: 0; }
    .search-plugin .search-results .left-align {
      margin-left: 1em; }
      @media (max-width: 1280px) {
        .search-plugin .search-results .left-align {
          margin-left: 4px; } }
    .search-plugin .search-results .search-result.compact_cards {
      -webkit-column-count: 5;
      -moz-column-count: 5;
      column-count: 5;
      text-align: left;
      margin-top: 10px;
      margin-bottom: 10px;
      padding: 0 50px 0 50px; }
      @media (max-width: 1280px) {
        .search-plugin .search-results .search-result.compact_cards {
          padding: 4px 0 4px 0; } }
      .search-plugin .search-results .search-result.compact_cards .food-item {
        width: 90%;
        margin: 0.3em 0.5em;
        padding: 0.5em 1em;
        line-height: 1.2em;
        background-color: #f5f5f5; }
    .search-plugin .search-results .search-result-container {
      padding: 1em; }
      .search-plugin .search-results .search-result-container h3 {
        font-size: 100%; }
    .search-plugin .search-results #foods_result_toggle_container {
      padding: 1.5em 0; }
    .search-plugin .search-results .item-details h2 {
      text-align: left;
      padding-left: 10px;
      border-bottom: solid 1px var(--base-light-border-color); }
    .search-plugin .search-results .item-details table {
      margin-top: 1em; }
    .search-plugin .search-results .horizontal-tabs .tabs {
      margin-top: 0.5em;
      text-align: left; }
      .search-plugin .search-results .horizontal-tabs .tabs .tab {
        width: 33.2%;
        height: 60px;
        padding: 0 10px 8px 10px; }
    .search-plugin .search-results .horizontal-tabs .panes .pane {
      border: none; }
      .search-plugin .search-results .horizontal-tabs .panes .pane#recipe_search_results_recipes_pane {
        padding: 0; }
  .search-plugin .active-filters {
    text-align: left;
    padding: 0.25em 1em;
    text-align: left;
    font-size: 80%;
    border-bottom: solid 1px var(--base-light-border-color); }
    .search-plugin .active-filters .label {
      display: inline-block;
      margin-right: 6px; }
    .search-plugin .active-filters * {
      vertical-align: middle; }
    .search-plugin .active-filters .items {
      display: inline-block; }
      .search-plugin .active-filters .items .filter-item {
        display: inline-block;
        padding: 2px 34px 2px 14px;
        margin: 2px;
        border-radius: 16px;
        background-color: var(--base-light-color);
        color: var(--base-background-color);
        position: relative;
        max-width: 20em;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis; }
        .search-plugin .active-filters .items .filter-item * {
          vertical-align: middle; }
        .search-plugin .active-filters .items .filter-item .cmd-small.close {
          position: absolute;
          top: 6px;
          right: 10px;
          width: 16px;
          height: 20px;
          background-size: contain; }

.modal-dialog.nutrition-filters, .modal-dialog.edit-nutrient-set {
  max-width: 1100px; }
  .modal-dialog.nutrition-filters .header, .modal-dialog.edit-nutrient-set .header {
    position: absolute;
    top: 8px;
    width: 100%; }
  .modal-dialog.nutrition-filters .selected-items-list, .modal-dialog.edit-nutrient-set .selected-items-list {
    padding: 0 1em; }
  .modal-dialog.nutrition-filters .selectors-list, .modal-dialog.edit-nutrient-set .selectors-list {
    padding: 1em 1em 1em 0.5em;
    -webkit-column-count: 3;
    /* Chrome, Safari, Opera */
    -moz-column-count: 3;
    /* Firefox */
    column-count: 3; }
    .modal-dialog.nutrition-filters .selectors-list input[type='checkbox'] + label, .modal-dialog.edit-nutrient-set .selectors-list input[type='checkbox'] + label {
      width: 100%;
      display: inline-block;
      white-space: normal;
      background-position: 0 -2px;
      line-height: 1em;
      min-height: 22px;
      margin: 0.3em 1em; }
    .modal-dialog.nutrition-filters .selectors-list input[type='checkbox']:checked + label, .modal-dialog.edit-nutrient-set .selectors-list input[type='checkbox']:checked + label {
      color: #008080; }
  .modal-dialog.nutrition-filters .form-row, .modal-dialog.edit-nutrient-set .form-row {
    padding: 0 1em;
    margin: 0.5em 0; }
    .modal-dialog.nutrition-filters .form-row label, .modal-dialog.edit-nutrient-set .form-row label {
      display: inline-block;
      width: 4em; }
    .modal-dialog.nutrition-filters .form-row input[type=text], .modal-dialog.edit-nutrient-set .form-row input[type=text] {
      width: 30em; }
  .modal-dialog.nutrition-filters h3, .modal-dialog.edit-nutrient-set h3 {
    text-align: left;
    padding: 0.5em 0 0 1em; }

.leftovers-calendar-holder .controls {
  margin-top: 2em; }

.leftovers-calendar-holder .controls.multi-select .active {
  text-decoration: underline; }

.search-results {
  text-align: center;
  padding: 1em; }
  .search-results .no_result {
    margin-top: 2.3em; }
  .search-results .cookbook .controls {
    margin: 0.5em auto 1em auto; }
  .search-results .fr-view {
    max-width: 800px; }

.object-card {
  border: solid 1px lightgrey;
  margin: 1em;
  box-sizing: content-box;
  position: relative;
  box-shadow: 2px 2px 6px var(--base-light-border-color); }
  .object-card * {
    box-sizing: border-box; }
  .object-card.selected {
    border: 6px solid var(--highlight-action-background);
    margin-left: 6px;
    margin-right: 6px; }
  .object-card.clickable:hover {
    box-shadow: 1px 1px 11px black; }
  .object-card .card-body {
    cursor: pointer; }
  .object-card .type-identifier {
    position: absolute;
    top: -1.5em;
    left: -1px;
    width: calc(100% + 2px);
    padding: 0 6px;
    background-color: rgba(120, 120, 120, 0.6);
    color: white;
    font-size: 14px;
    text-align: left;
    line-height: 1.5; }
  .object-card.has-checkbox .card-header {
    padding: 6px 10px 6px 35px; }
  .object-card.document-card .card-header, .object-card.document-card .card-footer {
    padding: 10px 36px 10px 8px; }
  .object-card .card-footer, .object-card .card-header {
    position: relative;
    text-align: left;
    padding: 10px 45px 10px 10px; }
    .object-card .card-footer.no-actions, .object-card .card-header.no-actions {
      padding-right: 10px; }
    .object-card .card-footer .title, .object-card .card-header .title {
      width: 100%;
      overflow: hidden;
      white-space: normal;
      text-overflow: ellipsis;
      line-height: 1.1em;
      height: 2.2em;
      font-size: 90%;
      text-align: left;
      display: -webkit-box;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical; }
    .object-card .card-footer .actions, .object-card .card-header .actions {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      display: inline-block;
      display: flex;
      align-items: center; }
      .object-card .card-footer .actions .button, .object-card .card-header .actions .button {
        background-size: auto 25px;
        width: 45px;
        height: 45px; }
  .object-card .info-icons {
    text-align: left;
    padding: 6px 0 0 8px;
    border-top: dotted 1px var(--base-light-border-color); }
    .object-card .info-icons:empty {
      display: none; }
    .object-card .info-icons img {
      width: 35px;
      height: 35px;
      border-radius: 50%;
      box-sizing: content-box;
      border: solid 1px #bfbfbf;
      margin: 0 6px; }

.search-results .recipe-card {
  position: relative;
  display: inline-block;
  vertical-align: top;
  width: 300px;
  height: 220px;
  margin: 12px;
  cursor: pointer; }
  .search-results .recipe-card.has-sub-card-info {
    margin-bottom: 44px; }
  .search-results .recipe-card a {
    color: inherit;
    text-decoration: inherit; }
  @media (max-width: 400px) {
    .search-results .recipe-card {
      width: 90%;
      margin-left: 5%;
      margin-right: 5%; } }
  .search-results .recipe-card.object-card .image-container {
    min-height: 100px; }
  .search-results .recipe-card .image-controls {
    position: absolute;
    top: 0;
    left: 4px;
    background-color: rgba(250, 250, 250, 0.1); }
    @media print {
      .search-results .recipe-card .image-controls {
        display: none; } }
    .search-results .recipe-card .image-controls .control-button {
      display: inline-block;
      width: 40px;
      height: 40px;
      margin: 4px;
      background-repeat: no-repeat;
      background-position: center;
      background-size: contain; }
    .search-results .recipe-card .image-controls .control-button.nutrition-preview {
      background-image: url("img/ico-nutrition-overlay-cmd.293b6c5153f4.png"); }
      @media (max-width: 1279px) {
        .search-results .recipe-card .image-controls .control-button.nutrition-preview {
          display: none; } }
  .search-results .recipe-card .info-panel {
    position: absolute;
    top: 0;
    right: 0;
    width: 120px;
    height: fit-content;
    padding-bottom: 4px;
    background-color: rgba(0, 0, 0, 0.5);
    color: white;
    text-shadow: 0 0 10px black;
    -webkit-print-color-adjust: exact; }
  .search-results .recipe-card .rating {
    height: 20px;
    margin: 2px 0;
    width: 100%; }
  .search-results .recipe-card .time {
    text-align: center;
    padding-top: 2px;
    font-size: 90%;
    line-height: 1.25em; }
  .search-results .recipe-card .title {
    text-align: left;
    white-space: pre-wrap;
    line-height: 1.1em;
    padding-top: 8px;
    height: 2.6em; }
  .search-results .recipe-card .controls {
    position: absolute;
    bottom: 30px;
    right: 10px; }
  .search-results .recipe-card .users {
    margin: 0.1em auto -5px auto; }
    .search-results .recipe-card .users img {
      width: 35px;
      height: 35px;
      border-radius: 50%;
      box-sizing: content-box;
      border: solid 1px #bfbfbf; }
  .search-results .recipe-card .users:empty {
    display: none; }
  .search-results .recipe-card .checkmark {
    position: absolute;
    top: 105px;
    left: 0;
    width: 30px;
    height: 30px;
    background: url("img/ico-check-thick-white.634776ad0cd9.png") no-repeat 1px 7px;
    background-size: 18px;
    background-color: #71ac53;
    border-top-right-radius: 87%;
    border-right: solid 2px white;
    border-top: solid 2px white; }
  .search-results .recipe-card .icons {
    position: absolute;
    top: 4px;
    left: 4px;
    line-height: normal;
    overflow: visible; }
  .search-results .recipe-card .card-info {
    padding: 4px 4px 0 8px;
    font-size: 11px;
    text-align: left;
    border-top: dotted 1px var(--base-light-border-color); }
    .search-results .recipe-card .card-info .has-image {
      background-position: 0 0;
      background-repeat: no-repeat;
      background-size: 24px;
      padding-left: 28px;
      display: inline-block;
      margin-right: 1em; }
    .search-results .recipe-card .card-info .ingredient-count {
      background-image: url("img/ico-shopping-sm.9a8458b8b506.png"); }
    .search-results .recipe-card .card-info .recipe-time {
      background-image: url("img/ico-clock-sm.01423365fea4.png"); }
  .search-results .recipe-card .sub-card-info {
    position: relative;
    top: 7px; }
  .search-results .recipe-card.recipe-card-unchanged {
    border: 5px solid #ffb0b0;
    margin: 7px; }
  .search-results .recipe-card .tooltip-unchanged {
    visibility: hidden;
    padding: 3px;
    position: absolute;
    z-index: 999999;
    background-color: #FFEEEE;
    border: 1px solid black;
    width: 100%;
    height: 100%;
    display: block; }
  .search-results .recipe-card .recipe-card-unchanged:hover .tooltip-unchanged {
    visibility: visible; }

.search-results .recipe-card.no-controls .image-controls {
  display: none; }

.search-results .food-card {
  display: inline-block;
  width: 260px;
  height: 170px;
  margin: 10px;
  vertical-align: top;
  border: solid 1px var(--base-light-border-color); }
  .search-results .food-card .image-container {
    height: 120px;
    cursor: pointer; }
    .search-results .food-card .image-container img {
      object-fit: contain;
      max-height: 100%; }
  .search-results .food-card .card-header {
    padding-top: 10px;
    padding-bottom: 10px;
    width: 100%; }
    .search-results .food-card .card-header .title {
      cursor: pointer; }
  .search-results .food-card.no-image {
    display: inline-flex;
    align-items: center;
    justify-content: center; }
    .search-results .food-card.no-image .card-header {
      padding-left: 1em; }
      .search-results .food-card.no-image .card-header .title {
        overflow: visible;
        white-space: normal;
        line-height: 1.25em; }

.search-results .compact_cards .food-card {
  height: 70px;
  line-height: 1.2em;
  background-color: var(--base-background-darker-color);
  border-color: var(--base-light-border-color);
  margin: 0.5em;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-flex;
  place-content: center; }
  .search-results .compact_cards .food-card:hover {
    background-color: var(--base-light-border-color); }

.search-plugin .item-details {
  display: none; }

.search-plugin.view_list .search-results {
  text-align: left; }
  .search-plugin.view_list .search-results .result-items {
    display: inline-block;
    width: 49%;
    vertical-align: top;
    padding-top: 1em; }
    .search-plugin.view_list .search-results .result-items.fit-width {
      width: 100%;
      display: table; }
    .search-plugin.view_list .search-results .result-items .food-card {
      width: 100%;
      height: auto;
      line-height: 1.2em;
      padding: 10px 1em;
      margin: 0;
      cursor: pointer;
      border: none; }
    .search-plugin.view_list .search-results .result-items .list-item.active {
      background-color: var(--base-light-color);
      color: var(--base-background-color); }
    .search-plugin.view_list .search-results .result-items .list-item input[type='checkbox'] + label {
      margin: 0; }
    .search-plugin.view_list .search-results .result-items .list-item .food-card {
      white-space: normal;
      overflow: hidden; }
  .search-plugin.view_list .search-results .item-details {
    display: inline-block;
    width: 49%;
    margin-left: 10px;
    vertical-align: top;
    border-left: solid 1px var(--base-light-border-color);
    padding: 1em;
    position: sticky;
    top: 80px;
    height: calc(100vh - 80px);
    overflow: auto; }
    .search-plugin.view_list .search-results .item-details td.number {
      padding-right: 5px; }
    .search-plugin.view_list .search-results .item-details td.measure {
      padding-left: 0; }

.search-plugin.view_cards .result-items {
  display: block; }

span.deal_icon {
  width: 30px;
  height: 30px;
  background: url("img/ico_dollar.f316cf3a515c.png") no-repeat center;
  display: inline-block;
  background-size: contain; }

span.deal_icon[onclick] {
  cursor: pointer; }

td span.deal_icon {
  width: 16px;
  height: 16px; }

.deals-popup {
  padding: 1em;
  text-align: center; }
  .deals-popup .deal {
    margin-top: 1em; }
  .deals-popup .deal-location {
    margin-top: 0.5em; }

.search-results-head.black, .search-results-head {
  border-top: solid 1px #bfbfbf;
  border-bottom: solid 1px #bfbfbf;
  padding: 9px 0 9px 0;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  position: relative;
  font-size: 80%; }
  .search-results-head.black::after, .search-results-head::after {
    content: "";
    display: block;
    clear: both; }
  @media only screen and (max-width: 770px) {
    .search-results-head.black, .search-results-head {
      padding-left: 6px;
      padding-right: 6px; }
      .search-results-head.black .left, .search-results-head .left {
        width: 8em;
        display: inline-block; }
      .search-results-head.black .right, .search-results-head .right {
        width: 8em;
        text-align: left; } }
  .search-results-head.black .counter, .search-results-head .counter {
    margin-left: 6px; }
  .search-results-head.black .multi-select-input, .search-results-head .multi-select-input {
    border: solid 1px #e6e6e6;
    border-radius: 8px;
    min-width: 140px;
    max-width: 75%;
    background: url("img/cmd-arrow-down-black.d0ed8fce6f79.png") no-repeat;
    background-size: 25px auto;
    background-position: right 8px center;
    display: inline-block;
    cursor: pointer;
    padding: 0.15em 44px 0.15em 0.5em; }
  .search-results-head.black .multi-select-popup, .search-results-head .multi-select-popup {
    position: absolute;
    display: none;
    left: 10px;
    top: 44px;
    min-width: 150px;
    max-width: 75%;
    overflow: hidden;
    border: 1px solid #bfbfbf;
    z-index: 10;
    background: white; }
    .search-results-head.black .multi-select-popup div, .search-results-head .multi-select-popup div {
      display: block; }
    .search-results-head.black .multi-select-popup .separator-bottom, .search-results-head .multi-select-popup .separator-bottom {
      border-bottom: solid 1px #cccccc;
      padding-bottom: 0.5em; }
    .search-results-head.black .multi-select-popup .active, .search-results-head.black .multi-select-popup .inactive, .search-results-head .multi-select-popup .active, .search-results-head .multi-select-popup .inactive {
      margin: 0.25em 0.75em 0.25em 0.75em; }
  .search-results-head.black .filters.toggle-switch input[type='checkbox'] + label, .search-results-head .filters.toggle-switch input[type='checkbox'] + label {
    background-size: 40px;
    padding-left: 46px;
    margin-right: 16px;
    line-height: 1.5em; }

@media not print {
  .cookbook-screen #recipe-detail-holder .recipe {
    margin-top: 40px; } }

@media only screen and (max-width: 770px) {
  .cookbook-screen #recipe-detail-holder .recipe {
    margin-top: 10px; } }

@media print {
  .recipe {
    page-break-after: always; } }

.state-holder .recipe.action-view .recipe-head .recipe-info .stats-holder {
  margin-top: 2em; }
  .state-holder .recipe.action-view .recipe-head .recipe-info .stats-holder .separator td {
    height: 4em; }
  .state-holder .recipe.action-view .recipe-head .recipe-info .stats-holder .stats td.value {
    font-size: 110%; }
  .state-holder .recipe.action-view .recipe-head .recipe-info .stats-holder .times td {
    font-size: 80%; }

.state-holder .recipe.action-view .recipe-head .recipe-image {
  width: 65%; }

.recipe.action-view {
  line-height: 1.2em;
  /* -- now collides with intercom moved higher
  .social-share {
    bottom: 100px;
    top: auto;
  }
  */ }
  .recipe.action-view h2, .recipe.action-view h3 {
    text-align: left;
    font-size: 1.25em;
    font-weight: bold; }
  .recipe.action-view .recipe-head {
    background-color: var(--base-background-darker-color); }
    .recipe.action-view .recipe-head .recipe-info, .recipe.action-view .recipe-head .recipe-image {
      display: inline-block;
      vertical-align: top; }
    .recipe.action-view .recipe-head .recipe-info {
      width: 34%;
      padding-right: 50px;
      position: relative; }
      @media (max-width: 1030px) {
        .recipe.action-view .recipe-head .recipe-info {
          width: 49%; } }
      @media only screen and (max-width: 770px) {
        .recipe.action-view .recipe-head .recipe-info {
          width: 100%; } }
      .recipe.action-view .recipe-head .recipe-info .name {
        display: inline-block;
        margin: 40px 44px 0.5em 1em;
        text-align: left;
        font-weight: bold; }
        @media only screen and (max-width: 770px) {
          .recipe.action-view .recipe-head .recipe-info .name {
            margin-top: 20px; } }
      .recipe.action-view .recipe-head .recipe-info #heart {
        position: absolute;
        top: 20px;
        right: 14px; }
      .recipe.action-view .recipe-head .recipe-info .stats-holder {
        margin-top: 4em; }
        @media (max-width: 1280px) {
          .recipe.action-view .recipe-head .recipe-info .stats-holder {
            margin-top: 3em; } }
        @media only screen and (max-width: 770px) {
          .recipe.action-view .recipe-head .recipe-info .stats-holder {
            margin-top: 1em;
            margin-bottom: 1em;
            width: 110%; } }
        .recipe.action-view .recipe-head .recipe-info .stats-holder.has-message .message {
          text-align: center;
          font-size: 80%;
          padding-top: 20px; }
        .recipe.action-view .recipe-head .recipe-info .stats-holder.has-message .separator td {
          height: 2em; }
      .recipe.action-view .recipe-head .recipe-info .stats, .recipe.action-view .recipe-head .recipe-info .times {
        text-align: center; }
        .recipe.action-view .recipe-head .recipe-info .stats td, .recipe.action-view .recipe-head .recipe-info .times td {
          vertical-align: top;
          border-right: 1px solid var(--base-light-color);
          display: table-cell; }
          .recipe.action-view .recipe-head .recipe-info .stats td:last-child, .recipe.action-view .recipe-head .recipe-info .times td:last-child {
            border-right: none; }
        .recipe.action-view .recipe-head .recipe-info .stats .label, .recipe.action-view .recipe-head .recipe-info .times .label {
          color: #000000; }
        .recipe.action-view .recipe-head .recipe-info .stats .value, .recipe.action-view .recipe-head .recipe-info .times .value {
          text-align: center;
          line-height: 1.4em; }
      .recipe.action-view .recipe-head .recipe-info .separator td {
        height: 6em; }
        @media (max-width: 1280px) {
          .recipe.action-view .recipe-head .recipe-info .separator td {
            height: 4em; } }
        @media only screen and (max-width: 770px) {
          .recipe.action-view .recipe-head .recipe-info .separator td {
            height: 1em; } }
      .recipe.action-view .recipe-head .recipe-info .stats .value {
        font-size: 150%; }
        @media (max-width: 1280px) {
          .recipe.action-view .recipe-head .recipe-info .stats .value {
            font-size: 130%; } }
        @media (max-width: 770px) {
          .recipe.action-view .recipe-head .recipe-info .stats .value {
            font-size: 110%; } }
        @media (max-width: 1030px) {
          .recipe.action-view .recipe-head .recipe-info .stats .value {
            font-size: 100%; } }
      @media (max-width: 1280px) {
        .recipe.action-view .recipe-head .recipe-info .times td {
          font-size: 80%; } }
      @media (max-width: 770px) {
        .recipe.action-view .recipe-head .recipe-info .times td {
          font-size: 75%; } }
      @media (max-width: 1030px) {
        .recipe.action-view .recipe-head .recipe-info .times td {
          font-size: 70%; } }
    .recipe.action-view .recipe-head .recipe-image {
      width: 65.4%;
      position: relative;
      right: -3px; }
      @media (max-width: 1030px) {
        .recipe.action-view .recipe-head .recipe-image {
          width: 50%; } }
      @media only screen and (max-width: 770px) {
        .recipe.action-view .recipe-head .recipe-image {
          width: 100%; } }
      .recipe.action-view .recipe-head .recipe-image img {
        width: 100%;
        max-height: 600px;
        object-fit: cover;
        margin-bottom: -5px; }
      .recipe.action-view .recipe-head .recipe-image .overlay-holder {
        position: absolute;
        background-color: rgba(0, 0, 0, 0.4); }
        .recipe.action-view .recipe-head .recipe-image .overlay-holder.rating-button-holder {
          right: 0;
          top: 0;
          padding: 12px 22px; }
          @media only screen and (max-width: 770px) {
            .recipe.action-view .recipe-head .recipe-image .overlay-holder.rating-button-holder {
              padding: 6px 10px; } }
      .recipe.action-view .recipe-head .recipe-image .rating-button {
        color: white;
        margin: 0;
        cursor: pointer;
        width: 140px;
        height: 60px; }
        @media only screen and (max-width: 770px) {
          .recipe.action-view .recipe-head .recipe-image .rating-button {
            width: 100px;
            height: 40px;
            font-size: 60%; } }
      .recipe.action-view .recipe-head .recipe-image .times {
        color: white;
        margin: 0;
        text-align: center; }
        .recipe.action-view .recipe-head .recipe-image .times .value {
          text-align: center;
          color: inherit; }
  @media only screen and (max-width: 770px) {
    .recipe.action-view {
      font-size: 16px; } }
  @media print {
    .recipe.action-view .image-container img {
      width: 4in; }
    .recipe.action-view .ingredients-instructions {
      padding-top: 8mm; }
      .recipe.action-view .ingredients-instructions .block {
        display: block;
        width: 100%;
        padding: 0; }
      .recipe.action-view .ingredients-instructions .instructions {
        page-break-inside: avoid; } }
  .recipe.action-view .description {
    padding: 1em 2em; }
  @media not print {
    .recipe.action-view .block {
      padding-left: 1em;
      padding-right: 1em; } }
  @media only screen and (max-width: 800px) {
    .recipe.action-view .blocks2 .ingredients.block, .recipe.action-view .blocks2 .instructions.block {
      width: 100%; } }
  .recipe.action-view .instructions h1, .recipe.action-view .instructions h2, .recipe.action-view .instructions h3,
  .recipe.action-view .notes h1,
  .recipe.action-view .notes h2,
  .recipe.action-view .notes h3 {
    text-align: left; }
  .recipe.action-view .instructions ul, .recipe.action-view .instructions ol,
  .recipe.action-view .notes ul,
  .recipe.action-view .notes ol {
    padding-left: 40px; }
  .recipe.action-view .instructions img,
  .recipe.action-view .notes img {
    max-width: 100%;
    height: auto !important; }
  .recipe.action-view .instructions .prep-title,
  .recipe.action-view .notes .prep-title {
    margin: 1em 0 0.5em; }
  .recipe.action-view .instructions .prep-instructions,
  .recipe.action-view .notes .prep-instructions {
    margin-left: 1.5em; }
  .recipe.action-view .instructions > h3 {
    margin: 0.4em 0; }
  .recipe.action-view .nutrition-info h3 {
    text-align: left; }
  .recipe.action-view .controls {
    margin-top: 45px; }
  .recipe.action-view .include-wrap {
    margin-top: 25px;
    padding-top: 1em; }
    @media print {
      .recipe.action-view .include-wrap {
        margin-top: 0.5em; } }
  .recipe.action-view .notes {
    width: 70%;
    margin: 3em auto 0.5em auto; }
    .recipe.action-view .notes h3 {
      margin: 1.5em 0; }
  .recipe.action-view .source_attribution {
    text-align: center;
    margin: 2em 0; }
  .recipe.action-view .ingredients td, .recipe.action-view .ingredients th {
    vertical-align: top;
    line-height: normal;
    padding-bottom: 0.5em; }
  .recipe.action-view .ingredients h3 {
    margin: 0.4em 0; }
  .recipe.action-view .ingredients .value {
    text-align: left; }
  .recipe.action-view .ingredients .app-button {
    padding-left: 0; }
  .recipe.action-view .schedule-details {
    text-align: left;
    margin: 1.5em 0;
    width: 600px;
    max-width: 95%;
    padding-left: 2em; }
    .recipe.action-view .schedule-details.editable {
      width: auto; }
    .recipe.action-view .schedule-details h3 {
      font-size: 130%;
      line-height: 1.2em;
      margin-bottom: 0.5em; }
    .recipe.action-view .schedule-details .horizontal-tabs .tabs .tab {
      width: 33.33%; }
    .recipe.action-view .schedule-details input[type=text].small-number {
      font-size: 90%;
      width: 3.2em; }
    .recipe.action-view .schedule-details .label {
      margin-top: 0.5em; }
    .recipe.action-view .schedule-details .value {
      text-align: left;
      padding-left: 3em; }
    .recipe.action-view .schedule-details .help {
      margin-bottom: 1em; }
    .recipe.action-view .schedule-details .with-button {
      position: relative;
      padding-right: 240px;
      min-height: 60px; }
      .recipe.action-view .schedule-details .with-button .small-button {
        position: absolute;
        top: 0;
        right: 0;
        box-shadow: 0 1px 8px darkgrey;
        border: 4px solid white;
        border-radius: 26px;
        background-color: darkgrey;
        color: white;
        padding: 0.5em 0.75em; }
    .recipe.action-view .schedule-details .toggle-switch {
      margin-bottom: 0.5em; }
    .recipe.action-view .schedule-details .toggle-content {
      border: solid 1px var(--base-light-border-color);
      margin: 0.75em 0 1.5em 0; }
    .recipe.action-view .schedule-details.black #serving_scaling_pane input[type='checkbox'] + label {
      margin: 1em 0 0.5em 3.5em;
      padding-left: 110px;
      background-size: 25px;
      min-height: 27px;
      display: inline-flex;
      align-items: center; }
    .recipe.action-view .schedule-details #serving_scaling_pane label {
      display: inline-block;
      max-width: 70%;
      vertical-align: middle;
      white-space: normal;
      line-height: 1.25em;
      font-size: 90%; }
    .recipe.action-view .schedule-details .servings-change-form {
      width: 600px;
      padding: 1em; }
  .recipe.action-view .schedule-details-view {
    margin-top: 0.75em;
    padding-left: 2em;
    font-size: 95%;
    font-weight: bold; }
  .recipe.action-view .tags {
    margin: 3em 0 5em 0;
    padding: 1em; }
  @media only screen and (max-width: 770px) {
    .recipe.action-view .times {
      line-height: 1em; }
      .recipe.action-view .times th, .recipe.action-view .times td {
        padding-left: 6px;
        padding-right: 6px; }
    .recipe.action-view .block {
      padding-left: 1em;
      padding-right: 1em;
      margin-top: 1em;
      margin-bottom: 1em; } }

.modal-dialog.recipe_details .modal-content {
  width: 800px; }

.modal-dialog.recipe_details .header {
  margin: 16px 0; }
  .modal-dialog.recipe_details .header .image {
    display: inline-block;
    width: 200px;
    vertical-align: bottom; }
  .modal-dialog.recipe_details .header .info {
    display: inline-block;
    width: calc(100% - 380px);
    padding-left: 6px;
    vertical-align: bottom; }
  .modal-dialog.recipe_details .header img {
    object-fit: cover; }

.compact-meal-calendar {
  margin: auto; }
  .compact-meal-calendar .leftover-makeagain-week-calendar.week-calendar {
    width: 100%;
    min-width: auto;
    text-align: left; }
    .compact-meal-calendar .leftover-makeagain-week-calendar.week-calendar .day {
      width: 13.75%;
      border-right: solid 1px var(--base-light-border-color);
      padding: 0; }
      .compact-meal-calendar .leftover-makeagain-week-calendar.week-calendar .day:last-child {
        border-right: none; }
      .compact-meal-calendar .leftover-makeagain-week-calendar.week-calendar .day .meal-type-section {
        padding: 0 6px;
        text-align: left; }
        .compact-meal-calendar .leftover-makeagain-week-calendar.week-calendar .day .meal-type-section input[type="checkbox"] + label {
          margin: 0;
          font-size: 90%;
          width: 100%;
          display: inline-block;
          white-space: normal;
          line-height: 1.25em;
          background-position-y: top;
          padding-top: 5px;
          margin-bottom: 5px;
          color: #ff9c33; }
        .compact-meal-calendar .leftover-makeagain-week-calendar.week-calendar .day .meal-type-section input[type="checkbox"]:disabled + label {
          cursor: default;
          background-image: none;
          padding-left: 0; }
        .compact-meal-calendar .leftover-makeagain-week-calendar.week-calendar .day .meal-type-section .meal {
          font-size: 75%;
          white-space: nowrap;
          overflow: hidden; }
          .compact-meal-calendar .leftover-makeagain-week-calendar.week-calendar .day .meal-type-section .meal.current {
            color: #75be27;
            font-weight: bold; }
    .compact-meal-calendar .leftover-makeagain-week-calendar.week-calendar .day-section {
      padding-top: 1em; }
      .compact-meal-calendar .leftover-makeagain-week-calendar.week-calendar .day-section:last-child {
        padding-bottom: 1em; }

.plan .recipe.action-view .recipe-info .name {
  font-size: 140%;
  margin-top: 20px; }

@media (max-width: 1280px) {
  .plan .recipe.action-view .recipe-info .stats-holder {
    margin-top: 2em; } }

.plan .recipe.action-view .recipe-info .stats .value {
  font-size: 130%; }
  @media (max-width: 1280px) {
    .plan .recipe.action-view .recipe-info .stats .value {
      font-size: 110%; } }

.plan .recipe.action-view .recipe-info .times td {
  font-size: 80%; }
  @media (max-width: 1280px) {
    .plan .recipe.action-view .recipe-info .times td {
      font-size: 75%; } }

.plan .recipe.action-view .recipe-info .separator td {
  height: 3em; }
  @media (max-width: 1280px) {
    .plan .recipe.action-view .recipe-info .separator td {
      height: 2em; } }

@media (max-width: 1280px) {
  .plan.with-info-panel .recipe.action-view .recipe-head .recipe-info {
    width: 37%;
    padding-right: 10px; }
    .plan.with-info-panel .recipe.action-view .recipe-head .recipe-info .name {
      font-size: 130%;
      margin-top: 15px; }
    .plan.with-info-panel .recipe.action-view .recipe-head .recipe-info .stats-holder {
      margin-top: 1em; }
    .plan.with-info-panel .recipe.action-view .recipe-head .recipe-info .stats .value {
      font-size: 100%; }
    .plan.with-info-panel .recipe.action-view .recipe-head .recipe-info .times td {
      font-size: 70%; }
    .plan.with-info-panel .recipe.action-view .recipe-head .recipe-info .separator td {
      height: 1.5em; }
  .plan.with-info-panel .recipe.action-view .recipe-head .recipe-image {
    width: 62%; } }

@media (max-width: 1600px) {
  .plan .recipe.action-view .recipe-head .recipe-info .name {
    font-size: 130%;
    margin-top: 15px; }
  .plan .recipe.action-view .recipe-head .recipe-info .stats-holder {
    margin-top: 1em; }
  .plan .recipe.action-view .recipe-head .recipe-info .stats .value {
    font-size: 100%; }
  .plan .recipe.action-view .recipe-head .recipe-info .stats .times td {
    font-size: 80%; }
  .plan .recipe.action-view .recipe-head .recipe-info .stats .separator td {
    height: 1.5em; } }

.search-results-head .count {
  margin-right: 2em; }

.search-results-head .multi-select .count.inactive {
  opacity: 1; }

.search-results-head select {
  padding: 0.4em 25px 0.4em 0.7em;
  border-color: var(--base-light-color);
  border-radius: 16px;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: #fff;
  background-image: url("img/cmd-arrow-down-black-narrow.21d134f4d6b5.png");
  background-repeat: no-repeat, repeat;
  background-position: right 10px top 50%, 0 0;
  background-size: 10px auto; }
  .search-results-head select#data_sort_select {
    border-color: var(--base-light-border-color); }

.search-results-head #__more_filters_input {
  position: relative; }
  .search-results-head #__more_filters_input .select-text {
    position: absolute;
    left: 0.2em;
    top: 0;
    width: 100%; }

.search-results-head .left-float select {
  margin-right: 0.5em; }

.search-results-head .right-float select {
  margin-left: 0.5em; }

.search-results .food-item {
  display: inline-block;
  margin: 0.5em 1em 2em 1em;
  padding: 10px 30px 10px 30px;
  border: 1px solid #eee;
  border-radius: 10px;
  cursor: pointer; }

.measure-select {
  text-align: left;
  vertical-align: top;
  margin-left: 1em; }
  .measure-select .selected-display {
    display: block;
    margin-bottom: 1.5em;
    font-size: 120%; }
  .measure-select .inactive {
    display: inline-block;
    margin-right: 0.75em;
    margin-bottom: 1.5em;
    border: solid 1px rgba(0, 0, 0, 0.3);
    border-radius: 8px;
    padding: 4px 20px 4px 20px;
    cursor: pointer; }

.food-details-row {
  margin-top: 1em; }
  .food-details-row * {
    vertical-align: top; }
  .food-details-row input[type='text'] {
    width: 6em; }
  .food-details-row .measure-select .inactive {
    opacity: 0.7; }
  .food-details-row .measure-select .selection-item {
    margin: 6px 2px;
    min-width: 4em;
    text-align: center; }

.shopping {
  margin: 5em 3em 1em 3em; }
  @media screen and (max-width: 770px) {
    .shopping {
      margin: 2em 0 1em 0; } }
  .shopping .shopping-list {
    width: 360px;
    min-height: 100%;
    text-align: left;
    vertical-align: top;
    border: solid 1px #e6e6e6;
    padding: 1.5em; }
    @media screen and (max-width: 770px) {
      .shopping .shopping-list {
        width: 100%;
        padding: 1em 0.25em; } }
    .shopping .shopping-list .title {
      margin-bottom: 1em; }
    .shopping .shopping-list .title.controls {
      text-align: left; }
      .shopping .shopping-list .title.controls h3 {
        vertical-align: middle;
        display: inline-block;
        max-width: 165px;
        line-height: 1.1em; }
    .shopping .shopping-list h2, .shopping .shopping-list h3 {
      text-align: left; }
    .shopping .shopping-list td {
      padding: 4px 0 4px 0;
      line-height: 1.2em; }
      @media screen and (max-width: 770px) {
        .shopping .shopping-list td {
          font-size: 90%; } }
    .shopping .shopping-list td.amount {
      padding-right: 6px; }
  .shopping .header {
    height: 5em; }
    .shopping .header div {
      vertical-align: top; }
    .shopping .header .header .controls .group {
      margin-left: 2em; }
  .shopping .control-bar {
    border-top: solid 1px lightgrey;
    text-align: right; }
    .shopping .control-bar .control-link {
      display: inline-block;
      text-decoration: underline;
      color: #009090;
      margin: 0.25em 0 2em 1em;
      cursor: pointer; }
  @media print {
    .shopping {
      border: none;
      margin: 0 auto;
      font-family: var(--font-family-numbers);
      color: black;
      font-size: 12px; }
      .shopping .shopping-list {
        width: auto;
        margin-top: 3em;
        border: none;
        padding: 0; }
        .shopping .shopping-list .title h3 {
          text-align: center; }
        .shopping .shopping-list .category-title {
          font-style: italic;
          text-decoration: underline;
          margin-top: 1em;
          font-size: 130%; }
        .shopping .shopping-list .list {
          -webkit-column-count: 2;
          /* Chrome, Safari, Opera */
          -moz-column-count: 2;
          /* Firefox */
          column-count: 2; }
          .shopping .shopping-list .list .shopping-items-category {
            width: 9cm;
            display: inline-block;
            text-align: left;
            vertical-align: top; }
          .shopping .shopping-list .list .item {
            line-height: 1.25em;
            padding: 0 0.2em; }
            .shopping .shopping-list .list .item * {
              vertical-align: top; }
            .shopping .shopping-list .list .item div {
              display: inline-block; }
            .shopping .shopping-list .list .item .name {
              width: 6cm; }
              .shopping .shopping-list .list .item .name::before {
                content: "\25A1";
                font-size: 175%; }
            .shopping .shopping-list .list .item .amount {
              width: 2.5cm; }
          .shopping .shopping-list .list .item.bought {
            font-style: normal;
            text-decoration: none;
            color: inherit; }
            .shopping .shopping-list .list .item.bought .name::before {
              content: "\25A0"; } }

.shopping-list .category-title {
  font-size: 120%;
  margin: 1.5em 0 0.5em 0; }

.shopping-list-holder {
  display: inline-block;
  margin-right: 2em;
  margin-bottom: 2em;
  vertical-align: top; }
  @media only screen and (max-width: 770px) {
    .shopping-list-holder {
      margin-right: 0; } }
  @media only print {
    .shopping-list-holder {
      margin: 0;
      height: auto !important; } }

.shopping-list-holder .shopping-draggable {
  cursor: pointer;
  -webkit-user-select: none;
  /* webkit (safari, chrome) browsers */
  -moz-user-select: none;
  /* mozilla browsers */
  -khtml-user-select: none;
  /* webkit (konqueror) browsers */
  -ms-user-select: none;
  /* IE10+ */ }

.shopping-list-holder .ui-draggable-handle {
  cursor: move;
  /* fallback if grab cursor is unsupported */
  cursor: grab;
  cursor: -moz-grab;
  cursor: -webkit-grab; }
  .shopping-list-holder .ui-draggable-handle.ui-draggable-dragging, .shopping-list-holder .ui-draggable-handle:active {
    cursor: grabbing;
    cursor: -moz-grabbing;
    cursor: -webkit-grabbing; }

.shopping-list-holder.drop-hover .shopping-list {
  background-color: #fafffa;
  box-shadow: 0 0 8px #d6ffd6; }

.shopping-list .invisible {
  display: none; }

.shopping-list .item.bought {
  font-style: italic;
  text-decoration: line-through;
  color: #cccccc; }

.shopping-screen {
  position: relative; }

.shopping-screen.edit-visible .shopping-list .invisible {
  display: block; }

.shopping-screen.edit-visible .shopping-list tr.invisible {
  display: table-row; }

.shopping-screen.edit-visible .shopping-list .item td {
  padding-top: 8px; }

.shopping-screen.edit-visible .shopping-list .item .name {
  padding-left: 32px;
  background-position: left center;
  background-repeat: no-repeat;
  background-size: 25px; }

.shopping-screen.edit-visible .shopping-list .item.visible .name {
  background-image: url("img/ico-roundcheckbox-orange.211ae3e58f24.png"); }

.shopping-screen.edit-visible .shopping-list .item.invisible .name {
  background-image: url("img/ico-roundcheckbox-checked-orange.4f508418fee1.png"); }

.shopping-list .list-component {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  /* cellspacing="0" */ }
  .shopping-list .list-component td, .shopping-list .list-component th {
    vertical-align: top; }
  .shopping-list .list-component .item-name {
    width: auto; }
  .shopping-list .list-component .item-quantity {
    width: 3.5em; }
  .shopping-list .list-component .item-quantity-unit {
    width: 3.5em; }

.shopping .control-bar div.active {
  color: #e67a45; }

.shopping .control-bar div.disabled {
  color: #bfbfbf;
  cursor: default;
  text-decoration: none; }

.modal-dialog .edit-stores {
  text-align: center;
  padding: 1em 0; }
  .modal-dialog .edit-stores h2,
  .modal-dialog .edit-stores #baskets_table {
    margin-bottom: 1em; }
  .modal-dialog .edit-stores td {
    padding: 0.5em 0; }

.modal-dialog.share-shopping .modal-content {
  padding: 1em;
  text-align: center; }

.modal-dialog.share-shopping .app-button-main {
  display: block;
  margin-bottom: 1em; }

.modal-dialog.share-shopping input {
  display: block;
  width: 100%; }

.modal-dialog.share-shopping .modal-controls .app-button-main {
  display: inline-block; }

.shopping-screen .animation-box {
  display: none;
  position: absolute;
  border: solid 1px #808080;
  background-color: rgba(200, 200, 200, 0.1); }

.do-shop {
  text-align: center; }
  .do-shop .item td {
    padding: 0.5em 1em; }
    @media only screen and (max-width: 770px) {
      .do-shop .item td {
        padding: 0; } }
  .do-shop .item input[type='checkbox'] {
    display: none; }
  .do-shop .item input[type='checkbox'] + label {
    font-style: normal;
    font-size: 120%;
    display: block;
    cursor: pointer;
    padding-left: 0;
    background-image: none;
    white-space: normal;
    line-height: 1.1em; }
    @media only screen and (max-width: 770px) {
      .do-shop .item input[type='checkbox'] + label {
        font-size: 90%;
        margin: 12px 2px; } }
  .do-shop .item input[type='checkbox']:checked + label {
    text-decoration: line-through;
    font-style: italic;
    color: #cccccc;
    background-image: none; }
  .do-shop .item.has_deal .deal_icon {
    float: left; }
  .do-shop .item.has_deal label {
    margin-left: 31px; }
  .do-shop .table-holder {
    display: inline-block;
    min-width: 320px;
    padding: 0.5em;
    margin: 1.5em;
    border: solid 1px #eee;
    text-align: left; }
    @media only screen and (max-width: 770px) {
      .do-shop .table-holder {
        margin: 1em 0 1em 0;
        padding: 8px; } }
    @media only print {
      .do-shop .table-holder {
        min-width: 290px;
        margin: 0;
        height: auto !important; } }
  .do-shop .header .link {
    margin: 0 2em 0 2em; }

.do-shop .item .small-button, .shopping-list .item .small-button {
  border-radius: 6px;
  cursor: pointer;
  padding: 2px 8px 4px 8px;
  line-height: 1em;
  margin-left: 6px; }

.do-shop .item .small-button:hover, .shopping-list .item .small-button:hover {
  border: 1px solid #b3b3b3; }

.do-shop .single-table-holder {
  max-width: 800px;
  min-width: 320px;
  padding: 0.5em;
  border: solid 1px #eee;
  text-align: left; }

.do-shop.external-access {
  text-align: center;
  max-width: 1200px;
  margin: 1em auto 0 auto; }
  .do-shop.external-access .table-holder {
    display: inline-block;
    max-width: 550px;
    min-width: 400px;
    padding: 0.5em;
    margin: 1em;
    border: solid 1px #cccccc;
    text-align: left; }
  .do-shop.external-access .single-table-holder {
    max-width: 800px;
    min-width: 600px;
    padding: 0.5em;
    border: solid 1px #eee;
    text-align: left;
    box-shadow: 0 2px 3px #ddd; }
  @media only print {
    .do-shop.external-access .item td {
      padding: 0.2em;
      vertical-align: top; }
    .do-shop.external-access * {
      line-height: 1.3em !important; }
    .do-shop.external-access .item .small-button {
      height: 100%;
      background: transparent;
      vertical-align: top;
      margin: 0;
      padding: 0; }
    .do-shop.external-access .table-holder {
      height: auto !important;
      min-width: 200px;
      width: 47% !important;
      border: none; } }
  @media only screen and (max-width: 600px) {
    .do-shop.external-access .single-table-holder, .do-shop.external-access .table-holder {
      min-width: 310px;
      margin: 0; } }

/*------------- cookbook ----------------*/
/*---------------------------------------*/
.cookbook-top {
  padding: 2em 1em 0 1em; }
  .cookbook-top .controls .app-button {
    margin-top: 0.25em;
    margin-bottom: 0.25em; }
  .cookbook-top .controls-off-center {
    margin-left: 40%;
    margin-top: 1em;
    opacity: 0.5; }
  .cookbook-top .controls-off-center:hover {
    opacity: 1; }
  .cookbook-top .title {
    font-size: 110%;
    margin-bottom: 0.75em; }
  @media (min-width: 771px) {
    .cookbook-top .search-pane .controls {
      white-space: nowrap;
      overflow-x: hidden; } }

.cookbook-content .header {
  margin-top: 1em; }

.cookbook-content .controls {
  margin-top: 0.5em; }
  .cookbook-content .controls label {
    vertical-align: middle; }

@media only screen and (max-width: 770px) {
  .recipe-import-link,
  .recipe-type-in-link {
    display: none; } }

.cmd-small {
  cursor: pointer;
  width: 35px;
  height: 35px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto 28px; }
  .cmd-small.inline-subtle {
    display: inline-block;
    vertical-align: middle;
    width: 30px;
    height: 30px;
    opacity: 0.5;
    background-size: 16px;
    border: solid 1px var(--base-light-color);
    border-radius: 50%; }
    .cmd-small.inline-subtle:hover {
      opacity: 0.75; }

.search-pane .cmd-small.inline-subtle {
  margin-left: -0.25em; }

.cmd-small.delete {
  background-image: url("img/cmd-trash-small-black.55ee760123bc.png"); }

.cmd-small.add {
  background-image: url("img/cmd-plus-black.7170bef35e85.png");
  background-size: auto 20px; }

.cmd-small.share {
  background-image: url("img/cmd-share-black.d57672515874.png"); }

.cmd-small.shop {
  background-image: url("img/cmd-shopping-cart-black.1e1a81d16071.png"); }

.cmd-small.close {
  background-image: url("img/cmd-close-shadowed.e3335c0ff248.png"); }

.cmd-small.close-simple {
  background-image: url("img/cmd-close-simple-black.5f567333c0f1.png"); }

.cmd-small.terms {
  background-image: url("img/ico-multiple-items.874894737e5a.png"); }

.cmd-small.terms.has-terms {
  background-image: url("img/ico-mutliple-items-teal.f3736e124980.png"); }

.title-controls {
  float: right; }
  .title-controls .cmd-small {
    display: inline-block;
    margin-left: 0.25em; }

.jconfirm.jconfirm-mgtheme .jconfirm-bg {
  background-color: #444;
  opacity: .2; }

.jconfirm.jconfirm-mgtheme .jconfirm-box {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.5);
  border-radius: 8px; }
  .jconfirm.jconfirm-mgtheme .jconfirm-box.jconfirm-type-narrow {
    max-width: 500px; }
  .jconfirm.jconfirm-mgtheme .jconfirm-box.jconfirm-type-wide {
    max-width: 600px; }
  .jconfirm.jconfirm-mgtheme .jconfirm-box.jconfirm-type-extrawide {
    max-width: 800px; }
  .jconfirm.jconfirm-mgtheme .jconfirm-box.section-dividers {
    padding: 0; }
    .jconfirm.jconfirm-mgtheme .jconfirm-box.section-dividers .jconfirm-title-c {
      padding: 0.5em 1em 0.25em 1em;
      border-bottom: solid 1px var(--base-light-border-color); }
    .jconfirm.jconfirm-mgtheme .jconfirm-box.section-dividers .jconfirm-buttons {
      border-top: solid 1px var(--base-light-border-color);
      padding: 1em 1em 0.25em 1em; }
    .jconfirm.jconfirm-mgtheme .jconfirm-box.section-dividers .jconfirm-content-pane {
      padding: 1em; }
  .jconfirm.jconfirm-mgtheme .jconfirm-box.add-program .jconfirm-content {
    height: 350px; }
  .jconfirm.jconfirm-mgtheme .jconfirm-box .jconfirm-title-c .jconfirm-icon-c {
    margin-right: 8px;
    margin-left: 0;
    font-weight: bold; }
  .jconfirm.jconfirm-mgtheme .jconfirm-box .jconfirm-title-c .jconfirm-title {
    font-size: 26px;
    margin: 8px 0;
    line-height: 1.1em; }
  .jconfirm.jconfirm-mgtheme .jconfirm-box .jconfirm-buttons {
    text-align: right; }
    .jconfirm.jconfirm-mgtheme .jconfirm-box .jconfirm-buttons button {
      text-transform: capitalize;
      font-size: 22px;
      text-shadow: none;
      box-shadow: none;
      border: 1px solid var(--base-color);
      border-radius: 8px;
      margin-right: 6px; }
    .jconfirm.jconfirm-mgtheme .jconfirm-box .jconfirm-buttons button.btn-default {
      color: var(--base-color);
      background-color: transparent; }
      .jconfirm.jconfirm-mgtheme .jconfirm-box .jconfirm-buttons button.btn-default:hover {
        color: #000;
        background-color: transparent; }
    .jconfirm.jconfirm-mgtheme .jconfirm-box .jconfirm-buttons button.btn-main {
      color: var(--base-color);
      background: var(--highlight-action-color);
      font-weight: bold; }
      .jconfirm.jconfirm-mgtheme .jconfirm-box .jconfirm-buttons button.btn-main:hover {
        color: #000; }
  .jconfirm.jconfirm-mgtheme .jconfirm-box .jconfirm-content .jconfirm-prompt {
    line-height: normal; }
    .jconfirm.jconfirm-mgtheme .jconfirm-box .jconfirm-content .jconfirm-prompt .full-prompt-row {
      margin: 0.5em; }
      .jconfirm.jconfirm-mgtheme .jconfirm-box .jconfirm-content .jconfirm-prompt .full-prompt-row label {
        float: left;
        padding: 5px 10px 0 0;
        font-weight: bold; }
      .jconfirm.jconfirm-mgtheme .jconfirm-box .jconfirm-content .jconfirm-prompt .full-prompt-row .input-box {
        overflow: hidden; }
        .jconfirm.jconfirm-mgtheme .jconfirm-box .jconfirm-content .jconfirm-prompt .full-prompt-row .input-box input, .jconfirm.jconfirm-mgtheme .jconfirm-box .jconfirm-content .jconfirm-prompt .full-prompt-row .input-box select {
          width: 100%;
          box-sizing: border-box;
          background-color: white; }

.sort-handle {
  display: inline-block;
  cursor: move; }

.sort-handle:before {
  content: "\21c5"; }

.delete-button {
  display: inline-block;
  cursor: pointer;
  background-image: url("img/cmd-trash-small-black.55ee760123bc.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  width: 30px;
  height: 30px; }

.more-actions-button {
  display: inline-block;
  cursor: pointer;
  background-image: url("img/cmd_more_actions.c70ac49ed2f3.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  width: 30px;
  height: 30px; }
  .more-actions-button:hover {
    background-color: var(--base-light-border-color); }

.add-button {
  display: inline-block;
  cursor: pointer;
  background-image: url("img/cmd-plus-black.7170bef35e85.png");
  background-size: 25px;
  background-position: center;
  background-repeat: no-repeat;
  width: 30px;
  height: 30px; }

button.add-button {
  color: inherit;
  background-color: inherit;
  border: none; }

.app-button-in-form {
  background-color: var(--highlight-action-background);
  color: var(--highlight-action-color);
  padding: 8px 1.5em;
  border-radius: 25px;
  display: inline-block;
  font-size: 120%;
  text-align: center;
  box-shadow: 1px 2px 6px var(--base-color);
  cursor: pointer; }
  .app-button-in-form.full-width {
    padding: 0.75em 2em;
    margin-top: 1em;
    width: 100%;
    border-radius: 10px; }
  .app-button-in-form.icon {
    padding: 0;
    width: 42px;
    height: 42px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 25px; }
    .app-button-in-form.icon.small {
      width: 34px;
      height: 34px;
      background-size: 20px; }
    .app-button-in-form.icon.add {
      background-image: url("img/cmd-plus-white.fadf8922a237.png"); }

/*   recipe edit */
/* ======= recipe edit ===============*/
.recipe .item {
  position: relative; }

.recipe .recipe-img {
  position: relative; }

.recipe .recipe-img .publisher {
  position: absolute;
  bottom: 6px;
  right: 6px;
  opacity: 0.8; }

.recipe .recipe-img .publisher img {
  max-width: 80px;
  max-height: 80px; }

.recipe-img {
  max-height: 400px;
  overflow: hidden; }

.recipe-edit.tab_navigation_view {
  padding-left: 9.2em; }
  .recipe-edit.tab_navigation_view .state-list {
    width: 8.5em; }

.recipe-edit .edit-form {
  padding: 0 1em 0 0.25em; }
  @media (max-width: 770px) {
    .recipe-edit .edit-form {
      width: auto; } }
  .recipe-edit .edit-form .inline-short-field {
    width: 3.8em; }
  .recipe-edit .edit-form .short-field {
    width: 4.5em; }
  .recipe-edit .edit-form .small-area {
    margin: 0 0 0 2em; }
  .recipe-edit .edit-form h2 {
    padding: 0.5em 0 0.5em 0; }
  .recipe-edit .edit-form label, .recipe-edit .edit-form .label {
    margin-right: 0.5em;
    margin-bottom: 0.5em;
    display: inline-block; }
  .recipe-edit .edit-form .controls {
    margin: 15px auto; }
  .recipe-edit .edit-form .field-description {
    text-align: left;
    margin: 6px 0; }
  .recipe-edit .edit-form .optional-field-note {
    font-size: 70%;
    font-style: italic;
    font-weight: bold; }
  .recipe-edit .edit-form .form-section {
    padding: 0.5em 0;
    margin-bottom: 1em; }
    .recipe-edit .edit-form .form-section.multi-select.toggle-tokens .active, .recipe-edit .edit-form .form-section.multi-select.toggle-tokens .inactive {
      min-width: 5em;
      text-align: center; }
    .recipe-edit .edit-form .form-section.name input {
      width: 25em; }
    .recipe-edit .edit-form .form-section input {
      width: 35em; }
    .recipe-edit .edit-form .form-section label {
      width: 8em;
      display: inline-block; }
    .recipe-edit .edit-form .form-section.number-input input {
      width: 3.5em; }
    .recipe-edit .edit-form .form-section input[type='checkbox'] + label {
      margin-left: 0;
      margin-right: 2em; }
    .recipe-edit .edit-form .form-section .block {
      padding: 0;
      min-width: 100px; }
  .recipe-edit .edit-form .form-section.fit-input input, .recipe-edit .edit-form .form-section.fit-input textarea, .recipe-edit .edit-form .form-section.fit-input select {
    width: 100%; }
  .recipe-edit .edit-form .invalid input, .recipe-edit .edit-form input.invalid, .recipe-edit .edit-form .invalid textarea, .recipe-edit .edit-form input:invalid {
    color: #ee0000;
    border-color: #ee0000; }
  .recipe-edit .edit-form .invalid-note {
    color: #ee0000; }
  .recipe-edit .edit-form .toggle-switch .field-description {
    padding-left: 60px;
    margin-top: 5px; }
  .recipe-edit .edit-form select.django-select2 {
    width: 50%;
    min-width: 250px; }
  .recipe-edit .edit-form #tagging .select2-container {
    min-width: 350px !important;
    width: 50% !important; }

.recipe-edit .shaded {
  background-color: var(--tab-panel-background-color);
  color: var(--tab-panel-color); }
  .recipe-edit .shaded input, .recipe-edit .shaded textarea {
    border-color: transparent;
    background-color: white; }

.recipe-edit .inline {
  margin-right: 2em; }

.recipe-edit #ingredients-table, .recipe-edit #subrecipes, .recipe-edit #prep_instructions_table {
  width: 100%;
  min-width: 500px;
  padding-bottom: 12px;
  border-spacing: 0;
  border-collapse: collapse;
  table-layout: fixed; }
  .recipe-edit #ingredients-table thead, .recipe-edit #subrecipes thead, .recipe-edit #prep_instructions_table thead {
    background-color: var(--tab-panel-background-color);
    color: var(--tab-panel-color); }
  .recipe-edit #ingredients-table th.sort-handle-title, .recipe-edit #subrecipes th.sort-handle-title, .recipe-edit #prep_instructions_table th.sort-handle-title {
    width: 50px; }
  .recipe-edit #ingredients-table th.amount, .recipe-edit #subrecipes th.amount, .recipe-edit #prep_instructions_table th.amount {
    width: 5.5em; }
  .recipe-edit #ingredients-table th.DELETE, .recipe-edit #ingredients-table th.CHECKBOX, .recipe-edit #subrecipes th.DELETE, .recipe-edit #subrecipes th.CHECKBOX, .recipe-edit #prep_instructions_table th.DELETE, .recipe-edit #prep_instructions_table th.CHECKBOX {
    width: 80px; }
  .recipe-edit #ingredients-table th.add, .recipe-edit #subrecipes th.add, .recipe-edit #prep_instructions_table th.add {
    width: 50px; }
  .recipe-edit #ingredients-table th.prep, .recipe-edit #subrecipes th.prep, .recipe-edit #prep_instructions_table th.prep {
    width: 50px; }
  .recipe-edit #ingredients-table th.original-import, .recipe-edit #subrecipes th.original-import, .recipe-edit #prep_instructions_table th.original-import {
    width: 50px; }
  .recipe-edit #ingredients-table td, .recipe-edit #subrecipes td, .recipe-edit #prep_instructions_table td {
    padding: 4px 4px 4px 0; }
    .recipe-edit #ingredients-table td label, .recipe-edit #subrecipes td label, .recipe-edit #prep_instructions_table td label {
      margin: 0; }
    .recipe-edit #ingredients-table td input:not([type='number']), .recipe-edit #subrecipes td input:not([type='number']), .recipe-edit #prep_instructions_table td input:not([type='number']) {
      width: 100%; }
  .recipe-edit #ingredients-table th, .recipe-edit #subrecipes th, .recipe-edit #prep_instructions_table th {
    padding: 8px;
    font-size: 90%;
    text-align: left;
    font-weight: normal;
    font-style: italic;
    line-height: 1.2em; }
  .recipe-edit #ingredients-table input, .recipe-edit #subrecipes input, .recipe-edit #prep_instructions_table input {
    background-color: white; }
  .recipe-edit #ingredients-table input[type=checkbox][id$="DELETE"], .recipe-edit #subrecipes input[type=checkbox][id$="DELETE"], .recipe-edit #prep_instructions_table input[type=checkbox][id$="DELETE"] {
    display: none; }
  .recipe-edit #ingredients-table .prep-button, .recipe-edit #subrecipes .prep-button, .recipe-edit #prep_instructions_table .prep-button {
    display: inline-block;
    cursor: pointer;
    background: white;
    border: none;
    background-image: url("img/cmd-prep.411fb3712b72.png");
    background-size: auto 30px;
    background-position: center;
    background-repeat: no-repeat;
    width: 30px;
    height: 30px; }
  .recipe-edit #ingredients-table .prep-edit-link, .recipe-edit #subrecipes .prep-edit-link, .recipe-edit #prep_instructions_table .prep-edit-link {
    cursor: pointer; }
  .recipe-edit #ingredients-table .original-import-button, .recipe-edit #subrecipes .original-import-button, .recipe-edit #prep_instructions_table .original-import-button {
    color: inherit;
    background-color: inherit;
    border: none;
    display: inline-block;
    cursor: pointer;
    background-image: url("img/icon_magnify.8e43363bf67a.png");
    background-size: auto 30px;
    background-position: center;
    background-repeat: no-repeat;
    width: 30px;
    height: 30px; }

.recipe-edit #prep_instructions_table .prep-row td {
  padding-left: 0.5em; }

.recipe-edit #prep_instructions_table .prep-row .delete-button {
  vertical-align: middle; }

.recipe-edit #prep_instructions_table .prep-row .prep-instruction-field {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  cursor: pointer; }
  .recipe-edit #prep_instructions_table .prep-row .prep-instruction-field textarea {
    vertical-align: top;
    width: 100%;
    min-width: 400px; }

.recipe-edit #prep_instructions_table .prep-row .prep-inputs input {
  width: 3.5em; }

.sort_modal table {
  width: 100%;
  border-spacing: 0;
  border-collapse: collapse; }
  .sort_modal table thead {
    background-color: #73bdb7;
    color: white; }
  .sort_modal table th, .sort_modal table td {
    padding: 8px; }
  .sort_modal table th {
    font-size: 90%;
    text-align: left;
    font-weight: normal;
    font-style: italic;
    cursor: default; }

.sort_modal .ui-sortable-handle {
  cursor: -moz-grab;
  cursor: -webkit-grab;
  cursor: grab; }

.sort_modal .ui-sortable-helper {
  display: table;
  cursor: -moz-grabbing;
  cursor: -webkit-grabbing;
  cursor: grabbing; }

.controls.fixed {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  margin-bottom: 0;
  background: rgba(250, 250, 250, 0.9);
  border-top: solid 1px #b3b3b3;
  padding-left: 60px; }
  @media only screen and (max-width: 770px) {
    .controls.fixed {
      bottom: 50px; } }
  .controls.fixed .app-button-main {
    background-color: var(--base-light-color);
    color: var(--base-background-color); }
    .controls.fixed .app-button-main.data-changed, .controls.fixed .app-button-main.highlight {
      background-color: var(--base-color) !important; }
  .controls.fixed input.black[type='submit'] {
    background-color: var(--base-light-color); }
  .controls.fixed .app-button {
    background-color: var(--base-background-color);
    color: var(--base-color);
    min-width: 200px;
    border: solid 2px var(--base-light-color);
    text-decoration: none;
    padding-left: 1em;
    padding-right: 1em; }
    @media only screen and (max-width: 770px) {
      .controls.fixed .app-button {
        min-width: auto; } }
    .controls.fixed .app-button.data-changed, .controls.fixed .app-button.highlight {
      background-color: var(--base-color) !important;
      color: var(--base-background-color) !important; }

.cmd-icon {
  width: 50px;
  height: 50px;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 50%;
  display: inline-block;
  vertical-align: middle;
  background-size: contain;
  cursor: pointer; }

.cmd-icon.small-icon {
  width: 35px;
  height: 35px; }

.cmd-square-icon {
  width: 32px;
  height: 32px;
  background-position: center;
  background-repeat: no-repeat;
  border: solid 1px var(--base-light-border-color);
  border-radius: 6px;
  display: inline-block;
  vertical-align: middle;
  background-size: 22px;
  cursor: pointer;
  margin: 0 4px; }
  .cmd-square-icon:hover {
    box-shadow: 2px 2px 3px var(--base-light-border-color); }

.cmd-plus {
  background-image: url("img/cmd-plus.602dc0fc8f8e.png"); }

.cmd-minus {
  background-image: url("img/cmd-minus.597e8b4a2e18.png"); }

.cmd-refresh {
  background-image: url("img/cmd-refresh.01b4c1247b10.png"); }

.cmd-delete {
  background-image: url("img/cmd-trash-small-black.55ee760123bc.png"); }

.cmd-preview {
  background-image: url("img/cmd-preview.6521b5e53993.png"); }

.cmd-send {
  background-image: url("img/cmd-send.c1d3fcaf1581.png"); }

.cmd-edit {
  background-image: url("img/cmd-edit.7ead937e0d65.png"); }

.cmd-impersonate {
  background-image: url("img/ico-impersonate.cc5fd401bbfa.png"); }

.cmd-external-link {
  background-image: url("img/ico-external-link.8666f28001d4.png"); }

.cmd-date {
  background-image: url("img/cmd-calendar.7a3f15a8e864.png"); }

.cmd-move {
  background-image: url("img/ico-move-large.ce1dac9d4900.png"); }

.cmd-remove-user {
  background-image: url("img/ico-remove-cross.cf8ec917aea0.png"); }

.recipe td.rating {
  min-width: 232px;
  padding-left: 0;
  padding-right: 0; }

@media only screen and (max-width: 1280px) {
  .recipe-edit {
    width: 100%; }
  .recipe-edit input {
    max-width: 100%; } }

.small-delete-button {
  background: url("img/remove.834cc8aa504f.png") no-repeat center center;
  background-size: auto 18px;
  width: 35px;
  height: 35px;
  padding: 0;
  cursor: pointer;
  display: inline-block; }

/*===== info panel ===*/
.recipe-info-panel {
  position: fixed;
  right: 0;
  top: 75px;
  padding: 0.5em 4px 265px 4px;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
  width: 250px;
  background-color: var(--tab-panel-background-color);
  color: var(--tab-panel-color);
  font-size: 70%;
  line-height: 1.2em;
  height: 100%;
  z-index: 2;
  transition: width 1s, padding 1s; }
  @media (max-width: 1280px) {
    .recipe-info-panel {
      width: 208px;
      font-size: 65%; }
      .recipe-info-panel #info-panel-button {
        right: 208px; } }
  @media (max-width: 1030px) {
    .recipe-info-panel {
      display: none; } }
  .recipe-info-panel h1 {
    color: inherit;
    font-size: 130%; }
    .recipe-info-panel h1 .small {
      font-size: 70%;
      font-weight: normal; }
  .recipe-info-panel .nutrients {
    height: calc(100% - 170px);
    overflow-x: hidden;
    overflow-y: auto;
    border-bottom: 1px dotted var(--tab-panel-color);
    margin-bottom: 0.75em; }
  .recipe-info-panel .servings {
    height: 175px;
    overflow-x: hidden;
    overflow-y: auto;
    border-bottom: 1px dotted var(--tab-panel-color);
    margin-bottom: 0.75em; }
  .recipe-info-panel .macro-balance {
    height: 90px;
    overflow-x: hidden;
    overflow-y: auto;
    border-bottom: 1px dotted var(--tab-panel-color);
    margin-bottom: 0.75em; }
  .recipe-info-panel .rating-button {
    margin-top: 5px;
    margin-bottom: 5px;
    position: absolute;
    bottom: 185px;
    left: 50%;
    margin-left: -100px;
    background-color: rgba(0, 0, 0, 0.3);
    font-size: 100%;
    padding-top: 4px; }
  .recipe-info-panel tbody tr:nth-child(Even) {
    background-color: rgba(60, 60, 60, 0.1); }
  .recipe-info-panel td {
    padding: 4px 4px 4px 4px; }
  .recipe-info-panel td.value {
    color: inherit; }

.closed .recipe-info-panel {
  width: 0;
  padding: 0;
  margin: 0;
  transition: width 1s, padding 1s; }
  .closed .recipe-info-panel .rating-button {
    display: none; }
  .closed .recipe-info-panel #info-panel-button {
    right: 1px; }

.info tbody tr:nth-child(Even) {
  background-color: #f0f0f0; }

/*   end recipe edit */
/* settings */
.settings-screen.tab_navigation_view .state-list .label {
  padding: 7px 0 7px 16px; }
  @media only screen and (max-height: 800px) {
    .settings-screen.tab_navigation_view .state-list .label {
      padding: 5px 0 5px 16px;
      font-size: 95%; } }

@media only screen and (min-width: 771px) {
  .settings-screen.tab_navigation_view .activity label {
    float: left; }
  .settings-screen.tab_navigation_view .activity #activity_levels {
    margin-left: 7em;
    display: block; } }

.settings-screen .settings-form {
  max-width: 900px;
  margin: 0 auto 0 auto; }
  .settings-screen .settings-form.wide-form {
    max-width: 1000px; }
  .settings-screen .settings-form .help {
    font-size: 80%;
    line-height: 1.2em; }
    .settings-screen .settings-form .help p {
      margin: 0.5em 0; }
    .settings-screen .settings-form .help li {
      margin: 0.25em 0; }
  .settings-screen .settings-form h2.description, .settings-screen .settings-form h3.description, .settings-screen .settings-form div.description {
    line-height: 1.3em;
    text-align: left;
    margin: 0.5em 0; }
  .settings-screen .settings-form .form-row {
    margin: 1.5em auto 1.5em auto; }
    .settings-screen .settings-form .form-row select {
      max-width: 290px; }
    @media only screen and (min-width: 771px) {
      .settings-screen .settings-form .form-row select {
        max-width: 250px; }
      .settings-screen .settings-form .form-row .help {
        margin-left: 135px; }
      .settings-screen .settings-form .form-row.long-field .help {
        margin: 1em 0; } }
    @media only screen and (max-width: 770px) {
      .settings-screen .settings-form .form-row {
        padding-left: 0.25em; } }
    .settings-screen .settings-form .form-row > label {
      width: 160px;
      display: inline-block;
      white-space: normal; }
      .settings-screen .settings-form .form-row > label.long {
        width: auto; }
      @media only screen and (max-width: 770px) {
        .settings-screen .settings-form .form-row > label {
          font-size: 90%;
          width: 7em; } }
    .settings-screen .settings-form .form-row.toggle-switch > label, .settings-screen .settings-form .form-row.radio-switch > label {
      width: auto; }
    .settings-screen .settings-form .form-row.long-field label {
      display: block;
      width: auto;
      margin-bottom: 0.25em; }
    .settings-screen .settings-form .form-row.long-field input {
      width: 100%; }
    .settings-screen .settings-form .form-row.long-field.section-separator {
      margin-top: 2em;
      padding-top: 0; }
  .settings-screen .settings-form#team_info_form .form-row > label {
    width: 200px; }
  .settings-screen .settings-form#team_info_form .form-row.long-field > label {
    width: auto; }
  .settings-screen .settings-form#team_info_form .section-box {
    margin: 2em auto; }
    .settings-screen .settings-form#team_info_form .section-box .form-row {
      margin: 0.75em auto 0.75em 0; }
      .settings-screen .settings-form#team_info_form .section-box .form-row > label {
        width: 180px; }
      .settings-screen .settings-form#team_info_form .section-box .form-row > input[type='checkbox'] + label {
        width: auto;
        margin-left: 185px;
        margin-bottom: 20px; }
      .settings-screen .settings-form#team_info_form .section-box .form-row .indented {
        margin-left: 185px; }
  .settings-screen .settings-form .diet-list {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2; }
  .settings-screen .settings-form#team_info_form input[type=text], .settings-screen .settings-form#team_info_form input[type=email], .settings-screen .settings-form#team_info_form input[type=tel] {
    min-width: 20em; }
  .settings-screen .settings-form#client_messages_form_container .horizontal-tabs .tab {
    width: 50%; }

.settings-screen .settings-form.promocode-form label {
  min-width: 110px;
  width: auto;
  margin-right: 5px;
  vertical-align: top; }

.settings-screen .settings-form.promocode-form .help {
  margin-left: 115px; }

.settings-screen .settings-form.billing {
  width: 900px;
  /*
    table.vertical_info {
      line-height: normal;
      th, td {
        padding-bottom: 0.5em;
        vertical-align: top;
      }
      th {
        text-align: right;
        min-width: 7.5em;
      }
    }
    */
  /*
    #practitioner_payment_method_form #proplan_details {
      font-weight: bold;
    }
    */
  /*
    &.settings-form {
      td .small-button {
        width: 100%;
      }
    */
  /*
      #practitioner_payment_method_form {
        max-width: 600px;
        margin: auto;

        .form-row.long-input input { width: 25em; }
      }

    }
     */ }
  .settings-screen .settings-form.billing h3 {
    margin-bottom: 0.5em; }
  .settings-screen .settings-form.billing .membership {
    padding-top: 1em; }
    .settings-screen .settings-form.billing .membership .title {
      text-align: center;
      font-size: 180%;
      margin: 1em auto; }
    .settings-screen .settings-form.billing .membership .sub-title {
      margin: 0 auto 1em auto;
      text-align: center;
      font-size: 150%; }
    .settings-screen .settings-form.billing .membership .plan-details, .settings-screen .settings-form.billing .membership .current-plan-details {
      text-align: center; }
      .settings-screen .settings-form.billing .membership .plan-details .price, .settings-screen .settings-form.billing .membership .plan-details .currency, .settings-screen .settings-form.billing .membership .plan-details .frequency, .settings-screen .settings-form.billing .membership .current-plan-details .price, .settings-screen .settings-form.billing .membership .current-plan-details .currency, .settings-screen .settings-form.billing .membership .current-plan-details .frequency {
        display: inline-block;
        margin: 0 6px; }
      .settings-screen .settings-form.billing .membership .plan-details .details, .settings-screen .settings-form.billing .membership .current-plan-details .details {
        margin-top: 10px;
        font-style: italic; }
      .settings-screen .settings-form.billing .membership .plan-details .description, .settings-screen .settings-form.billing .membership .current-plan-details .description {
        text-align: center; }
    .settings-screen .settings-form.billing .membership .plan-details {
      margin: 2.5em auto; }
      .settings-screen .settings-form.billing .membership .plan-details .price {
        font-size: 200%; }
      .settings-screen .settings-form.billing .membership .plan-details .currency, .settings-screen .settings-form.billing .membership .plan-details .frequency {
        font-size: 170%; }
      .settings-screen .settings-form.billing .membership .plan-details.selected-plan .frequency {
        display: none; }
    .settings-screen .settings-form.billing .membership .current-plan-details {
      margin: 1.5em auto; }
      .settings-screen .settings-form.billing .membership .current-plan-details .price {
        font-size: 160%; }
      .settings-screen .settings-form.billing .membership .current-plan-details .currency, .settings-screen .settings-form.billing .membership .current-plan-details .frequency {
        font-size: 130%; }
  .settings-screen .settings-form.billing .inline-form {
    border: solid 1px var(--base-light-border-color);
    border-radius: 30px; }
    .settings-screen .settings-form.billing .inline-form .controls {
      margin-bottom: 1em; }
      .settings-screen .settings-form.billing .inline-form .controls .app-button-main, .settings-screen .settings-form.billing .inline-form .controls .app-button {
        padding-left: 0.8em;
        padding-right: 0.8em;
        min-width: auto; }
    .settings-screen .settings-form.billing .inline-form .radio-switch input + label {
      margin: 0 2em;
      font-size: 110%; }
    .settings-screen .settings-form.billing .inline-form .small-area {
      border-radius: 10px;
      padding: 1em 2em;
      min-width: 60%; }
  .settings-screen .settings-form.billing .plan-select.edit-form {
    width: 600px;
    margin: auto;
    padding-top: 0; }
  .settings-screen .settings-form.billing .promocode-message {
    margin-top: 6px;
    font-style: italic;
    font-size: 90%;
    color: #c8540b; }
  .settings-screen .settings-form.billing.consumer td, .settings-screen .settings-form.billing.consumer th {
    vertical-align: top;
    line-height: 1.25em;
    padding: 6px;
    font-size: 90%; }
    .settings-screen .settings-form.billing.consumer td.price, .settings-screen .settings-form.billing.consumer th.price {
      min-width: 6.5em; }
  .settings-screen .settings-form.billing.consumer th, .settings-screen .settings-form.billing.consumer td {
    border-bottom: solid 1px var(--base-light-border-color); }
  .settings-screen .settings-form.billing.consumer tr:last-child td {
    border-bottom: none; }
  .settings-screen .settings-form.billing.consumer .payment-method .item {
    display: inline-block;
    margin-right: 2em; }
  .settings-screen .settings-form.billing.consumer .section-box {
    margin-top: 3em; }

.settings-screen .settings-form.branding-form .color-selectors {
  margin-top: 0.5em; }
  .settings-screen .settings-form.branding-form .color-selectors label {
    width: 6em;
    text-align: right; }

.settings-screen .settings-form.branding-form label {
  display: inline-block;
  margin-right: 0.5em;
  width: 7em; }

.settings-screen .settings-form.branding-form * {
  vertical-align: middle; }

.settings-screen .settings-form.branding-form .image-upload {
  border: solid 1px #e6e6e6; }

.settings-screen .settings-form.branding-form .preview-box {
  font-size: 75%;
  line-height: 1.5em;
  width: 100%;
  margin-top: 2em; }
  .settings-screen .settings-form.branding-form .preview-box h3.section-title {
    font-size: 160%; }
  .settings-screen .settings-form.branding-form .preview-box .app-button-main {
    margin: 0.3em 0.1em; }

.settings-screen .image-upload {
  width: 100%; }
  .settings-screen .image-upload img {
    min-height: auto; }

.jconfirm-content .plan-info {
  margin: 1.5em auto;
  font-size: 200%;
  text-align: center; }
  .jconfirm-content .plan-info div {
    display: inline-block;
    margin: 0 0.15em; }

#payment_method_form_panel #payment_method_form .form-row {
  margin: 1em auto 1em auto; }
  #payment_method_form_panel #payment_method_form .form-row.small-section {
    border: solid 1px var(--base-light-border-color);
    border-radius: 10px;
    padding: 20px;
    margin: 2em auto; }
    #payment_method_form_panel #payment_method_form .form-row.small-section .title {
      background-color: white;
      text-align: center;
      width: fit-content;
      padding: 0 10px;
      margin: -34px auto 16px auto;
      font-size: 125%; }
  #payment_method_form_panel #payment_method_form .form-row input, #payment_method_form_panel #payment_method_form .form-row select {
    width: 16em;
    max-width: none; }

#payment_method_form_panel #payment_method_form .braintree-upper-container {
  min-height: 140px; }

#payment_method_form_panel #payment_method_form .braintree-large-button.braintree-toggle {
  width: 16em;
  margin: 0 auto 10px auto;
  border: solid 1px var(--base-light-border-color);
  border-radius: 18px;
  padding: 12px; }
  #payment_method_form_panel #payment_method_form .braintree-large-button.braintree-toggle span {
    border: none; }

#payment_method_form_panel #payment_method_form .braintree-sheet__icons {
  display: inline-block;
  float: right;
  width: 180px;
  white-space: nowrap;
  overflow: hidden; }
  #payment_method_form_panel #payment_method_form .braintree-sheet__icons svg {
    width: 28px; }

#payment_method_form_panel,
#add_subscription_form_panel {
  width: 500px; }

.modal-dialog.payment-method {
  width: 560px;
  height: 600px; }
  .modal-dialog.payment-method .braintree-large-button.braintree-toggle {
    width: 16em;
    margin: 0 auto 10px auto;
    border: solid 1px var(--base-light-border-color);
    border-radius: 18px;
    padding: 12px; }
    .modal-dialog.payment-method .braintree-large-button.braintree-toggle span {
      border: none; }

.modal-dialog.billing-address {
  width: 700px;
  height: 500px; }
  .modal-dialog.billing-address .form-row input, .modal-dialog.billing-address .form-row select {
    width: 24em;
    max-width: none; }

.modal-dialog.team-subscription-count {
  width: 600px;
  height: 400px; }

.image-widget label {
  vertical-align: top; }

.image-widget .content {
  display: inline-block;
  vertical-align: top; }
  .image-widget .content img {
    width: 480px;
    height: 80px;
    object-fit: contain;
    border: solid 1px #f5f5f5; }
  .image-widget .content .controls {
    display: inline-block;
    vertical-align: top; }
    .image-widget .content .controls .small-button {
      display: block;
      margin: 0 0.5em 0.5em 0.5em; }
      .image-widget .content .controls .small-button.hidden {
        display: none; }

.image-widget.no-image label, .image-widget.no-image .content {
  vertical-align: middle; }

.image-widget.no-image .controls .small-button {
  margin-left: 0; }

.snack-counts {
  padding-top: 0.5em; }
  .snack-counts label {
    width: 12em;
    display: inline-block; }
  .snack-counts input[type='text'] {
    width: 3em;
    margin-bottom: 0.5em; }

.settings-screen .family-members {
  max-width: 40em;
  margin: 0 auto 0 auto; }
  .settings-screen .family-members .member {
    padding: 1em 0 1em 0;
    border-bottom: solid 1px #e6e6e6; }
    .settings-screen .family-members .member:last-of-type {
      border-bottom: none; }
    .settings-screen .family-members .member .values .row {
      margin: 0.5em; }
      .settings-screen .family-members .member .values .row div {
        display: inline-block; }
      .settings-screen .family-members .member .values .row .label {
        width: 8em; }
  .settings-screen .family-members .invitations {
    background-color: #fafafa;
    padding: 0.5em; }
    .settings-screen .family-members .invitations label {
      margin-left: 0.5em;
      font-style: italic; }
    .settings-screen .family-members .invitations .row div {
      margin: 0 0.5em 0 0.5em; }

.settings-screen .friends .friend {
  margin: 0.5em auto 1.5em auto;
  width: 300px;
  padding-left: 50px;
  position: relative; }
  .settings-screen .friends .friend img {
    width: 35px;
    height: 35px;
    border-radius: 50%;
    box-sizing: content-box;
    border: solid 1px #cccccc;
    position: absolute;
    left: 0;
    top: 0; }
  .settings-screen .friends .friend .name {
    vertical-align: top;
    line-height: 40px; }
  .settings-screen .friends .friend .controls {
    margin-top: 0.5em; }

.popup-form .controls {
  margin-top: 2.5em; }

.popup-form form {
  width: 20em;
  margin: 1.5em auto 0 auto; }
  .popup-form form .form-row {
    margin: 1.5em 0 1.5em 0; }
  .popup-form form .label, .popup-form form label {
    display: inline-block;
    width: 7em; }

.settings-form.family-member-edit .form-row {
  margin: 1.5em auto 1.5em auto; }
  .settings-form.family-member-edit .form-row label {
    width: 7em;
    display: inline-block; }
  .settings-form.family-member-edit .form-row .image {
    width: 19em; }
    @media only screen and (max-width: 770px) {
      .settings-form.family-member-edit .form-row .image {
        width: 15em;
        font-size: 90%; } }

.settings-form.family-member-edit .anthropometrics.frame {
  margin-top: 2em;
  border: solid 1px lightgrey;
  padding: 1em;
  position: relative; }
  .settings-form.family-member-edit .anthropometrics.frame .units {
    position: absolute;
    top: -0.75em;
    left: 1em;
    background-color: var(--base-background-color); }

.settings-form.family-member-edit .anthropometrics input {
  width: 4.5em; }

.settings-form.family-member-edit .multi-select.activity .active,
.settings-form.family-member-edit .multi-select.activity .inactive {
  margin-left: 0.25em;
  margin-right: 0.25em; }

.modal-content .settings-form.family-member-edit {
  width: 40em;
  margin: 0 auto 0 auto; }

.modal-content .no-modal {
  display: none !important; }

.settings-form.family-member-edit label.modal-only {
  display: none !important; }

.modal-content .settings-form.family-member-edit label.modal-only {
  display: inline-block !important; }

.settings-form .activity-explanation .highlight {
  font-style: italic; }

.settings-form .activity-explanation {
  background-color: #f2f2f2;
  padding: 0.75em;
  font-size: 80%; }

.small-link {
  font-size: 80%;
  font-style: italic;
  text-decoration: underline;
  cursor: pointer; }

.nutrition-break-down .modal-content {
  padding: 0; }
  .nutrition-break-down .modal-content .horizontal-tabs .tabs .tab {
    width: 50%; }
  .nutrition-break-down .modal-content .horizontal-tabs .panes .pane {
    border: none; }
  .nutrition-break-down .modal-content th {
    padding-top: 0.5em;
    padding-bottom: 0.5em; }
  .nutrition-break-down .modal-content .breakdown.ingredients-table .header th {
    color: #bfbfbf; }

.nutrition-table {
  width: 800px; }

/* html snippet */
/*------- snippet ------*/
.snippet-options {
  padding: 2em 0 2em 0;
  width: 800px; }
  .snippet-options label.major {
    font-size: 110%;
    font-style: italic;
    margin-right: 2em; }
  .snippet-options td {
    vertical-align: top;
    padding: 4px; }
    .snippet-options td.label {
      text-align: right;
      margin-right: 1em; }
    .snippet-options td.colors div {
      display: inline-block; }
    .snippet-options td.colors .label {
      width: 6em;
      text-align: right;
      margin-right: 1em; }

/* ------ color picker ---- */
.evo-pop {
  width: 220px !important;
  padding: 8px !important; }

.evo-pop.ui-widget {
  background-color: var(--base-background-color);
  border: #808080 solid 1px; }

div.evo-colorind, div.evo-colorind-ie, div.evo-colorind-ff {
  width: 35px;
  height: 35px;
  border-radius: 12px;
  display: inline-block; }

.modal-dialog.snippet-top-message {
  position: relative; }

.modal-dialog.snippet-top-message .modal-content {
  overflow: hidden;
  padding: 2em 1em 1em 1em;
  height: 600px; }

.modal-dialog.snippet-top-message .modal-content textarea {
  font-size: 70%; }

/* ===== sign up =====*/
.signup {
  background-color: var(--tab-panel-background-color);
  min-height: calc(100vh - 75px); }
  .signup .edit-form {
    margin: 0 auto;
    padding: 1em;
    width: 620px;
    background-color: rgba(255, 255, 255, 0.95); }
    .signup .edit-form#purchase_form {
      margin-top: 0;
      padding-top: 1.5em;
      min-height: calc(100vh - 150px); }
    @media only screen and (max-width: 770px) {
      .signup .edit-form {
        width: 100%; } }
    .signup .edit-form input[type='text'],
    .signup .edit-form input[type='email'],
    .signup .edit-form select {
      width: 100%; }
    .signup .edit-form .password-input {
      width: 100%; }
      @media only screen and (max-width: 770px) {
        .signup .edit-form .password-input {
          width: auto; } }
    .signup .edit-form input[type='password'], .signup .edit-form .password-row input[type='text'] {
      width: calc(100% - 50px); }
      @media only screen and (max-width: 770px) {
        .signup .edit-form input[type='password'], .signup .edit-form .password-row input[type='text'] {
          width: 270px; } }
    .signup .edit-form #submit_button {
      background-color: #619922;
      color: white;
      border-radius: 8px;
      border: none;
      padding: 1em 3em 1em 3em; }
    .signup .edit-form .expert-list {
      padding: 0.5em 2em;
      border: solid 1px lightgrey;
      max-height: 10em;
      overflow-y: auto;
      overflow-x: hidden;
      width: 100%; }
    .signup .edit-form .section-box.message div {
      text-align: center;
      font-size: 120%;
      margin-top: 0.5em; }
    .signup .edit-form .section-box .price {
      text-align: center;
      color: var(--highlight-action-background);
      font-size: 120%; }
    .signup .edit-form .section-box .promocode-message {
      color: var(--highlight-action-background);
      font-size: 75%;
      line-height: 1.4em;
      margin-top: 10px; }
      .signup .edit-form .section-box .promocode-message.short {
        width: 350px;
        margin-left: auto;
        margin-right: auto; }
      .signup .edit-form .section-box .promocode-message p {
        margin-left: 1em;
        text-indent: -0.75em; }
    .signup .edit-form #promo_desc {
      border-radius: 8px;
      border: solid 1px var(--base-light-border-color);
      padding: 0.5em;
      margin: 0.5em 0;
      font-style: italic;
      font-size: 90%;
      color: #c8540b; }
      @media (max-width: 770px) {
        .signup .edit-form #promo_desc {
          margin: 0.5em 0; } }
    .signup .edit-form #promo_desc:empty {
      display: none; }
    .signup .edit-form div.label {
      display: block;
      width: auto; }
    .signup .edit-form .help {
      font-size: 80%;
      font-style: italic;
      margin-top: 2px;
      color: var(--highlight-action-background); }
    .signup .edit-form .form-row {
      margin: 1em 0 2em 0; }
    .signup .edit-form .form-content {
      width: 400px;
      margin: auto; }

span.has-help {
  position: relative; }
  span.has-help:before {
    content: '?';
    font-family: var(--font-family-numbers);
    font-size: 16px;
    line-height: 20px;
    padding: 0 5px;
    border: solid 1px var(--base-light-border-color);
    border-radius: 50%;
    position: absolute;
    right: -32px;
    top: 50%;
    margin-top: -10px; }

th span.has-help {
  margin-right: 25px; }

.floating-quote {
  position: fixed;
  top: 30%;
  right: 5%;
  width: 20%;
  box-shadow: 0 2px 4px 1px var(--base-light-border-color);
  border-radius: 20px;
  padding: 0.5em 1em;
  font-size: 90%; }
  .floating-quote .content {
    text-align: left; }
  .floating-quote .signature {
    text-align: right; }
  @media only screen and (max-width: 1030px) {
    .floating-quote {
      display: none; } }

.small-section {
  border: solid 1px var(--base-light-border-color);
  border-radius: 10px;
  padding: 20px;
  margin: 2em auto; }
  .small-section .title {
    background-color: white;
    text-align: left;
    width: fit-content;
    padding: 0 10px;
    margin: -28px auto 16px 5px;
    font-size: 130%;
    font-style: italic; }

.field-description {
  text-align: center;
  font-size: 90%;
  font-style: italic;
  color: var(--base-light-color);
  line-height: 1.1em; }

.edit-form {
  padding-top: 1em; }
  .edit-form .help {
    font-size: 85%;
    line-height: 1.2em;
    text-align: left; }
    .edit-form .help p {
      margin: 0.5em 0; }
    .edit-form .help ul {
      padding-left: 40px; }
      .edit-form .help ul li {
        margin: 0.25em 0; }
    .edit-form .help.large {
      font-size: 95%;
      margin: 4px 0; }
      .edit-form .help.large ul li {
        margin: 0.5em 0; }
  .edit-form .has-own-help {
    width: fit-content;
    margin: 0;
    position: relative; }
    .edit-form .has-own-help:before {
      content: '?';
      font-family: var(--font-family-numbers);
      font-size: 20px;
      line-height: 24px;
      padding: 0 6px;
      border: solid 1px var(--base-light-border-color);
      border-radius: 50%;
      position: absolute;
      right: -30px;
      top: 50%;
      margin-top: -14px; }
  .edit-form h2.description, .edit-form h3.description {
    line-height: 1.1em;
    text-align: left;
    margin: 0.5em 0; }
    @media only screen and (max-height: 800px) {
      .edit-form h2.description, .edit-form h3.description {
        font-size: 120%; } }
  .edit-form .section-description {
    text-align: left;
    font-size: 110%;
    color: var(--base-light-color);
    line-height: 1.25em; }
    .edit-form .section-description.border {
      border: solid 1px var(--help-panel-border-color);
      background-color: var(--help-panel-background-color);
      color: var(--help-panel-color);
      border-radius: 20px;
      padding: 0.75em; }
  .edit-form .form-row {
    margin: 1.5em 0 1.5em 0; }
    .edit-form .form-row.has-help label {
      position: relative; }
      .edit-form .form-row.has-help label:before {
        content: '?';
        font-family: var(--font-family-numbers);
        font-size: 20px;
        line-height: 24px;
        padding: 0 6px;
        border: solid 1px var(--base-light-border-color);
        border-radius: 50%;
        position: absolute;
        left: -35px; }
    .edit-form .form-row.has-help.help-right label:before {
      left: auto;
      right: -35px; }
    .edit-form .form-row.has-help.toggle-switch label, .edit-form .form-row.has-help div.toggle-button {
      width: fit-content; }
      .edit-form .form-row.has-help.toggle-switch label:before, .edit-form .form-row.has-help div.toggle-button:before {
        left: auto;
        right: -30px; }
      .edit-form .form-row.has-help.toggle-switch label.large-text:before, .edit-form .form-row.has-help div.toggle-button.large-text:before {
        right: -35px; }
    .edit-form .form-row.compact {
      margin: 1em 0 1em 0; }
    @media only screen and (max-width: 770px) {
      .edit-form .form-row {
        margin: 1em 0 1em 0; } }
    .edit-form .form-row.compact {
      margin: 0.5em 0 0.5em 0; }
    .edit-form .form-row.disabled {
      opacity: 0.5;
      cursor: not-allowed; }
    .edit-form .form-row.small-section {
      border: solid 1px var(--base-light-border-color);
      border-radius: 10px;
      padding: 20px;
      margin: 2em auto; }
      .edit-form .form-row.small-section .title {
        background-color: white;
        text-align: center;
        width: fit-content;
        padding: 0 10px;
        margin: -34px auto 16px auto;
        font-size: 125%; }
    .edit-form .form-row.long-field label {
      width: auto; }
    .edit-form .form-row.long-field .help {
      margin-bottom: 10px;
      margin-top: 5px; }
  .edit-form .long-input input[type='text'], .edit-form .long-input input[type='url'], .edit-form .long-input input[type='email'], .edit-form .long-input select {
    width: 20em; }
  .edit-form .form-row.full-width-input label, .edit-form .form-row.full-width-input .label, .edit-form .full-width-input label, .edit-form .full-width-input .label {
    display: block;
    width: auto; }
  .edit-form .form-row.full-width-input input[type='text'], .edit-form .form-row.full-width-input input[type='url'], .edit-form .form-row.full-width-input input[type='email'], .edit-form .form-row.full-width-input textarea, .edit-form .form-row.full-width-input select, .edit-form .full-width-input input[type='text'], .edit-form .full-width-input input[type='url'], .edit-form .full-width-input input[type='email'], .edit-form .full-width-input textarea, .edit-form .full-width-input select {
    width: 100%; }
  .edit-form .form-row.separator-top {
    border-top: solid 1px #e6e6e6;
    padding-top: 1.25em; }
  .edit-form .form-row.separator-bottom {
    border-bottom: solid 1px #e6e6e6;
    padding-bottom: 1.25em; }
  .edit-form .form-row .password-input {
    white-space: nowrap;
    display: inline-block; }
  .edit-form .label {
    display: inline-block;
    width: 7em; }
  .edit-form .label.short, .edit-form label.short {
    display: inline-block;
    width: 7em; }
  @media only screen and (max-width: 770px) {
    .edit-form {
      width: 92vw;
      margin-left: auto;
      margin-right: auto; }
      .edit-form input[type='text'], .edit-form input[type='email'], .edit-form input[type='password'], .edit-form input[type='tel'], .edit-form input[type='number'], .edit-form input[type='url'], .edit-form select {
        width: 85vw; }
      .edit-form .form-row.multi-select .choice-container {
        text-align: center;
        display: inline-block;
        width: 90vw;
        margin-top: 10px; }
      .edit-form .form-row.multi-select.fit-to-content .choice-container {
        width: fit-content; }
      .edit-form .form-row .password-input {
        white-space: nowrap; }
        .edit-form .form-row .password-input input[type='password'], .edit-form .form-row .password-input input[type='text'] {
          width: 65vw; } }
  .edit-form .layout-choices {
    margin-top: 0.5em; }
    .edit-form .layout-choices .layout-choice {
      display: inline-block;
      width: 200px;
      padding: 20px;
      border: solid 1px var(--base-light-border-color);
      border-radius: 14px;
      margin: 4px;
      text-align: center;
      cursor: pointer;
      vertical-align: top; }
      .edit-form .layout-choices .layout-choice:hover {
        box-shadow: 3px 3px 5px 0 var(--base-light-color);
        border-color: var(--base-light-color); }
      .edit-form .layout-choices .layout-choice.default {
        background-color: var(--base-light-border-color); }
      .edit-form .layout-choices .layout-choice.selected {
        background-color: var(--base-light-color); }
        .edit-form .layout-choices .layout-choice.selected:hover {
          border-color: var(--base-color); }
      .edit-form .layout-choices .layout-choice .layout-item-text, .edit-form .layout-choices .layout-choice .layout-item-picture {
        font-size: 80%;
        vertical-align: top;
        opacity: 0.9; }
      .edit-form .layout-choices .layout-choice .layout-item-text {
        background-color: var(--base-background-color);
        padding: 0 2px; }
      .edit-form .layout-choices .layout-choice .layout-item-picture {
        background-color: var(--base-color);
        color: white;
        padding: 50px 2px; }
  .edit-form .small-area {
    width: fit-content;
    border: solid 1px var(--base-light-border-color);
    padding: 0.5em 1em;
    margin: 5px auto;
    position: relative; }
    .edit-form .small-area .controls {
      margin-top: 1em; }
    .edit-form .small-area .close-button {
      cursor: pointer;
      font-size: 14px;
      background-color: #999999;
      color: var(--help-panel-background-color);
      border-radius: 50%;
      position: absolute;
      right: -8px;
      top: -8px;
      /* margin-top: -1em; */
      padding: 0px 6px;
      line-height: 22px; }
  .edit-form .cover-settings.small-area {
    width: 750px; }
  .edit-form .cover-settings .settings-cover-picture img {
    width: 120px;
    height: 120px; }
  .edit-form .cover-settings .settings-cover-picture .controls {
    display: inline-block;
    vertical-align: top;
    margin-top: 0; }

.edit-form.zebra .form-row {
  margin: 0.5em 0 0.5em 0;
  padding: 1em; }
  .edit-form.zebra .form-row input, .edit-form.zebra .form-row textarea, .edit-form.zebra .form-row select {
    background: white; }

.edit-form.zebra .form-row.small-area {
  margin: 1em auto; }

.edit-form.small-form {
  width: 600px;
  margin: 0 auto 0 auto; }

.full-width-input label, .full-width-input .label {
  display: block;
  width: auto; }

.full-width-input input[type='text'], .full-width-input input[type='url'], .full-width-input input[type='email'], .full-width-input textarea, .full-width-input select {
  width: 100%; }

.with-help {
  position: relative;
  width: fit-content; }
  .with-help:before {
    content: '?';
    font-family: var(--font-family-numbers);
    font-size: 20px;
    border: solid 1px var(--base-light-border-color);
    border-radius: 50%;
    position: absolute;
    left: auto;
    right: -2.2em;
    width: 1.7em;
    height: 1.7em;
    line-height: 1.7em;
    text-align: center; }

.small-eye-button {
  background: url("img/eye-sm.53fe28cbc3f6.png") no-repeat center center;
  width: 50px;
  height: 35px;
  padding: 0;
  cursor: pointer;
  display: inline-block;
  vertical-align: middle;
  background-size: 24px; }

.password-input {
  border: solid 1px #b3b3b3;
  border-radius: 8px; }
  .password-input:focus-within {
    box-shadow: 0 0 6px 0 #b3b3b3; }
  .password-input input {
    border: none; }
    .password-input input:focus {
      box-shadow: none; }
  .password-input input[type="password"] ~ .small-eye-button {
    background: url("img/eye-closed-sm.6f078a7807a0.png") no-repeat center center;
    background-size: 24px; }

.signup .terms-of-use {
  min-width: 300px;
  width: 100%;
  height: 20em;
  overflow: auto;
  text-align: left;
  font-size: 75%;
  padding: 6px;
  border: 1px solid #e6e6e6;
  margin-bottom: 1.5em;
  box-shadow: 0 2px 4px 1px #f2f2f2; }

.modal-dialog.terms .modal-content {
  padding: 1em; }

/*===== flow steps ====*/
.flow-step {
  margin: 0 auto;
  position: relative;
  padding: 0 10px;
  background-color: var(--tab-panel-background-color);
  min-height: calc(100vh - 75px); }
  .flow-step .message-container {
    margin: 0 auto;
    padding: 1.5em;
    width: 650px;
    background-color: rgba(255, 255, 255, 0.95);
    min-height: calc(100vh - 75px); }
  .flow-step form {
    max-width: 600px;
    margin: 0 auto;
    background-color: rgba(255, 255, 255, 0.95);
    padding: 1em;
    min-height: calc(100vh - 75px); }
  .flow-step.custom-flow-step form {
    margin-top: -1em; }
  .flow-step .help {
    font-size: 85%;
    line-height: 1.2em;
    text-align: left;
    margin: 16px auto;
    width: 500px; }
    .flow-step .help p {
      margin: 0.5em 0; }
    .flow-step .help ul {
      padding-left: 40px; }
      .flow-step .help ul li {
        margin: 0.25em 0; }
  .flow-step .label {
    display: inline-block;
    width: 7em; }
  .flow-step .form-row {
    margin: 1.5em 0 1.5em 0; }
  .flow-step .form-row.separator-top {
    border-top: solid 1px #e6e6e6;
    padding-top: 1.25em; }
  .flow-step .form-row.separator-bottom {
    border-bottom: solid 1px #e6e6e6;
    padding-bottom: 1.25em; }
  .flow-step .form-row.password-row {
    white-space: nowrap; }
  .flow-step #submit_button, .flow-step .button-main, .flow-step input[type='submit'] {
    background-color: var(--highlight-action-background);
    color: var(--highlight-action-color);
    border-radius: 8px;
    border: none;
    padding: 0.75em 3em 0.75em 3em !important;
    display: inline-block;
    cursor: pointer; }
    @media only screen and (max-width: 770px) {
      .flow-step #submit_button, .flow-step .button-main, .flow-step input[type='submit'] {
        min-width: 300px;
        margin-top: 0.5em;
        margin-bottom: 0.5em; } }
  .flow-step .button {
    background-color: white;
    color: #808080;
    border-radius: 8px;
    border: solid 1px #ddd;
    padding: 1em 3em 1em 3em;
    display: inline-block; }
    @media only screen and (max-width: 770px) {
      .flow-step .button {
        min-width: 120px;
        padding: 0.7em 1em; } }
  .flow-step .numbers input[type='text'],
  .flow-step .numbers input[type='number'] {
    width: 3em; }
  .flow-step .multi-select.toggle-tokens .inactive {
    background-color: white; }
  .flow-step .image {
    width: 50px;
    height: 60px;
    background-position: center;
    background-repeat: no-repeat;
    display: inline-block;
    vertical-align: middle;
    margin-bottom: 4px; }
  .flow-step .family-numbers {
    width: 350px;
    margin: 0 auto 0 auto;
    border: solid 1px lightgrey;
    padding: 1em; }
    .flow-step .family-numbers .label {
      width: 5em; }
    .flow-step .family-numbers .gender {
      display: inline-block;
      width: 6em;
      text-align: left; }
  .flow-step .image.adult-f {
    background-image: url("img/female.c9c281338d55.png");
    background-size: auto 55px; }
  .flow-step .image.adult-m {
    background-image: url("img/male.f1e2eee42be0.png");
    background-size: auto 55px; }
  .flow-step .image.kid-f {
    background-image: url("img/female-kid.c621d2853007.png"); }
  .flow-step .image.kid-m {
    background-image: url("img/male-kid.9011c9dc2dc4.png"); }
  .flow-step .family-names-container {
    text-align: center;
    width: 500px;
    margin: 0 auto 0 auto; }
    .flow-step .family-names-container .gender {
      display: inline-block;
      width: 6em;
      text-align: left; }
    .flow-step .family-names-container .err ul {
      display: inline-block;
      margin-left: 5em; }
    @media only screen and (max-width: 770px) {
      .flow-step .family-names-container {
        width: 80vw; } }
  .flow-step .family-images h3, .flow-step .family-numbers h3 {
    text-align: left; }
  .flow-step .family-images img {
    vertical-align: middle;
    margin-right: 4px;
    margin-bottom: 4px; }
  .flow-step .form-row .image-upload {
    width: 120px;
    height: 120px;
    display: inline-block;
    vertical-align: middle; }
  .flow-step .form-row .image-upload .drop-area .upload-controls {
    padding: 2px 2px 6px 2px;
    font-size: 80%; }
  .flow-step .family-names {
    width: 100%;
    margin: 0 auto 0 auto;
    border: solid 1px lightgrey;
    padding: 0 1em 0 1em; }
    .flow-step .family-names input, .flow-step .family-names .value {
      width: 170px;
      min-width: 0;
      display: inline-block;
      margin: 0.5em auto; }
    .flow-step .family-names .value {
      border: solid 1px var(--base-light-border-color);
      border-radius: 8px;
      padding: 6px 10px;
      text-align: left;
      background-color: var(--base-background-darker-color); }
    .flow-step .family-names .member-image .drop-area .select-button {
      font-size: 100%;
      line-height: 1.2em;
      padding-left: 4px;
      padding-right: 4px;
      white-space: pre-wrap; }
  .flow-step .plan-templates .template-record {
    width: 1300px;
    max-width: 100%;
    margin: 0.5em auto 1.5em auto;
    padding-top: 1em;
    padding-bottom: 1em; }
    .flow-step .plan-templates .template-record .search-results .recipe-card {
      cursor: default; }
    @media only screen and (max-width: 770px) {
      .flow-step .plan-templates .template-record {
        width: 100%; } }
  .flow-step .plan-templates a {
    text-decoration: none;
    color: inherit; }
  @media only screen and (max-width: 1235px) {
    .flow-step .plan-templates .search-results .recipe-card {
      width: 27%;
      min-width: 220px; } }

.plan.weeks .week {
  margin: 1em auto 1em auto; }

.plan.weeks .week-title {
  margin-bottom: 1.5em; }

.plan.weeks .week-title .app-button-main {
  margin-left: 2em; }

.plan.weeks .day-container {
  border: solid 1px lightgrey;
  padding: 1em; }

.plan.weeks .day-header {
  margin: 3em 0 1em 0; }

.plan.weeks .day-rating .rating-button {
  margin-top: 0.25em; }

.plan.weeks .meal-type-section {
  display: inline-block;
  vertical-align: top;
  border: 1px solid lightgrey;
  padding: 0.5em;
  margin: 0.5em;
  min-width: 300px;
  font-size: 90%;
  line-height: 1.5em; }

.plan.weeks .lists .search-results .recipe-card {
  display: block;
  width: 260px;
  height: 193px;
  margin: 0.5em auto 0.5em auto;
  cursor: default; }
  .plan.weeks .lists .search-results .recipe-card .card-info {
    font-size: 70%; }

.plan.weeks .list-horizontal .search-results .recipe-card {
  width: 260px; }

.plan.weeks .week .simple-food .item {
  width: 260px;
  margin: 0.5em auto 0.5em auto; }
  .plan.weeks .week .simple-food .item .image-container {
    height: 150px;
    margin-bottom: 8px; }
    .plan.weeks .week .simple-food .item .image-container img {
      max-height: 100%;
      object-fit: contain; }

.plan.weeks .lists.snacks {
  margin-top: 0.25em; }
  .plan.weeks .lists.snacks h3.snack-title {
    font-size: 120%;
    border-top: solid 1px #eaeaea;
    padding-top: 0.25em; }

.plan.weeks .lists .note {
  margin: 0.5em auto;
  width: 260px;
  background-color: #dfdfdf;
  border-radius: 5px;
  padding: 5px;
  font-weight: bold; }
  .plan.weeks .lists .note img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: auto; }

@media only screen and (max-width: 770px) {
  .plan.weeks .controls.small-section {
    max-width: 90%; }
    .plan.weeks .controls.small-section label {
      width: 100%;
      display: inline-block;
      text-align: left;
      margin-bottom: 10px; }
    .plan.weeks .controls.small-section .app-button {
      font-size: 110%; }
  .plan.weeks .meal-type-section {
    margin: 0.5em 0; } }

@media print {
  .plan.weeks.meals4 .day-holder {
    page-break-inside: avoid; }
  .plan.weeks.meals4 .meal-type-section {
    padding: 2mm;
    margin: 0.5mm;
    min-width: auto; }
  .plan.weeks.meals4 .meals3 .meal-type-section {
    width: 32%; }
  .plan.weeks.meals4 .meal-type-section {
    width: 24%; }
  .plan.weeks.meals4 .lists .search-results .recipe-card {
    width: 95%;
    min-height: auto; }
    .plan.weeks.meals4 .lists .search-results .recipe-card .info-panel {
      display: none; }
  .plan.weeks.meals4 .plan.weeks .week .simple-food .item {
    width: 95%;
    margin: 6mm auto 2mm auto; }
  .plan.weeks.meals4 .lists.snacks {
    margin-top: 2mm; }
  .plan.weeks.meals4 .lists .note {
    margin: 2mm auto;
    width: 95%; }
  .plan.weeks.meals4 .description_block {
    margin-top: 8mm; } }

.nutrition-stats .linked-day {
  color: #009090;
  cursor: pointer;
  text-decoration: underline; }

.nutrition-stats .nutrients td {
  vertical-align: top; }

.nutrition-stats .nutrients .sources {
  font-size: 80%; }
  .nutrition-stats .nutrients .sources .source {
    border-top: dotted 1px var(--base-light-border-color); }
    .nutrition-stats .nutrients .sources .source:first-child {
      border: none; }
    .nutrition-stats .nutrients .sources .source .label {
      display: inline-block;
      width: 20em;
      margin-left: 1.5em;
      line-height: 1.25em; }
    .nutrition-stats .nutrients .sources .source .value {
      display: inline-block;
      margin-left: 0.5em; }
    .nutrition-stats .nutrients .sources .source a {
      color: inherit;
      text-decoration: none; }

.plan-templates a {
  color: inherit;
  text-decoration: none; }

.plan-templates.search-plugin .search-results .search-result-container {
  padding: 1em 0; }

.plan-templates .template-record {
  width: 310px;
  max-width: 100%;
  display: inline-block;
  vertical-align: middle;
  margin: 12px; }
  @media (max-width: 770px) {
    .plan-templates .template-record {
      margin: 0.5em 0; } }
  .plan-templates .template-record h2 {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 1.3em; }
  .plan-templates .template-record .recipes {
    font-size: 0;
    overflow: hidden; }
    .plan-templates .template-record .recipes .search-results .recipe-card {
      width: 155px;
      max-width: 50%;
      height: 95px;
      margin-left: 0;
      margin-right: 0;
      margin-bottom: 0;
      font-size: 18px; }
      .plan-templates .template-record .recipes .search-results .recipe-card img {
        object-fit: cover;
        height: 100px; }
      .plan-templates .template-record .recipes .search-results .recipe-card.filler {
        width: 100%;
        max-width: none;
        height: 95px; }
        .plan-templates .template-record .recipes .search-results .recipe-card.filler img {
          width: 100%;
          max-height: 100%;
          object-fit: cover;
          height: 100px; }
      .plan-templates .template-record .recipes .search-results .recipe-card .title {
        width: 100%;
        font-size: 80%;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding-top: 0.25em;
        padding-right: 0.5em; }
      .plan-templates .template-record .recipes .search-results .recipe-card .image-controls label {
        display: none; }
  .plan-templates .template-record .users {
    margin-top: 0.5em;
    text-align: center; }
    .plan-templates .template-record .users img {
      width: 35px;
      height: 35px;
      border-radius: 50%;
      box-sizing: content-box;
      border: solid 1px #bfbfbf; }
  .plan-templates .template-record .card-info {
    padding: 4px 4px 0 4px;
    font-size: 11px;
    text-align: left;
    border-top: dotted 1px var(--base-light-border-color); }
    .plan-templates .template-record .card-info div {
      display: inline-block;
      margin: 0 2px; }

.small-cards .count-container {
  font-size: 90%; }

.small-cards .plan-templates .template-record {
  width: 250px; }
  .small-cards .plan-templates .template-record .recipes .search-results .recipe-card {
    width: 50%;
    height: 70px; }

.status-icon {
  display: inline-block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: auto 90%;
  width: 25px;
  height: 25px;
  opacity: 50%; }
  .status-icon.large {
    background-size: contain;
    width: 35px;
    height: 35px;
    vertical-align: middle; }
  .status-icon.opaque {
    opacity: 100%; }

.status-icon.public {
  background-image: url("img/ico_visible.d41c2d475d8f.png"); }

.status-icon.private {
  background-image: url("img/ico_hidden.80a8dbb8994c.png"); }

.status-icon.locked {
  background-image: url("img/ico_locked.ae666bc2ef11.png"); }

.status-icon.unlocked {
  background-image: url("img/ico_unlocked.7d2809663996.png"); }

.status-icon.paid-only {
  background-image: url("img/locked.83b3d48baf41.svg"); }

.status-icon.for-resale {
  background-image: url("img/paid_only_icon.a6866152e042.jpeg"); }

.status-icon.is-draft {
  background-image: url("img/ico_draft.1ca8480baf8c.png"); }

.status-icon.user-active {
  background-image: url("img/ico-user-active.831a7d1ba239.png"); }

.status-icon.user-inactive {
  background-image: url("img/ico-user-inactive.a31b9492d6a0.png"); }

.status-icon.user-invited {
  background-image: url("img/ico-user-invited.f67fe292e6b6.png"); }

.status-icon.no-user {
  background-image: url("img/ico-no-user.90f5be08d27d.png"); }

.status-icon.program-user {
  background-image: url("img/ico-program.8d93637f1560.png"); }

.status-icon.no-programs {
  background-image: url("img/ico-no-programs.65d9ad0e1b59.png"); }

.status-icon.calendar-check {
  background-image: url("img/ico-calendar-check.76cd2d8ef4ea.png"); }

.status-icon.calendar-cross {
  background-image: url("img/ico-calendar-cross.2baa92506c6d.png"); }

.status-icon.thumb-up {
  background-image: url("img/ico-thumbup-bw.6cc428603b7e.png"); }

.status-icon.thumb-down {
  background-image: url("img/ico-thumbdown-bw.7908cc5dd7ff.png"); }

.status-icon.no-calendar {
  background-image: url("img/ico-no-calendar.602f7c7858bf.png"); }

.status-icon.calendar-question {
  background-image: url("img/ico-calendar-question.23b08b109b20.png"); }

.status-icon.calendar-swap {
  background-image: url("img/ico-calendar-swap.87343e6f86ba.png"); }

.client-source {
  display: inline-block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: auto 30px;
  width: 30px;
  height: 30px;
  opacity: 50%; }
  .client-source.mp {
    background-image: url("img/ico-meal-plan-sm.75eef32835bf.png"); }
  .client-source.rc {
    background-image: url("img/ico-recipe-collection-sm.15723238a355.png"); }
  .client-source.sp {
    background-image: url("img/ico-program-simple-sm.db575fc7daa6.png"); }

.recipe-selector input[type='checkbox'],
.collection-selector input[type='checkbox'] {
  display: none; }

.recipe-selector input[type='checkbox'] + label,
.collection-selector input[type='checkbox'] + label {
  background-image: none;
  border: 1px #e6e6e6 solid;
  display: inline-block;
  border-radius: 10px;
  padding: 0; }

.recipe-selector input[type='checkbox']:checked + label,
.collection-selector input[type='checkbox']:checked + label {
  background: #e5f5dc;
  border: 1px #9de673 solid; }

/*********** mail *****************/
.received-mail a {
  color: #666666; }

.received-mail-message a {
  text-decoration: underline;
  color: #1f9999; }

.received-mail-message .header {
  padding-top: 1em;
  padding-bottom: 1em; }
  .received-mail-message .header table {
    width: 900px;
    margin-right: auto;
    margin-left: auto; }
    @media only screen and (max-width: 1000px) {
      .received-mail-message .header table {
        width: 600px; } }
    @media only screen and (max-width: 600px) {
      .received-mail-message .header table {
        width: 300px; } }
  .received-mail-message .header table td {
    padding: 3px; }
  .received-mail-message .header table td.label {
    font-style: italic;
    text-align: right;
    padding-right: 2em; }
  .received-mail-message .header table .separator td {
    padding-top: 1em;
    border-top: solid 1px lightgrey; }
  .received-mail-message .header table td.controls {
    text-align: inherit; }
  .received-mail-message .header table td.controls .small-button {
    margin-left: 1em; }
  .received-mail-message .header table td.controls .small-button {
    margin-left: 1em; }

.received-mail-message .content {
  margin-top: 2em;
  margin-bottom: 1em;
  border: solid 1px lightgrey;
  padding: 10px; }
  .received-mail-message .content a.import-link {
    margin: 0 1em 0 0.4em; }
    .received-mail-message .content a.import-link img {
      vertical-align: middle; }

.received-mail-message .attachments {
  background-color: #f2f2f2;
  padding-top: 1em;
  padding-bottom: 1em;
  text-align: center; }

.received-mail-message .recipes {
  text-align: center; }

.sessions .session-content {
  text-align: center; }
  .sessions .session-content .interval {
    margin-bottom: 2em;
    padding: 0.75em 0.5em 0.75em 0.5em;
    display: inline-block;
    width: 300px;
    vertical-align: top;
    border: 1px solid #f2f2f2; }
    .sessions .session-content .interval h3 {
      margin-bottom: 0.5em;
      font-size: 90%;
      text-align: center;
      font-weight: bold; }
    .sessions .session-content .interval .item-content {
      background-color: #ccf0f0;
      border: solid 1px #c3e6e6;
      border-radius: 16px;
      padding: 0.5em;
      text-align: center;
      overflow: hidden; }
      .sessions .session-content .interval .item-content .response_status_code {
        font-weight: bold; }
      .sessions .session-content .interval .item-content .duration {
        color: #008080; }
      .sessions .session-content .interval .item-content .timestamp {
        font-size: 80%;
        font-style: italic; }
    .sessions .session-content .interval .item-content.error_status {
      background-color: #f0cccc;
      border: solid 1px #e6c3c3; }
    .sessions .session-content .interval .item-content.redirect_status {
      background-color: #d5f0cc;
      border: solid 1px #c5e6c3; }
    .sessions .session-content .interval .down {
      background: url("img/arrow_down_wide.cb473929c960.png") center no-repeat;
      height: 34px; }

.braintree-not-loaded .btbutton {
  /* make non-functioning button appear grayed-out */
  color: #999;
  border-color: #aaa;
  cursor: default; }

@media screen {
  .print-only {
    display: none !important; } }

@media print {
  .no-print {
    display: none !important; }
  .app-button,
  .app-button-main,
  .small-button,
  input[type='button'],
  input[type='submit'],
  .notification_marker,
  .intercom-app-launcher,
  .button, .controls {
    display: none !important; }
  .app-button.printable,
  .app-button-main.printable,
  .small-button.printable,
  .button.printable,
  .controls.printable {
    display: inline-block !important;
    border: none !important; }
  * {
    box-shadow: none !important; }
  .responsive-content {
    width: 100%; }
  .rating-button {
    /* allows printing background image in Chrome */
    -webkit-print-color-adjust: exact; }
  .comment_form {
    display: none; }
  .comments_section {
    display: none; } }

.social-share-button {
  position: fixed;
  top: 160px;
  right: 10px;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: url("img/cmd-social-share.af429db03645.png") center no-repeat;
  background-size: 100%;
  background-color: rgba(255, 255, 255, 0.83);
  z-index: 10;
  cursor: pointer; }
  @media (max-width: 770px) {
    .social-share-button {
      display: none !important; } }
  .social-share-button.expanded {
    border-radius: 50% 50% 0 0; }

.social-share {
  z-index: 2;
  min-width: auto !important;
  padding: 0 0 10px 0 !important;
  text-align: center; }
  .social-share img {
    vertical-align: middle;
    object-fit: contain;
    width: 30px;
    height: 30px; }
    @media (max-width: 770px) {
      .social-share img {
        width: auto; } }
  .social-share .cmd-icon {
    width: 40px;
    height: 40px; }
  .social-share .facebookshare {
    margin: 10px 11px; }
  .social-share .twittershare {
    margin: 15px 6px; }
  .social-share .pinterestshare {
    margin: 11px 10px; }
  .social-share .googleplusshare {
    margin: 16px 3px; }
  .social-share .linkedinshare {
    margin: 12px 7px; }
  .social-share .instagramshare {
    margin: 11px 6px; }
  .social-share .emailshare {
    margin: 15px 3px; }
  .social-share .linkshare {
    margin: 10px 5px; }
  .social-share .embedshare {
    margin: 10px 5px; }
  .social-share .cmd-icon {
    margin: 0.5em 5px 0.25em 5px;
    opacity: 0.8; }
  @media print {
    .social-share {
      display: none; } }
  @media (max-width: 770px) {
    .social-share {
      display: block;
      margin-top: 20px; }
      .social-share h2 {
        margin-left: 6px; } }
  @media (min-width: 771px) {
    .social-share {
      position: fixed;
      top: 195px;
      right: 0;
      background-color: rgba(255, 255, 255, 0.9);
      border-radius: 5px 0 0 5px;
      box-shadow: -5px 5px 15px rgba(0, 0, 0, 0.3); }
      .social-share h2 {
        display: none; }
      .social-share a {
        display: block; } }

.social-share.schedule {
  display: none;
  text-align: center;
  padding-bottom: 10px;
  top: 70px;
  position: relative;
  border-radius: 0 0 30px 30px; }
  .social-share.schedule a:first-of-type {
    padding-top: 10px;
    margin-top: 0; }

.share-link-modal .modal-content {
  padding: 0.75em 2em; }

.change-log {
  width: 75%;
  max-width: 1200px;
  margin: 0 auto 0 auto;
  padding-bottom: 2em; }
  .change-log .paginator {
    text-align: center; }
  .change-log .changes {
    width: 100%;
    border-spacing: 0; }
    .change-log .changes td {
      vertical-align: top;
      padding: 0.75em 0.5em; }
      .change-log .changes td:first-child {
        width: 10em; }

.impersonation-bar {
  background-color: #0e648c;
  color: #fafa7d;
  height: 3em;
  padding: 10px 0 0 1em;
  white-space: nowrap; }
  @media (min-width: 771px) {
    .impersonation-bar {
      padding-left: 80px; } }
  .impersonation-bar .title {
    display: inline-block;
    font-size: 80%;
    vertical-align: middle;
    font-style: italic;
    max-width: 45%;
    line-height: 1.1em; }
  .impersonation-bar .small-button {
    color: #f8f8ff;
    border: solid 1px;
    padding: 0.2em 0.5em;
    border-radius: 8px;
    font-size: 90%;
    margin-left: 1em;
    display: inline-block;
    white-space: nowrap;
    max-width: 180px;
    cursor: pointer; }
    .impersonation-bar .small-button:hover {
      color: #fffbf2;
      background-color: #08374d; }

.flash-messages {
  text-align: center;
  margin-top: 10px;
  margin-bottom: 1.5em; }
  .flash-messages li {
    padding: 15px;
    margin: 2px auto 18px;
    color: #4b4b4b;
    background-color: #f5f5f5;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    list-style-type: none;
    max-width: 800px;
    font-weight: normal; }
  .flash-messages li.info {
    color: #31708f;
    background-color: #d9edf7;
    border-color: #bce8f1; }
  .flash-messages li.success {
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #d6e9c6; }
  .flash-messages li.warning {
    color: #8a6d3b;
    background-color: #fcf8e3;
    border-color: #faebcc; }
  .flash-messages li.error {
    color: #a94442;
    background-color: #f2dede;
    border-color: #ebccd1; }

input[type='submit'].login_button,
.login_button {
  display: inline-block;
  line-height: 2.5em;
  height: 3.5em;
  border-radius: 12px;
  margin: 0 0 1em;
  text-align: left;
  padding: 0.5em 0.7em;
  cursor: pointer;
  white-space: nowrap;
  vertical-align: middle;
  font-size: 110%;
  color: #fff;
  background-color: #008080;
  position: relative;
  width: 100%; }
  input[type='submit'].login_button.app-button-main,
  .login_button.app-button-main {
    width: auto;
    min-width: 10em;
    text-align: center; }
  input[type='submit'].login_button span,
  .login_button span {
    display: inline-block;
    margin-left: 15px; }
  input[type='submit'].login_button em,
  .login_button em {
    left: 4px;
    width: 41px;
    height: 41px;
    display: inline-block;
    outline: none;
    vertical-align: middle; }
  @media (max-width: 770px) {
    input[type='submit'].login_button,
    .login_button {
      margin-bottom: 0.5em; } }

.login_button.facebook_connect {
  background-color: #475a80; }
  .login_button.facebook_connect em {
    background: url("img/login_icons.7917af0b3a11.png") 0 0 no-repeat; }

.login_button.google-oauth2_connect {
  background-color: #4285F4; }
  .login_button.google-oauth2_connect em {
    background-image: url("img/btn_google_dark_normal_ios.1bb805446b88.svg");
    background-size: contain;
    background-repeat: no-repeat; }

.login_button.twitter_connect {
  background-color: #5c9ab6; }
  .login_button.twitter_connect em {
    background: url("img/login_icons.7917af0b3a11.png") 0 -82px no-repeat; }

.login_page {
  text-align: center; }

.login_box {
  margin: 4em auto 1em auto;
  padding: 30px;
  background: #fff;
  border: solid 1px #b3b3b3;
  position: relative;
  display: inline-block; }
  @media (max-width: 770px) {
    .login_box {
      padding: 0 0 20px 0;
      margin-top: 0.5em;
      border: none; } }
  .login_box h1 {
    font-size: 1.75em;
    margin-bottom: 0.25em; }
  .login_box .social_login {
    width: 220px;
    display: inline-block;
    vertical-align: top; }
    .login_box .social_login h3 {
      margin-bottom: 0.25em;
      font-size: 110%; }
  .login_box .regular_login_form {
    width: 400px;
    display: inline-block;
    padding: 2em 10px 0 10px;
    vertical-align: top;
    text-align: left; }
    @media (max-width: 770px) {
      .login_box .regular_login_form {
        text-align: center;
        margin-top: 0;
        padding-top: 0;
        width: 300px; } }
    .login_box .regular_login_form .form-row {
      white-space: nowrap; }
      @media (max-width: 770px) {
        .login_box .regular_login_form .form-row {
          white-space: normal;
          text-align: left; } }
      .login_box .regular_login_form .form-row .err {
        text-align: center;
        white-space: normal; }
      .login_box .regular_login_form .form-row label {
        width: 90px;
        display: inline-block;
        text-align: right;
        margin-right: 10px; }
        @media (max-width: 770px) {
          .login_box .regular_login_form .form-row label {
            text-align: left; } }
      .login_box .regular_login_form .form-row input {
        width: 265px; }
      .login_box .regular_login_form .form-row .password-input {
        display: inline-block; }
        .login_box .regular_login_form .form-row .password-input input {
          width: 210px; }
    .login_box .regular_login_form .login_button {
      width: 49%;
      text-align: center; }
      @media (max-width: 770px) {
        .login_box .regular_login_form .login_button {
          width: 80%; } }
  .login_box .login_connector {
    display: inline-block;
    width: 60px;
    height: 60px;
    line-height: 60px;
    margin: 7em 2em 0 2em;
    background-color: grey;
    border-radius: 50%;
    color: white;
    vertical-align: middle; }
    @media (max-width: 770px) {
      .login_box .login_connector {
        width: 40px;
        height: 40px;
        line-height: 40px;
        margin: 0.5em auto 0 auto;
        display: block; } }
  .login_box .captcha-row {
    margin: 5px 0; }
    .login_box .captcha-row label {
      display: block; }
    .login_box .captcha-row img {
      padding-right: 10px; }

.captcha {
  position: relative;
  vertical-align: middle; }
  .captcha .terms-message {
    position: relative;
    top: -240px;
    font-size: 80%; }

.explanation_box {
  background-color: #f2f2f2;
  padding: 0.75em;
  margin: 0 10%;
  font-size: 80%; }

td.bool-no {
  color: transparent; }

td.bool-yes {
  background: url("img/ico-check-black.4d1373fd57b2.png") center no-repeat;
  background-size: 1em;
  color: transparent; }

.user-list, .food-list, .food-form, .promo-list, .tag-list {
  width: 75%;
  margin: 1em auto 0 auto;
  text-align: center; }
  .user-list.fit-width, .food-list.fit-width, .food-form.fit-width, .promo-list.fit-width, .tag-list.fit-width {
    width: 100%; }
  .user-list a, .user-list .link, .food-list a, .food-list .link, .food-form a, .food-form .link, .promo-list a, .promo-list .link, .tag-list a, .tag-list .link {
    color: #008080;
    text-decoration: none; }
  .user-list table, .food-list table, .food-form table, .promo-list table, .tag-list table {
    width: 100%;
    text-align: left; }
  .user-list table.editable td, .food-list table.editable td, .food-form table.editable td, .promo-list table.editable td, .tag-list table.editable td {
    padding: 3px; }
    .user-list table.editable td input[type="text"], .food-list table.editable td input[type="text"], .food-form table.editable td input[type="text"], .promo-list table.editable td input[type="text"], .tag-list table.editable td input[type="text"] {
      background-color: white; }
  @media (max-width: 770px) {
    .user-list, .food-list, .food-form, .promo-list, .tag-list {
      width: 100%; } }

.user-list {
  width: 100%;
  overflow-y: auto; }
  .user-list .picker__input {
    width: 8em; }

.promo-list {
  width: 90%;
  margin-bottom: 1em; }

.food-form {
  text-align: left; }
  .food-form h2, .food-form h3 {
    text-align: left; }
  .food-form table.editable {
    border-spacing: 0;
    border-collapse: collapse;
    width: fit-content;
    margin-top: 1em; }
    .food-form table.editable td {
      padding: 2px; }
  .food-form .invalid input,
  .food-form input.invalid,
  .food-form .invalid textarea,
  .food-form input:invalid {
    color: #ee0000;
    border-color: #ee0000; }
  .food-form label {
    width: 10em;
    display: inline-block; }
  .food-form input[type='url'] {
    width: 25em; }

.custom-food-form {
  width: 1000px;
  text-align: left;
  margin: 1em auto 0 2em; }
  .custom-food-form .section-separator {
    padding: 1em 0;
    margin-top: 1em; }
  .custom-food-form label {
    display: inline-block;
    width: 10em; }
  .custom-food-form .short-label label {
    width: 7.5em; }
  .custom-food-form table.editable {
    border-spacing: 0;
    border-collapse: collapse; }
    .custom-food-form table.editable th {
      text-align: left;
      padding-left: 4px;
      line-height: 1.1em; }
    .custom-food-form table.editable td {
      padding: 2px; }
      .custom-food-form table.editable td.short-label {
        padding-left: 2em; }
      .custom-food-form table.editable td.number {
        text-align: left; }
      .custom-food-form table.editable td .nutrient_unit, .custom-food-form table.editable td .dv_unit {
        margin: 0 1em 0 0; }
    .custom-food-form table.editable.measures .checkbox {
      width: 6em;
      display: inline-block; }
    .custom-food-form table.editable.measures td input[type='checkbox'] + label {
      margin-left: 12px; }
    .custom-food-form table.editable.measures td.number {
      vertical-align: middle; }
  .custom-food-form .invalid input,
  .custom-food-form input.invalid,
  .custom-food-form .invalid textarea,
  .custom-food-form input:invalid {
    color: #ee0000;
    border-color: #ee0000; }
  .custom-food-form input[type="number"] {
    width: 7em; }
  .custom-food-form .multi-select .choice-container span {
    width: 12em;
    display: inline-block;
    white-space: pre-wrap;
    line-height: 1em;
    vertical-align: top;
    padding-left: 16px; }
  .custom-food-form .multi-select .choice-container#serving_units span {
    width: auto;
    padding: 0 1em; }

.paginated {
  position: relative; }
  .paginated .top-navigation {
    float: right; }
  .paginated .search-result-count {
    position: absolute;
    top: 8px;
    font-size: 80%; }
  .paginated .paginator {
    font-size: 80%;
    margin-top: 0.5em; }
    .paginated .paginator span {
      margin: 0 0.5em 0 0.5em; }
      .paginated .paginator span.curr {
        border: solid 1px var(--base-light-border-color);
        border-radius: 50%;
        padding: 1px 6px; }

.edit-form.edit-user {
  width: 900px;
  margin: 0 auto; }
  .edit-form.edit-user .form-row {
    padding: 0.75em 1em;
    margin: 0; }
    .edit-form.edit-user .form-row .help {
      margin-left: 15.5em;
      margin-top: 4px; }
  .edit-form.edit-user input, .edit-form.edit-user select {
    width: 18em; }
  .edit-form.edit-user .full-width-input select {
    width: 100%; }
  .edit-form.edit-user label {
    display: inline-block;
    width: 13em; }
  @media (max-width: 770px) {
    .edit-form.edit-user {
      width: 100%; } }

.edit-form.edit-team {
  width: 1000px;
  margin: 0 auto; }
  .edit-form.edit-team .form-row {
    padding: 0.75em 1em;
    margin: 0; }
  .edit-form.edit-team select {
    max-width: 12em; }
  .edit-form.edit-team label {
    display: inline-block;
    width: 14em; }
  .edit-form.edit-team .help-text {
    display: inline-block;
    font-size: 75%;
    width: 270px;
    line-height: 1.2;
    vertical-align: middle;
    margin-left: 10px; }
  .edit-form.edit-team .delete-cell label {
    display: inline; }
  @media (max-width: 770px) {
    .edit-form.edit-team {
      width: 100%; } }

.edit-form.edit-promo {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto; }
  .edit-form.edit-promo .form-row {
    padding: 0.75em 1em 0.75em 1em;
    margin: 0; }
  .edit-form.edit-promo label {
    display: inline-block;
    width: 14em; }
  .edit-form.edit-promo .help {
    font-size: 70%; }

.edit-form.edit-note {
  width: 90%;
  max-width: 1038px;
  margin: 0 auto; }
  .edit-form.edit-note .form-row {
    padding: 0.75em 1em;
    margin: 0; }
  .edit-form.edit-note .help {
    font-size: 70%; }
  .edit-form.edit-note .image-holder {
    width: 200px;
    margin: 0 auto 0 auto;
    display: inline-block;
    font-size: 75%;
    vertical-align: middle; }
  .edit-form.edit-note label {
    margin-right: 40px; }
  .edit-form.edit-note #id_privacy_setting label {
    height: auto; }

.edit-form.edit-article {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto; }
  .edit-form.edit-article.tab_navigation_view .state-list {
    width: 7.5em; }
  .edit-form.edit-article label {
    display: inline-block;
    width: 7em; }
  .edit-form.edit-article input[type="text"] {
    width: calc(100% - 7em); }
  .edit-form.edit-article #id_privacy_setting label {
    width: auto;
    height: auto; }
  .edit-form.edit-article #id_privacy_setting input[type='radio'] + label {
    background-position: 0 3px; }
  .edit-form.edit-article img.preview {
    max-width: 80%;
    max-height: 80%;
    object-fit: contain; }
  .edit-form.edit-article .pdf-preview {
    width: fit-content;
    margin: auto; }
    .edit-form.edit-article .pdf-preview .controls {
      border: solid 1px var(--base-light-border-color);
      height: 32px;
      font-size: 90%; }
      .edit-form.edit-article .pdf-preview .controls span {
        vertical-align: middle; }
      .edit-form.edit-article .pdf-preview .controls .icon-button.small.square-border {
        margin-top: -1px;
        border-radius: 0;
        border: none;
        background-size: 12px; }
        .edit-form.edit-article .pdf-preview .controls .icon-button.small.square-border.left-arrow {
          background-image: url("img/cmd-arrow-left-black-thick.44c0e8f8e0d2.png");
          border-right: solid 1px var(--base-light-border-color); }
        .edit-form.edit-article .pdf-preview .controls .icon-button.small.square-border.right-arrow {
          background-image: url("img/cmd-arrow-right-black-thick.fdea62c7f24f.png");
          border-left: solid 1px var(--base-light-border-color); }
    .edit-form.edit-article .pdf-preview canvas {
      border: solid 1px var(--base-light-border-color); }

.edit-form.edit-sale-package {
  width: 1000px;
  margin: 0 auto; }
  .edit-form.edit-sale-package .form-row {
    padding: 0.75em 1em 0.75em 1em;
    margin: 0.25em 0; }
    .edit-form.edit-sale-package .form-row.compact {
      padding: 0.25em; }
    .edit-form.edit-sale-package .form-row.section-separator {
      padding-top: 2em;
      border-top-style: dashed; }
    .edit-form.edit-sale-package .form-row.long-field {
      margin-top: 1.25em; }
      .edit-form.edit-sale-package .form-row.long-field label {
        width: auto; }
      .edit-form.edit-sale-package .form-row.long-field .field-description {
        padding-left: 0;
        text-align: left;
        margin: 15px 0; }
      .edit-form.edit-sale-package .form-row.long-field .small-area {
        padding: 1em;
        width: 100%;
        margin-bottom: 2em; }
        .edit-form.edit-sale-package .form-row.long-field .small-area * {
          vertical-align: top; }
        .edit-form.edit-sale-package .form-row.long-field .small-area label {
          display: inline-block;
          width: 8em; }
        .edit-form.edit-sale-package .form-row.long-field .small-area input, .edit-form.edit-sale-package .form-row.long-field .small-area select {
          width: 28em; }
    .edit-form.edit-sale-package .form-row.toggle-switch .field-description {
      padding-left: 60px;
      margin-top: 5px; }
  .edit-form.edit-sale-package .content-order {
    border: solid 1px var(--base-light-border-color);
    border-radius: 8px;
    padding: 6px 10px;
    display: inline-block;
    margin-right: 10px; }
  .edit-form.edit-sale-package label {
    display: inline-block;
    width: 8.5em;
    vertical-align: top; }
  .edit-form.edit-sale-package .help {
    font-size: 90%;
    margin: 15px 0; }
  .edit-form.edit-sale-package .small-area {
    width: 100%; }
  .edit-form.edit-sale-package .currency {
    margin-right: 1em;
    display: inline-block; }
  .edit-form.edit-sale-package input, .edit-form.edit-sale-package select {
    width: 20em;
    display: inline-block; }
  .edit-form.edit-sale-package input[type='checkbox'] {
    display: none; }
  .edit-form.edit-sale-package input#id_price, .edit-form.edit-sale-package input#id_trial_days {
    width: 6em; }
  .edit-form.edit-sale-package input[type='checkbox'], .edit-form.edit-sale-package input[type='submit'] {
    width: auto; }
  .edit-form.edit-sale-package select[multiple='multiple'] {
    height: 20em; }
  .edit-form.edit-sale-package .field-description {
    padding-left: 10em;
    text-align: left;
    margin: 10px 0; }
  .edit-form.edit-sale-package .section-box .field-description {
    padding-left: 0; }
  .edit-form.edit-sale-package .section-box h3.section-title {
    font-style: normal;
    font-size: 110%; }
  .edit-form.edit-sale-package .checkbox-row {
    margin: 0.75em 0 0.75em 0;
    padding: 0 1em; }
    .edit-form.edit-sale-package .checkbox-row input[type='checkbox'] + label {
      margin-left: 0; }

.widget-container .recipe-collection,
.recipe-collection {
  width: 300px;
  display: inline-block;
  margin: 12px;
  text-align: left;
  vertical-align: top;
  border: solid 1px #cccccc; }
  @media (max-width: 770px) {
    .widget-container .recipe-collection,
    .recipe-collection {
      width: 300px;
      margin: 1em 0.3em; } }
  .widget-container .recipe-collection .collage,
  .recipe-collection .collage {
    height: 95px;
    overflow: hidden; }
    @media (max-width: 770px) {
      .widget-container .recipe-collection .collage,
      .recipe-collection .collage {
        height: 160px;
        max-width: 100%; } }
    .widget-container .recipe-collection .collage img,
    .recipe-collection .collage img {
      width: 33.3%;
      height: 100%;
      object-fit: cover;
      overflow: hidden; }
  .widget-container .recipe-collection .following-mark,
  .recipe-collection .following-mark {
    float: right;
    color: #009900;
    font-size: 75%;
    font-style: italic; }
  .widget-container .recipe-collection .card-info,
  .recipe-collection .card-info {
    padding: 4px 4px 0 4px;
    font-size: 11px;
    text-align: left;
    border-top: dotted 1px var(--base-light-border-color); }
    .widget-container .recipe-collection .card-info div,
    .recipe-collection .card-info div {
      display: inline-block;
      margin: 0 2px; }

.small-cards .widget-container .recipe-collection, .small-cards .recipe-collection {
  width: 250px; }
  .small-cards .widget-container .recipe-collection .collage, .small-cards .recipe-collection .collage {
    height: 65px; }

.collection-selector .recipe-collection {
  width: 360px; }
  .collection-selector .recipe-collection .collage {
    height: 180px; }
  .collection-selector .recipe-collection .title {
    white-space: normal; }

table.order_summary {
  width: 100%;
  border-collapse: collapse; }
  table.order_summary th, table.order_summary td {
    text-align: left;
    padding: 10px;
    border: 1px solid black; }

.social-dashboard .edit-form {
  width: 1000px;
  margin: auto; }
  .social-dashboard .edit-form .narrow-area {
    width: 860px;
    margin: 0 auto; }
    .social-dashboard .edit-form .narrow-area .form-row input[type='text'], .social-dashboard .edit-form .narrow-area .form-row input[type='url'] {
      width: 16em; }
    .social-dashboard .edit-form .narrow-area .form-row input[type='email'] {
      width: 22em; }
  .social-dashboard .edit-form .image {
    width: 19em; }
  .social-dashboard .edit-form .image-upload img {
    width: 100%;
    object-fit: cover; }
  .social-dashboard .edit-form .image-upload.free-size img {
    object-fit: contain; }
  .social-dashboard .edit-form .image-holder {
    width: 200px;
    margin: 0 auto 0 auto; }
    .social-dashboard .edit-form .image-holder img {
      width: 100%; }
    .social-dashboard .edit-form .image-holder .upload-controls {
      font-size: 60%;
      line-height: 1.5em; }
  .social-dashboard .edit-form label {
    display: inline-block;
    width: 12em;
    vertical-align: top; }
  .social-dashboard .edit-form label.top {
    width: auto;
    display: block; }
  .social-dashboard .edit-form #account_profile_pane label {
    width: 14em; }
  .social-dashboard .edit-form input[type='checkbox'] + label {
    margin: 0; }
  .social-dashboard .edit-form .form-row input[type='text'], .social-dashboard .edit-form .form-row input[type='url'], .social-dashboard .edit-form .form-row input[type='email'], .social-dashboard .edit-form .form-row textarea {
    width: 36em; }
  .social-dashboard .edit-form .form-row.short-input input[type='text'], .social-dashboard .edit-form .form-row.short-input input[type='url'], .social-dashboard .edit-form .form-row.short-input input[type='email'] {
    width: 10em; }
  .social-dashboard .edit-form .form-row.full-width-input input[type='text'], .social-dashboard .edit-form .form-row.full-width-input input[type='url'], .social-dashboard .edit-form .form-row.full-width-input input[type='email'], .social-dashboard .edit-form .form-row.full-width-input textarea {
    width: 100%; }
  @media (max-width: 770px) {
    .social-dashboard .edit-form {
      width: 320px; }
      .social-dashboard .edit-form input[type='text'], .social-dashboard .edit-form textarea {
        width: 300px; } }

.public-profile {
  margin: 0.5em auto 0.5em auto;
  border: solid 1px #DDDDDD;
  text-align: left; }
  @media (max-width: 400px) {
    .public-profile {
      width: 320px; } }
  .public-profile a.header-link {
    color: inherit;
    text-decoration: none; }
  .public-profile .profile-header {
    position: relative; }
    .public-profile .profile-header .profile-wallpaper {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0; }
      .public-profile .profile-header .profile-wallpaper img {
        display: block;
        margin: 0 auto;
        object-fit: cover;
        width: 100%;
        max-height: 100%; }
    .public-profile .profile-header .profile-image {
      position: absolute;
      top: 50%;
      margin-top: -50px;
      left: 6.5%;
      z-index: 1; }
      @media (max-width: 770px) {
        .public-profile .profile-header .profile-image {
          top: 0;
          margin-top: 0;
          height: 100%;
          width: auto; } }
    .public-profile .profile-header .profile-image.background--dark {
      box-shadow: 0 0 8px rgba(255, 255, 255, 0.5); }
    .public-profile .profile-header .profile-image.background--light {
      box-shadow: 0 0 8px rgba(0, 0, 0, 0.5); }
    .public-profile .profile-header .profile-title {
      position: absolute;
      top: 50%;
      margin-top: -1em;
      left: 6.5%;
      margin-left: 160px;
      padding: 0.5em 0.75em 0.5em 0.75em;
      border-radius: 20px; }
      .public-profile .profile-header .profile-title .name {
        font-size: 200%;
        line-height: 1.1em; }
      @media (max-width: 770px) {
        .public-profile .profile-header .profile-title {
          margin-left: 16%; }
          .public-profile .profile-header .profile-title .name {
            font-size: 18px; } }
      @media (max-width: 400px) {
        .public-profile .profile-header .profile-title .name {
          font-size: 16px; } }
    .public-profile .profile-header .profile-title.background--dark {
      color: whitesmoke;
      text-shadow: 1px 1px 6px black;
      background-color: rgba(0, 0, 0, 0.4);
      box-shadow: 0 0 8px rgba(0, 0, 0, 0.4); }
    .public-profile .profile-header .profile-title.background--light {
      color: #333333;
      text-shadow: 1px 1px 6px white;
      background-color: rgba(255, 255, 255, 0.4);
      box-shadow: 0 0 8px rgba(255, 255, 255, 0.4); }
  .public-profile .profile-content {
    padding: 2em 6% 2em 6%; }
    .public-profile .profile-content .credentials {
      font-style: italic;
      line-height: 1.5em;
      margin-bottom: 1em; }
      @media (max-width: 770px) {
        .public-profile .profile-content .credentials {
          font-size: 80%;
          padding: 2em 3% 2em 3%; } }
    .public-profile .profile-content .description {
      font-size: 80%;
      line-height: 1.3em;
      text-align: justify; }
    .public-profile .profile-content .contact {
      padding: 0 1em 0 1em;
      font-size: 80%; }
      .public-profile .profile-content .contact a {
        color: #008080; }

a.profile-header-link {
  color: inherit;
  text-decoration: none; }

.signup .public-profile.in-list {
  width: 700px;
  margin-left: -10%; }
  @media only screen and (max-width: 900px) {
    .signup .public-profile.in-list {
      margin-left: -15%; } }
  @media only screen and (max-width: 800px) {
    .signup .public-profile.in-list {
      width: 100%;
      margin-left: 0;
      font-size: 80%; } }

.public-profile.in-list {
  width: 1000px;
  margin: 0 auto 2em auto;
  position: relative; }
  @media (max-width: 770px) {
    .public-profile.in-list {
      width: 320px; } }
  .public-profile.in-list .profile-header {
    height: 80px;
    background-color: #e5f5c4; }
    .public-profile.in-list .profile-header .header-image {
      opacity: 0.5; }
    .public-profile.in-list .profile-header .profile-image {
      left: 2%;
      margin-top: -40px; }
      @media (max-width: 770px) {
        .public-profile.in-list .profile-header .profile-image {
          height: 100%;
          margin-top: 0; } }
    .public-profile.in-list .profile-header .profile-title {
      left: 0;
      margin-left: 100px;
      margin-top: -2em; }
      .public-profile.in-list .profile-header .profile-title .name {
        font-size: 130%; }
      .public-profile.in-list .profile-header .profile-title .credentials {
        line-height: 1.1em;
        margin-top: 0.2em;
        max-height: 2.25em;
        overflow: hidden;
        font-size: 90%; }
        @media (max-width: 770px) {
          .public-profile.in-list .profile-header .profile-title .credentials {
            font-size: 75%; } }
  .public-profile.in-list .profile-content {
    padding: 0.75em 2% 0.75em 2%;
    max-height: 6em;
    overflow: hidden; }
    .public-profile.in-list .profile-content .description {
      font-size: 80%;
      line-height: 1.2em;
      padding-bottom: 1em; }
    .public-profile.in-list .profile-content .contact {
      padding: 0 1em 0 1em;
      font-size: 80%; }
  .public-profile.in-list .small-button {
    position: absolute;
    right: 8px;
    bottom: 8px;
    box-shadow: -12px -6px 8px white; }

.full_page_profile .public-profile {
  width: 90%;
  max-width: 1200px;
  border: none;
  border-bottom: solid 1px #f5f5f5;
  margin: 0 auto; }
  .full_page_profile .public-profile .description {
    font-size: 90%; }
  @media (max-width: 770px) {
    .full_page_profile .public-profile {
      width: 100%; } }
  .full_page_profile .public-profile img {
    max-width: 100%; }
  .full_page_profile .public-profile .controls {
    text-align: right;
    margin-bottom: 10px; }

.full_page_profile .controls {
  margin-top: 0.5em; }
  .full_page_profile .controls .social-link {
    display: inline-block;
    margin: 6px;
    padding: 14px;
    border: solid 1px #d3d3d3;
    border-radius: 50%;
    width: 50px;
    height: 50px; }
    .full_page_profile .controls .social-link img {
      width: auto;
      height: auto;
      max-height: 100%;
      max-width: 100%; }

.full_page_profile .app-button-main.cta {
  background-color: var(--highlight-action-background);
  color: var(--highlight-action-color); }

.full_page_profile .small-area {
  margin: 2em auto;
  padding: 25px;
  border: solid 1px var(--base-light-border-color);
  border-radius: 16px;
  width: fit-content; }

.full_page_profile.black.embedded .controls.social-links .container {
  display: inline-block;
  padding: 0.25em 0.5em 0.25em 0.5em;
  background-color: white;
  border-radius: 20px; }

.collection-panel {
  position: fixed;
  top: 200px;
  right: 0;
  background: rgba(245, 245, 245, 0.9);
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
  border: solid 1px #d6d6d6;
  border-right: none; }
  .collection-panel .header {
    white-space: nowrap;
    padding: 0.15em 0.5em;
    cursor: pointer;
    text-align: center;
    border-bottom: solid 1px #808080; }
  .collection-panel .collection-targets {
    padding: 5px 2px;
    overflow-y: auto; }
    .collection-panel .collection-targets a {
      text-decoration: none;
      color: inherit; }
  .collection-panel .collection-target {
    max-width: 9em;
    padding: 0.5em;
    line-height: 1.1em;
    font-size: 90%; }
  .collection-panel .collection-target.drop-hover {
    border: solid 1px #c8e6b8;
    background-color: #dffccf; }

.collection-panel.closed {
  width: 0;
  background: transparent; }
  .collection-panel.closed .header {
    transform: rotate(90deg);
    transform-origin: left top 0;
    float: left;
    background: rgba(245, 245, 245, 0.9);
    border: solid 1px #d6d6d6;
    border-top: none;
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
    font-size: 120%;
    cursor: pointer; }

.modal-dialog.add-to-collection .black input[type='checkbox'] + label {
  max-width: 90%;
  white-space: normal;
  display: inline-block;
  margin-bottom: 0.2em;
  line-height: 1.2em; }

.source-weights .source-list {
  width: 800px;
  margin: 0 auto; }
  .source-weights .source-list .value {
    text-align: right; }
  .source-weights .source-list .source {
    text-align: left; }
  @media (max-width: 770px) {
    .source-weights .source-list {
      max-width: 300px; } }

.edit-form .dietary-goals .member {
  margin: 1em 0 1em 0; }
  .edit-form .dietary-goals .member .name {
    font-style: italic;
    margin-bottom: 0.3em; }
  .edit-form .dietary-goals .member .portion-scale {
    margin: 0.5em auto 0.5em auto; }

.edit-form .dietary-goals label {
  width: 110px;
  display: inline-block;
  line-height: 1.1em; }

.edit-form .dietary-goals input[type='text'], .edit-form .dietary-goals input[type='number'] {
  width: 4em;
  margin-bottom: 0.5em; }

.edit-form .dietary-goals .servings input[type='text'], .edit-form .dietary-goals .servings input[type='number'] {
  width: 3.5em; }

.edit-form .dietary-goals .recommendation {
  margin-left: 5px;
  font-size: 70%; }
  .edit-form .dietary-goals .recommendation .number {
    font-size: 110%; }

.do-shop.external-access table.list-component {
  width: 100%; }

.onboarding-steps-form {
  width: 600px;
  margin: 0 auto 0 auto; }
  .onboarding-steps-form .label {
    width: 10em; }
  .onboarding-steps-form .widget-list {
    border: solid 1px #f0f0f0;
    padding: 0.5em; }
    .onboarding-steps-form .widget-list .widget-frame {
      padding: 0.5em;
      margin: 1em auto 1em auto;
      border: solid 1px #cccccc;
      position: relative; }
      .onboarding-steps-form .widget-list .widget-frame h3 {
        color: #bbb;
        margin-bottom: 0.25em; }
      .onboarding-steps-form .widget-list .widget-frame .delete-widget {
        background: url("img/cmd-trash-small-black.55ee760123bc.png") no-repeat center;
        background-size: auto 80%;
        cursor: pointer;
        position: absolute;
        top: 2px;
        right: 2px;
        width: 30px;
        height: 30px; }
      .onboarding-steps-form .widget-list .widget-frame .multi-select .active, .onboarding-steps-form .widget-list .widget-frame .multi-select .inactive {
        border: solid 1px #cccccc;
        border-radius: 10px;
        padding: 0.25em 0.5em 0.25em 1.75em;
        background-position-x: 6px;
        margin: 0.5em;
        line-height: 2.25em; }
      .onboarding-steps-form .widget-list .widget-frame label, .onboarding-steps-form .widget-list .widget-frame .label {
        min-width: 3em;
        margin-right: 1em;
        display: inline-block; }
      .onboarding-steps-form .widget-list .widget-frame .question-form textarea {
        height: 6em; }

.video-wrapper {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 */
  padding-top: 25px;
  height: 0;
  overflow: hidden; }
  .video-wrapper iframe, .video-wrapper object, .video-wrapper embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: solid 1px #e6e6e6; }

.custom-flow-step {
  width: 900px;
  margin: 0 auto;
  text-align: center;
  padding: 1em 2em;
  background-color: rgba(255, 255, 255, 0.9); }
  @media (max-width: 770px) {
    .custom-flow-step {
      width: 310px; } }
  .custom-flow-step .choices {
    margin: 1em 0 1em 0; }
    .custom-flow-step .choices .app-button-main {
      display: block;
      margin-top: 12px;
      margin-bottom: 12px;
      padding-top: 0.5em;
      padding-bottom: 0.5em; }
  .custom-flow-step .controls {
    margin-bottom: 1em; }
  .custom-flow-step .recipe-collection {
    cursor: pointer; }
  .custom-flow-step input[type='checkbox'] + label {
    font-size: 110%; }
  .custom-flow-step .widget-container {
    margin: 1.5em 0; }
    .custom-flow-step .widget-container img {
      max-width: 100%;
      height: auto; }
  .custom-flow-step .question-user-form {
    text-align: left;
    margin: auto; }
    .custom-flow-step .question-user-form h3 {
      text-align: left; }
    .custom-flow-step .question-user-form .question textarea {
      width: 100%;
      height: 5em; }
    .custom-flow-step .question-user-form .question input[type='checkbox'] + label, .custom-flow-step .question-user-form .question input[type='radio'] + label {
      margin-left: 1em; }

.recipe-popup .recipe {
  padding-top: 1em;
  padding-bottom: 1em; }

.notifications h4 {
  margin-top: 2em; }

.notifications .notif_entries {
  width: 100%; }
  .notifications .notif_entries td {
    text-align: center; }

table.notif_day_select {
  table-layout: fixed;
  width: 100%;
  border-spacing: 5px; }
  table.notif_day_select td {
    font-weight: bold;
    white-space: nowrap;
    cursor: pointer;
    border: 1px solid;
    border-radius: 6px;
    background-color: white;
    padding: 0.1em;
    text-align: center; }
  table.notif_day_select td.inactive {
    opacity: 0.5; }
  table.notif_day_select td.active {
    opacity: 1;
    background-color: #b4ddff; }
  table.notif_day_select td:hover {
    box-shadow: 1px 2px 3px #a0a0a0; }

.freezer-icon {
  width: 25px;
  height: 25px;
  background-size: 25px;
  background-repeat: no-repeat;
  display: inline-block; }

.white .freezer-icon, .bkg-home-top-colors .freezer-icon {
  background-image: url("img/ico-freezer-white.ad34cd755b23.png"); }

.black .freezer-icon, .bkg-home-bottom-colors .freezer-icon {
  background-image: url("img/ico-freezer-black.487ff8f250e9.png"); }

.tab-selector {
  text-align: center; }
  .tab-selector span,
  .tab-selector div {
    margin-left: 2em;
    font-size: 110%;
    opacity: 0.8; }
  .tab-selector div {
    display: inline-block;
    cursor: pointer; }
  .tab-selector a {
    color: inherit; }
  .tab-selector .selected {
    text-decoration: none;
    font-size: 125%;
    cursor: default;
    opacity: 1; }

.report-list {
  width: 1500px;
  margin: 0 auto 0 auto; }
  .report-list button {
    background: white;
    border: solid 1px grey;
    border-radius: 12px;
    padding: 1em; }
  .report-list td {
    padding: 0.25em; }
  .report-list input[type='checkbox'] + label {
    margin: 0.25em; }

.report-form {
  width: 90%;
  margin: 0 auto 0 auto; }
  .report-form .form-row.single label {
    display: inline-block;
    width: 250px; }
  .report-form .form-row.single input, .report-form .form-row.single select {
    margin-left: 1em;
    width: 500px; }
  .report-form .report-details {
    width: 100%; }
    .report-form .report-details td {
      padding: 0 1em 0 1em; }
    .report-form .report-details input, .report-form .report-details select, .report-form .report-details textarea {
      width: 100%; }

.report-execute form {
  width: 1000px;
  margin: 0 auto 0 auto; }

.report-execute .report-result {
  margin: 0 auto 0 auto; }
  .report-execute .report-result .sort-asc, .report-execute .report-result .sort-desc {
    display: inline-block;
    width: 1em;
    background-size: contain;
    margin-left: 0.5em;
    background-repeat: no-repeat;
    background-position: center; }

.report-execute a {
  color: inherit; }

.report-execute table {
  margin: auto; }

.report-execute td {
  padding: 0 1em 0 1em; }

.report-execute input[type='submit'].app-button {
  border: none; }

.bottom-icons {
  position: relative; }
  .bottom-icons .icons {
    position: absolute;
    bottom: 4px;
    right: 4px; }
    .bottom-icons .icons .icon {
      width: 15px;
      height: 15px;
      background-repeat: no-repeat;
      background-size: contain;
      background-position: center;
      display: inline-block;
      margin-left: 1px; }

.sort-asc {
  background-image: url("img/ico-sort-asc.ef474ca613f4.png"); }

.sort-desc {
  background-image: url("img/ico-sort-desc.8f4b3196431b.png"); }

.filtered {
  background-image: url("img/ico-filter.4b47ffed8517.png"); }

.expert-home .articles .article_list {
  width: 100%; }

#mg_embed_body .recipe-view.pad {
  padding: 0 !important; }

.in-page-expert-holder {
  width: 800px;
  max-width: 100%;
  margin: 0 auto; }
  .in-page-expert-holder .public-profile {
    page-break-inside: avoid; }

.article_view {
  padding-top: 1em; }
  .article_view .article_info {
    text-align: center;
    font-size: 70%; }
    .article_view .article_info span {
      margin: 0 1em; }
  .article_view .article_body {
    margin: 2em auto;
    width: 90%;
    max-width: 1000px;
    position: relative; }

/** this should style the Froala content in both the editor and when
    being viewed regularly */
.wysiwyg_content, .fr-view, .introjs-tooltiptext {
  line-height: 1.4em;
  max-width: 95vw;
  margin: auto; }
  .wysiwyg_content::after, .fr-view::after, .introjs-tooltiptext::after {
    content: "";
    display: block;
    clear: both; }
  .wysiwyg_content ul, .wysiwyg_content ol, .fr-view ul, .fr-view ol, .introjs-tooltiptext ul, .introjs-tooltiptext ol {
    padding-left: 40px; }
    .wysiwyg_content ul li, .wysiwyg_content ol li, .fr-view ul li, .fr-view ol li, .introjs-tooltiptext ul li, .introjs-tooltiptext ol li {
      margin-bottom: 0.5em !important; }
  .wysiwyg_content img, .fr-view img, .introjs-tooltiptext img {
    max-width: 100%; }
  .wysiwyg_content iframe, .fr-view iframe, .introjs-tooltiptext iframe {
    max-width: 100%; }
  .wysiwyg_content table tr:nth-child(Even), .fr-view table tr:nth-child(Even), .introjs-tooltiptext table tr:nth-child(Even) {
    background-color: inherit; }
  .wysiwyg_content p, .wysiwyg_content span, .fr-view p, .fr-view span, .introjs-tooltiptext p, .introjs-tooltiptext span {
    margin-bottom: 1em; }
  .wysiwyg_content a.froala-cta, .wysiwyg_content .froala-cta, .fr-view a.froala-cta, .fr-view .froala-cta, .introjs-tooltiptext a.froala-cta, .introjs-tooltiptext .froala-cta {
    background-color: #faa526;
    color: black;
    border: solid 2px gray;
    border-radius: 14px;
    width: fit-content;
    margin: auto;
    padding: 1em 2em;
    cursor: pointer;
    text-decoration: none; }
    .wysiwyg_content a.froala-cta a, .wysiwyg_content .froala-cta a, .fr-view a.froala-cta a, .fr-view .froala-cta a, .introjs-tooltiptext a.froala-cta a, .introjs-tooltiptext .froala-cta a {
      color: inherit;
      text-decoration: none; }
  .wysiwyg_content .mg-fr-button-dark, .wysiwyg_content .mg-fr-button-light, .wysiwyg_content .mg-fr-button-orange, .wysiwyg_content .mg-fr-button-green, .wysiwyg_content .mg-fr-button-blue, .fr-view .mg-fr-button-dark, .fr-view .mg-fr-button-light, .fr-view .mg-fr-button-orange, .fr-view .mg-fr-button-green, .fr-view .mg-fr-button-blue, .introjs-tooltiptext .mg-fr-button-dark, .introjs-tooltiptext .mg-fr-button-light, .introjs-tooltiptext .mg-fr-button-orange, .introjs-tooltiptext .mg-fr-button-green, .introjs-tooltiptext .mg-fr-button-blue {
    display: inline-block;
    padding: 6px 25px;
    font-size: 110%;
    text-align: center;
    border-radius: 10px;
    text-decoration: none; }
    .wysiwyg_content .mg-fr-button-dark:hover, .wysiwyg_content .mg-fr-button-light:hover, .wysiwyg_content .mg-fr-button-orange:hover, .wysiwyg_content .mg-fr-button-green:hover, .wysiwyg_content .mg-fr-button-blue:hover, .fr-view .mg-fr-button-dark:hover, .fr-view .mg-fr-button-light:hover, .fr-view .mg-fr-button-orange:hover, .fr-view .mg-fr-button-green:hover, .fr-view .mg-fr-button-blue:hover, .introjs-tooltiptext .mg-fr-button-dark:hover, .introjs-tooltiptext .mg-fr-button-light:hover, .introjs-tooltiptext .mg-fr-button-orange:hover, .introjs-tooltiptext .mg-fr-button-green:hover, .introjs-tooltiptext .mg-fr-button-blue:hover {
      box-shadow: 2px 2px 4px 0 #3d3f42;
      margin-left: -1px;
      margin-top: -1px; }
  .wysiwyg_content .mg-fr-button-dark, .fr-view .mg-fr-button-dark, .introjs-tooltiptext .mg-fr-button-dark {
    background-color: #2a2c2e;
    color: white; }
  .wysiwyg_content .mg-fr-button-light, .fr-view .mg-fr-button-light, .introjs-tooltiptext .mg-fr-button-light {
    background-color: white;
    color: #2a2c2e;
    border: solid 1px #2a2c2e; }
  .wysiwyg_content .mg-fr-button-orange, .fr-view .mg-fr-button-orange, .introjs-tooltiptext .mg-fr-button-orange {
    background-color: #be6002;
    color: white; }
  .wysiwyg_content .mg-fr-button-green, .fr-view .mg-fr-button-green, .introjs-tooltiptext .mg-fr-button-green {
    background-color: #0f8d18;
    color: white; }
  .wysiwyg_content .mg-fr-button-blue, .fr-view .mg-fr-button-blue, .introjs-tooltiptext .mg-fr-button-blue {
    background-color: #0c68a7;
    color: white; }

.fr-box.fr-basic .fr-toolbar.fr-top.fr-sticky-on {
  top: 75px !important; }

.fr-box.fr-basic .fr-view.fr-element,
.fr-box.fr-basic .fr-view {
  font-size: inherit; }

.fr-box.fr-basic .fr-element {
  /*.token-object {
      background-color: #ff0;
    }*/ }

.invalid .fr-box.fr-basic {
  border: solid 2px red; }

/* remove Froala image manager delete button
 * https://wysiwyg-editor.froala.help/hc/en-us/articles/115000952989-How-can-I-remove-the-delete-button-from-the-image-manager-
 */
div.fr-modal-body div.fr-image-list div.fr-image-container .fr-delete-img {
  display: none !important; }

div.fr-modal-body div.fr-image-list div.fr-image-container .fr-insert-img {
  -webkit-transform: translateY(-50%) translateX(-50%) !important;
  -moz-transform: translateY(-50%) translateX(-50%) !important;
  -ms-transform: translateY(-50%) translateX(-50%) !important;
  -o-transform: translateY(-50%) translateX(-50%) !important; }

body.meal-garden .fr-sticky-dummy {
  height: 125px !important;
  background-color: var(--base-background-color) !important; }

.expert_articles {
  text-align: center; }
  .expert_articles .article_title {
    margin-right: 2em; }
  .expert_articles .article_date {
    font-size: 70%; }

.sale-package-home {
  width: 1000px;
  max-width: 100%;
  padding: 1em;
  margin: auto; }
  .sale-package-home .description {
    margin-top: 1em; }
  .sale-package-home .package-content {
    margin-top: 1.5em; }
    .sale-package-home .package-content a {
      color: inherit;
      text-decoration: None; }
    .sale-package-home .package-content.combined-content {
      text-align: left; }
      .sale-package-home .package-content.combined-content .object-card {
        margin-bottom: 30px; }
      .sale-package-home .package-content.combined-content .document-card {
        margin-top: -10px; }
    .sale-package-home .package-content .category-card, .sale-package-home .package-content .article-card {
      display: inline-block;
      position: relative;
      margin: 1em; }
      .sale-package-home .package-content .category-card img, .sale-package-home .package-content .article-card img {
        border-radius: 50%; }
      .sale-package-home .package-content .category-card .title, .sale-package-home .package-content .article-card .title {
        position: absolute;
        left: 0;
        width: 100%;
        height: 3.4em;
        padding: 0.4em 1em 0 1em;
        overflow: hidden;
        text-align: center;
        font-size: 110%;
        line-height: 1.1em; }
    .sale-package-home .package-content .category-card {
      width: 250px;
      height: 250px; }
      .sale-package-home .package-content .category-card .title {
        top: 200px; }
    .sale-package-home .package-content .article-card .title {
      font-size: 90%; }
  .sale-package-home .filtered-content {
    position: relative; }
    .sale-package-home .filtered-content .change-btn {
      position: absolute;
      top: 10px;
      right: 10px; }
      @media only screen and (max-width: 770px) {
        .sale-package-home .filtered-content .change-btn {
          position: relative;
          display: block;
          width: 130px;
          margin: 0.25em auto 0.25em auto; } }

.edit-form.edit-tag {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto; }
  .edit-form.edit-tag label {
    vertical-align: top; }
  .edit-form.edit-tag .form-row {
    padding: 0.75em 1em;
    margin: 0; }
    .edit-form.edit-tag .form-row textarea {
      width: 100%; }
  .edit-form.edit-tag .help {
    font-size: 70%; }
  .edit-form.edit-tag .image-holder {
    width: 200px;
    display: inline-block;
    margin-left: auto;
    margin-right: auto;
    font-size: 75%; }

select.django-select2 {
  min-width: 400px; }

#search_icon_holder {
  width: 40em;
  max-width: 80%;
  display: block;
  position: relative;
  height: 0;
  margin: 0 auto; }

#diet_restriction_icon {
  width: 24px;
  height: 24px;
  background: url("img/exclamation_icon.f2018684d276.svg") no-repeat center;
  background-size: contain;
  display: inline-block;
  position: absolute;
  right: 50px;
  top: 5px;
  cursor: pointer; }
  @media (max-width: 770px) {
    #diet_restriction_icon {
      right: 40px; } }

.diet_filter_warning .modal-content {
  padding: 1em; }

.edit-form #gift_purchase_form .label {
  vertical-align: top; }

.cke_dialog_contents .cke_dialog_ui_fileButton {
  background-color: #008080; }
  .cke_dialog_contents .cke_dialog_ui_fileButton .cke_dialog_ui_button {
    font-size: 180%;
    color: white; }

.cke_dialog_contents .cke_dialog_ui_fileButton:hover {
  background-color: #009999; }

.ui-autocomplete.food {
  max-width: 75%; }
  .ui-autocomplete.food li.ui-menu-item {
    display: inline-block;
    margin: 2px; }
    .ui-autocomplete.food li.ui-menu-item .ui-menu-item-wrapper {
      padding: 0.25em 0.5em;
      border: 1px solid lightgrey;
      border-radius: 10px;
      margin: 0; }
      .ui-autocomplete.food li.ui-menu-item .ui-menu-item-wrapper b {
        color: #007396;
        font-weight: bold; }

.comments_section {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 1em;
  text-align: left; }
  .comments_section .comments ul {
    padding-left: 40px; }
    .comments_section .comments ul li {
      list-style-type: none; }
  .comments_section .comments .comment_author {
    color: #00a0a0;
    font-size: 90%; }
    .comments_section .comments .comment_author img {
      border-radius: 50%;
      box-sizing: content-box;
      border: solid 1px #bfbfbf;
      vertical-align: middle; }
  .comments_section .comments .comment_body {
    margin: -8px 0 0 40px; }
    .comments_section .comments .comment_body p:last-child {
      margin-bottom: 0; }
  .comments_section .comments .comment_controls {
    font-size: 80%;
    margin: -3px 0 0 40px; }
    .comments_section .comments .comment_controls a + a {
      margin-left: 1em; }
  .comments_section .comments ul {
    margin-bottom: 1em; }
  .comments_section .comments > ul {
    padding-left: 0;
    /* first depth of comments */ }
  .comments_section .comment_form_text_input {
    margin: 0.3em; }
    .comments_section .comment_form_text_input textarea {
      width: 100%;
      height: 7em;
      border: solid 1px #b3b3b3; }
      .comments_section .comment_form_text_input textarea:focus {
        box-shadow: 0 0 6px 0 #b3b3b3; }
  .comments_section .comment_form::after {
    content: "";
    display: block;
    clear: both; }
  .comments_section .comment_form .app-button-main {
    float: right; }
  .comments_section .comment_form_reply {
    padding-left: 40px; }

#heart {
  background: url("img/ico-heart-off.9e6531ed805a.png") center no-repeat;
  display: inline-block;
  width: 38px;
  height: 38px;
  background-size: 100%;
  vertical-align: middle; }

#heart.on {
  background-image: url("img/ico-heart-on.5ca32c9a547b.png"); }

.image-controls input[type='checkbox'], .card-controls input[type='checkbox'] {
  display: none; }

.image-controls input[type='checkbox'] + span, .card-controls input[type='checkbox'] + span {
  background-image: url("img/ico-checkbox-large-overlay.f82448145b8b.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 35px;
  width: 45px;
  height: 45px;
  display: inline-block; }

.image-controls input[type='checkbox']:checked + span, .card-controls input[type='checkbox']:checked + span {
  background-image: url("img/ico-checkbox-large-overlay-checked.35ec13dd6720.png"); }

.image-controls.existing-element input[type='checkbox'] + label {
  background-color: rgba(0, 120, 0, 0.7);
  border-radius: 50%; }

.modal-prompt,
.add-note-form {
  margin: 1.5em auto 0 auto;
  max-width: 40em;
  width: 90%; }
  .modal-prompt input[type='text'],
  .add-note-form input[type='text'] {
    width: 100%; }
  .modal-prompt .form-row,
  .add-note-form .form-row {
    margin: 1em 0; }
    .modal-prompt .form-row:not(.image-widget) label,
    .add-note-form .form-row:not(.image-widget) label {
      display: block;
      vertical-align: top; }

.add-note-form {
  max-width: 1000px; }

.display-plan-note-modal {
  width: 90%;
  max-width: 1000px; }
  .display-plan-note-modal .modal-content {
    padding: 0 10px; }
    .display-plan-note-modal .modal-content img.note-image {
      display: block;
      max-width: 100%;
      margin: 0 auto; }
    .display-plan-note-modal .modal-content .popup-content {
      max-width: 100%;
      margin: 0.5em; }

/* content in inline manual popup */
.inmplayer-popover-content ul {
  padding-left: 20px; }

.prep-list {
  margin: 3em 3em; }
  .prep-list .prep-list-item {
    margin: 2em 0; }
  .prep-list .prep-instructions {
    margin-left: 1em; }
  .prep-list .new {
    color: red; }

.prep-instructions-view .day-title {
  text-align: left;
  padding: 6px 20px;
  background-color: var(--base-background-darker-color);
  border-top: solid 1px var(--base-light-border-color);
  border-bottom: solid 1px var(--base-light-border-color); }

.prep-instructions-view .task-title {
  text-align: left;
  padding: 0 20px;
  margin: 10px 0 0 0; }

.prep-instructions-view .task-subtitle {
  font-style: italic;
  font-size: 90%;
  padding: 0 20px; }

.prep-instructions-view .task-description {
  margin-left: 50px; }

#dietary_restrictions select {
  max-width: 13em; }

#dietary_restrictions .diet_presets {
  margin: 0.5em 0;
  padding: 0.5em;
  border: solid 1px #eee; }

#dietary_restrictions .help {
  font-size: 80%;
  line-height: 1.3em;
  margin-top: 0.3em; }

.context-menu-root .context-menu-input-error {
  background-color: #f0cccc;
  border-color: #ee0000; }

.edit-form.customer-form {
  width: 500px;
  margin: 0 auto; }
  .edit-form.customer-form label {
    display: inline-block;
    width: 9em; }
  .edit-form.customer-form input {
    vertical-align: middle; }

.content-board .section-separator {
  margin-top: 1em;
  border: none; }
  .content-board .section-separator:first-child {
    margin-top: 0; }
  .content-board .section-separator h3 {
    background-color: #f0f0f0;
    width: 100%;
    text-align: left;
    padding: 6px 20px; }
    .content-board .section-separator h3.count-container {
      background: none;
      font-size: 90%; }
  .content-board .section-separator .collections-container, .content-board .section-separator .plan-templates, .content-board .section-separator .document-list, .content-board .section-separator .programs {
    margin-top: 1em; }
  @media only screen and (max-width: 770px) {
    .content-board .section-separator {
      padding: 1em 2px 1em 2px; } }

.expert-content {
  position: relative;
  padding-bottom: 65px; }
  .expert-content .article-card {
    width: 150px;
    height: 150px;
    display: inline-block;
    position: relative;
    margin: 1em;
    vertical-align: top; }
    .expert-content .article-card.large {
      width: 180px;
      height: 180px; }
      .expert-content .article-card.large img {
        width: 130px;
        height: 130px; }
      .expert-content .article-card.large .title {
        font-size: 100%; }
    .expert-content .article-card img {
      border-radius: 50%; }
    .expert-content .article-card .title {
      position: absolute;
      left: 0;
      top: 100px;
      width: 100%;
      height: 50px;
      padding: 0.4em 4px;
      overflow: hidden;
      text-align: center;
      font-size: 80%;
      line-height: 1.1; }
  .expert-content .new-indicator {
    font-style: italic;
    font-size: 70%;
    font-weight: bold;
    position: absolute;
    top: -10px;
    right: -15px;
    padding: 0.3em 0.4em;
    color: #fff7b0;
    background-color: #202020;
    border-radius: 50%; }
  .expert-content a {
    color: inherit;
    text-decoration: None; }
  .expert-content .checkable {
    position: relative; }
  .expert-content .image-controls, .expert-content .card-controls {
    position: absolute;
    top: 4px;
    left: 6px; }
    .expert-content .image-controls input[type='checkbox'] + label, .expert-content .card-controls input[type='checkbox'] + label {
      margin: 0; }
  .expert-content .document-list .image-controls, .expert-content .document-list .card-controls {
    top: -22px;
    left: -16px; }
  .expert-content .document-list .article-card {
    margin: 20px; }
    .expert-content .document-list .article-card .image-controls {
      top: -8px;
      left: 14px; }
  .expert-content .content-board {
    height: 100%;
    position: relative;
    overflow-y: auto; }
  .expert-content .welcome-message, .expert-content .edit-form {
    max-width: 700px;
    margin: 1em auto; }

.modal-dialog.expert-content {
  padding-bottom: inherit;
  width: 1200px; }
  .modal-dialog.expert-content .modal-content {
    padding: 0; }
    .modal-dialog.expert-content .modal-content .section-separator {
      padding: 0; }
  .modal-dialog.expert-content .horizontal-tabs {
    text-align: left; }
    .modal-dialog.expert-content .horizontal-tabs .tab {
      width: 50%; }
    .modal-dialog.expert-content .horizontal-tabs .pane {
      text-align: center;
      border: none; }

.professional-title {
  text-align: center;
  font-style: italic;
  border-bottom: solid 1px #f5f5f5; }
  .professional-title img.logo {
    max-width: 300px;
    max-height: 40px;
    object-fit: contain;
    vertical-align: middle;
    margin: 1em 0.5em; }
  .professional-title .text {
    display: inline-block;
    margin: 1em 0.5em; }
  @media print {
    .professional-title {
      font-style: normal;
      padding: 0.5em 0;
      margin-bottom: 2em;
      border-top: solid 1px #cccccc;
      border-bottom: solid 1px #cccccc; }
      .professional-title img.logo {
        max-height: 20mm;
        max-width: 29%;
        margin-right: 10mm; }
      .professional-title .text {
        font-size: 130%;
        max-width: 69%;
        word-wrap: normal; } }

@media print {
  .header-footer-container .header, .header-footer-container .header-space,
  .header-footer-container .footer, .header-footer-container .footer-space {
    height: 20mm; }
  .header-footer-container .header {
    position: fixed;
    top: 0;
    width: 100%; }
  .header-footer-container .footer {
    position: fixed;
    bottom: 0;
    width: 100%; }
  .header-footer-container .professional-footer {
    position: fixed;
    bottom: 0;
    border-top: solid 0.5mm #cccccc;
    width: 100%; }
    .header-footer-container .professional-footer img.logo {
      max-height: 16mm;
      max-width: 29%;
      margin: 2mm 10mm 0 0;
      float: right; }
    .header-footer-container .professional-footer .author {
      margin: 0 10mm;
      font-size: 14pt;
      position: absolute;
      top: 7mm; }
  .header-footer-container .shopping-list-print {
    page-break-after: always; }
    .header-footer-container .shopping-list-print table {
      page-break-inside: auto; }
    .header-footer-container .shopping-list-print tr {
      page-break-inside: avoid;
      page-break-after: auto; } }

.description_block {
  max-width: 1000px;
  padding: 0 2em;
  margin: 1em auto;
  text-align: initial; }

.content-form {
  max-width: 1000px;
  width: 90%;
  padding-left: 2em; }
  .content-form .form-row:first-of-type {
    margin-top: 0; }
  .content-form .form-row .label {
    display: inline-block;
    width: 150px; }
  .content-form .form-row input {
    width: 70%; }
  .content-form .form-row input#id_custom_url {
    width: 22em; }
  .content-form .form-row input, .content-form .form-row select, .content-form .form-row .fr-box {
    margin: 4px 0; }
  .content-form .form-row.long-field label {
    display: block;
    width: auto;
    margin-bottom: 0.25em; }
  .content-form .form-row.long-field div > label {
    margin-bottom: 0; }
  .content-form .form-row.long-field input {
    width: 100%; }
  .content-form .form-row .long-field input {
    width: 100%; }
  .content-form .form-row .select2.select2-container {
    width: calc(100% - 120px) !important; }
  .content-form .form-row .help {
    margin: 10px 0; }
  .content-form .form-row .pseudo-input {
    margin: 0 0.5em;
    font-size: 105%;
    border: solid 1px var(--base-light-border-color);
    padding: 4px 10px;
    border-radius: 8px; }
  .content-form .small-area {
    width: fit-content;
    border: solid 1px var(--base-light-border-color);
    padding: 0.5em 1em;
    margin-bottom: 2em; }
    .content-form .small-area .controls {
      margin: 10px auto; }
  .content-form .small-section ul#id_privacy_setting.radio_select *, .content-form .small-area ul#id_privacy_setting.radio_select * {
    vertical-align: top; }
  .content-form .small-section ul#id_privacy_setting.radio_select input[type='radio'] + label, .content-form .small-area ul#id_privacy_setting.radio_select input[type='radio'] + label {
    height: auto;
    background-position-y: 2px; }
  .content-form .snack-counts label {
    width: 12em;
    display: inline-block; }
  .content-form .snack-counts input {
    width: 3em;
    margin-bottom: 4px; }
  .content-form .diet-list {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2; }
    .content-form .diet-list input[type='checkbox'] + label {
      margin: 0.25em 1em; }

.content-category-card {
  width: 120px;
  height: 145px;
  display: inline-block;
  position: relative;
  margin: 1em;
  cursor: pointer; }
  .content-category-card img {
    border-radius: 50%; }
  .content-category-card .title {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 50px;
    padding: 0 4px 0 4px;
    overflow: hidden;
    text-align: center;
    line-height: 1.1em; }

.content-category-form {
  width: 600px;
  margin: 0 auto;
  text-align: left; }
  .content-category-form .form-row label {
    vertical-align: top;
    width: 7em;
    display: inline-block; }
  .content-category-form .form-row .image-holder {
    width: 200px;
    display: inline-block; }
  .content-category-form .form-row select.django-select2 {
    width: 20em; }
  @media only screen and (max-width: 770px) {
    .content-category-form {
      width: 100%; } }

.staff-dashboard .block {
  min-height: 15em;
  border: solid #e6e6e6 1px;
  margin-top: 4px;
  background-color: #f5f5f5; }

.staff-dashboard .controls {
  margin-top: 4px; }

.stats_dashboard .group {
  text-align: center; }
  .stats_dashboard .group h2 {
    margin-bottom: 0.5em; }
  .stats_dashboard .group .stat {
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    margin: 0 1em; }
    .stats_dashboard .group .stat .label {
      font-style: italic; }
    .stats_dashboard .group .stat .number {
      font-size: 110%;
      border: solid 3px #cde0b8;
      border-radius: 50%;
      min-width: 70px;
      height: 70px;
      line-height: 65px;
      left: 1em;
      position: relative;
      margin-top: 0.25em; }
  .stats_dashboard .group table {
    margin: 0 auto; }
    .stats_dashboard .group table td {
      text-align: left; }

.plan-print-options .multi-select {
  column-count: 3; }

.modal-dialog.stats .modal-content h2 {
  margin-top: 1em; }

.modal-dialog.stats .modal-content table {
  margin: 1em auto; }

.update-mealplan-inputs {
  padding-bottom: 1.5em; }
  .update-mealplan-inputs h4 {
    text-align: center; }

.tab_navigation_view {
  position: relative;
  padding: 0 0 0 11em;
  min-height: 250px; }
  @media only screen and (max-width: 770px) {
    .tab_navigation_view {
      padding: 0.5em 1em 1em 1em; } }
  .tab_navigation_view .state-list {
    position: fixed;
    top: 75px;
    bottom: 0;
    left: 0;
    padding: 1em 0 0.1em 0.5em;
    width: 11em;
    border-right: solid 1px var(--base-light-border-color);
    background-color: var(--tab-panel-background-color);
    color: var(--tab-panel-color); }
    @media only screen and (max-width: 770px) {
      .tab_navigation_view .state-list {
        font-size: 90%;
        position: relative;
        top: auto;
        bottom: auto;
        width: 100%;
        padding-left: 0;
        border-right: none;
        border-bottom: solid 1px rgba(0, 0, 0, 0.3);
        margin-bottom: 1em; } }
    .tab_navigation_view .state-list a {
      text-decoration: none;
      color: inherit; }
    .tab_navigation_view .state-list .group {
      font-size: 110%;
      color: var(--tab-panel-color);
      opacity: 0.5; }
    .tab_navigation_view .state-list .label {
      cursor: pointer;
      line-height: 1.1em;
      padding: 20px 0 20px 16px;
      font-size: 100%; }
      @media only screen and (max-height: 800px) {
        .tab_navigation_view .state-list .label {
          padding: 18px 0 18px 16px;
          font-size: 95%; } }
      .tab_navigation_view .state-list .label:hover {
        font-weight: bold;
        background-color: var(--tab-panel-button-background); }
      @media only screen and (max-width: 770px) {
        .tab_navigation_view .state-list .label {
          display: inline-block;
          margin: 0.25em 1em 0.25em 1em;
          padding-right: 6px; } }
      .tab_navigation_view .state-list .label .notification_marker {
        top: 4px;
        margin-top: 0;
        left: 60px; }
    .tab_navigation_view .state-list .label.active {
      background-color: var(--base-background-color);
      color: var(--base-color);
      box-shadow: 0 0 4px var(--base-background-color);
      border-radius: 6px 0 0 6px;
      border-left: solid 1px var(--base-light-border-color);
      border-top: solid 1px var(--base-light-border-color);
      border-bottom: solid 1px var(--base-light-border-color);
      font-weight: bold;
      margin-right: -2px; }
      .tab_navigation_view .state-list .label.active:hover {
        font-weight: inherit; }
      @media only screen and (max-width: 770px) {
        .tab_navigation_view .state-list .label.active {
          border-radius: 0; } }
    .tab_navigation_view .state-list .label.unavailable {
      opacity: 0.5;
      cursor: default; }
      .tab_navigation_view .state-list .label.unavailable:hover {
        font-weight: inherit; }
    .tab_navigation_view .state-list .label.group-item {
      padding-left: 1em; }
    .tab_navigation_view .state-list .separator {
      width: 80%;
      margin: 0.3em 0;
      border-top: solid 1px var(--tab-panel-color);
      opacity: 0.25; }
    .tab_navigation_view .state-list .panel-button {
      background-color: var(--tab-panel-button-background);
      color: var(--tab-panel-color);
      border: solid 1px var(--tab-panel-color);
      border-radius: 6px;
      padding: 0.25em 2em;
      text-align: center;
      display: inline-block;
      margin-bottom: 16px;
      font-size: 125%;
      cursor: pointer; }
      .tab_navigation_view .state-list .panel-button:hover {
        font-weight: bold;
        box-shadow: 0 0 4px var(--tab-panel-color); }
  .tab_navigation_view .state-content {
    width: 100%;
    height: 100%;
    background-color: var(--base-background-color);
    color: var(--base-color);
    box-shadow: 0 0 4px white;
    padding: 1px;
    min-height: 32em; }
    @media only screen and (max-width: 770px) {
      .tab_navigation_view .state-content {
        padding: 0.2em; } }
    .tab_navigation_view .state-content .edit-form {
      margin-top: 0; }

.impersonated .tab_navigation_view .state-list {
  top: 129px; }

.week-schedules {
  padding: 0.5em; }
  .week-schedules a {
    text-decoration: none;
    color: inherit; }
  .week-schedules .week-schedule-card {
    display: inline-block;
    width: 240px;
    background-color: #f9f9f9;
    border: solid 1px #ddd;
    border-radius: 15px;
    line-height: 1.2em;
    margin: 0.75em;
    vertical-align: top;
    min-height: 6em;
    text-align: left; }
    .week-schedules .week-schedule-card:hover {
      box-shadow: 3px 3px 5px 0 var(--base-light-border-color); }
    .week-schedules .week-schedule-card.card-highlight {
      background-color: #F6FFF6; }
    .week-schedules .week-schedule-card .title {
      border-bottom: solid 1px #ddd;
      padding: 10px 6px 10px 14px;
      margin-bottom: 10px; }
    .week-schedules .week-schedule-card .info {
      font-size: 80%;
      font-style: italic;
      margin-left: 14px;
      padding-bottom: 10px; }

.advanced-search-form {
  margin: 1em auto;
  max-width: 40em;
  width: 90%; }
  .advanced-search-form .form-row {
    margin: 0.5em 0; }
    .advanced-search-form .form-row.long-field label {
      margin-right: 1%;
      width: 28%;
      display: inline-block;
      vertical-align: middle; }
    .advanced-search-form .form-row.long-field input {
      width: 50%; }
    .advanced-search-form .form-row .nutrient_term {
      text-align: center;
      margin: 0.5em 0; }
      .advanced-search-form .form-row .nutrient_term .measure {
        width: 3em;
        display: inline-block;
        text-align: left; }
    .advanced-search-form .form-row #add_nutrient_term {
      margin: 0 auto 1em;
      display: block; }

span#advanced_search_button {
  display: inline-block;
  cursor: pointer;
  margin-left: -15%;
  border: solid 1px;
  padding: 4px 6px;
  border-radius: 12px;
  font-size: 80%;
  vertical-align: middle; }
  @media only screen and (max-width: 770px) {
    span#advanced_search_button {
      font-size: 50%;
      padding: 4px; } }

.chat-popup .modal-content {
  padding: 0 0 81px 0;
  overflow: hidden; }
  .chat-popup .modal-content .conversation {
    height: 100%;
    overflow-y: auto;
    max-width: 800px;
    width: 90vw;
    margin: auto;
    padding: 0.5em; }
    .chat-popup .modal-content .conversation .time-label {
      font-size: 70%;
      padding: 0 12px;
      color: #bbbbbb;
      margin-bottom: -6px; }
    .chat-popup .modal-content .conversation .message {
      border: solid 1px #ddd;
      padding: 4px 16px;
      border-radius: 20px;
      display: inline-block;
      margin: 0 6px 6px 0;
      text-align: left; }
    .chat-popup .modal-content .conversation .message-container.my-message {
      text-align: right; }
      .chat-popup .modal-content .conversation .message-container.my-message .message {
        background-color: #eafae1; }
  .chat-popup .modal-content .message-container.other-message {
    text-align: left; }
    .chat-popup .modal-content .message-container.other-message .message {
      background-color: #e1f9fa; }
  .chat-popup .modal-content .message-input {
    position: absolute;
    bottom: 1px;
    left: 1px;
    width: calc(100% - 2px);
    height: 80px;
    border-top: solid 1px #e9e9e9;
    padding: 10px;
    text-align: center;
    background-color: var(--base-background-darker-color);
    border-bottom-left-radius: 18px;
    border-bottom-right-radius: 18px; }
    .chat-popup .modal-content .message-input * {
      vertical-align: middle; }
    .chat-popup .modal-content .message-input textarea {
      width: calc(100% - 140px);
      min-width: 200px;
      resize: none; }
    .chat-popup .modal-content .message-input .button {
      background-repeat: no-repeat;
      width: 60px;
      height: 50px;
      border-radius: 10px;
      border: solid 1px var(--base-color);
      display: inline-block;
      background-position: center;
      background-color: var(--base-background-color); }
      .chat-popup .modal-content .message-input .button.send {
        background-image: url("img/ico-send-chat.085400483ce3.png"); }
      .chat-popup .modal-content .message-input .button.attach {
        background-image: url("img/ico-attach.63d0b8fcd882.png"); }
      .chat-popup .modal-content .message-input .button:hover {
        box-shadow: 3px 3px 5px 0 var(--base-light-color);
        margin-top: -1px; }

span.unread-count {
  color: white;
  display: inline-block;
  background-color: #008080;
  width: 2em;
  height: 2em;
  border-radius: 50%;
  text-align: center;
  margin-left: -16px;
  font-size: 80%;
  line-height: 2em;
  vertical-align: top; }

span.unread-count {
  color: white;
  display: inline-block;
  background-color: var(--help-panel-border-color);
  width: 2em;
  height: 2em;
  border-radius: 50%;
  text-align: center;
  margin-left: -16px;
  font-size: 80%;
  line-height: 2em;
  vertical-align: top; }

.has_notification_marker {
  position: relative; }
  .has_notification_marker.small-button .notification_marker {
    top: -6px;
    right: -6px; }

.app-button-main.has_own_notification_marker {
  position: relative;
  overflow: visible; }
  .app-button-main.has_own_notification_marker .label {
    width: 100%;
    display: inline-block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis; }

.has_notification_marker .notification_marker, .app-button-main.has_own_notification_marker::after {
  position: absolute;
  top: -4px;
  right: -4px;
  background-color: white;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  border: solid 4px var(--help-panel-border-color);
  content: ' '; }
  .has_notification_marker .notification_marker.vertical_middle, .app-button-main.has_own_notification_marker::after.vertical_middle {
    top: 50%;
    margin-top: -8px; }

.edit-form.appointment-type-form {
  width: 600px;
  margin: 0 auto; }
  .edit-form.appointment-type-form .form-row {
    margin: 1em 0 1em 0; }
  .edit-form.appointment-type-form label {
    display: inline-block;
    width: 12em; }
  .edit-form.appointment-type-form textarea {
    height: 4em; }

.appoimtment-calendar table {
  width: 100%;
  border-collapse: collapse; }
  .appoimtment-calendar table td {
    border: solid 1px #dedede;
    height: 10em;
    padding: 0 0.5em 0.25em 0.5em;
    vertical-align: top;
    text-align: left;
    cursor: pointer;
    width: 14.28%;
    overflow-x: hidden; }
    .appoimtment-calendar table td .date {
      font-size: 130%;
      color: #aaa; }
    .appoimtment-calendar table td .appointment {
      padding-left: 2em;
      font-size: 60%;
      line-height: 1.5em; }
      .appoimtment-calendar table td .appointment .time {
        font-family: var(--font-family-numbers);
        display: inline-block; }
      .appoimtment-calendar table td .appointment .name {
        display: inline-block; }
  .appoimtment-calendar table td.unavailable {
    background-color: #f6f6f6; }

.settings-screen .work-times .work-time-day {
  border-bottom: solid 1px #eee;
  margin-bottom: 1em;
  padding: 1em 0; }
  .settings-screen .work-times .work-time-day .day-label {
    display: inline-block;
    width: 8em; }
  .settings-screen .work-times .work-time-day .time-row {
    margin-bottom: 0.25em; }
    .settings-screen .work-times .work-time-day .time-row .work-time {
      padding-left: 8em;
      display: inline-block;
      width: 18em; }
    .settings-screen .work-times .work-time-day .time-row .delete-button {
      vertical-align: middle; }

.edit-form.work-time-form, .edit-form.off-time-form {
  width: 400px;
  margin: 0 auto; }
  .edit-form.work-time-form .form-row, .edit-form.off-time-form .form-row {
    margin: 1em 0 1em 0; }
  .edit-form.work-time-form label, .edit-form.off-time-form label {
    display: inline-block;
    width: 7em; }

.day-agenda table {
  margin: 0 auto;
  border-collapse: collapse; }
  .day-agenda table td {
    border-bottom: solid 1px #dadada;
    padding: 0.2em 0.5em 0.2em 0.5em; }
  .day-agenda table td.time {
    border-right: solid 1px #dadada; }
  .day-agenda table tbody tr:last-child td {
    border-bottom: none; }
  .day-agenda table tbody tr.divider td {
    border-bottom: none;
    line-height: 15px; }

.edit-form.appointment-form {
  width: 600px;
  margin: 0 auto; }
  .edit-form.appointment-form .form-row {
    margin: 1em 0 1em 0; }
  .edit-form.appointment-form label {
    display: inline-block;
    width: 11em; }
  .edit-form.appointment-form select, .edit-form.appointment-form input[type='text'] {
    width: 20em; }
  .edit-form.appointment-form .form-row.checkbox-row {
    padding-left: 11em; }

.note_list {
  width: 100%; }

.user-dashboard {
  background-color: var(--tab-panel-background-color);
  color: var(--tab-panel-color);
  min-height: 400px;
  padding: 1em 3em; }
  .user-dashboard .dashboard-panel {
    background-color: var(--base-background-color);
    color: var(--base-color); }
    .user-dashboard .dashboard-panel .multi-select .active, .user-dashboard .dashboard-panel .multi-select .inactive {
      margin: 0;
      display: inline-block;
      line-height: 0.9em; }
    .user-dashboard .dashboard-panel .multi-select .active {
      background-color: var(--base-background-color);
      padding: 6px 8px 6px 30px;
      background-position-x: 8px;
      background-position-y: 5px;
      border-radius: 10px 10px 0 0; }
    .user-dashboard .dashboard-panel .dashboard-panel-item {
      border-bottom: solid 1px #dadada;
      padding: 1em;
      background-color: var(--base-background-color); }
    .user-dashboard .dashboard-panel .dashboard-panel-item:last-child {
      border-bottom: none; }
  .user-dashboard #panel_help {
    background-color: rgba(255, 255, 255, 0.7); }

.signup-plan-select .block {
  background-color: #eeeeee;
  border-radius: 20px;
  max-width: 600px;
  min-height: 22em;
  position: relative; }
  .signup-plan-select .block ul {
    margin: 1em 2em;
    min-height: 8em; }
  .signup-plan-select .block .controls {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 10px;
    padding: 0 20px; }

.controls.captcha .grecaptcha-badge {
  margin: auto;
  visibility: hidden;
  height: 1px !important; }

.edit-collection.tab_navigation_view {
  padding-left: 8em; }
  .edit-collection.tab_navigation_view .state-list {
    width: 8em; }

.edit-collection .horizontal-tabs {
  margin: 1em 1em 0 1em; }
  .edit-collection .horizontal-tabs .tabs .tab {
    width: 50%; }

.edit-collection .tab-selector {
  padding-bottom: 0 !important;
  padding-top: 1em;
  border-bottom: solid 1px var(--base-light-border-color); }
  .edit-collection .tab-selector div {
    background-color: var(--base-background-color);
    color: var(--base-color);
    padding: 12px 6px;
    vertical-align: bottom; }
  .edit-collection .tab-selector .selected {
    border-style: solid;
    border-color: var(--base-light-border-color);
    border-width: 1px 1px 0 1px;
    border-radius: 10px 10px 0 0;
    padding-left: 1.5em;
    padding-right: 1.5em;
    margin-bottom: -2px; }

.edit-collection .edit-form .form-row.small-section {
  margin: 2em auto 1em auto;
  width: fit-content; }

.tab_navigation_view.template-edit-screen {
  padding-left: 7em; }
  .tab_navigation_view.template-edit-screen .state-list {
    width: 7em; }
    .tab_navigation_view.template-edit-screen .state-list a {
      text-decoration: none;
      color: inherit; }
  .tab_navigation_view.template-edit-screen .state-content {
    padding: 1px;
    min-width: 1024px; }
  .tab_navigation_view.template-edit-screen .with-info-panel {
    padding-right: 250px; }

.modal-dialog.help-topic-modal {
  padding-top: 1em;
  max-width: 900px; }
  .modal-dialog.help-topic-modal .modal-content {
    padding: 1em 1em 4em 1em; }
    .modal-dialog.help-topic-modal .modal-content .content {
      max-width: 800px;
      margin: 1em auto; }
  .modal-dialog.help-topic-modal .modal-controls {
    border-top: solid 1px #ccc;
    padding-top: 0.5em;
    background-color: var(--base-background-color); }

.section-box, .controls.small-section {
  margin: auto;
  padding: 1em;
  border: solid 1px lightgrey;
  border-radius: 16px;
  margin-top: 0.5em; }
  .section-box .section-title, .controls.small-section .section-title {
    margin-top: -1.35em;
    background-color: var(--base-background-color);
    width: fit-content;
    padding: 0 14px;
    margin-bottom: 0.5em;
    border-radius: 20px; }
    .section-box .section-title.left-align, .controls.small-section .section-title.left-align {
      margin-left: 0.2em;
      width: fit-content; }
  .section-box h3.section-title, .controls.small-section h3.section-title {
    font-style: italic;
    font-size: 1.3em; }

.controls.small-section {
  display: inline-block; }

.board-selections-popup .controls {
  padding: 0.5em; }

.modal-dialog.cancellation-popup {
  width: 700px;
  height: 340px; }

.has-screen-action-bar {
  padding-bottom: 78px; }

.screen-action-bar {
  height: 75px;
  text-align: center;
  padding: 0.5em 1em 0.5em 1em;
  z-index: 999; }
  @media only screen and (max-width: 770px) {
    .screen-action-bar .app-button-main, .screen-action-bar .app-button {
      font-size: 80%;
      padding: 6px 10px;
      max-width: 140px;
      min-width: 0;
      line-height: 1.1em; } }
  .screen-action-bar .app-button:hover, .screen-action-bar .app-button-main:hover {
    margin-top: calc(0.3em - 2px);
    margin-left: calc(0.3em - 2px); }
  .screen-action-bar .actions-group {
    position: relative;
    min-width: 180px;
    cursor: pointer;
    font-size: 120% !important;
    padding: 0.3em 1.5em 0.3em 1.5em !important;
    text-align: center;
    display: inline-block;
    margin: 0.3em;
    -webkit-appearance: none;
    border-radius: 8px; }
    .screen-action-bar .actions-group.open {
      border-radius: 0 0 8px 8px;
      border-top: none;
      color: #d2d2d2;
      cursor: default; }
      .screen-action-bar .actions-group.open.app-button {
        color: #848484; }
    .screen-action-bar .actions-group .actions-container {
      display: none;
      position: absolute;
      overflow: hidden;
      padding: 0.3em;
      background-color: inherit;
      border-radius: 8px 8px 0 0;
      border-bottom: 1px solid #d2d2d2 !important; }
      .screen-action-bar .actions-group .actions-container .screen-action-button {
        font-size: 100% !important;
        text-align: left;
        width: 100%;
        color: #d2d2d2;
        white-space: nowrap;
        padding: 4px 10px; }
        .screen-action-bar .actions-group .actions-container .screen-action-button:hover {
          color: var(--base-background-color);
          cursor: pointer; }
    .screen-action-bar .actions-group.app-button-main .actions-container {
      border: 1px solid #4d4d4d;
      bottom: calc(100% - 1px);
      left: -1px;
      width: calc(100% + 2px); }
    .screen-action-bar .actions-group.app-button .actions-container {
      border: solid 2px var(--base-light-color);
      bottom: calc(100% - 2px);
      left: -2px;
      width: calc(100% + 4px); }
      .screen-action-bar .actions-group.app-button .actions-container .screen-action-button {
        color: #9a9a9a; }
        .screen-action-bar .actions-group.app-button .actions-container .screen-action-button:hover {
          color: var(--base-color); }

.pro_member_form .invalid input,
.pro_member_form input.invalid,
.pro_member_form .invalid textarea,
.pro_member_form input:invalid,
.pro_member_form .invalid select {
  color: #ee0000;
  border-color: #ee0000; }

.pro_member_form .invalid .select2 .select2-container--default,
.pro_member_form .invalid .select2 .select2-selection--single {
  color: #ee0000;
  border-color: #ee0000; }

.pro_member_form table {
  width: 100%;
  max-width: 1000px;
  margin: auto; }

.pro_member_form .add-new-row,
.pro_member_form .delete-cell {
  text-align: center; }

.pro_member_form .select2-container .select2-selection--single {
  height: auto;
  border-radius: 8px;
  padding: 2px; }

.pro_member_form input {
  background: #fff; }

.pro_member_form .discount-details .content {
  color: var(--base-light-border-color); }
  .pro_member_form .discount-details .content.active {
    color: var(--base-color); }

.horizontal-tab-selector {
  text-align: center;
  padding-bottom: 0 !important;
  margin-top: -0.5em;
  padding-top: 1em; }
  .horizontal-tab-selector div {
    padding: 6px;
    vertical-align: bottom;
    display: inline-block;
    cursor: pointer;
    max-width: 48%;
    line-height: 1.3em; }
    @media only screen and (max-width: 770px) {
      .horizontal-tab-selector div {
        font-size: 90%; } }
  .horizontal-tab-selector .selected {
    border-radius: 10px 10px 0 0;
    background-color: var(--base-background-color);
    color: var(--base-color);
    padding-left: 1.5em;
    padding-right: 1.5em;
    margin-bottom: -2px;
    font-size: 110%; }
    @media only screen and (max-width: 770px) {
      .horizontal-tab-selector .selected {
        font-size: 90%; } }

.horizontal-tabs .tabs {
  background-color: var(--base-background-color); }
  .horizontal-tabs .tabs .tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    vertical-align: bottom;
    text-align: center;
    line-height: 1.1em;
    cursor: pointer;
    height: 80px;
    width: 130px;
    font-size: 115%;
    position: relative;
    padding: 0 10px;
    background-color: var(--base-light-border-color);
    color: var(--base-color);
    border-right: solid 2px var(--base-background-color);
    border-top-left-radius: 8px;
    border-top-right-radius: 24px;
    /*
      &:hover {
        background-color: rgba(0, 0, 0, 0.2);
        background-blend-mode: darken;
      }
      */ }
    @media only screen and (max-width: 360px) {
      .horizontal-tabs .tabs .tab {
        width: 100px; } }
    .horizontal-tabs .tabs .tab:last-child {
      border-right: none; }
    .horizontal-tabs .tabs .tab.low {
      height: 60px; }
    .horizontal-tabs .tabs .tab::before {
      display: block;
      content: " ";
      position: absolute;
      z-index: -1;
      background: rgba(0, 0, 0, 0.2);
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      border-top-left-radius: 8px;
      border-top-right-radius: 24px; }
    .horizontal-tabs .tabs .tab:hover::before {
      z-index: auto; }
    .horizontal-tabs .tabs .tab.vertical-text {
      border-top-left-radius: 4px;
      border-top-right-radius: 10px;
      border-left: solid 1px var(--base-background-color);
      letter-spacing: 2px;
      border-right: none; }
      .horizontal-tabs .tabs .tab.vertical-text::before {
        border-top-left-radius: 4px;
        border-top-right-radius: 10px; }
    .horizontal-tabs .tabs .tab.selected, .horizontal-tabs .tabs .tab.active {
      background-color: var(--base-color);
      color: var(--base-background-color); }
      .horizontal-tabs .tabs .tab.selected::after, .horizontal-tabs .tabs .tab.active::after {
        content: url("img/white_triangle_up.86660b18b016.png");
        width: 80px;
        height: 40px;
        transform: scale(0.4);
        position: absolute;
        left: calc(50% - 18);
        bottom: -14px; }
    .horizontal-tabs .tabs .tab.inactive {
      opacity: 1; }
    .horizontal-tabs .tabs .tab span {
      vertical-align: middle; }

.horizontal-tabs .panes .pane {
  display: none;
  padding: 1em;
  border: solid 1px var(--base-light-border-color); }

.horizontal-tabs.compact-tabs .tabs {
  border-bottom: solid 1px var(--base-light-border-color); }
  .horizontal-tabs.compact-tabs .tabs .tab {
    background-color: var(--base-background-color);
    color: var(--base-color);
    height: 50px;
    border-radius: 0;
    border-right: none; }
    .horizontal-tabs.compact-tabs .tabs .tab::after, .horizontal-tabs.compact-tabs .tabs .tab::before {
      display: none; }
    .horizontal-tabs.compact-tabs .tabs .tab:hover {
      background-color: var(--base-light-border-color); }
    .horizontal-tabs.compact-tabs .tabs .tab.selected, .horizontal-tabs.compact-tabs .tabs .tab.active {
      border-bottom: solid 3px var(--base-light-color); }
      .horizontal-tabs.compact-tabs .tabs .tab.selected::after, .horizontal-tabs.compact-tabs .tabs .tab.selected::before, .horizontal-tabs.compact-tabs .tabs .tab.active::after, .horizontal-tabs.compact-tabs .tabs .tab.active::before {
        display: none; }

.horizontal-tabs.compact-tabs .panes .pane {
  border: none; }

.professional-list {
  margin: 0; }
  .professional-list td {
    border-right: solid 1px lightgrey; }
  .professional-list .practitioner-list-filters * {
    vertical-align: top; }
  .professional-list td.credentials {
    min-width: 24em; }
  .professional-list td.associations {
    min-width: 24em; }
  .professional-list td.date-joined {
    min-width: 8em; }
  .professional-list td.controls {
    min-width: 22.5em; }
  .professional-list td.link-cell {
    min-width: 10em; }

.color-selectors input[type='color'] {
  border: none;
  width: 2.5em;
  height: 2.5em;
  border-radius: 50%;
  margin-bottom: 0.25em; }

.subscription_count_modal_prompt {
  text-align: center; }
  .subscription_count_modal_prompt label {
    margin-right: 1em; }
  .subscription_count_modal_prompt input[type='number'] {
    width: 5em; }

.modal-dialog.links .edit-form {
  width: 840px;
  margin: 1em auto;
  padding: 6px 1em; }
  .modal-dialog.links .edit-form input {
    width: 600px; }

.modal-dialog.calculator .modal-content {
  width: 800px;
  margin: 0 auto; }
  .modal-dialog.calculator .modal-content input {
    margin: 0.25em 1em; }
  .modal-dialog.calculator .modal-content input[type='number'] {
    width: 6em; }
  .modal-dialog.calculator .modal-content label {
    display: inline-block;
    width: 6em; }
  .modal-dialog.calculator .modal-content .multi-select .choice-container span {
    min-width: 3em;
    display: inline-block;
    border: solid 1px var(--base-light-color);
    padding: 10px;
    border-radius: 16px;
    text-align: center;
    margin: 6px; }
    .modal-dialog.calculator .modal-content .multi-select .choice-container span:hover {
      background-color: var(--base-light-border-color); }
    .modal-dialog.calculator .modal-content .multi-select .choice-container span.active {
      background-image: none;
      background-color: var(--base-light-color);
      color: var(--base-background-color); }
      .modal-dialog.calculator .modal-content .multi-select .choice-container span.active:hover {
        background-color: var(--base-color); }
  .modal-dialog.calculator .modal-content .result-container {
    color: var(--highlight-action-background); }

.modal-dialog.email-preview .modal-content {
  width: 600px;
  padding: 1em;
  margin: 0 auto; }

.modal-dialog.email-preview .section {
  margin: 0.5em 0; }
  .modal-dialog.email-preview .section .label {
    display: inline-block;
    width: 6em; }
  .modal-dialog.email-preview .section .value {
    display: inline-block; }
  .modal-dialog.email-preview .section .body {
    border-top: solid 1px var(--base-light-color);
    padding-top: 1em; }

.cke_editable_inline::after {
  content: "";
  display: block;
  clear: both; }

.edit-goals-form.modal-dialog .modal-container, .edit-template-settings.modal-dialog .modal-container {
  padding-top: 82px; }

.edit-goals-form.modal-dialog .modal-content, .edit-template-settings.modal-dialog .modal-content {
  width: 1000px;
  padding: 0.25em;
  margin: 0 auto; }
  .edit-goals-form.modal-dialog .modal-content h3, .edit-template-settings.modal-dialog .modal-content h3 {
    text-align: left; }
  .edit-goals-form.modal-dialog .modal-content .modal-header, .edit-template-settings.modal-dialog .modal-content .modal-header {
    height: 80px;
    padding-top: 14px;
    text-align: left; }
    .edit-goals-form.modal-dialog .modal-content .modal-header input, .edit-template-settings.modal-dialog .modal-content .modal-header input {
      width: 100%;
      font-size: 120%; }

.edit-goals-form input, .edit-template-settings input {
  margin: 0.25em 0 0.25em 0.1em;
  width: 38em;
  border-color: #b3b3b3; }
  .edit-goals-form input:focus, .edit-template-settings input:focus {
    box-shadow: none; }

.edit-goals-form .horizontal-tabs .tabs .tab, .edit-template-settings .horizontal-tabs .tabs .tab {
  height: 60px; }

.edit-goals-form #goals_table, .edit-template-settings #goals_table {
  width: fit-content;
  max-width: 100%; }

.edit-goals-form input[type='number'], .edit-template-settings input[type='number'] {
  width: 5em; }

.edit-goals-form label, .edit-template-settings label {
  display: inline-block;
  width: 6em; }
  .edit-goals-form label.long, .edit-template-settings label.long {
    width: 11em; }

.edit-goals-form .section-box label, .edit-template-settings .section-box label {
  width: 12em; }

.edit-goals-form .long-field label, .edit-template-settings .long-field label {
  width: auto;
  margin-bottom: 10px; }

.edit-goals-form .snacks-form, .edit-template-settings .snacks-form {
  width: 800px;
  margin: 1em; }
  .edit-goals-form .snacks-form label, .edit-template-settings .snacks-form label {
    width: 12em; }
  .edit-goals-form .snacks-form .controls, .edit-template-settings .snacks-form .controls {
    margin-top: 2em; }
  .edit-goals-form .snacks-form .day-names, .edit-template-settings .snacks-form .day-names {
    width: 100%;
    padding: 1em; }
    .edit-goals-form .snacks-form .day-names input, .edit-template-settings .snacks-form .day-names input {
      width: 10em; }
  .edit-goals-form .snacks-form .snacks, .edit-template-settings .snacks-form .snacks {
    border-collapse: collapse; }
    .edit-goals-form .snacks-form .snacks .count-inputs label, .edit-template-settings .snacks-form .snacks .count-inputs label {
      width: auto;
      margin-right: 0.5em; }
    .edit-goals-form .snacks-form .snacks .name-inputs input, .edit-template-settings .snacks-form .snacks .name-inputs input {
      width: 12em; }
    .edit-goals-form .snacks-form .snacks td, .edit-template-settings .snacks-form .snacks td {
      padding: 6px 8px;
      border: solid 1px var(--base-light-border-color);
      vertical-align: top; }
      .edit-goals-form .snacks-form .snacks td:empty, .edit-template-settings .snacks-form .snacks td:empty {
        border: none; }

.edit-goals-form #nutrient_set_pane .edit-form, .edit-template-settings #nutrient_set_pane .edit-form {
  padding-top: 0; }

.edit-goals-form #nutrient_set_pane .form-row, .edit-template-settings #nutrient_set_pane .form-row {
  margin-top: 2em; }

.edit-goals-form #dietary_restrictions label, .edit-template-settings #dietary_restrictions label {
  width: auto; }

.edit-goals-form td, .edit-template-settings td {
  padding-left: 5px;
  padding-right: 5px; }
  .edit-goals-form td.number, .edit-template-settings td.number {
    text-align: left;
    white-space: nowrap; }
  .edit-goals-form td.invalid input, .edit-goals-form td.invalid select, .edit-template-settings td.invalid input, .edit-template-settings td.invalid select {
    border-color: red; }
  .edit-goals-form td.nutrient select, .edit-template-settings td.nutrient select {
    min-width: 310px; }

.edit-goals-form .sticky_add_button, .edit-template-settings .sticky_add_button {
  bottom: 90px;
  position: fixed; }

.edit-template-settings .edit-form {
  max-width: 75vw; }

.task-progress {
  width: 600px;
  margin: auto; }
  .task-progress .progress-indicator {
    width: 96px;
    height: 96px;
    margin: 1em auto;
    background: rgba(255, 255, 255, 0.9) url("img/balls-loader.fbcabe2c00b0.gif") no-repeat center; }

.progress-indicator-horizontal {
  width: 100px;
  height: 15px;
  margin: 1em auto;
  background: url("img/progress-horizontal-circles-sm.114dc37481fc.gif") no-repeat center; }

body.meal-garden .ui-widget {
  font-family: inherit;
  font-size: inherit; }
  body.meal-garden .ui-widget.ui-tooltip {
    background: #fefaec;
    border: solid 1px var(--base-color);
    border-radius: 6px;
    font-size: 100%;
    padding: 0.75em 1em;
    line-height: 1.2em;
    box-shadow: -2px -2px 6px 0 var(--base-light-color);
    z-index: 9999999999; }
    body.meal-garden .ui-widget.ui-tooltip ul li {
      margin-left: 8px;
      padding-left: 0;
      line-height: 1.1em;
      margin-bottom: 0.5em; }

body.meal-garden .editable-container .editable-buttons button.ui-widget.ui-button:hover {
  box-shadow: 1px 1px 2px 1px var(--base-light-border-color);
  border-color: #b3b3b3; }

body.meal-garden .ui-state-default, body.meal-garden .ui-selectmenu-button {
  background: white;
  color: var(--base-color);
  vertical-align: middle;
  font-weight: normal; }

body.meal-garden .ui-selectmenu-button {
  border-radius: 18px;
  outline: none;
  width: auto !important;
  margin: 0 4px;
  padding: 2px; }
  body.meal-garden .ui-selectmenu-button:first-of-type {
    margin-left: 0; }
  body.meal-garden .ui-selectmenu-button:last-of-type {
    margin-right: 0; }
  body.meal-garden .ui-selectmenu-button:focus {
    box-shadow: 0 0 3pt 2pt var(--base-light-border-color);
    border: solid 1px var(--base-color); }
  body.meal-garden .ui-selectmenu-button span.ui-selectmenu-text {
    padding: 0.3em 1em 0.3em 1em; }
  body.meal-garden .ui-selectmenu-button .ui-icon {
    background-image: url("img/drop_down_triangle.ae17ae29b181.png");
    background-position: center;
    height: 28px;
    width: 28px;
    margin-right: 4px; }

body.meal-garden .ui-state-active, body.meal-garden .ui-widget-content .ui-state-active,
body.meal-garden .ui-widget-header .ui-state-active, body.meal-garden a.ui-button:active, body.meal-garden .ui-button:active, body.meal-garden .ui-button.ui-state-active:hover,
body.meal-garden .ui-state-focus, body.meal-garden .ui-widget-content .ui-state-focus {
  border: none;
  font-weight: normal;
  background: var(--base-background-darker-color);
  color: var(--base-color); }

body.meal-garden .ui-selectmenu-menu.ui-selectmenu-open .ui-menu {
  border-radius: 10px;
  background: var(--base-background-color);
  color: var(--base-color); }

body.meal-garden .ui-selectmenu-menu.ui-selectmenu-open .ui-menu-item {
  font-size: 90%;
  line-height: 1.1em;
  margin: 0.35em 0;
  text-align: left; }

body.meal-garden #__data_subset_select-menu .ui-menu-item.collection {
  font-weight: bold;
  color: black; }

body.meal-garden ul.thumbnails.image_picker_selector li {
  margin: 0px 12px 12px 0px;
  display: inline-block;
  vertical-align: top;
  float: none; }
  body.meal-garden ul.thumbnails.image_picker_selector li .thumbnail {
    max-width: 250px; }
    body.meal-garden ul.thumbnails.image_picker_selector li .thumbnail img {
      width: 100%; }

body.meal-garden .ui-datepicker {
  padding: 0; }
  body.meal-garden .ui-datepicker .ui-datepicker-header.ui-widget-header {
    background: var(--base-light-color);
    border: none;
    border-radius: 0; }
    body.meal-garden .ui-datepicker .ui-datepicker-header.ui-widget-header .ui-datepicker-prev.ui-state-hover, body.meal-garden .ui-datepicker .ui-datepicker-header.ui-widget-header .ui-datepicker-next.ui-state-hover {
      top: 2px;
      background: inherit;
      margin: inherit;
      border: inherit;
      font-weight: inherit;
      color: inherit; }
      body.meal-garden .ui-datepicker .ui-datepicker-header.ui-widget-header .ui-datepicker-prev.ui-state-hover .ui-icon, body.meal-garden .ui-datepicker .ui-datepicker-header.ui-widget-header .ui-datepicker-next.ui-state-hover .ui-icon {
        background-color: #fff3e9; }
    body.meal-garden .ui-datepicker .ui-datepicker-header.ui-widget-header .ui-datepicker-prev .ui-icon, body.meal-garden .ui-datepicker .ui-datepicker-header.ui-widget-header .ui-datepicker-next .ui-icon {
      background-color: var(--base-background-color);
      background-position: center;
      background-size: 10px;
      width: 30px;
      height: 30px;
      border-radius: 50%;
      margin-left: -15px;
      margin-top: -10px;
      cursor: pointer; }
    body.meal-garden .ui-datepicker .ui-datepicker-header.ui-widget-header .ui-datepicker-prev {
      left: 4px; }
      body.meal-garden .ui-datepicker .ui-datepicker-header.ui-widget-header .ui-datepicker-prev .ui-icon {
        background-image: url("img/cmd-arrow-left-black-thick.44c0e8f8e0d2.png"); }
      body.meal-garden .ui-datepicker .ui-datepicker-header.ui-widget-header .ui-datepicker-prev.ui-state-hover {
        left: 3px; }
    body.meal-garden .ui-datepicker .ui-datepicker-header.ui-widget-header .ui-datepicker-next {
      right: 4px; }
      body.meal-garden .ui-datepicker .ui-datepicker-header.ui-widget-header .ui-datepicker-next .ui-icon {
        background-image: url("img/cmd-arrow-right-black-thick.fdea62c7f24f.png"); }
      body.meal-garden .ui-datepicker .ui-datepicker-header.ui-widget-header .ui-datepicker-next.ui-state-hover {
        right: 3px; }
  body.meal-garden .ui-datepicker .ui-state-default, body.meal-garden .ui-datepicker .ui-widget-content .ui-state-default, body.meal-garden .ui-datepicker .ui-widget-header .ui-state-default {
    border: none;
    background: var(--base-background-color);
    color: var(--base-color);
    padding: 10px; }
  body.meal-garden .ui-datepicker .ui-datepicker-current-day .ui-state-default {
    background-color: var(--highlight-action-background);
    color: var(--highlight-action-color); }
  body.meal-garden .ui-datepicker select.ui-datepicker-month, body.meal-garden .ui-datepicker select.ui-datepicker-year {
    border-color: var(--base-light-border-color);
    margin: 4px 3px;
    font-family: inherit;
    padding: 2px;
    border-radius: 12px; }

body.meal-garden .ui-combobox {
  border: solid 1px #b3b3b3;
  background: var(--base-background-color);
  border-radius: 8px;
  position: relative;
  width: fit-content;
  padding-right: 30px;
  z-index: auto;
  display: inline-block; }
  body.meal-garden .ui-combobox input {
    border: none;
    padding: 2px 8px;
    border-radius: 8px;
    margin: 5px 0 5px 3px; }
    body.meal-garden .ui-combobox input:focus {
      box-shadow: none; }
  body.meal-garden .ui-combobox .drop-down-button {
    position: absolute;
    top: 1px;
    bottom: 1px;
    right: 1px;
    width: 28px;
    border-top: none;
    border-right: none;
    border-bottom: none;
    border-left: solid 1px #f5f5f5; }
    body.meal-garden .ui-combobox .drop-down-button .ui-icon.ui-icon-triangle-1-s {
      background-image: url("img/cmd-arrow-down-black-thick.f68de8af1e87.png");
      background-position: center;
      background-size: 70%; }

body.meal-garden ul.ui-autocomplete.ui-front.ui-menu.ui-widget-content {
  z-index: 999999;
  max-height: 35vh;
  overflow-y: auto;
  overflow-x: hidden;
  background: var(--base-background-color);
  color: var(--base-color);
  box-shadow: 3px 3px 5px 0 var(--base-light-color); }
  body.meal-garden ul.ui-autocomplete.ui-front.ui-menu.ui-widget-content .ui-menu-item.ui-state-focus {
    background-color: white; }
    body.meal-garden ul.ui-autocomplete.ui-front.ui-menu.ui-widget-content .ui-menu-item.ui-state-focus a {
      color: var(--base-color) !important; }
    body.meal-garden ul.ui-autocomplete.ui-front.ui-menu.ui-widget-content .ui-menu-item.ui-state-focus:hover {
      background-color: dodgerblue; }
      body.meal-garden ul.ui-autocomplete.ui-front.ui-menu.ui-widget-content .ui-menu-item.ui-state-focus:hover a {
        color: white !important; }

body.meal-garden .ss-main.all-selected .ss-add {
  display: none; }

body.meal-garden .ss-main .ss-multi-selected {
  border-radius: 12px;
  padding: 6px 8px; }
  body.meal-garden .ss-main .ss-multi-selected.ss-disabled {
    cursor: auto;
    background-color: var(--base-background-darker-color); }
    body.meal-garden .ss-main .ss-multi-selected.ss-disabled .ss-values .ss-value .ss-value-delete {
      cursor: pointer; }
  body.meal-garden .ss-main .ss-multi-selected .ss-values .ss-value {
    background-color: var(--base-light-color);
    color: var(--base-background-color);
    font-size: 90%;
    border-radius: 16px;
    padding: 4px 12px; }
    body.meal-garden .ss-main .ss-multi-selected .ss-values .ss-value .ss-value-delete {
      margin: -5px 0 0 12px;
      font-size: 150%; }
  body.meal-garden .ss-main .ss-multi-selected .ss-values .ss-disabled {
    color: var(--base-light-color); }
  body.meal-garden .ss-main .ss-multi-selected .ss-add {
    margin: 0 0 0 5px;
    flex: none;
    width: 40px;
    height: 40px;
    background-color: var(--base-light-color);
    border-radius: 50%; }
    body.meal-garden .ss-main .ss-multi-selected .ss-add .ss-plus {
      height: 20px;
      margin: 10px 0 0 18px;
      background-color: var(--base-background-color); }
      body.meal-garden .ss-main .ss-multi-selected .ss-add .ss-plus::after {
        width: 20px;
        left: -9px;
        top: 9px;
        background-color: var(--base-background-color); }

body.meal-garden .modal-dialog.popup-select {
  height: fit-content; }
  body.meal-garden .modal-dialog.popup-select .modal-content {
    width: 800px;
    height: 600px;
    max-height: 100%;
    padding: 0; }
  body.meal-garden .modal-dialog.popup-select.multi-select .ss-main {
    height: calc(100% - 1px); }
    body.meal-garden .modal-dialog.popup-select.multi-select .ss-main .ss-content {
      height: calc(100% - 99px); }
  body.meal-garden .modal-dialog.popup-select.single-select .ss-main {
    height: calc(100% - 22px); }
    body.meal-garden .modal-dialog.popup-select.single-select .ss-main .ss-content {
      height: calc(100% - 28px); }
  body.meal-garden .modal-dialog.popup-select .ss-main .ss-multi-selected {
    border-radius: 0;
    height: 100px;
    font-size: 90%;
    overflow-y: auto;
    overflow-x: hidden; }
    body.meal-garden .modal-dialog.popup-select .ss-main .ss-multi-selected .ss-values {
      cursor: default;
      width: 100%; }
      body.meal-garden .modal-dialog.popup-select .ss-main .ss-multi-selected .ss-values .ss-value {
        height: 2.4em;
        cursor: default; }
    body.meal-garden .modal-dialog.popup-select .ss-main .ss-multi-selected .ss-add {
      display: none; }
  body.meal-garden .modal-dialog.popup-select .ss-main .ss-content {
    overflow-y: auto; }
    body.meal-garden .modal-dialog.popup-select .ss-main .ss-content .ss-list {
      max-height: none;
      height: calc(100% - 47px); }
  body.meal-garden .modal-dialog.popup-select .ss-main .ss-single-selected {
    background-color: var(--base-light-color);
    color: var(--base-background-color);
    padding: 12px 8px;
    height: 50px; }

body.meal-garden .intercom-lightweight-app-launcher {
  bottom: 85px; }

body.meal-garden .intercom-app-launcher {
  position: fixed;
  right: 20px;
  bottom: 20px;
  cursor: pointer;
  z-index: 9999; }
  body.meal-garden .intercom-app-launcher .text-holder {
    padding: 10px 12px;
    background-color: #4d4d4d;
    color: white;
    border-radius: 16px;
    text-align: center;
    font-size: 20px;
    box-shadow: 1px 1px 6px #a6a6a6; }
    body.meal-garden .intercom-app-launcher .text-holder .text-icon {
      width: 30px;
      height: 30px;
      display: inline-block;
      font-size: 20px;
      font-weight: bold;
      border-radius: 50%;
      border: solid 2px white; }
  body.meal-garden .intercom-app-launcher svg {
    position: absolute;
    right: 4px;
    bottom: -15px; }

body.meal-garden .select2-container {
  border-radius: 6px; }
  body.meal-garden .select2-container .select2-selection, body.meal-garden .select2-container .select2-selection--multiple {
    border-radius: 6px;
    border-color: var(--base-light-border-color); }
  body.meal-garden .select2-container.select2-container--focus {
    box-shadow: 0 0 6px 0 #b3b3b3; }

body.meal-garden .select2-container--default .select2-selection--multiple .select2-selection__clear {
  position: absolute;
  right: 8px;
  top: 50%;
  width: 30px;
  height: 30px;
  padding: 0 0 0 4px;
  line-height: 25px;
  font-size: 24pt;
  margin: -15px 0 0 0;
  border: solid 1px var(--base-light-border-color);
  border-radius: 50%; }

body.meal-garden .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  font-size: 20pt;
  position: absolute;
  right: 0;
  top: 0;
  padding: 0 4px;
  border-left: solid 1px #d9d9d9; }

body.meal-garden .select2-container--default .select2-selection--multiple .select2-selection__rendered {
  text-overflow: inherit;
  padding-right: 40px; }
  body.meal-garden .select2-container--default .select2-selection--multiple .select2-selection__rendered li {
    border-radius: 10px;
    font-size: 90%;
    position: relative;
    padding-right: 36px; }
    body.meal-garden .select2-container--default .select2-selection--multiple .select2-selection__rendered li * {
      vertical-align: middle; }
    body.meal-garden .select2-container--default .select2-selection--multiple .select2-selection__rendered li.invalid {
      border-color: darkred;
      background-color: #f7d4d4;
      color: darkred;
      text-decoration: line-through; }
      body.meal-garden .select2-container--default .select2-selection--multiple .select2-selection__rendered li.invalid .select2-selection__choice__remove {
        border-left: solid 1px #e9c2c2; }
      body.meal-garden .select2-container--default .select2-selection--multiple .select2-selection__rendered li.invalid .select2-selection__choice__remove {
        color: darkred; }

body.meal-garden .small-button.tags {
  vertical-align: top;
  margin-left: 6px; }

body.meal-garden .context-menu-list {
  font-size: 115%;
  padding: 10px 8px;
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.7); }

body.meal-garden .context-menu-item {
  background-repeat: no-repeat;
  background-size: 25px;
  background-position: 4px 4px; }

body.meal-garden .context-menu-item:hover {
  background-color: var(--base-light-color);
  color: var(--base-background-color); }

body.meal-garden .context-menu-item.context-menu-icon-mgedit, body.meal-garden .modal-actions-fork .icon.edit {
  background-image: url("img/ico-edit.dcddf99f42c6.png"); }

body.meal-garden .context-menu-item.context-menu-icon-mgremove, body.meal-garden .modal-actions-fork .icon.delete {
  background-image: url("img/ico-delete.06e097ed077e.png"); }

body.meal-garden .context-menu-item.context-menu-icon-mgcopy, body.meal-garden .modal-actions-fork .icon.copy {
  background-image: url("img/ico-copy.c0c60335951c.png"); }

body.meal-garden .context-menu-item.context-menu-icon-mgmove, body.meal-garden .modal-actions-fork .icon.move {
  background-image: url("img/ico-move.fdec2ccb9ace.png"); }

body.meal-garden .context-menu-item.context-menu-icon-leftover, body.meal-garden .modal-actions-fork .icon.leftover {
  background-image: url("img/ico-leftover.0687ff360193.png"); }

body.meal-garden .context-menu-item.context-menu-icon-who, body.meal-garden .modal-actions-fork .icon.who {
  background-image: url("img/ico-who.a18fbac57126.png"); }

body.meal-garden .context-menu-item.context-menu-icon-nutrition, body.meal-garden .modal-actions-fork .icon.nutrition {
  background-image: url("img/ico-nutrition.adb989c5e0d5.png"); }

body.meal-garden .context-menu-item.context-menu-icon-swap, body.meal-garden .modal-actions-fork .icon.swap {
  background-image: url("img/ico-swap.b1c6487b3557.png"); }

body.meal-garden .date-dropdowns {
  display: inline-block; }
  body.meal-garden .date-dropdowns select {
    margin-right: 4px; }

body.meal-garden .introjs-tooltip {
  min-width: 500px; }

body.meal-garden .introjs-tooltiptext {
  line-height: 1.3em; }
  body.meal-garden .introjs-tooltiptext ul {
    padding-left: 1rem; }
    body.meal-garden .introjs-tooltiptext ul li {
      line-height: 1.2em;
      margin: 6px 0; }

body.meal-garden .introjs-tooltipbuttons .introjs-button {
  font-size: inherit;
  min-width: 50px;
  text-align: center;
  text-shadow: none;
  border-radius: 10px; }
  body.meal-garden .introjs-tooltipbuttons .introjs-button.introjs-nextbutton {
    background-color: var(--base-light-color);
    color: var(--base-background-color); }

body.meal-garden .introjs-skipbutton {
  cursor: pointer;
  background-position: center;
  background-repeat: no-repeat;
  width: 12px;
  height: 18px;
  opacity: 0.5;
  background-size: 16px;
  border: solid 1px var(--base-light-color);
  border-radius: 50%;
  background-image: url("img/cmd-close-simple-black.5f567333c0f1.png");
  color: transparent;
  margin-top: -4px;
  margin-right: -12px; }
  body.meal-garden .introjs-skipbutton:hover {
    opacity: 0.75; }

.help-topic-form {
  width: 800px;
  margin: auto; }
  .help-topic-form label {
    display: inline-block;
    width: 15em; }

.inline-help-topic {
  background-color: var(--help-panel-background-color);
  color: var(--help-panel-color);
  border: solid 1px var(--help-panel-border-color);
  border-radius: 20px;
  background-image: url("img/heart-red.b8153aa54ade.png");
  background-position: 8px center;
  background-repeat: no-repeat;
  background-size: 28px;
  padding: 8px 110px 8px 50px;
  font-size: 90%;
  position: relative;
  margin: 8px 8px 0.75em 8px;
  min-height: 2.5em; }
  .inline-help-topic p {
    margin-bottom: 2px; }
  .inline-help-topic .close-button {
    cursor: pointer;
    font-size: 80%;
    background-color: var(--help-panel-color);
    color: var(--help-panel-background-color);
    border-radius: 16px;
    position: absolute;
    right: 8px;
    top: 50%;
    margin-top: -1em;
    padding: 2px 10px; }

.programs .program-card {
  position: relative;
  display: inline-block;
  width: 250px;
  height: 155px;
  vertical-align: top;
  margin: 12px;
  cursor: pointer;
  text-align: left; }
  .programs .program-card .card-body {
    width: 100%;
    height: 100px; }
    .programs .program-card .card-body img {
      width: 100%;
      height: 100%;
      object-fit: cover; }

.programs a {
  color: var(--base-color);
  text-decoration: none; }

.custom-foods {
  padding: 0 1em; }
  .custom-foods #food_list {
    overflow: auto;
    height: calc(100vh - 155px); }
    .custom-foods #food_list tbody.with-selectors td.name {
      padding-left: 44px; }
      .custom-foods #food_list tbody.with-selectors td.name .selector {
        position: absolute;
        top: 0;
        left: 8px;
        padding-top: 12px;
        height: 100%;
        border-right: dotted 1px var(--base-light-border-color); }
        .custom-foods #food_list tbody.with-selectors td.name .selector input[type='checkbox'].pretty + label {
          margin: 0; }
  .custom-foods .view_list .controls {
    font-size: 90%; }
    .custom-foods .view_list .controls label {
      margin: 0 0.3em 0 0.75em; }

.expert-home .articles.state-holder a {
  color: var(--base-color);
  text-decoration: none; }

.expert-home .articles.state-holder .article-card {
  vertical-align: top; }

.modal-sort-dialog {
  max-width: 800px; }
  .modal-sort-dialog .modal-content {
    padding: 1em; }
  .modal-sort-dialog .sort-items {
    width: 600px;
    margin: auto; }
    .modal-sort-dialog .sort-items .sort-item {
      padding: 4px;
      margin: 2px;
      background-color: var(--base-background-color);
      border: solid 1px var(--base-light-border-color);
      cursor: pointer; }

.modal-dialog.edit-task-form .task-form {
  width: 800px;
  margin: auto;
  max-width: 90%; }
  .modal-dialog.edit-task-form .task-form label {
    display: inline-block;
    width: 8em; }
  .modal-dialog.edit-task-form .task-form input[type="text"] {
    width: 36em; }

.document-list {
  padding: 10px; }
  .document-list a {
    text-decoration: none;
    color: inherit; }
  .document-list .document-card {
    position: relative;
    display: inline-block;
    vertical-align: top;
    margin: 12px;
    cursor: pointer;
    width: 175px;
    height: 230px; }
    .document-list .document-card img {
      object-fit: cover;
      max-height: 100%; }
    .document-list .document-card .image-container {
      height: 175px;
      width: 175px;
      margin: auto;
      border-bottom: dotted 1px lightgrey;
      overflow: hidden;
      position: relative; }
      .document-list .document-card .image-container .draft-overlay {
        position: absolute;
        bottom: 0;
        right: 0;
        width: 32px;
        height: 30px;
        background-image: url("img/ico_draft.1ca8480baf8c.png");
        background-repeat: no-repeat;
        display: none; }
    .document-list .document-card .file-icon-placeholder {
      height: 175px;
      padding-top: 50px;
      border-bottom: dotted 1px lightgrey;
      position: relative; }
      .document-list .document-card .file-icon-placeholder .draft-overlay {
        position: absolute;
        bottom: 0;
        right: 0;
        width: 32px;
        height: 30px;
        background-image: url("img/ico_draft.1ca8480baf8c.png");
        background-repeat: no-repeat;
        display: none; }
    .document-list .document-card.draft .image-container .draft-overlay, .document-list .document-card.draft .file-icon-placeholder .draft-overlay {
      display: inline-block; }
    .document-list .document-card .icon {
      width: 80px;
      height: 80px;
      background-position: center;
      background-repeat: no-repeat;
      background-size: contain;
      margin: 0 auto 10px auto; }
    .document-list .document-card.image .icon {
      background-image: url("img/ico-file-image.5fb50f53d564.png"); }
    .document-list .document-card.pdf .icon {
      background-image: url("img/ico-file-pdf.ae1f37964895.png"); }
    .document-list .document-card.unknown_file .icon {
      background-image: url("img/ico-file-blank.890f97a30dde.png"); }
    .document-list .document-card.note .icon, .document-list .document-card.article .icon {
      background-image: url("img/ico-file-note.063696833fcf.png"); }
    .document-list .document-card.measurements .icon {
      background-image: url("img/ico-file-measurement.848f364e9413.png"); }
    .document-list .document-card.goals .icon {
      background-image: url("img/ico-file-goal.08134ba0a85c.png"); }
    .document-list .document-card.nutrient_set .icon {
      background-image: url("img/ico-file-nutrient-set.31f43d8e7fbd.png"); }
    .document-list .document-card .icon-text {
      position: absolute;
      top: 75px;
      left: 50%;
      margin-left: -40px;
      width: 80px;
      text-align: center;
      font-size: 26px;
      opacity: 0.5;
      overflow: hidden;
      max-height: 50px; }
    .document-list .document-card .card-footer {
      border: none;
      min-height: 50px; }
    .document-list .document-card .title {
      width: 100%;
      overflow: hidden;
      white-space: normal;
      text-overflow: ellipsis;
      line-height: 1.1em;
      max-height: 2.2em;
      font-size: 90%;
      text-align: left;
      display: -webkit-box;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical; }

.modal-actions-fork .icon.note {
  background-image: url("img/ico-file-note.063696833fcf.png"); }

.modal-actions-fork .icon.file {
  background-image: url("img/ico-file-unknown-sm.d16180c4dd6f.png"); }

.modal-actions-fork .icon.measurement {
  background-image: url("img/ico-file-measurement.848f364e9413.png"); }

.modal-actions-fork .icon.goal {
  background-image: url("img/ico-file-goal.08134ba0a85c.png"); }

.modal-actions-fork .icon.nutrient-set {
  background-image: url("img/ico-file-nutrient-set.31f43d8e7fbd.png"); }

.modal-actions-fork .icon.meal-plan {
  background-image: url("img/ico-meal-plan.182346f82046.png"); }

.modal-actions-fork .icon.recipe-collection {
  background-image: url("img/ico-recipe-collection.7127010cefda.png");
  border: none;
  margin: 0; }

.modal-actions-fork .icon.recipe {
  background-image: url("img/ico-recipe.b64cd2a4af3c.png"); }

.modal-actions-fork .icon.program {
  background-image: url("img/ico-program.8d93637f1560.png"); }

.modal-actions-fork .icon.document {
  background-image: url("img/ico-resources.1a3cbf3b5a70.png"); }

.modal-actions-fork .icon.custom-food {
  background-image: url("img/ico-food.7903b8574a4e.png"); }

.modal-actions-fork .icon.food {
  background-image: url("img/ico-food-sm.7c119772f91b.png"); }

.modal-actions-fork .icon.meal {
  background-image: url("img/ico-meal.27d53ffae22f.png"); }

.modal-actions-fork .icon.client {
  background-image: url("img/ico-client.7bc8afdc6da9.png"); }

.modal-actions-fork .icon.home {
  background-image: url("img/cmd_home.05648536c225.png"); }

.modal-actions-fork .icon.email {
  background-image: url("img/ico-email.6807ba532a69.png"); }

.modal-actions-fork .icon.invitation {
  background-image: url("img/ico-invitation.69b6f07b7388.png"); }

.modal-actions-fork .icon.remove-client {
  background-image: url("img/ico-remove-user.96d8de823daa.png"); }

.modal-actions-fork .icon.simple-program {
  background-image: url("img/ico-program.8d93637f1560.png"); }

.modal-actions-fork .icon.remove-simple-program {
  background-image: url("img/ico-no-program.acc6994741f3.png"); }

.modal-actions-fork .icon.user-active {
  background-image: url("img/ico-user-active.831a7d1ba239.png"); }

.modal-actions-fork .icon.user-inactive {
  background-image: url("img/ico-user-inactive.a31b9492d6a0.png"); }

.modal-actions-fork .icon.user-invited {
  background-image: url("img/ico-user-invited.f67fe292e6b6.png"); }

.modal-actions-fork .icon.no-user {
  background-image: url("img/ico-no-user.90f5be08d27d.png"); }

.modal-actions-fork .icon.chat {
  background-image: url("img/ico-chat-slick.b6c52185140d.png"); }

.modal-actions-fork .icon.client-status {
  background-image: url("img/ico-client-status.9bd769d54840.png"); }

.modal-actions-fork .icon.impersonate {
  background-image: url("img/ico-eye.a4ecca238d51.png"); }

.modal-actions-fork .icon.send {
  background-image: url("img/ico-send.b514be18866d.png"); }

.modal-actions-fork .icon.link {
  background-image: url("img/social/link.0b2cf4dcc95d.png"); }

.anthropometrics-edit form {
  padding: 1em 1.5em;
  width: 550px;
  margin: auto; }
  .anthropometrics-edit form label {
    display: inline-block;
    width: 8em; }
  .anthropometrics-edit form ul.errorlist {
    margin-left: 7.5em; }
  .anthropometrics-edit form .form-row.multi-select ul.errorlist {
    margin-left: 0; }
  .anthropometrics-edit form .advanced-section {
    border: solid 1px var(--base-light-border-color);
    padding: 0.5em 1em;
    margin-top: 6px; }
    .anthropometrics-edit form .advanced-section label {
      width: 14em; }
  .anthropometrics-edit form input.number, .anthropometrics-edit form .form-row.number-input input {
    width: 5em;
    margin-left: 8px;
    margin-right: 4px; }
  .anthropometrics-edit form .small-link {
    margin: 4px 2em; }
  .anthropometrics-edit form .activity-explanation {
    background-color: #f2f2f2;
    padding: 0.75em 0.75em 0.75em 2em;
    font-size: 80%; }
    .anthropometrics-edit form .activity-explanation .highlight {
      font-style: italic; }

.steps-form.edit-form .steps-form-title {
  padding-top: 0; }

.steps-form .step-container {
  display: none; }
  .steps-form .step-container h3 {
    font-size: 130%; }

.steps-form .steps-form-title {
  padding: 0.75em 2.5em 0.75em 0;
  border-bottom: solid 1px var(--base-light-border-color); }
  .steps-form .steps-form-title .step-title {
    font-size: 180%;
    display: inline-block; }
  .steps-form .steps-form-title .step-counter {
    font-size: 120%;
    float: right;
    display: inline-block;
    font-style: italic; }

.steps-form .modal-controls .app-button-main.highlight.finish {
  background-color: var(--highlight-action-background) !important;
  color: white !important; }

.modal-dialog.create-plan .step-container {
  width: 800px;
  margin: auto;
  padding: 1em 0; }
  .modal-dialog.create-plan .step-container input[type='text'] {
    width: 100%; }
  .modal-dialog.create-plan .step-container input[type='number'] {
    width: 4.5em; }
  .modal-dialog.create-plan .step-container h3.description.center-align {
    text-align: center; }

.modal-dialog.create-plan .snack-counts {
  width: 300px;
  margin: auto; }
  .modal-dialog.create-plan .snack-counts input {
    margin-bottom: 6px; }

.modal-dialog.create-plan .small-area {
  width: fit-content;
  border: solid 1px var(--base-light-border-color);
  padding: 0.5em 1em;
  margin: auto; }
  .modal-dialog.create-plan .small-area .controls {
    margin-top: 1em; }

.modal-dialog.create-plan .tree-selector {
  border: solid 1px var(--base-light-border-color);
  padding: 1em;
  border-radius: 6px; }

.modal-dialog.create-plan .jstree-default .jstree-anchor {
  height: 40px;
  line-height: 36px;
  padding: 2px 6px;
  display: inline-block; }

.modal-dialog.create-plan .jstree-default .jstree-icon:empty {
  width: 40px !important;
  height: 40px !important;
  background-size: 60% !important; }

.modal-dialog.create-plan .jstree-default .jstree-open > .jstree-icon.jstree-ocl {
  background-image: url("img/ico-open-node.6404707838d1.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto !important; }

.modal-dialog.create-plan .jstree-default .jstree-closed > .jstree-icon.jstree-ocl {
  background-image: url("img/ico-closed-node.bbb328de9bdd.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto !important; }

.modal-dialog.create-plan .jstree-default .jstree-clicked {
  background-color: var(--base-light-color);
  color: var(--base-background-color); }

.modal-dialog.create-customer .step-container {
  width: 600px;
  margin: auto;
  padding: 1em 0; }
  .modal-dialog.create-customer .step-container input[type='text'] {
    width: 20em; }
  .modal-dialog.create-customer .step-container label {
    display: inline-block;
    width: 7em; }
  .modal-dialog.create-customer .step-container .multi-select {
    display: table;
    border-spacing: 12px;
    margin: auto; }
    .modal-dialog.create-customer .step-container .multi-select input[type='radio'] + label {
      width: 10em;
      height: 5em;
      margin: 1.5em auto;
      font-size: 120%;
      border: solid 1px var(--base-light-color);
      border-radius: 16px;
      padding: 1em;
      background-image: none;
      display: table-cell;
      vertical-align: middle;
      text-align: center; }
      .modal-dialog.create-customer .step-container .multi-select input[type='radio'] + label:hover {
        box-shadow: 3px 3px 5px 0 var(--base-light-color);
        border-color: var(--base-color); }
    .modal-dialog.create-customer .step-container .multi-select input[type='radio']:checked + label {
      background-color: var(--base-light-color);
      color: var(--base-background-color); }

.edit-form.settings-form.pdf-settings-edit {
  width: 900px;
  max-width: none;
  margin: auto; }
  .edit-form.settings-form.pdf-settings-edit input {
    width: 40em; }
  .edit-form.settings-form.pdf-settings-edit .description {
    margin: 1em 0; }
  .edit-form.settings-form.pdf-settings-edit label {
    width: 6em;
    display: inline-block; }

img.cover-image {
  width: 45vh;
  height: 45vh;
  object-fit: contain;
  object-position: top;
  margin: 1em auto;
  display: block; }

.modal-dialog.user-email-input .modal-content {
  width: 700px;
  margin: auto; }
  .modal-dialog.user-email-input .modal-content .container {
    width: 100%;
    height: 100%;
    padding-top: 70px;
    position: relative; }
    .modal-dialog.user-email-input .modal-content .container .input-row {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 70px;
      padding-top: 1em; }
      .modal-dialog.user-email-input .modal-content .container .input-row input {
        width: 25em;
        margin: auto; }
    .modal-dialog.user-email-input .modal-content .container .search-results {
      text-align: left;
      max-height: 100%;
      overflow: auto; }
      .modal-dialog.user-email-input .modal-content .container .search-results .user-item {
        padding: 4px 0;
        cursor: pointer; }
        .modal-dialog.user-email-input .modal-content .container .search-results .user-item:hover {
          background-color: var(--base-light-border-color); }
        .modal-dialog.user-email-input .modal-content .container .search-results .user-item img {
          width: 40px;
          height: 40px;
          object-fit: cover;
          vertical-align: middle;
          border-radius: 50%;
          margin: 6px 1em 6px 6px; }
        .modal-dialog.user-email-input .modal-content .container .search-results .user-item .name {
          vertical-align: middle;
          line-height: 1.2em; }

.edit-form .collaborator-list.small-area {
  width: 600px; }

.user-item {
  position: relative; }
  .user-item.selected {
    background-color: var(--base-light-color);
    color: var(--base-background-color); }
  .user-item.selected:hover {
    background-color: var(--base-color) !important; }
  .user-item img {
    width: 40px;
    vertical-align: middle;
    margin-right: 1em;
    border-radius: 50%;
    margin-top: 8px; }
  .user-item .name {
    vertical-align: middle;
    width: 500px;
    display: inline-block; }
  .user-item .small-delete-button {
    position: absolute;
    top: 2px;
    right: 2px; }

.box-select .choice-container {
  display: table;
  border-spacing: 12px;
  margin: auto; }
  .box-select .choice-container .inactive, .box-select .choice-container .active {
    width: 150px;
    height: 6em;
    border: solid 1px var(--base-light-border-color);
    border-radius: 12px;
    padding: 10px;
    margin: 6px;
    cursor: pointer;
    text-align: center;
    display: table-cell;
    vertical-align: middle; }
    .box-select .choice-container .inactive:hover, .box-select .choice-container .active:hover {
      box-shadow: 3px 3px 5px 0 var(--base-light-color);
      border-color: var(--base-light-color); }
  .box-select .choice-container .active {
    background-color: var(--base-light-color);
    color: var(--base-background-color); }
    .box-select .choice-container .active:hover {
      border-color: var(--base-color); }

.box-select.left-align .choice-container {
  margin-left: 0; }

.element-curtain {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.6); }

.edit-form.settings-form.portal-settings .form-row.columns-2 label {
  width: auto;
  margin: 4px;
  display: block; }

.swiper-container {
  width: 100%;
  height: 100%; }

.vertical-container {
  display: flex;
  align-items: center; }

.large-selector {
  margin: 1em auto; }
  .large-selector .choice {
    cursor: pointer;
    background-color: var(--base-light-border-color);
    line-height: 3em;
    padding: 0 12px;
    border-bottom: solid 1px var(--base-background-color);
    display: block;
    font-size: 110%;
    border-radius: 0;
    width: 100%; }
    .large-selector .choice:hover {
      background-color: var(--base-background-color); }

body.tablet-user-agent .main-navigation .button {
  display: inline-block;
  width: 45px;
  height: 45px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 35px;
  margin: 2px 20px;
  vertical-align: top; }
  body.tablet-user-agent .main-navigation .button.back {
    background-image: url("img/cmd_back.517b4fde1dc0.png"); }
  body.tablet-user-agent .main-navigation .button.home {
    background-image: url("img/cmd_home.05648536c225.png"); }
  body.tablet-user-agent .main-navigation .button.more {
    background-image: url("img/cmd_more_bars_black.f314d473045a.png");
    background-size: 26px; }
    body.tablet-user-agent .main-navigation .button.more.has-actions {
      background-color: var(--base-color);
      background-image: url("img/cmd_more_bars_white.08e03990c606.png");
      border-radius: 50%; }

.schedule-day-slot-selectors .day-title {
  background-color: var(--base-light-border-color);
  line-height: 3em;
  padding: 0 12px;
  border-bottom: solid 1px var(--base-background-color);
  cursor: pointer;
  position: relative; }

.schedule-day-slot-selectors .day.has-selection .day-title {
  background-color: var(--base-light-color);
  color: var(--base-background-color); }

.schedule-day-slot-selectors.light .day-title {
  background-color: var(--base-background-color);
  border-bottom: solid 1px var(--base-light-border-color); }

.schedule-day-slot-selectors.light .meal {
  border-bottom: none; }

.schedule-day-slot-selectors.light .selectors {
  border-bottom: solid 1px var(--base-light-border-color); }

.schedule-day-slot-selectors .meal {
  border-bottom: solid 1px var(--base-light-border-color);
  padding: 8px 0;
  position: relative; }
  .schedule-day-slot-selectors .meal .snack {
    margin-top: 8px; }
  .schedule-day-slot-selectors .meal .meal-title {
    display: inline-block;
    width: 100px;
    padding: 0 12px;
    font-size: 90%; }
  .schedule-day-slot-selectors .meal .info-button {
    position: absolute;
    top: 6px;
    right: 50px;
    width: 35px;
    height: 35px;
    border: solid 1px var(--base-light-border-color);
    border-radius: 50%;
    font-size: 25px;
    text-align: center;
    padding-top: 4px; }

.schedule-day-slot-selectors .selector {
  display: inline-block; }
  .schedule-day-slot-selectors .selector .choice {
    display: inline-block;
    width: 110px;
    padding: 10px;
    border-radius: 10px;
    border: solid 1px var(--base-light-border-color); }
    .schedule-day-slot-selectors .selector .choice.selected {
      background-color: var(--base-light-color);
      color: var(--base-background-color); }
    .schedule-day-slot-selectors .selector .choice.toggle-switch {
      border: none;
      width: 60px;
      background-size: 60px;
      height: 30px;
      margin: 2px 10px 2px 0;
      cursor: pointer;
      background-repeat: no-repeat;
      background-position: 0 center;
      background-image: url("img/ico-flip-switch-off.d7b88510014a.png");
      display: inline-block;
      vertical-align: middle; }
      .schedule-day-slot-selectors .selector .choice.toggle-switch.selected {
        background-color: transparent;
        background-image: url("img/ico-flip-switch-on.afccebd5fe20.png"); }

.schedule-day-slot-selectors.selectors-count-1 .meal .meal-title {
  margin-left: 40px; }

.modal-dialog.select-schedule-day-single-slot {
  width: 98%;
  max-width: 450px; }
  .modal-dialog.select-schedule-day-single-slot .selector#dialog_schedule_day_target_selectors_container {
    margin: 0;
    display: block; }
    .modal-dialog.select-schedule-day-single-slot .selector#dialog_schedule_day_target_selectors_container .choice.day {
      background-color: var(--base-light-border-color);
      line-height: 3em;
      padding: 0 12px;
      border-bottom: solid 1px var(--base-background-color);
      display: block;
      border-radius: 0;
      width: auto;
      cursor: pointer; }
      .modal-dialog.select-schedule-day-single-slot .selector#dialog_schedule_day_target_selectors_container .choice.day.selected {
        background-color: var(--base-light-color);
        color: var(--base-background-color); }
  .modal-dialog.select-schedule-day-single-slot .selector#dialog_schedule_day_meal_target_selectors_container {
    margin: 1em auto;
    width: 200px;
    display: block; }

body.mobile-user-agent {
  padding-top: 35px;
  padding-bottom: 50px; }
  body.mobile-user-agent.has_pwa_install_cta {
    padding-bottom: 100px; }
    body.mobile-user-agent.has_pwa_install_cta .pwa_install_cta {
      position: fixed;
      bottom: 50px;
      height: 60px;
      width: 100%;
      padding: 0.75em;
      background-color: var(--highlight-action-background);
      color: var(--highlight-action-color);
      font-size: 75%;
      line-height: 1.6; }
      body.mobile-user-agent.has_pwa_install_cta .pwa_install_cta .iphone_share_icon {
        background-image: url("img/cmd-ios-share-white.8344885654bc.png");
        background-repeat: no-repeat;
        display: inline-block;
        width: 25px;
        background-size: contain;
        background-position: 4px 0; }
  body.mobile-user-agent .page-header {
    z-index: 999; }
  body.mobile-user-agent .page-footer {
    z-index: 998;
    border-top: solid 1px var(--base-light-color); }
    body.mobile-user-agent .page-footer .mobile-more-menu-holder #mobile_screen_action_holder .screen-action-button {
      font-weight: bold;
      font-size: 120%;
      border-bottom: solid 1px var(--base-light-border-color); }
      body.mobile-user-agent .page-footer .mobile-more-menu-holder #mobile_screen_action_holder .screen-action-button.has-icon {
        padding-right: 55px;
        background-size: 40px;
        background-position: right;
        background-repeat: no-repeat; }
        body.mobile-user-agent .page-footer .mobile-more-menu-holder #mobile_screen_action_holder .screen-action-button.has-icon.move {
          background-image: url("img/ico-move-large.ce1dac9d4900.png"); }
        body.mobile-user-agent .page-footer .mobile-more-menu-holder #mobile_screen_action_holder .screen-action-button.has-icon.delete {
          background-image: url("img/ico-delete-large.d92b56507fa0.png"); }
  body.mobile-user-agent .main-navigation .button {
    display: inline-block;
    width: 45px;
    height: 45px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 35px;
    margin: 2px 20px;
    vertical-align: top; }
    body.mobile-user-agent .main-navigation .button.back {
      background-image: url("img/cmd_back.517b4fde1dc0.png"); }
    body.mobile-user-agent .main-navigation .button.home {
      background-image: url("img/cmd_home.05648536c225.png"); }
    body.mobile-user-agent .main-navigation .button.more {
      background-image: url("img/cmd_more_bars_black.f314d473045a.png");
      background-size: 26px; }
      body.mobile-user-agent .main-navigation .button.more.has-actions {
        background-color: var(--base-color);
        background-image: url("img/cmd_more_bars_white.08e03990c606.png");
        border-radius: 50%; }
  body.mobile-user-agent .home-navigation {
    background-color: var(--tab-panel-background-color);
    height: 100vh;
    padding: 20px 16px; }
    body.mobile-user-agent .home-navigation .navigation-item {
      padding: 1em 1em 1em 80px;
      margin: 30px 0;
      border: solid 1px var(--base-light-border-color);
      border-radius: 14px;
      font-size: 120%;
      background-color: var(--base-background-color);
      position: relative;
      background-position: 20px center;
      background-repeat: no-repeat;
      background-size: 45px;
      /*
      .unread-count {
        float: right;
        margin-top: -35px
      }
      */ }
      body.mobile-user-agent .home-navigation .navigation-item.inactive {
        opacity: 0.5; }
      body.mobile-user-agent .home-navigation .navigation-item img {
        position: absolute;
        left: 20px;
        top: 50%;
        margin-top: -25px;
        height: 50px;
        width: 50px; }
      body.mobile-user-agent .home-navigation .navigation-item.chat {
        background-image: url("img/ico-chat.915ae63cd65d.png"); }
      body.mobile-user-agent .home-navigation .navigation-item.schedule {
        background-image: url("img/ico-calendar.821fd6e2cbcc.png"); }
      body.mobile-user-agent .home-navigation .navigation-item.shopping {
        background-image: url("img/ico-shopping.b4d221412b38.png"); }
      body.mobile-user-agent .home-navigation .navigation-item.cookbook {
        background-image: url("img/ico-cookbook.b061ac7dcf12.png"); }
      body.mobile-user-agent .home-navigation .navigation-item.library {
        background-image: url("img/ico-library.22b41d20cb6a.png"); }
      body.mobile-user-agent .home-navigation .navigation-item.settings {
        background-image: url("img/ico-settings.5afb66c877f7.png"); }
      body.mobile-user-agent .home-navigation .navigation-item.clients {
        background-image: url("img/ico-client.7bc8afdc6da9.png"); }
  body.mobile-user-agent .app-button, body.mobile-user-agent .app-button-main, body.mobile-user-agent input[type='submit'] {
    line-height: 1.1em;
    min-width: 80px;
    padding: 0.7em 0.7em;
    border-color: var(--base-light-color); }
    body.mobile-user-agent .app-button.highlight, body.mobile-user-agent .app-button-main.highlight, body.mobile-user-agent input[type='submit'].highlight {
      background-color: var(--base-light-color) !important;
      color: var(--base-background-color); }
      body.mobile-user-agent .app-button.highlight[disabled], body.mobile-user-agent .app-button-main.highlight[disabled], body.mobile-user-agent input[type='submit'].highlight[disabled] {
        background-color: var(--base-light-border-color) !important;
        color: var(--base-background-color) !important;
        box-shadow: none !important; }
    body.mobile-user-agent .app-button.has-count, body.mobile-user-agent .app-button-main.has-count, body.mobile-user-agent input[type='submit'].has-count {
      padding-right: 35px !important; }
    body.mobile-user-agent .app-button .count, body.mobile-user-agent .app-button-main .count, body.mobile-user-agent input[type='submit'] .count {
      color: var(--highlight-action-color);
      background-color: var(--highlight-action-background);
      border-radius: 50%;
      font-size: 14px;
      position: absolute;
      top: 8px;
      right: 2px;
      width: 40px;
      height: 40px;
      padding-top: 10px;
      text-align: center; }
  body.mobile-user-agent .modal-dialog .modal-controls {
    padding: 0; }
  body.mobile-user-agent .modal-dialog .modal-content {
    padding-left: 0.5em;
    padding-right: 0.5em; }
  body.mobile-user-agent .modal-dialog.top-half {
    height: fit-content;
    max-height: 90%;
    transform: translateY(-90%); }
  body.mobile-user-agent .modal-dialog .edit-form {
    max-width: 98%; }
    body.mobile-user-agent .modal-dialog .edit-form .form-row input {
      margin: 0 0 0 6px; }
      body.mobile-user-agent .modal-dialog .edit-form .form-row input:first-of-type {
        margin-left: 0; }
  body.mobile-user-agent .modal-dialog .modal-container.bottom-controls, body.mobile-user-agent .modal-dialog.bottom-controls .modal-container {
    padding-bottom: 90px; }
  body.mobile-user-agent .modal-actions-fork .app-button-main {
    padding: 0.5em 0.4em !important; }
    body.mobile-user-agent .modal-actions-fork .app-button-main.has-icon {
      border-color: var(--base-light-color);
      background-color: var(--base-background-color); }
      body.mobile-user-agent .modal-actions-fork .app-button-main.has-icon .icon {
        background-size: 35px; }
  body.mobile-user-agent .meal-plan .plan-day-container .day-header {
    text-align: center; }
    body.mobile-user-agent .meal-plan .plan-day-container .day-header .day-rating {
      display: none; }
    body.mobile-user-agent .meal-plan .plan-day-container .day-header h3 {
      display: inline-block; }
    body.mobile-user-agent .meal-plan .plan-day-container .day-header * {
      vertical-align: middle; }
    body.mobile-user-agent .meal-plan .plan-day-container .day-header .svg-holder {
      display: inline-block; }
      body.mobile-user-agent .meal-plan .plan-day-container .day-header .svg-holder svg {
        width: 40px;
        height: 12px;
        margin: 0 15px; }
  body.mobile-user-agent .meal-plan .plan-day-container .meal-type-section {
    margin-bottom: 1em; }
  body.mobile-user-agent .meal-plan .plan-day-container .meal-type-section, body.mobile-user-agent .meal-plan .plan-day-container .snacks-section {
    border-top: solid 1px var(--base-background-color); }
    body.mobile-user-agent .meal-plan .plan-day-container .meal-type-section .section-title, body.mobile-user-agent .meal-plan .plan-day-container .snacks-section .section-title {
      padding: 5px 10px;
      height: 45px;
      text-align: left;
      color: var(--tab-panel-color);
      background-color: var(--tab-panel-background-color); }
      body.mobile-user-agent .meal-plan .plan-day-container .meal-type-section .section-title h3, body.mobile-user-agent .meal-plan .plan-day-container .snacks-section .section-title h3 {
        display: inline-block;
        float: left;
        line-height: 40px; }
      body.mobile-user-agent .meal-plan .plan-day-container .meal-type-section .section-title .add-button, body.mobile-user-agent .meal-plan .plan-day-container .snacks-section .section-title .add-button {
        float: right;
        border: solid 1px var(--base-light-border-color);
        border-radius: 8px;
        background-size: 20px;
        background-color: white;
        width: 40px;
        height: 40px; }
  body.mobile-user-agent .recipe-card {
    border: solid 1px var(--base-light-border-color);
    min-height: 160px;
    height: 184px; }
    body.mobile-user-agent .recipe-card .title {
      padding-left: 6px; }
    body.mobile-user-agent .recipe-card .card-footer {
      position: relative;
      padding: 5px 40px 10px 5px; }
      body.mobile-user-agent .recipe-card .card-footer .actions {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        display: inline-block;
        display: flex;
        align-items: center; }
        body.mobile-user-agent .recipe-card .card-footer .actions .button {
          background-size: auto 25px;
          width: 45px;
          height: 45px; }
  body.mobile-user-agent .food-card {
    display: inline-block;
    width: 90%;
    height: 220px;
    margin: 10px;
    vertical-align: top;
    text-align: left;
    cursor: pointer;
    border: solid 1px var(--base-light-border-color); }
    body.mobile-user-agent .food-card.no-image {
      display: inline-flex;
      flex-wrap: wrap;
      align-items: center;
      height: auto; }
      body.mobile-user-agent .food-card.no-image .name, body.mobile-user-agent .food-card.no-image .amount {
        width: 100%; }
    body.mobile-user-agent .food-card .card-footer {
      position: relative;
      width: 100%;
      padding: 5px 40px 10px 5px; }
      body.mobile-user-agent .food-card .card-footer .amount {
        font-size: 90%;
        font-style: italic; }
      body.mobile-user-agent .food-card .card-footer .actions {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        display: inline-block;
        display: flex;
        align-items: center; }
        body.mobile-user-agent .food-card .card-footer .actions .button {
          background-size: auto 25px;
          width: 45px;
          height: 45px; }
  body.mobile-user-agent .note-card {
    width: 90%;
    margin: 10px;
    vertical-align: top;
    text-align: left;
    cursor: pointer;
    border: solid 1px var(--base-light-border-color);
    position: relative;
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    height: auto; }
    body.mobile-user-agent .note-card .card-header {
      padding: 5px 40px 10px 5px; }
      body.mobile-user-agent .note-card .card-header .actions {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        display: inline-block;
        display: flex;
        align-items: center; }
        body.mobile-user-agent .note-card .card-header .actions .button {
          background-size: auto 25px;
          width: 45px;
          height: 45px; }
  body.mobile-user-agent .search-plugin .search-results-head {
    margin: 0; }
    body.mobile-user-agent .search-plugin .search-results-head * {
      vertical-align: middle; }
    body.mobile-user-agent .search-plugin .search-results-head label {
      display: inline-block;
      width: 4em; }
    body.mobile-user-agent .search-plugin .search-results-head .combo-select {
      width: 240px;
      display: inline-block; }
  body.mobile-user-agent .search-plugin .search-results {
    padding: 0; }
    body.mobile-user-agent .search-plugin .search-results .search-result-container {
      margin-top: 1.5em; }
  body.mobile-user-agent .search-plugin .compact_cards.search-result#food_search_result_container {
    column-count: 1; }
    body.mobile-user-agent .search-plugin .compact_cards.search-result#food_search_result_container .food-card.food-item {
      min-height: 4em;
      height: auto;
      width: auto;
      display: flex;
      align-items: center;
      margin-bottom: 1em; }
  body.mobile-user-agent .signup {
    background-color: var(--base-background-color);
    color: var(--base-color); }
  body.mobile-user-agent .content-form {
    padding: 0; }
    body.mobile-user-agent .content-form .diet-list input[type='checkbox'] + label {
      margin: 0.5em;
      max-width: 40vw;
      white-space: normal;
      line-height: 1.25;
      height: auto;
      background-position-y: 2px; }
  body.mobile-user-agent.impersonated .tab_navigation_view .state-list {
    top: auto; }
  body.mobile-user-agent .settings-screen.tab_navigation_view {
    padding: 0; }
    body.mobile-user-agent .settings-screen.tab_navigation_view .state-list {
      padding: 0;
      background-color: var(--base-background-darker-color);
      color: var(--base-color);
      border: none; }
      body.mobile-user-agent .settings-screen.tab_navigation_view .state-list .label {
        padding: 5px;
        width: 25%;
        margin: 0;
        min-height: 40px;
        display: inline-flex;
        align-items: center;
        justify-content: center; }
        body.mobile-user-agent .settings-screen.tab_navigation_view .state-list .label.active {
          border-radius: 0;
          border: none;
          border-bottom: solid 2px black;
          background-color: var(--tab-panel-background-color);
          color: var(--tab-panel-color); }
  body.mobile-user-agent .settings-screen .settings-form.billing {
    width: 95vw; }
    body.mobile-user-agent .settings-screen .settings-form.billing .program-list, body.mobile-user-agent .settings-screen .settings-form.billing .payment-method, body.mobile-user-agent .settings-screen .settings-form.billing .transaction-list {
      font-size: 75%; }
  body.mobile-user-agent .horizontal-tabs .tabs {
    margin-top: 4px; }
    body.mobile-user-agent .horizontal-tabs .tabs .tab {
      margin: 0;
      padding: 0 4px;
      white-space: normal;
      overflow: hidden; }
  body.mobile-user-agent .horizontal-tabs .tab_content > div:not(.no-horizontal-margin) {
    margin-left: 12px;
    margin-right: 12px; }
  body.mobile-user-agent .recipe.action-view .include-wrap {
    margin-top: 0; }
  body.mobile-user-agent .recipe.action-view .schedule-recipe-details {
    margin-top: 1.5em; }
    body.mobile-user-agent .recipe.action-view .schedule-recipe-details #options_pane {
      padding: 2em 0; }
      body.mobile-user-agent .recipe.action-view .schedule-recipe-details #options_pane .multi-select .choice-container {
        margin: 20px 0 30px 0; }
        body.mobile-user-agent .recipe.action-view .schedule-recipe-details #options_pane .multi-select .choice-container div {
          display: block;
          margin-bottom: 20px; }
      body.mobile-user-agent .recipe.action-view .schedule-recipe-details #options_pane input[type='checkbox'] + label {
        margin: 1em 0; }
    body.mobile-user-agent .recipe.action-view .schedule-recipe-details .value-plus-minus label {
      display: inline-block;
      width: 140px; }
    body.mobile-user-agent .recipe.action-view .schedule-recipe-details .scheduled-dates {
      margin: 1em 0; }
      body.mobile-user-agent .recipe.action-view .schedule-recipe-details .scheduled-dates * {
        vertical-align: top; }
      body.mobile-user-agent .recipe.action-view .schedule-recipe-details .scheduled-dates .label {
        display: inline-block;
        width: 6em; }
      body.mobile-user-agent .recipe.action-view .schedule-recipe-details .scheduled-dates .values {
        display: inline-block; }
  body.mobile-user-agent .recipe.action-view .notes {
    width: auto; }
  body.mobile-user-agent .edit-form {
    margin: 0 auto;
    text-align: left; }
    body.mobile-user-agent .edit-form .form-row label {
      margin: 0 0.25em 0 0.75em; }
    body.mobile-user-agent .edit-form .form-row input {
      margin: 0 0.75em 0 0.25em; }
    body.mobile-user-agent .edit-form .form-row.short-input label {
      display: inline-block;
      width: 100px; }
    body.mobile-user-agent .edit-form .form-row input[type='text'], body.mobile-user-agent .edit-form .form-row input[type='email'], body.mobile-user-agent .edit-form .form-row input[type='password'], body.mobile-user-agent .edit-form .form-row input[type='tel'],
    body.mobile-user-agent .edit-form .form-row input[type='number'], body.mobile-user-agent .edit-form .form-row input[type='url'], body.mobile-user-agent .edit-form .form-row select {
      max-width: 85vw; }
    body.mobile-user-agent .edit-form input[type="number"] {
      width: 100px; }
    body.mobile-user-agent .edit-form.food-form .measure-select {
      text-align: left;
      margin-left: 1%;
      width: 98%;
      white-space: nowrap;
      overflow-x: scroll; }
      body.mobile-user-agent .edit-form.food-form .measure-select .inactive, body.mobile-user-agent .edit-form.food-form .measure-select .active {
        border: solid 1px rgba(0, 0, 0, 0.3);
        border-radius: 8px;
        padding: 4px 20px 4px 20px;
        cursor: pointer;
        margin: 5px 0;
        min-height: 60px;
        min-width: 60px;
        display: inline-flex;
        align-items: center;
        max-width: 110px;
        white-space: normal;
        line-height: 1.1em;
        vertical-align: middle; }
      body.mobile-user-agent .edit-form.food-form .measure-select .active {
        background-color: var(--base-light-color);
        color: var(--base-background-color);
        background-image: none; }
    body.mobile-user-agent .edit-form.note-form {
      width: auto; }
  body.mobile-user-agent .fr-box.fr-basic .fr-sticky-dummy {
    height: 98px !important; }
  body.mobile-user-agent .fr-box.fr-basic .fr-toolbar.fr-top.fr-sticky-on {
    top: 0 !important; }
  body.mobile-user-agent .modal-dialog.nutrition-break-down .modal-content {
    padding: 1em 0; }
  body.mobile-user-agent .modal-dialog.nutrition-break-down .nutrition-stats .nutrients td {
    padding: 0 6px; }
    body.mobile-user-agent .modal-dialog.nutrition-break-down .nutrition-stats .nutrients td.value {
      padding: 0; }
  body.mobile-user-agent .modal-dialog.nutrition-break-down .nutrition-stats .nutrients .label {
    max-width: 90vw;
    line-height: 1.1em;
    padding: 10px 0; }
  body.mobile-user-agent .modal-dialog.nutrition-break-down .nutrition-stats .nutrients .sources .source .label {
    max-width: 28vw;
    vertical-align: top; }
  body.mobile-user-agent .modal-dialog.nutrition-break-down .nutrition-stats .nutrients .sources .source .value {
    padding: 10px 0;
    vertical-align: top; }
  body.mobile-user-agent .edit-form.small-form {
    width: 100%;
    padding: 0.5em 0; }
    body.mobile-user-agent .edit-form.small-form .full-width-input input {
      width: 97%; }
  body.mobile-user-agent .grecaptcha-badge {
    margin: 0 auto; }
  body.mobile-user-agent .signup-plan-select {
    padding: 16px; }
    body.mobile-user-agent .signup-plan-select .block {
      margin-bottom: 0.5em;
      padding-bottom: 6em; }
  body.mobile-user-agent .client-list {
    padding-top: 1em; }
    body.mobile-user-agent .client-list .result-count {
      padding-left: 1em; }
    body.mobile-user-agent .client-list td {
      padding-top: 10px;
      padding-bottom: 10px; }
    body.mobile-user-agent .client-list td.name {
      max-width: 60vw;
      overflow: hidden;
      text-overflow: ellipsis; }
    body.mobile-user-agent .client-list .controls .small-button {
      margin: 4px 0;
      line-height: 35px; }
  body.mobile-user-agent .modal-dialog.chat-popup .modal-content .conversation {
    width: 100%; }
  body.mobile-user-agent .week-selector {
    background-color: var(--tab-panel-background-color);
    color: var(--tab-panel-color); }
    body.mobile-user-agent .week-selector .left-arrow, body.mobile-user-agent .week-selector .right-arrow {
      color: var(--tab-panel-color); }
  body.mobile-user-agent .week-selector, body.mobile-user-agent .schedule-day-selector {
    height: 50px;
    padding-top: 10px;
    position: relative; }
    body.mobile-user-agent .week-selector .left-arrow, body.mobile-user-agent .week-selector .right-arrow, body.mobile-user-agent .schedule-day-selector .left-arrow, body.mobile-user-agent .schedule-day-selector .right-arrow {
      position: absolute;
      top: 50%;
      margin-top: -20px;
      width: 30px;
      height: 20px;
      /* will be stretched to 40px by transformation below to have stretched arrow  */
      -webkit-transform: scale(1, 2);
      /* Safari and Chrome */
      -moz-transform: scale(1, 2);
      /* Firefox */
      -ms-transform: scale(1, 2);
      /* IE 9 */
      -o-transform: scale(1, 2);
      /* Opera */
      transform: scale(1, 2);
      /* W3C */
      text-align: center;
      font-size: 30px; }
    body.mobile-user-agent .week-selector .left-arrow, body.mobile-user-agent .schedule-day-selector .left-arrow {
      left: 0; }
    body.mobile-user-agent .week-selector .right-arrow, body.mobile-user-agent .schedule-day-selector .right-arrow {
      right: 0; }
  body.mobile-user-agent .shopping-screen .horizontal-tabs#mode_tabs .tabs .tab {
    width: 33%;
    height: 60px; }
  body.mobile-user-agent .shopping-screen .do-shop, body.mobile-user-agent .shopping-screen .edit-list {
    text-align: left; }
    body.mobile-user-agent .shopping-screen .do-shop h2, body.mobile-user-agent .shopping-screen .edit-list h2 {
      margin: 1em 0 0.5em 0;
      text-align: left; }
    body.mobile-user-agent .shopping-screen .do-shop .controls, body.mobile-user-agent .shopping-screen .edit-list .controls {
      text-align: right;
      margin: 0.75em 0; }
    @media only screen and (max-width: 400px) {
      body.mobile-user-agent .shopping-screen .do-shop .items .name, body.mobile-user-agent .shopping-screen .edit-list .items .name {
        width: 200px; } }
    body.mobile-user-agent .shopping-screen .do-shop .items .measure, body.mobile-user-agent .shopping-screen .edit-list .items .measure {
      width: 100px; }
    body.mobile-user-agent .shopping-screen .do-shop .items .amount, body.mobile-user-agent .shopping-screen .edit-list .items .amount {
      width: 4em; }
      @media only screen and (max-width: 400px) {
        body.mobile-user-agent .shopping-screen .do-shop .items .amount, body.mobile-user-agent .shopping-screen .edit-list .items .amount {
          width: 3em; } }
    body.mobile-user-agent .shopping-screen .do-shop .items .item.bought, body.mobile-user-agent .shopping-screen .edit-list .items .item.bought {
      text-decoration: line-through;
      font-style: italic;
      color: #cccccc; }
    body.mobile-user-agent .shopping-screen .do-shop .items .item td, body.mobile-user-agent .shopping-screen .edit-list .items .item td {
      padding: 0;
      overflow: hidden;
      height: 2.6em; }
    body.mobile-user-agent .shopping-screen .do-shop .items .item .small-button, body.mobile-user-agent .shopping-screen .edit-list .items .item .small-button {
      line-height: 1em;
      font-size: 80%;
      width: calc(100% - 6px);
      overflow: hidden;
      text-overflow: ellipsis;
      text-align: left;
      padding: 8px;
      margin-left: 6px; }
    body.mobile-user-agent .shopping-screen .do-shop .items .item input[type='checkbox'] + label, body.mobile-user-agent .shopping-screen .edit-list .items .item input[type='checkbox'] + label {
      margin: 6px 0 !important;
      white-space: normal;
      line-height: 1.1em; }
      @media only screen and (max-width: 400px) {
        body.mobile-user-agent .shopping-screen .do-shop .items .item input[type='checkbox'] + label, body.mobile-user-agent .shopping-screen .edit-list .items .item input[type='checkbox'] + label {
          width: 210px; } }
  body.mobile-user-agent .shopping-screen .edit-list .black input[type='checkbox'] + label {
    margin: 12px 0;
    font-size: 90%; }
  body.mobile-user-agent .fixed-action {
    position: fixed;
    bottom: 60px;
    left: 50%;
    z-index: 9999;
    background-color: var(--highlight-action-background);
    color: var(--highlight-action-color);
    padding: 8px 1.5em;
    border-radius: 25px;
    min-width: 100px;
    font-size: 120%;
    text-align: center;
    transform: translateX(-60%);
    box-shadow: 1px 2px 6px var(--base-color);
    cursor: pointer;
    white-space: nowrap; }
  body.mobile-user-agent .schedule-add-item .tabs .tab {
    width: 33%; }
  body.mobile-user-agent .schedule-recipe-details .tabs .tab {
    width: 50%; }
  body.mobile-user-agent .plan-templates .template-record .recipes .search-results .recipe-card {
    height: 88px;
    min-height: auto; }
  body.mobile-user-agent .flow-step .button-main, body.mobile-user-agent .flow-step input[type='submit'] {
    padding: 0.75em 1.5em !important; }
  body.mobile-user-agent .flow-step .multi-select.toggle-tokens .active, body.mobile-user-agent .flow-step .multi-select.toggle-tokens .inactive {
    font-size: 95%; }
  body.mobile-user-agent .anthropometrics-edit form {
    width: 90vw;
    padding: 1em; }
    body.mobile-user-agent .anthropometrics-edit form label {
      width: 4.25em; }
    body.mobile-user-agent .anthropometrics-edit form input.number {
      width: 3.75em;
      margin-right: 0; }
    body.mobile-user-agent .anthropometrics-edit form .form-row {
      margin: 1em 0; }
    body.mobile-user-agent .anthropometrics-edit form #activity_levels {
      text-align: center;
      width: 100%;
      display: block; }
  body.mobile-user-agent .flow-step .message-container {
    width: 96%;
    margin-left: auto;
    margin-right: auto; }
  body.mobile-user-agent .modal-dialog.generator-settings {
    width: 100vw;
    max-width: 100vw; }
    body.mobile-user-agent .modal-dialog.generator-settings table {
      width: 100%; }
      body.mobile-user-agent .modal-dialog.generator-settings table td {
        padding: 6px 4px; }
      body.mobile-user-agent .modal-dialog.generator-settings table td.family-member-selectors, body.mobile-user-agent .modal-dialog.generator-settings table td.input {
        padding: 6px 0;
        width: 110px; }
        body.mobile-user-agent .modal-dialog.generator-settings table td.family-member-selectors .active, body.mobile-user-agent .modal-dialog.generator-settings table td.family-member-selectors .inactive, body.mobile-user-agent .modal-dialog.generator-settings table td.input .active, body.mobile-user-agent .modal-dialog.generator-settings table td.input .inactive {
          font-size: 95%;
          min-width: 50px; }
      body.mobile-user-agent .modal-dialog.generator-settings table .plus-minus-input {
        padding: 6px 0;
        width: 165px;
        min-width: 165px; }
        body.mobile-user-agent .modal-dialog.generator-settings table .plus-minus-input input[type='number'] {
          width: 2.75em; }
    body.mobile-user-agent .modal-dialog.generator-settings .modal-controls {
      font-size: 90%; }
      body.mobile-user-agent .modal-dialog.generator-settings .modal-controls .app-button-main {
        min-width: 90px;
        padding: 0.7em !important;
        margin-left: 0.2em;
        margin-right: 0.2em; }
  body.mobile-user-agent .modal-dialog.generator-settings {
    max-height: 80vh; }
  body.mobile-user-agent .floating-panel-container#swap_meal_pane .app-button {
    font-size: 100% !important;
    min-width: 70px;
    padding: 8px !important;
    margin: 6px 2px; }
  body.mobile-user-agent .floating-panel-container#generate_plan_pane {
    width: 100vw;
    border-radius: 0;
    height: calc(100vh - 139px);
    overflow: auto;
    box-shadow: none;
    position: relative; }
    body.mobile-user-agent .floating-panel-container#generate_plan_pane .generator-pane-container {
      padding-top: 45px; }
    body.mobile-user-agent .floating-panel-container#generate_plan_pane .floating-panel-actions {
      top: calc(100% - 60px);
      height: 60px; }
    body.mobile-user-agent .floating-panel-container#generate_plan_pane .app-button {
      font-size: 100% !important;
      min-width: 70px;
      padding: 8px !important;
      margin: 0 2px; }
    body.mobile-user-agent .floating-panel-container#generate_plan_pane td.meal-section {
      padding-left: 6px; }
      body.mobile-user-agent .floating-panel-container#generate_plan_pane td.meal-section .meal-header {
        margin: 18px 0; }
        body.mobile-user-agent .floating-panel-container#generate_plan_pane td.meal-section .meal-header .title, body.mobile-user-agent .floating-panel-container#generate_plan_pane td.meal-section .meal-header .actions {
          display: inline-block;
          vertical-align: middle; }
        body.mobile-user-agent .floating-panel-container#generate_plan_pane td.meal-section .meal-header .title {
          width: 5.5em;
          overflow: hidden;
          text-overflow: ellipsis; }
        body.mobile-user-agent .floating-panel-container#generate_plan_pane td.meal-section .meal-header .actions {
          font-size: 90%; }
          body.mobile-user-agent .floating-panel-container#generate_plan_pane td.meal-section .meal-header .actions input[type='checkbox'] + label {
            margin-right: 0;
            padding-left: 45px; }
          body.mobile-user-agent .floating-panel-container#generate_plan_pane td.meal-section .meal-header .actions .button-with-icon {
            margin-right: 0; }
    body.mobile-user-agent .floating-panel-container#generate_plan_pane .top-pane {
      position: fixed;
      top: 35px;
      padding-top: 36px;
      height: calc(100vh - 85px); }
      body.mobile-user-agent .floating-panel-container#generate_plan_pane .top-pane .back-holder {
        position: fixed;
        top: 35px;
        width: 100%;
        background-color: var(--base-background-color); }
        body.mobile-user-agent .floating-panel-container#generate_plan_pane .top-pane .back-holder .back-button {
          margin-bottom: 0; }
    body.mobile-user-agent .floating-panel-container#generate_plan_pane .horizontal-tabs .tabs .tab {
      font-size: 95%;
      width: 140px; }
  body.mobile-user-agent .long-loader-container {
    width: 96vw;
    left: 2vw; }
    body.mobile-user-agent .long-loader-container .loader-slide {
      width: 93vw;
      margin-left: auto;
      margin-right: auto; }
  body.mobile-user-agent .meal-log .search-results .flex-center-content {
    margin-bottom: 25px; }
  body.mobile-user-agent .meal-log .note-card {
    margin-left: 0;
    margin-right: 0;
    width: 100%; }
    body.mobile-user-agent .meal-log .note-card.added-meal .card-header {
      width: 100%;
      background-color: var(--base-background-darker-color); }
    body.mobile-user-agent .meal-log .note-card.added-meal .card-content {
      padding: 5px 10px;
      border-top: solid 1px var(--base-light-border-color);
      width: 100%;
      font-size: 90%; }
  body.mobile-user-agent #log-form .black.toggle-switch input[type='checkbox'] + label, body.mobile-user-agent #log-form .black.toggle-switch input[type='radio'] + label {
    margin: 8px 0; }
  body.mobile-user-agent .merged-buttons > a {
    width: 50px;
    padding: 4px; }
  body.mobile-user-agent .card-resizable {
    margin: 0 16px 0 0 !important;
    width: calc(90% - 110px) !important;
    max-width: 300px;
    height: fit-content !important; }
    body.mobile-user-agent .card-resizable .title {
      height: fit-content; }

.modal-dialog.mobile-search-filters {
  width: 99%; }
  .modal-dialog.mobile-search-filters .modal-content {
    padding: 1em; }
  .modal-dialog.mobile-search-filters .combo-select {
    margin: 2.5em 0; }

.combo-select {
  border: solid 1px var(--base-light-color);
  border-radius: 20px;
  padding: 0.5em 1em;
  font-size: 110%;
  position: relative;
  padding-right: 40px; }
  .combo-select .combo-select-text {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; }
    .combo-select .combo-select-text.placeholder {
      color: var(--base-light-border-color);
      font-weight: bold; }

.combo-select-button {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 40px;
  background-image: url("img/cmd-arrow-down-black-thick.f68de8af1e87.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 20px; }

.combo-select-popup .combo-select-choices .select-choice {
  margin: 1px auto;
  padding: 0.5em 2em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }
  .combo-select-popup .combo-select-choices .select-choice:hover {
    background-color: var(--base-light-border-color); }
  .combo-select-popup .combo-select-choices .select-choice.active {
    background-color: var(--base-light-color);
    color: var(--base-background-color); }

.sticky_add_button {
  background-color: var(--base-light-color);
  background-image: url("img/cmd-plus-white.fadf8922a237.png");
  background-repeat: no-repeat;
  background-position: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  cursor: pointer;
  display: inline-block;
  box-shadow: 0 2px 3px 3px var(--base-light-border-color);
  position: absolute;
  bottom: 10px; }

.modal-dialog.searchable-select {
  min-width: 600px; }
  .modal-dialog.searchable-select .modal-container {
    padding-top: 90px; }
    .modal-dialog.searchable-select .modal-container .header {
      height: 90px;
      padding-top: 26px;
      border-bottom: none; }
      .modal-dialog.searchable-select .modal-container .header input {
        width: calc(100% - 50px); }
    .modal-dialog.searchable-select .modal-container .searchable-select-list .item {
      padding: 1px 0.5em;
      text-align: left;
      cursor: pointer;
      margin: 6px 0;
      border: solid 1px var(--base-light-border-color); }
      .modal-dialog.searchable-select .modal-container .searchable-select-list .item.selected {
        background-color: var(--base-light-color);
        color: var(--base-background-color); }
        .modal-dialog.searchable-select .modal-container .searchable-select-list .item.selected:hover {
          background-color: var(--base-color); }
      .modal-dialog.searchable-select .modal-container .searchable-select-list .item:hover {
        background-color: var(--base-background-darker-color); }
      .modal-dialog.searchable-select .modal-container .searchable-select-list .item div {
        display: inline-block;
        margin: 0 6px;
        vertical-align: middle; }
      .modal-dialog.searchable-select .modal-container .searchable-select-list .item img {
        width: 45px;
        height: 45px;
        object-fit: cover;
        vertical-align: middle;
        margin-left: -0.5em; }

.team-admin .search-term {
  width: 16em; }

.team-admin table.vertical-info {
  margin-left: 1em; }
  .team-admin table.vertical-info th {
    width: 13em;
    text-align: left; }

.team-admin .controls {
  margin: 1em auto 1.5em auto; }
  .team-admin .controls label {
    margin: 6px 0.5em 6px 1em; }

.modal-dialog .yield-calculator {
  width: 900px; }
  .modal-dialog .yield-calculator table {
    margin: auto; }
    .modal-dialog .yield-calculator table .name {
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis; }
  .modal-dialog .yield-calculator input[type='number'] {
    width: 6em; }
  .modal-dialog .yield-calculator .controls label {
    margin-right: 0.5em; }
  .modal-dialog .yield-calculator .controls input {
    margin-right: 3em; }

.app-button-main.has-counter {
  position: relative; }
  .app-button-main.has-counter .counter {
    position: absolute;
    top: -10px;
    right: 5px;
    background-color: var(--base-background-color);
    color: var(--base-color);
    border: solid 1px var(--base-color);
    border-radius: 50%;
    padding: 6px;
    font-size: 12pt;
    line-height: 12pt;
    min-width: 30px; }

table.column_borders thead th {
  font-size: 75%;
  text-align: center; }

table.column_borders thead.left-align th {
  text-align: left; }

table.column_borders thead tr:first-child th {
  border-top: solid 1px var(--base-light-border-color);
  border-left: solid 1px var(--base-light-border-color);
  position: relative; }
  table.column_borders thead tr:first-child th:last-child {
    border-right: solid 1px var(--base-light-border-color); }
  table.column_borders thead tr:first-child th:before {
    position: absolute;
    top: 100%;
    left: -1px;
    height: 2em;
    width: 100%;
    border-left: solid 1px var(--base-light-border-color);
    background: transparent;
    content: " "; }
  table.column_borders thead tr:first-child th:last-child:before {
    width: calc(100% + 2px);
    border-right: solid 1px var(--base-light-border-color); }

table.column_borders thead tr:last-child th {
  border-bottom: solid 1px var(--base-light-border-color); }

table.column_borders thead tr:first-child:last-child th::before {
  display: none; }

table.column_borders tbody td {
  border-left: solid 1px var(--base-light-border-color) !important; }
  table.column_borders tbody td:last-child {
    border-right: solid 1px var(--base-light-border-color) !important; }

table.column_borders tbody tr:last-child td {
  border-bottom: solid 1px var(--base-light-border-color) !important; }

table.all_header_borders thead tr th {
  border-top: solid 1px var(--base-light-border-color);
  border-left: solid 1px var(--base-light-border-color); }
  table.all_header_borders thead tr th:last-child {
    border-right: solid 1px var(--base-light-border-color); }
  table.all_header_borders thead tr th.no_top_separator {
    border-top: none; }

table.all_header_borders thead tr:last-child th {
  border-bottom: solid 1px var(--base-light-border-color); }

.modal-dialog.tag-explorer .modal-header {
  height: 76px;
  padding-top: 16px;
  background-color: var(--base-background-darker-color); }
  .modal-dialog.tag-explorer .modal-header .search-pane.controls {
    border: solid 1px var(--base-light-color);
    border-radius: 4px;
    padding-right: 4px;
    background-color: var(--base-background-color); }
    .modal-dialog.tag-explorer .modal-header .search-pane.controls .svg-holder {
      height: 20px; }
      .modal-dialog.tag-explorer .modal-header .search-pane.controls .svg-holder svg {
        width: 20px;
        height: 20px; }
    .modal-dialog.tag-explorer .modal-header .search-pane.controls input.search-term {
      width: 16em;
      border: none; }

.modal-dialog.tag-explorer .modal-container {
  padding-top: 76px; }

.modal-dialog.tag-explorer .modal-controls {
  background-color: var(--base-background-darker-color); }
  .modal-dialog.tag-explorer .modal-controls .app-button-main {
    background-color: var(--base-background-color); }

.modal-dialog.tag-explorer .tag-explorer-container.horizontal-tabs .tabs .tab {
  height: 60px;
  font-size: 95%;
  width: 130px;
  padding: 0 12px 12px 12px;
  position: relative;
  text-align: left;
  justify-content: left; }
  .modal-dialog.tag-explorer .tag-explorer-container.horizontal-tabs .tabs .tab .items-count {
    font-family: var(--font-family-numbers);
    font-size: 75%;
    position: absolute;
    bottom: 4px;
    right: 8px;
    border: none;
    height: 1.3em;
    text-align: right; }
  .modal-dialog.tag-explorer .tag-explorer-container.horizontal-tabs .tabs .tab.active::after {
    left: 0; }

.modal-dialog.tag-explorer .tag-explorer-container.horizontal-tabs .panes {
  border-top: solid 1px var(--base-light-border-color); }
  .modal-dialog.tag-explorer .tag-explorer-container.horizontal-tabs .panes .multi-select .category-container {
    margin-bottom: 1.5em; }
    .modal-dialog.tag-explorer .tag-explorer-container.horizontal-tabs .panes .multi-select .category-container .title {
      background-color: var(--base-background-darker-color);
      padding: 4px 10px;
      border-bottom: dotted 1px var(--base-light-border-color); }
      .modal-dialog.tag-explorer .tag-explorer-container.horizontal-tabs .panes .multi-select .category-container .title img {
        border-radius: 50%;
        vertical-align: middle;
        margin-right: 1em; }
      .modal-dialog.tag-explorer .tag-explorer-container.horizontal-tabs .panes .multi-select .category-container .title h3 {
        display: inline-block;
        vertical-align: middle; }
    .modal-dialog.tag-explorer .tag-explorer-container.horizontal-tabs .panes .multi-select .category-container .tags {
      height: 100%;
      padding: 0.5em 0; }
      .modal-dialog.tag-explorer .tag-explorer-container.horizontal-tabs .panes .multi-select .category-container .tags .active, .modal-dialog.tag-explorer .tag-explorer-container.horizontal-tabs .panes .multi-select .category-container .tags .inactive {
        width: 220px;
        margin-bottom: 10px;
        text-overflow: ellipsis;
        height: 55px;
        white-space: normal;
        line-height: 50px;
        vertical-align: middle; }
        .modal-dialog.tag-explorer .tag-explorer-container.horizontal-tabs .panes .multi-select .category-container .tags .active .tag-text, .modal-dialog.tag-explorer .tag-explorer-container.horizontal-tabs .panes .multi-select .category-container .tags .inactive .tag-text {
          display: inline-block;
          vertical-align: middle;
          line-height: 1.1em; }

.modal-dialog.tag-explorer.modal-dialog {
  width: 1000px; }
  .modal-dialog.tag-explorer.modal-dialog .modal-content {
    padding: 0 0.75em; }

.modal-dialog.tag-explorer .multi-select {
  font-size: 90%; }
  .modal-dialog.tag-explorer .multi-select .active, .modal-dialog.tag-explorer .multi-select .inactive {
    min-width: 8em;
    text-align: center;
    margin: 4px 6px;
    text-overflow: ellipsis;
    padding: 2px 12px; }

.tags {
  margin: 1em auto; }
  .tags .menu-section {
    display: inline-block;
    font-size: 85%;
    padding: 0.25em 0.5em;
    margin: 1em 1em 1em 0;
    border: 1px solid var(--base-light-border-color);
    border-radius: 20px;
    min-width: 5em;
    text-align: center;
    background-color: var(--base-background-darker-color); }
  .tags .tag {
    display: inline-block;
    border: solid 1px #e6c499;
    padding: 4px 6px 4px 16px;
    margin: 6px 4px;
    border-top-left-radius: 14px;
    border-bottom-left-radius: 14px;
    background-color: #fdf6ed;
    font-size: 85%;
    position: relative;
    min-width: 6em; }
    .tags .tag:before {
      position: absolute;
      top: 0;
      left: 4px;
      content: 'o';
      font-size: 60%;
      margin-right: 4px;
      padding-top: 4px; }
    .tags .tag.clickable:hover {
      box-shadow: 2px 2px 4px var(--base-light-color); }
  .tags.auto-tags {
    columns: 10.5em auto; }
    .tags.auto-tags .tag {
      min-width: 10em; }

.stripe-checkout .card-input {
  border: solid 1px var(--base-light-border-color);
  padding: 1em 1.5em;
  width: 100%;
  margin: 1em auto; }

.modal-dialog.nutrient-filters label {
  display: inline-block;
  width: 9em; }

.modal-dialog.nutrient-filters input {
  width: 5em; }

.frozen-columns-table table.column_borders thead tr:first-child th.frozen-column, .frozen-columns-table .frozen-column {
  position: -webkit-sticky;
  position: sticky;
  background-color: white !important;
  z-index: 1;
  border-right: solid 1px var(--base-light-border-color); }

.frozen-columns-table .zebra tr:nth-child(Even) td.frozen-column {
  background-color: var(--shading-grey-color) !important; }

table.selectable-container {
  border: solid 1px var(--base-light-border-color); }
  table.selectable-container th, table.selectable-container td {
    border-bottom: solid 1px var(--base-light-border-color); }
  table.selectable-container .selected {
    background-color: var(--base-light-color);
    color: var(--base-background-color); }

.food-list .frozen1 {
  width: 250px;
  min-width: 250px;
  left: 60px; }

.food-list .frozen2 {
  width: 50px;
  min-width: 50px;
  left: 310px; }

.food-list.paginated {
  padding-bottom: 103px; }
  .food-list.paginated .paginator {
    position: fixed;
    bottom: 75px;
    background-color: white;
    width: 100%;
    z-index: 2;
    border-top: solid 1px var(--base-light-border-color); }

.expert-home .food-list {
  margin: 0; }
  .expert-home .food-list .results-count {
    margin: 1em 0 0.5em 0; }
  .expert-home .food-list .frozen-columns-table table {
    border-collapse: separate; }
  .expert-home .food-list .frozen-columns-table .frozen-header {
    position: sticky;
    top: 0;
    background-color: var(--base-background-color);
    z-index: 3; }
  .expert-home .food-list .frozen-columns-table .frozen1 {
    left: 0; }
  .expert-home .food-list .frozen-columns-table .frozen2 {
    left: 250px; }
  .expert-home .food-list .frozen-columns-table td.clickable:hover {
    background-color: #e0e0e0 !important; }

.modal-dialog .edit-form.email {
  width: 600px; }

.multi-select.permissions-selector .active, .multi-select.permissions-selector .inactive {
  width: 9em;
  white-space: normal;
  text-align: center;
  vertical-align: top;
  line-height: 1.2em;
  min-height: 3.6em;
  align-content: center;
  display: inline-grid; }

.navigation-icon {
  position: relative;
  padding-left: 60px !important;
  display: flex; }
  .navigation-icon .icon {
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    border: 10px solid transparent;
    position: absolute;
    width: 48px;
    height: 48px;
    left: 5px;
    top: 50%;
    margin-top: -24px;
    background-color: white;
    border-radius: 50%;
    cursor: pointer; }
  .navigation-icon.recipes .icon {
    background-image: url("img/ico-recipe-sm.e168e8a6d909.png"); }
  .navigation-icon.recipe_collections .icon {
    background-image: url("img/ico-recipe-collection-sm.15723238a355.png"); }
  .navigation-icon.custom_foods .icon {
    background-image: url("img/ico-food-sm.7c119772f91b.png"); }
  .navigation-icon.meal_plans .icon {
    background-image: url("img/ico-meal-plan-sm.75eef32835bf.png"); }
  .navigation-icon.articles .icon {
    background-image: url("img/ico-resources-sm.f3884118d4b0.png"); }
  .navigation-icon.programs .icon {
    background-image: url("img/ico-program-sm.db575fc7daa6.png"); }
  .navigation-icon.clients .icon {
    background-image: url("img/ico-clients-sm.9fb073387d08.png"); }
  .navigation-icon.create .icon {
    background-image: url("img/cmd-plus-white.fadf8922a237.png");
    background-color: var(--base-color);
    border: solid 1px #ffffffaa;
    background-size: 30px; }
  .navigation-icon.back {
    color: transparent; }
    .navigation-icon.back .icon {
      background-image: url("img/cmd_back_white.04e805919567.png");
      background-color: var(--base-color);
      border: solid 1px #ffffffaa;
      background-size: 30px; }
      .navigation-icon.back .icon:hover {
        box-shadow: 2px 2px 4px 0 var(--base-color);
        left: 3px;
        margin-top: -27px; }
  .navigation-icon.wide {
    background-color: var(--base-color);
    color: var(--base-background-color);
    width: 9em;
    border: solid 1px var(--base-background-color);
    border-radius: 30px;
    line-height: 50px;
    cursor: pointer; }
    .navigation-icon.wide:hover {
      box-shadow: 2px 2px 4px 0 var(--base-color);
      margin-left: -3px;
      margin-top: -2px; }
    .navigation-icon.wide.back .icon {
      border: none; }
    .navigation-icon.wide.back .icon:hover {
      box-shadow: none;
      left: 5px;
      margin-top: -25px; }
  .navigation-icon.global-fixed {
    position: fixed;
    left: 4px;
    bottom: 8px;
    height: 50px;
    z-index: 9999; }
  .navigation-icon.disabled-section {
    opacity: 0.25; }

.dom-element-selector {
  position: fixed;
  transition: all 300ms ease;
  border: solid 2px blue;
  background-color: rgba(0, 0, 0, 0.15);
  z-index: 99999; }

.modal-dialog.tours .modal-content {
  padding: 0;
  width: 820px; }

.modal-dialog.tours .edit-tours {
  height: 100%;
  font-size: 90%; }
  .modal-dialog.tours .edit-tours #tour_steps_container {
    height: calc(100% - 320px);
    overflow-y: auto;
    border-bottom: solid 1px var(--base-light-border-color);
    box-shadow: 2px 0 12px 1px var(--base-light-border-color); }
  .modal-dialog.tours .edit-tours #tour_step_form_container {
    height: 320px;
    overflow-y: auto; }
  .modal-dialog.tours .edit-tours .tour-steps table {
    width: calc(100% - 1px);
    table-layout: fixed; }
    .modal-dialog.tours .edit-tours .tour-steps table th {
      text-align: left;
      padding: 4px 10px; }
    .modal-dialog.tours .edit-tours .tour-steps table .content {
      height: 1.5em;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap; }
    .modal-dialog.tours .edit-tours .tour-steps table td.selectable {
      cursor: pointer; }
    .modal-dialog.tours .edit-tours .tour-steps table tr.selected td {
      background-color: var(--base-light-color);
      color: var(--base-background-color); }
    .modal-dialog.tours .edit-tours .tour-steps table .small-button.symbol {
      min-width: 20px;
      padding: 4px 8px;
      margin: 0.1em 1px; }
  .modal-dialog.tours .edit-tours .edit-form {
    padding: 0.5em 1em; }
    .modal-dialog.tours .edit-tours .edit-form .form-row {
      margin: 0.75em 0; }
      .modal-dialog.tours .edit-tours .edit-form .form-row label {
        font-size: 80%;
        display: inline-block;
        width: 10em;
        vertical-align: top; }
      .modal-dialog.tours .edit-tours .edit-form .form-row input {
        width: 39em; }
      .modal-dialog.tours .edit-tours .edit-form .form-row #step_content_input {
        width: 39em;
        display: inline-block; }
        .modal-dialog.tours .edit-tours .edit-form .form-row #step_content_input .fr-btn-grp {
          margin: 0; }
    .modal-dialog.tours .edit-tours .edit-form #step_element_selector {
      display: inline-block;
      border: solid 1px var(--base-light-border-color);
      border-radius: 6px;
      padding: 6px 10px;
      width: 20em;
      height: 2.25em;
      vertical-align: middle; }
    .modal-dialog.tours .edit-tours .edit-form .small-button {
      min-width: 100px;
      margin: 0; }

.public-profile-edit .horizontal-tabs .tab {
  width: 25%; }

.public-profile-edit .horizontal-tabs .pane {
  min-height: 50%; }
  .public-profile-edit .horizontal-tabs .pane .login_button {
    width: 50%; }

.alert {
  color: red;
  border: solid 1px red;
  border-radius: 50%;
  width: 25px;
  height: 25px;
  display: inline-block;
  font-size: 22px;
  text-align: center; }

.nutrient-comparison td.input input {
  width: 7em; }

.nutrient-comparison tr.not-visible .nutrient, .nutrient-comparison tr.not-visible .value {
  color: #b3b3b3; }

.mg-paginator {
  position: fixed;
  bottom: 75px;
  background-color: white;
  width: 100%;
  z-index: 2;
  border-top: solid 1px var(--base-light-border-color);
  font-size: 80%; }
  .mg-paginator .page_link {
    color: #008080;
    cursor: pointer;
    margin: 4px; }
    .mg-paginator .page_link:hover {
      font-weight: bold; }
    .mg-paginator .page_link.disabled {
      color: var(--base-light-border-color);
      cursor: default; }
      .mg-paginator .page_link.disabled:hover {
        font-weight: normal; }
  .mg-paginator .current {
    font-size: 110%;
    font-weight: bold; }

body#mg_embed_body {
  background-color: rgba(255, 255, 255, 0.9); }
  body#mg_embed_body .signup {
    width: 350px;
    min-height: auto;
    background-color: transparent; }
    body#mg_embed_body .signup .edit-form {
      width: 100%; }
      body#mg_embed_body .signup .edit-form .form-row {
        margin: 1em 0; }
      body#mg_embed_body .signup .edit-form input[type=text], body#mg_embed_body .signup .edit-form input[type=email] {
        width: 100%; }
      body#mg_embed_body .signup .edit-form .password-input {
        width: 100%; }
        body#mg_embed_body .signup .edit-form .password-input input[type=password], body#mg_embed_body .signup .edit-form .password-input input[type=text] {
          width: calc(100% - 50px); }
    body#mg_embed_body .signup button.g-recaptcha.app-button-main {
      margin: 0.5em 0 0 0;
      line-height: 1.2em; }

#modal-popup-collection_select .modal-content {
  width: 1100px; }

#modal-popup-collection_select .recipe-collections .horizontal-tabs .tabs .tab {
  width: 33%; }

.error-exclamation {
  position: absolute;
  top: 50%;
  margin-top: -11px;
  right: 2px;
  background-color: white;
  width: 22px;
  height: 22px;
  border: 1px solid red;
  border-radius: 50%;
  color: red;
  text-align: center;
  font-size: 20px;
  font-weight: bold; }

td .editable-container.editable-inline {
  width: 100%; }
  td .editable-container.editable-inline .editable-input {
    width: 100%; }
  td .editable-container.editable-inline textarea {
    width: 100%; }

.generate-goals-form .anthropometrics-form {
  width: 450px;
  margin: 0 auto; }

.generate-goals-form .multi-select#measurement_cards .active, .generate-goals-form .multi-select#measurement_cards .inactive {
  width: 100%;
  padding: 0.75em 1em; }
  .generate-goals-form .multi-select#measurement_cards .active .attributes, .generate-goals-form .multi-select#measurement_cards .inactive .attributes {
    font-size: 80%; }

.generate-goals-form .multi-select.blocks {
  display: table;
  border-spacing: 12px;
  margin: auto; }
  .generate-goals-form .multi-select.blocks input[type='radio'] + label {
    width: 10em;
    height: 5em;
    margin: 1.5em auto;
    font-size: 120%;
    border: solid 1px var(--base-light-color);
    border-radius: 16px;
    padding: 1em;
    background-image: none;
    display: table-cell;
    vertical-align: middle;
    text-align: center; }
    .generate-goals-form .multi-select.blocks input[type='radio'] + label:hover {
      box-shadow: 3px 3px 5px 0 var(--base-light-color);
      border-color: var(--base-color); }
  .generate-goals-form .multi-select.blocks input[type='radio']:checked + label {
    background-color: var(--base-light-color);
    color: var(--base-background-color); }

.generate-goals-form .generate-goals-edit label {
  width: 15em;
  display: inline-block; }

.generate-goals-form .generate-goals-edit .section-box {
  position: relative; }
  .generate-goals-form .generate-goals-edit .section-box label {
    width: 12em; }
  .generate-goals-form .generate-goals-edit .section-box .presets {
    position: absolute;
    top: 0;
    right: 4px;
    width: 9em;
    height: 100%;
    border-left: solid 1px var(--base-light-border-color);
    padding: 4px 1em; }
    .generate-goals-form .generate-goals-edit .section-box .presets .inactive {
      width: 100%; }

.generate-goals-form input[type='number'] {
  width: 4.5em; }

.generate-goals-form input[type='checkbox'] + label {
  margin-left: 0; }

.generate-goals-form .macro-balance-goals {
  height: 13em; }

.user-goals {
  padding-top: 10px; }
  .user-goals h4 {
    padding-left: 10px;
    padding-top: 6px; }
    .user-goals h4.separator {
      border-top: solid 1px var(--base-light-border-color);
      margin-top: 10px; }
  .user-goals .goal {
    padding-left: 10px;
    margin: 10px auto 30px auto;
    position: relative; }
    .user-goals .goal .before-range, .user-goals .goal .after-range, .user-goals .goal .range {
      display: inline-block;
      vertical-align: top;
      border-top: solid 1px var(--base-light-border-color);
      border-bottom: solid 1px var(--base-light-border-color);
      height: 20px;
      line-height: 25px;
      font-size: 12px;
      font-weight: bold;
      position: relative; }
      .user-goals .goal .before-range .marker, .user-goals .goal .after-range .marker, .user-goals .goal .range .marker {
        position: absolute;
        top: 100%;
        bottom: 0;
        height: 10px; }
    .user-goals .goal .before-range {
      border-right: solid 1px var(--base-light-border-color); }
      .user-goals .goal .before-range .marker {
        right: -1px;
        padding-right: 6px;
        border-right: solid 1px var(--base-light-border-color); }
    .user-goals .goal .range {
      border-top: solid 2px #47e300;
      border-bottom: solid 2px #47e300;
      border-right: solid 1px var(--base-light-border-color); }
      .user-goals .goal .range .marker {
        left: 100%;
        padding-left: 6px;
        border-left: solid 1px var(--base-light-border-color); }
    .user-goals .goal .actual {
      font-size: 12px;
      font-weight: bold;
      line-height: 18px;
      position: absolute;
      top: 28px;
      left: 10px;
      height: 18px;
      padding-right: 3px;
      background-color: rgba(255, 218, 0, 0.2);
      color: #937a00;
      border-right: solid 1px #937a00;
      text-align: right; }
      .user-goals .goal .actual.within-goal {
        background-color: rgba(80, 255, 0, 0.25);
        color: #39b500;
        border-right: solid 1px #39b500; }
    .user-goals .goal .name {
      padding-left: 6px;
      font-size: 80%; }

.icon-button {
  width: 40px;
  height: 40px;
  display: inline-block;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 30px;
  vertical-align: middle;
  border-radius: 50%;
  cursor: pointer; }
  .icon-button.small {
    width: 30px;
    height: 30px;
    background-size: 30px; }
  .icon-button.square-border {
    border-radius: 6px;
    border: solid 1px var(--base-light-border-color); }
  .icon-button:hover {
    box-shadow: 1px 2px 6px var(--base-light-color);
    margin-top: -2px; }
  .icon-button.goals {
    background-image: url("img/goals_icon.a70e2d818235.png"); }

body:not(.mobile-user-agent) .light_text .icon-button:hover {
  box-shadow: 1px 2px 6px white;
  margin-top: -2px; }

body:not(.mobile-user-agent) .light_text .icon-button.goals {
  background-image: url("img/goals_icon_dark.401829f2554d.png"); }

.mobile-user-agent .icon-button {
  margin-left: 10px; }

.floating-panel-container .app-button {
  font-size: 100% !important;
  padding: 6px 14px !important;
  min-width: 90px; }
  .floating-panel-container .app-button.data-changed, .floating-panel-container .app-button.highlight {
    background-color: var(--base-color) !important;
    color: var(--base-background-color) !important; }
  .floating-panel-container .app-button.disabled {
    pointer-events: none;
    cursor: default;
    opacity: 0.3; }

.floating-panel-container td {
  padding-left: 14px;
  padding-bottom: 24px;
  border-bottom: solid 1px var(--base-light-border-color); }

.floating-panel-container.has-controls {
  padding-bottom: 80px; }

.floating-panel-container#generate_plan_pane .generator-pane-container {
  position: relative;
  height: calc(100% - 8px);
  padding-bottom: 60px; }
  .floating-panel-container#generate_plan_pane .generator-pane-container .generator-pane-title {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 45px;
    padding-left: 14px;
    z-index: auto; }
  .floating-panel-container#generate_plan_pane .generator-pane-container .generator-pane-actions {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 60px; }
  .floating-panel-container#generate_plan_pane .generator-pane-container .generator-pane-content {
    height: 100%;
    overflow: auto; }

.floating-panel-container#generate_plan_pane .floating-panel-title {
  padding-left: 14px; }

.floating-panel-container#generate_plan_pane .meal-header {
  margin: 14px 0 14px 0; }
  .floating-panel-container#generate_plan_pane .meal-header .title {
    display: inline-block;
    font-size: 110%;
    font-weight: bold;
    width: 8.5em; }
  .floating-panel-container#generate_plan_pane .meal-header .actions {
    display: inline-block; }
    .floating-panel-container#generate_plan_pane .meal-header .actions input[type='checkbox'] + label {
      background-position: 1px center;
      margin-right: 0;
      width: 20px;
      padding-left: 48px;
      border-radius: 20px; }
      .floating-panel-container#generate_plan_pane .meal-header .actions input[type='checkbox'] + label:hover {
        box-shadow: 2px 2px 5px 0 var(--base-light-color);
        opacity: 1; }

.floating-panel-container#generate_plan_pane .recipe img {
  display: inline-block;
  width: 100px;
  height: 70px;
  object-fit: cover;
  vertical-align: middle; }

.floating-panel-container#generate_plan_pane .recipe .details {
  display: inline-block;
  padding-left: 6px;
  vertical-align: middle;
  font-size: 90%;
  width: calc(100% - 110px);
  line-height: 1.25em; }
  .floating-panel-container#generate_plan_pane .recipe .details .name {
    font-weight: bold;
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis; }

.floating-panel-container#generate_plan_pane .recipe .reuse-description {
  min-height: 1em; }

.floating-panel-container#generate_plan_pane .top-pane {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--base-background-color);
  padding: 14px;
  overflow: auto; }
  .floating-panel-container#generate_plan_pane .top-pane .back-button {
    cursor: pointer;
    background-image: url("img/cmd-arrow-left-black-small.7b6f23897e0c.png");
    background-repeat: no-repeat;
    background-position: 4px 8px;
    padding-left: 18px;
    background-size: auto 12px;
    line-height: 28px;
    font-weight: bold;
    margin-bottom: 12px; }
  .floating-panel-container#generate_plan_pane .top-pane.recipe-details .name {
    font-size: 110%;
    font-weight: bold; }
  .floating-panel-container#generate_plan_pane .top-pane.recipe-details .header {
    margin: 16px 0; }
    .floating-panel-container#generate_plan_pane .top-pane.recipe-details .header .image {
      display: inline-block;
      width: 200px;
      vertical-align: bottom; }
    .floating-panel-container#generate_plan_pane .top-pane.recipe-details .header .info {
      display: inline-block;
      width: calc(100% - 205px);
      padding-left: 6px;
      vertical-align: bottom; }
    .floating-panel-container#generate_plan_pane .top-pane.recipe-details .header img {
      width: 100%;
      object-fit: cover; }
  .floating-panel-container#generate_plan_pane .top-pane .controls {
    position: absolute;
    bottom: 10px;
    right: 10px;
    background: white;
    border-radius: 10px; }
    .floating-panel-container#generate_plan_pane .top-pane .controls .app-button {
      margin: 0;
      box-shadow: 1px 2px 6px var(--base-light-color); }
      .floating-panel-container#generate_plan_pane .top-pane .controls .app-button.highlight {
        background-color: var(--base-color) !important;
        color: var(--base-background-color) !important; }

.modal-dialog.generator-settings {
  height: 700px; }
  .modal-dialog.generator-settings .modal-content {
    width: 750px; }
    @media only screen and (max-width: 770px) {
      .modal-dialog.generator-settings .modal-content {
        width: 100vw; } }
  .modal-dialog.generator-settings table {
    margin: auto;
    width: 450px; }
    .modal-dialog.generator-settings table td.label {
      padding-right: 1em;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis; }
    .modal-dialog.generator-settings table .multi-select.toggle-tokens .option {
      border-radius: 10px; }
    .modal-dialog.generator-settings table input[type='number'] {
      width: 4em; }

.screen-modal-curtain {
  position: fixed;
  background-color: rgba(0, 0, 0, 0.2);
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  z-index: 10; }

.button-with-icon {
  display: inline-block;
  height: 40px;
  min-width: 80px;
  background-repeat: no-repeat;
  background-position: 10px center;
  padding: 8px 10px 2px 37px;
  background-size: 20px;
  border: solid 1px var(--base-light-border-color);
  border-radius: 8px;
  font-size: 90%;
  margin-right: 6px;
  cursor: pointer; }
  .button-with-icon:hover {
    box-shadow: 2px 2px 5px 0 var(--base-light-color);
    opacity: 1; }
  .button-with-icon.reuse {
    background-image: url("img/ico-mini-calendar.fc64a2ea7bb2.png"); }
  .button-with-icon.swap {
    background-image: url("img/ico-swap.b1c6487b3557.png"); }
  .button-with-icon.view-details {
    background-image: url("img/ico-details.e12b843d1cb3.png"); }

.radio-section {
  padding: 6px;
  border: solid 1px var(--base-light-border-color);
  border-radius: 8px;
  margin: 14px auto;
  cursor: pointer; }
  .radio-section .button {
    display: inline-block;
    width: 30px;
    height: 30px;
    background-size: 20px;
    background-image: url("img/radio_button_off.066f72878198.png");
    background-repeat: no-repeat;
    vertical-align: top;
    background-position: 4px 1px; }
  .radio-section .content {
    display: inline-block;
    width: calc(100% - 40px);
    margin-left: 4px;
    vertical-align: top; }
  .radio-section.selected .button {
    background-image: url("img/radio_button_green_on.7ae0ee62e26f.png"); }

.tab_navigation_view.team-settings {
  padding-left: 8.5em; }
  .tab_navigation_view.team-settings .state-list {
    width: 8.5em; }

.team-content-management-holder {
  position: relative;
  white-space: nowrap;
  overflow: hidden; }
  .team-content-management-holder input[type='checkbox'] + label {
    margin: 0; }
  .team-content-management-holder .search-results {
    padding: 2px; }
  .team-content-management-holder .members, .team-content-management-holder .member-content {
    display: inline-block;
    vertical-align: top;
    white-space: normal; }
  .team-content-management-holder .members {
    width: 265px;
    height: 100%;
    overflow-y: auto;
    background-color: var(--base-light-border-color); }
    .team-content-management-holder .members .clickable {
      max-width: 200px;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap; }
  .team-content-management-holder .member-content {
    width: calc(100% - 265px);
    height: 100%; }
    .team-content-management-holder .member-content .search-results.expert-content, .team-content-management-holder .member-content .horizontal-tabs {
      height: 100%; }
    .team-content-management-holder .member-content .tabs .tab {
      width: 25%;
      font-size: 100%;
      height: 60px; }
    .team-content-management-holder .member-content .tab_content {
      height: calc(100% - 60px);
      overflow-y: auto;
      border: solid 1px var(--base-light-border-color); }
      .team-content-management-holder .member-content .tab_content#pro_clients_pane {
        padding: 1em; }
        .team-content-management-holder .member-content .tab_content#pro_clients_pane .clients {
          column-count: 3;
          font-size: 90%; }
          .team-content-management-holder .member-content .tab_content#pro_clients_pane .clients input[type='checkbox'] + label {
            width: 100%;
            overflow: hidden;
            text-overflow: ellipsis; }

.long-loader-container {
  position: fixed;
  width: 500px;
  height: 500px;
  top: calc(50% - 250px);
  left: calc(50% - 250px);
  border: solid 1px lightgrey;
  border-radius: 8px;
  box-shadow: 4px 4px 8px #404040;
  background-color: white;
  padding: 1em;
  overflow: hidden; }
  .long-loader-container .loader-animation {
    width: 100px;
    height: 100px;
    margin: 20px auto 20px auto;
    background: rgba(255, 255, 255, 0.9) url("img/bowl.a7fc1b924952.gif") no-repeat center;
    background-size: 100%; }
  .long-loader-container .loader-slide {
    position: absolute;
    top: 210px;
    margin: 2em 0 1em 0;
    box-shadow: 4px 4px 6px lightgrey;
    width: 400px;
    height: 200px;
    border-radius: 12px;
    padding: 1.75em 1em 1em 1em;
    display: flex;
    align-items: center;
    background-color: #ffeeee;
    overflow: hidden;
    left: -400px;
    font-size: 90%;
    line-height: 1.5em; }
    .long-loader-container .loader-slide .slide-title {
      position: absolute;
      top: 10px;
      left: 0;
      width: 100%;
      text-align: left;
      padding-left: 1em; }

.program-list:not(.modal-dialog) {
  padding: 0 1em; }

.program-list.modal-dialog .modal-content {
  padding: 0 1em;
  width: 800px;
  background-color: var(--base-background-darker-color); }

.program-list .program-card {
  margin: 1.25em 0;
  height: 120px;
  border: solid 1px var(--base-light-border-color);
  border-radius: 12px;
  overflow: hidden;
  background-color: var(--base-background-color); }
  .program-list .program-card img {
    width: 120px;
    height: 120px;
    object-fit: cover; }
  .program-list .program-card .details {
    display: inline-block;
    vertical-align: top;
    padding: 4px 8px;
    width: calc(100% - 190px); }
    .program-list .program-card .details .name {
      font-size: 110%;
      margin-bottom: 0.5em; }
    .program-list .program-card .details .info {
      font-size: 80%;
      line-height: 1.2em; }
      .program-list .program-card .details .info .label {
        font-size: 80%;
        margin-right: 0.5em; }
  .program-list .program-card .controls {
    width: 60px;
    height: 100%;
    display: inline-block;
    vertical-align: top;
    position: relative; }
    .program-list .program-card .controls .actions {
      position: absolute;
      bottom: 4px;
      width: 100%; }
      .program-list .program-card .controls .actions .small-icon {
        margin: 2px; }

.modal-dialog.modal-date-picker {
  width: 550px;
  min-width: auto;
  height: 550px; }
  .modal-dialog.modal-date-picker .modal-content {
    background-color: var(--base-background-darker-color); }
  .modal-dialog.modal-date-picker .ui-datepicker {
    margin: auto;
    width: 100%; }
    .modal-dialog.modal-date-picker .ui-datepicker .ui-datepicker-calendar .ui-state-default {
      text-align: center; }

.form-builder {
  max-width: 1000px;
  margin: 1em auto;
  border: solid 1px var(--base-light-border-color);
  border-radius: 6px; }
  .form-builder.controls-right .frmb.stage-wrap {
    padding-left: 1em; }

.modal-dialog.preparation-instructions .modal-content {
  width: 1000px;
  height: 100%;
  padding: 0; }
  .modal-dialog.preparation-instructions .modal-content .container {
    position: relative;
    padding-bottom: 330px;
    width: 100%;
    height: 100%; }
    .modal-dialog.preparation-instructions .modal-content .container .content {
      height: 100%;
      overflow: auto; }
      .modal-dialog.preparation-instructions .modal-content .container .content tbody tr {
        cursor: pointer; }
    .modal-dialog.preparation-instructions .modal-content .container .icon.add {
      position: absolute;
      bottom: 337px;
      left: calc(50% - 20px); }
    .modal-dialog.preparation-instructions .modal-content .container .form {
      position: absolute;
      bottom: 0;
      height: 330px;
      width: 100%;
      border: solid 1px var(--base-light-color); }
      .modal-dialog.preparation-instructions .modal-content .container .form .form-title {
        background-color: var(--base-color);
        color: var(--base-background-color);
        border-top: solid 1px var(--base-color);
        border-bottom: solid 1px var(--base-light-border-color);
        padding: 4px 8px; }
      .modal-dialog.preparation-instructions .modal-content .container .form table {
        margin: 0.75em;
        width: calc(100% - 1.5em); }
      .modal-dialog.preparation-instructions .modal-content .container .form input {
        width: 100%; }
      .modal-dialog.preparation-instructions .modal-content .container .form .fr-box {
        height: 150px; }
    .modal-dialog.preparation-instructions .modal-content .container table td {
      vertical-align: top;
      line-height: 1.1em; }

.food-groups {
  padding-top: 1em; }
  .food-groups table.column_borders.all_header_borders thead th {
    text-align: left;
    font-size: 90%;
    background-color: var(--base-background-darker-color); }
  .food-groups table.column_borders.all_header_borders tbody tr {
    border-bottom: solid 1px var(--base-light-border-color); }
  .food-groups table.column_borders.all_header_borders td.group, .food-groups table.column_borders.all_header_borders td.subgroups {
    width: 400px;
    max-width: 400px;
    vertical-align: top; }
    .food-groups table.column_borders.all_header_borders td.group .cmd-small, .food-groups table.column_borders.all_header_borders td.subgroups .cmd-small {
      display: inline-block;
      vertical-align: top;
      width: 30px;
      height: 30px; }
  .food-groups table.column_borders.all_header_borders td.group div.name, .food-groups table.column_borders.all_header_borders td.subgroups div.subgroup div.name {
    position: relative;
    width: calc(100% - 40px);
    display: inline-block;
    vertical-align: top; }
    .food-groups table.column_borders.all_header_borders td.group div.name:empty:after, .food-groups table.column_borders.all_header_borders td.subgroups div.subgroup div.name:empty:after {
      position: absolute;
      top: 6px;
      left: 10px;
      content: 'Enter name';
      color: #cbcbcb; }
  .food-groups table.column_borders.all_header_borders .subgroups .subgroup {
    display: grid;
    grid-template-columns: 1fr auto auto;
    width: 100%;
    padding: 4px;
    border-bottom: solid 1px var(--base-light-border-color); }
  .food-groups table.column_borders.all_header_borders *[contenteditable='true'] {
    cursor: pointer; }
    .food-groups table.column_borders.all_header_borders *[contenteditable='true']:focus {
      cursor: text;
      padding: 6px 10px; }

.merged-buttons {
  border-radius: 5px;
  border: 1px solid #000000;
  display: flex; }
  .merged-buttons > a {
    flex: 1;
    padding: 8px 0;
    width: 82px;
    text-decoration: none;
    color: #000000; }
    .merged-buttons > a:not(:last-child) {
      border-right: 1px solid black; }
  .merged-buttons > a.ate-selected {
    background-color: #444444;
    color: #FFFFFF; }

.lists > a {
  display: block;
  text-decoration: none;
  color: inherit;
  margin: 18px; }

.gray-margin {
  margin: 10px 0;
  background-color: #444444; }

.thumb {
  display: inline-block;
  width: 54px;
  height: 54px;
  background-repeat: no-repeat;
  background-position: center;
  margin: 16px; }

.thumb.small {
  width: 25px;
  height: 27px;
  background-size: contain;
  vertical-align: middle; }

.thumb.up {
  background-image: url("img/ico-thumbup-bw.6cc428603b7e.png"); }

.thumb.down {
  background-image: url("img/ico-thumbdown-bw.7908cc5dd7ff.png"); }

.thumb.up.selected, .thumb.down.selected {
  border: 2px solid #85b760;
  border-radius: 40%; }

.log-table {
  width: 100%; }
  .log-table thead th {
    background-color: var(--base-background-darker-color);
    text-align: left;
    font-weight: normal; }
  .log-table tbody th {
    background-color: var(--tab-panel-background-color);
    text-align: left;
    color: var(--tab-panel-color); }
  .log-table th, .log-table td {
    border: 1px solid var(--base-light-border-color); }

#pick_log_date_holder .green-day a {
  background: #d1ffbd !important;
  color: #236800 !important; }

#pick_log_date_holder .white-day {
  opacity: 1 !important;
  pointer-events: auto !important; }

#pick_log_date_holder .ui-state-active {
  border: solid 2px #35a000; }

#pick_log_date_holder .ui-datepicker-inline.ui-widget {
  border: none;
  background: var(--shading-grey-color); }

.exclamation-icon {
  width: 24px;
  height: 24px;
  display: inline-block;
  font-size: 20px;
  line-height: 22px;
  font-weight: 1000;
  color: #c8ba25;
  background-color: white;
  margin-right: 0 !important;
  padding-left: 0 !important;
  float: right;
  border: 2px solid #c8ba25;
  border-radius: 50%;
  text-align: center;
  vertical-align: middle; }

/*# sourceMappingURL=base-cmp.css.4f0aa2e7fa4e.map */