/*

    #PANEL

    Standardized themable grouping element

    Markup example:
    <div class="panel"></div>

    .panel.panel--banana.panel--is-clickable


*/

/*
$panel
    margin: 16px 16px 32px 16px
    +bp(min480)
        margin: 16px

$panel-bleed
    margin: 16px 0 48px 0  // content on white gets 64 visual vertical px of white, colored bg needs a little more to look balanced
    +bp(min480)
        margin: 16px

$panel-colored
    padding: 16px
*/

.panel {
  margin: 16px 16px 32px 16px;
}

@media (min-width: 480px) {
  .panel {
    margin: 16px;
  }
}

.panel--bleed {
  margin: 16px 0 48px 0;
}

@media (min-width: 480px) {
  .panel--bleed {
    margin: 16px;
  }
}

.panel--success,
.panel--warning,
.panel--error,
.panel--info,
.panel--tips,
.panel--new,
.panel--bright {
  padding: 16px;
}

.panel--kill-last-margin *:last-child {
  margin-bottom: 0 !important;
}

.panel {
  display: block;
  word-wrap: break-word;
  border-radius: 8px;
}

.panel--is-clickable:hover,
.panel--is-clickable:focus {
  background-color: #f1f9ff;
  cursor: pointer;
}

@media (min-width: 480px) {
  .panel--is-roomy {
    padding: 64px;
  }
}

.panel--success {
  background-color: #ccffec;
}

.panel--success:focus.panel--is-clickable,
.panel--success:hover.panel--is-clickable {
  outline-color: #70ffca;
}

.panel--warning {
  background-color: #fff5cb;
}

.panel--warning:focus.panel--is-clickable,
.panel--warning:hover.panel--is-clickable {
  outline-color: #ffe36f;
}

.panel--error {
  background-color: #ffced7;
}

.panel--error:focus.panel--is-clickable,
.panel--error:hover.panel--is-clickable {
  outline-color: #ff728c;
}

.panel--info {
  background-color: #f1f9ff;
}

.panel--info:focus.panel--is-clickable,
.panel--info:hover.panel--is-clickable {
  outline-color: #8eceff;
}

.panel--tips {
  background-color: #b6f0ff;
}

.panel--tips:focus.panel--is-clickable,
.panel--tips:hover.panel--is-clickable {
  outline-color: #5fdeff;
}

.panel--bright {
  background-color: #fff;
}

.panel--bright:focus.panel--is-clickable,
.panel--bright:hover.panel--is-clickable {
  outline-color: #ccc;
}

.panel--new {
  background-color: #ccffec;
  border: 2px solid #68e2b8;
}

.panel--new:focus.panel--is-clickable,
.panel--new:hover.panel--is-clickable {
  outline-color: #31d79e;
}

/*


        Generic button


        .button .button--cta
                .button--secondary
                .button--order

        .probably-not-touch class on body determines the button scale on non-touch environments
*/

a.button,
.button {
  display: inline-block;
  vertical-align: middle;
  font: inherit;
  font-size: 16px;
  line-height: 22px;
  font-weight: bold;
  text-align: center;
  cursor: pointer;
  margin: 0;
  border-radius: 8px;
  /* Default specific */
  color: #0063fb;
  background-color: #fff;
  border: 2px solid #06befb;
  padding: 10px 14px;
  /* Default is the exception, so reset back to a common starpoint for the rest */
}

@media (min-width: 480px) {
  a.button,
  .button {
    font-size: 16px;
    line-height: 22px;
  }
}

a.button,
.button,
a.button:hover,
.button:hover,
a.button:active,
.button:active,
a.button:focus,
.button:focus {
  outline: none;
  text-decoration: none;
}

a.button:hover,
.button:hover,
a.button:focus,
.button:focus,
a.button:active,
.button:active {
  background-color: #f1f9ff;
}

a.button--cta,
.button--cta,
a.button--order,
.button--order,
a.button--destructive,
.button--destructive,
a.button--flat,
.button--flat,
a.button--link,
.button--link,
a.button--is-disabled,
.button--is-disabled,
a.button--destructive-flat,
.button--destructive-flat,
a.button--icon,
.button--icon,
a.button--on-image,
.button--on-image,
a.button:disabled,
.button:disabled {
  border: 0;
  padding: 12px 16px;
}

a.button--cta,
.button--cta {
  color: #fff;
  background-color: #0063fb;
}

a.button--cta,
.button--cta,
a.button--cta:hover,
.button--cta:hover,
a.button--cta:active,
.button--cta:active,
a.button--cta:focus,
.button--cta:focus {
  text-decoration: none;
}

a.button--cta:hover,
.button--cta:hover,
a.button--cta:focus,
.button--cta:focus {
  color: #fff;
  background-color: #004fc9;
}

a.button--cta:active,
.button--cta:active {
  color: #fff;
  background-color: #3082ff;
}

a.button--order,
.button--order {
  color: #474445;
  background-color: #68e2b8;
}

a.button--order,
.button--order,
a.button--order:hover,
.button--order:hover,
a.button--order:active,
.button--order:active,
a.button--order:focus,
.button--order:focus {
  text-decoration: none;
}

a.button--order:hover,
.button--order:hover,
a.button--order:focus,
.button--order:focus {
  color: #474445;
  background-color: #31d79e;
}

a.button--order:active,
.button--order:active {
  color: #474445;
  background-color: #86e8c6;
}

a.button--destructive,
.button--destructive {
  color: #fff;
  background-color: #da2400;
}

a.button--destructive,
.button--destructive,
a.button--destructive:hover,
.button--destructive:hover,
a.button--destructive:active,
.button--destructive:active,
a.button--destructive:focus,
.button--destructive:focus {
  text-decoration: none;
}

a.button--destructive:hover,
.button--destructive:hover,
a.button--destructive:focus,
.button--destructive:focus {
  color: #fff;
  background-color: #ae1d00;
}

a.button--destructive:active,
.button--destructive:active {
  color: #fff;
  background-color: #ff3c15;
}

a.button--destructive-flat,
.button--destructive-flat {
  color: #da2400;
  background: transparent;
}

a.button--destructive-flat:hover,
.button--destructive-flat:hover,
a.button--destructive-flat:focus,
.button--destructive-flat:focus {
  background: transparent;
  color: #ae1d00;
}

a.button--destructive-flat:active,
.button--destructive-flat:active {
  color: #ff3c15;
}

a.button--flat,
.button--flat {
  color: #0063fb;
  background: transparent;
}

a.button--flat:hover,
.button--flat:hover,
a.button--flat:focus,
.button--flat:focus {
  background: transparent;
  color: #004fc9;
}

a.button--flat:active,
.button--flat:active {
  color: #3082ff;
}

a.button--link,
.button--link,
a.button--link:link,
.button--link:link,
a.button--link:visited,
.button--link:visited {
  cursor: pointer;
  color: #0063fb;
  text-decoration: none;
}

a.button--link:hover,
.button--link:hover,
a.button--link:focus,
.button--link:focus,
a.button--link:active,
.button--link:active {
  color: #0063fb;
  text-decoration: underline;
  outline: none;
}

a.button--link,
.button--link,
a.button--link:focus,
.button--link:focus,
a.button--link:hover,
.button--link:hover,
a.button--link:active,
.button--link:active {
  background: transparent;
  display: inline;
  padding: 0;
  font-weight: normal;
  text-align: left;
}

a.button--pill,
.button--pill {
  color: #474445;
  background: transparent;
  border: 2px solid transparent;
  padding: 4px;
  border-radius: 1.6em;
  min-height: 44px;
  min-width: 44px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

a.button--pill:hover,
.button--pill:hover,
a.button--pill:focus,
.button--pill:focus {
  background: rgba(179,209,255,0.3);
  background-clip: padding-box;
}

a.button--pill:hover,
.button--pill:hover {
  border-color: rgba(255,255,255,0.4);
}

a.button--pill:focus,
.button--pill:focus {
  border-color: #06befb;
}

a.button--pill.button--small,
.button--pill.button--small {
  padding: 4px !important;
  min-height: 36px;
  min-width: 36px;
}

a.button--pill.button--small::before,
.button--pill.button--small::before {
  width: 18px;
  height: 18px;
}

a.button--in-progress,
.button--in-progress {
  border: 0;
  color: #767676;
  background-size: 30px 30px !important;
  background-color: #f1f4f6;
  background-image: linear-gradient(135deg, rgba(0,0,0,0.05) 25%, transparent 25%, transparent 50%, rgba(0,0,0,0.05) 50%, rgba(0,0,0,0.05) 75%, transparent 75%, transparent) !important;
  -webkit-animation: animate-inprogress 3s linear infinite;
  animation: animate-inprogress 3s linear infinite;
}

@-webkit-keyframes animate-inprogress {
  0% {
    background-position: 0 0;
  }

  100% {
    background-position: 60px 0;
  }
}

@keyframes animate-inprogress {
  0% {
    background-position: 0 0;
  }

  100% {
    background-position: 60px 0;
  }
}

a.button--icon,
.button--icon,
a.button--icon:link,
.button--icon:link,
a.button--icon:visited,
.button--icon:visited {
  cursor: pointer;
  color: #767676;
  text-decoration: none;
}

a.button--icon:hover,
.button--icon:hover,
a.button--icon:focus,
.button--icon:focus,
a.button--icon:active,
.button--icon:active {
  color: #0063fb;
  text-decoration: none;
  outline: none;
}

a.button--icon,
.button--icon,
a.button--icon:hover,
.button--icon:hover,
a.button--icon:focus,
.button--icon:focus,
a.button--icon:active,
.button--icon:active {
  background: transparent;
  display: inline;
  font-weight: normal;
  padding: 0;
}

a.button:disabled,
.button:disabled,
a.button--is-disabled,
.button--is-disabled {
  border: 0;
  background: #f1f4f6;
  color: #767676;
  background-image: none;
  cursor: default;
}

a.button--small,
.button--small {
  padding: 5px 8px !important;
  font-size: 12px;
  line-height: 16px;
}

@media (min-width: 480px) {
  a.button--small,
  .button--small {
    font-size: 12px;
    line-height: 16px;
  }
}

a.button--small.button--cta,
.button--small.button--cta,
a.button--small.button--order,
.button--small.button--order,
a.button--small.button--destructive,
.button--small.button--destructive,
a.button--small.button--flat,
.button--small.button--flat,
a.button--small.button--destructive-flat,
.button--small.button--destructive-flat,
a.button--small.button--link,
.button--small.button--link {
  padding: 7px 10px !important;
}

a.button--no-break,
.button--no-break {
  white-space: nowrap;
}

a.button--has-icon,
.button--has-icon {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: space-evenly;
  -ms-flex-pack: space-evenly;
  justify-content: space-evenly;
  padding: 7px;
}

a.button--has-icon.button--default,
.button--has-icon.button--default {
  padding: 5px;
}

a.button--has-icon a.button__img,
.button--has-icon .button__img,
a.button--has-icon::before,
.button--has-icon::before {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
}

a.button--has-icon.button--icon-right a.button__text,
.button--has-icon.button--icon-right .button__text {
  -webkit-box-ordinal-group: 0;
  -ms-flex-order: -1;
  order: -1;
  padding: 0 4px 0 8px;
}

a.button--has-icon a.button__text,
.button--has-icon .button__text {
  padding: 0 8px 0 4px;
}

/*


        List styles


*/

.list {
  padding: 0;
  margin: 0;
  list-style: none;
}

.list--vertical > li {
  position: relative;
}

.list--horizontal > li {
  display: inline;
}

.list--bullets li {
  position: relative;
  padding-left: 16px;
}

.list--bullets li::before {
  content: ' ';
  display: block;
  position: absolute;
  left: 0;
  top: 6px;
  background: #06befb;
  height: 8px;
  width: 8px;
  border-radius: 4px;
}

@media (min-width: 768px) {
  .list--cols1to2 {
    -webkit-column-count: 2;
    column-count: 2;
  }
}

/*

    <div className={`expansion-panel ${state}`.trim()}>
        <button href="#" class="expansion-panel__clicktarget">
            <div class="expansion-panel__summary">Whatever content</div>
        </button>
        <div className="expansion-panel__details">
            This is where the content is hanging
        </div>
    </div>

*/

.expansion-panel {
  margin: 16px 16px 32px 16px;
  background-color: #f1f9ff;
  border-radius: 8px;
}

@media (min-width: 480px) {
  .expansion-panel {
    margin: 16px;
  }
}

.expansion-panel__clicktarget {
  padding: 16px;
  background: transparent;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  text-align: left;
  cursor: pointer;
  border: 0;
  outline: none;
  font-size: 16px;
  line-height: 22px;
}

@media (min-width: 480px) {
  .expansion-panel__clicktarget {
    font-size: 16px;
    line-height: 22px;
  }
}

.expansion-panel__clicktarget::after {
  display: block;
  margin-left: auto;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  content: ' ';
  background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4Ij4KPHBhdGggZmlsbD0iIzQ3NDQ0NSIgZmlsbC1ydWxlPSJub256ZXJvIiBkPSJNMS44OCA0TC41IDUuNCA5IDE0bDguNS04LjZMMTYuMTIgNCA5IDExLjIiLz4KPC9zdmc+');
  background-repeat: no-repeat;
  height: 18px;
  width: 18px;
  position: relative;
  -ms-flex-item-align: center;
  align-self: center;
  justify-self: center;
}

.expansion-panel__clicktarget:hover::after,
.expansion-panel__clicktarget:focus::after {
  background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4Ij4KPHBhdGggZmlsbD0iIzA2YmVmYiIgZmlsbC1ydWxlPSJub256ZXJvIiBkPSJNMS44OCA0TC41IDUuNCA5IDE0bDguNS04LjZMMTYuMTIgNCA5IDExLjIiLz4KPC9zdmc+');
}

.expansion-panel--open .expansion-panel__clicktarget::after {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.expansion-panel__summary {
  padding-right: 16px;
  width: 100%;
  color: #474445;
}

.expansion-panel__details {
  display: none;
}

.expansion-panel--open .expansion-panel__details {
  display: block;
  padding: 16px;
  padding-top: 0;
}

/*# sourceMappingURL=src/client/styles.css.map */