/*
    ____                      _ _
   | __ ) _ __ __ _ _ __   __| (_)_ __   __ _
   |  _ \| '__/ _` | '_ \ / _` | | '_ \ / _` |
   | |_) | | | (_| | | | | (_| | | | | | (_| |
   |____/|_|  \__,_|_| |_|\__,_|_|_| |_|\__, |
                                        |___/
*/
/*

   __     ___    ____  ____
   \ \   / / \  |  _ \/ ___|
    \ \ / / _ \ | |_) \___ \
     \ V / ___ \|  _ < ___) |
      \_/_/   \_\_| \_\____/

*/
@import url("https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,500,500i|Montserrat:300,300i,400,400i,500,500i|");
:root {
  --text-blue:  #225C88;
  --text-light: #7D8296;
  --text-white: #FFFFFF;
  --text-black: #000000; }

:root {
  --font-family: ProximaNovaA-Regular;
  --font-weight: normal;
  --font-medium-font-weight: normal;
  --font-regular-font-weight: normal;
  --font-semibold-font-weight: normal;
  --font-italic-font-weight: normal;
  --font-thin-font-weight: normal;
  --font-italic-font-style: normal; }

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate(15deg);
    transform: rotate(15deg); }
  40% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg); }
  60% {
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg); }
  80% {
    -webkit-transform: rotate(-5deg);
    transform: rotate(-5deg); }
  100% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); } }

@keyframes swing {
  20% {
    -webkit-transform: rotate(15deg);
    -ms-transform: rotate(15deg);
    transform: rotate(15deg); }
  40% {
    -webkit-transform: rotate(-10deg);
    -ms-transform: rotate(-10deg);
    transform: rotate(-10deg); }
  60% {
    -webkit-transform: rotate(5deg);
    -ms-transform: rotate(5deg);
    transform: rotate(5deg); }
  80% {
    -webkit-transform: rotate(-5deg);
    -ms-transform: rotate(-5deg);
    transform: rotate(-5deg); }
  100% {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg); } }

.swing {
  -webkit-transform-origin: top center;
  -ms-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing; }

@keyframes twerk {
  15% {
    transform: rotate(-5deg); }
  50% {
    transform: rotate(25deg); }
  85% {
    transform: rotate(-5deg); }
  100% {
    transform: rotate(0deg); } }

.twerk {
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
  -webkit-animation-name: twerk;
  animation-name: twerk; }

@keyframes buzz {
  0% {
    transform: translateY(-5px); }
  33% {
    transform: translateY(5px); }
  66% {
    transform: translateY(-3px); }
  100% {
    transform: translateY(0); } }

@keyframes bounce {
  0% {
    transform: translateY(0); }
  50% {
    transform: translateY(-2px); }
  100% {
    transform: translateY(0); } }

.fade-enter {
  opacity: 0.01; }

.fade-enter.fade-enter-active {
  opacity: 1;
  transition: opacity 300ms ease-in; }

.fade-leave {
  opacity: 1; }

.fade-leave.fade-leave-active {
  opacity: 0.01;
  transition: opacity 300ms ease-in; }
  .fade-leave.fade-leave-active.delay {
    transition-delay: 600ms; }

@keyframes report-fade-out {
  to {
    filter: grayscale(75%) contrast(20%) brightness(110%); } }

@keyframes report-fade-in {
  to {
    filter: grayscale(0%) contrast(100%) brightness(100%); } }

@keyframes fade-in {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

.buzz {
  animation: buzz 0.3s 1; }

/*
NOTE: when you reference one of these vars, comment underneath the element you've used it for. Mandem organised
*/
/*
USED FOR:
plan inputs
dashboard-panel
dashboard panel buttons
modal-body.report-options-modal > span.glyphicon
*/
/*
USED FOR:
dashboard panel header
dashboard panel buttons
typeahead
editable table > page header
*/
/*
USED FOR:
.modal-body.report-options-modal > .Select-menu-outer
*/
/*
USED FOR:
menu
dashboard panel
charts > drillup
.dashboard-filter-sentence-container > #fixed-version
superbutton overlay content
*/
/*
context menu
USED FOR:
header
pinned nav
dashboard panel
simple sidebar
spark chart

*/
/*
USED FOR:
modals
tooltip box
c tooltip

*/
/*
USED FOR:
error messages

*/
.plan-totals {
  /* General rules */
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  font-size: var(--text-size-small);
  /* total class is for each of 3 pill sections. */ }
  .plan-totals .total {
    width: 260px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-right: 20px;
    /* if no special (overspend etc) class applied */ }
    .plan-totals .total .main {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: space-between;
      font-family: var(--font-regular-font-family);
      font-weight: var(--font-regular-font-weight);
      font-style: normal;
      padding: 10px; }
      .plan-totals .total .main label {
        margin-bottom: 0px;
        margin-right: 10px; }
      .plan-totals .total .main span {
        margin-left: auto; }
      .plan-totals .total .main .plan-budget {
        width: 100px; }
    .plan-totals .total.plan-budget .main {
      background: var(--text-main);
      color: white;
      /* NOTE: When editing budget on plan.jsx this span becomes a parsingInput.
        see parsingNumberInput.scss for the styles on that! */ }
    .plan-totals .total.campaign-budget .main {
      border: 1px solid var(--text-main);
      color: var(--text-main); }
    .plan-totals .total.burst-spend .main {
      border: 1px solid var(--text-main);
      color: var(--text-main); }

/* With special rules applied */
.plan-totals.archived {
  opacity: 0.5;
  filter: saturate(0); }

.total .main input {
  height: 2em;
  border: none;
  background: white;
  color: black;
  font-family: courier new, mono; }

.total .main.overbudget {
  background: #dc7082;
  color: white; }

.total .main.underbudget {
  background: #66a385;
  color: white; }

.total .main.balanced {
  outline: 1px solid var(--text-main);
  color: var(--text-main); }

.total .main.canonical {
  background: var(--text-main);
  color: white; }

/* Specific to the Plan Picker component */
.plan-picker-button-row {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  align-items: flex-start;
  margin: 10px;
  padding: 10px; }
  .plan-picker-button-row .title {
    color: var(--text-main);
    cursor: pointer;
    align-self: flex-start;
    margin-top: 5px;
    width: 150px;
    flex: 0 0 150px;
    margin-left: 10px;
    margin-right: 30px;
    padding-bottom: 7px;
    font-size: 20px; }
  .plan-picker-button-row .plan-totals {
    flex: 1 1 200px; }
  .plan-picker-button-row .plan-picker-item-controls {
    flex: 0 0 210px; }
  .plan-picker-button-row:hover {
    background: #f5f5f5; }
  .plan-picker-button-row .plan-totals, .plan-picker-button-row .rollup-button {
    opacity: 0;
    animation-fill-mode: forwards;
    animation-name: fade-in;
    animation-duration: 0.75s;
    animation-delay: 0.1s; }

.plan-picker-view-all {
  margin: 20px; }
