diff options
Diffstat (limited to 'web-ui/app/scss')
| -rw-r--r-- | web-ui/app/scss/_alerts.scss | 14 | ||||
| -rw-r--r-- | web-ui/app/scss/_colors.scss | 13 | ||||
| -rw-r--r-- | web-ui/app/scss/_compose.scss | 92 | ||||
| -rw-r--r-- | web-ui/app/scss/_mascot.scss | 32 | ||||
| -rw-r--r-- | web-ui/app/scss/_mixins.scss | 205 | ||||
| -rw-r--r-- | web-ui/app/scss/_read.scss | 105 | ||||
| -rw-r--r-- | web-ui/app/scss/_reply.scss | 36 | ||||
| -rw-r--r-- | web-ui/app/scss/_security.scss | 47 | ||||
| -rw-r--r-- | web-ui/app/scss/foundation.scss | 2066 | ||||
| -rw-r--r-- | web-ui/app/scss/main.scss | 46 | ||||
| -rw-r--r-- | web-ui/app/scss/news-cycle.scss | 13 | ||||
| -rw-r--r-- | web-ui/app/scss/opensans.scss | 61 | ||||
| -rw-r--r-- | web-ui/app/scss/reset.scss | 421 | ||||
| -rw-r--r-- | web-ui/app/scss/styles.scss | 610 | 
14 files changed, 3761 insertions, 0 deletions
diff --git a/web-ui/app/scss/_alerts.scss b/web-ui/app/scss/_alerts.scss new file mode 100644 index 00000000..16171fd7 --- /dev/null +++ b/web-ui/app/scss/_alerts.scss @@ -0,0 +1,14 @@ +#user-alerts { +  width: 100%; +  margin: 10px auto; +  position: fixed; +  z-index: 10000; +  text-align: center; +  span { +    background: $warning; +    padding: 5px 60px; +    border: 1px solid darken($warning, 10%); +    color: darken($warning, 50%); +    @include box-shadow(1px 1px 3px darken($warning, 60%)); +  } +} diff --git a/web-ui/app/scss/_colors.scss b/web-ui/app/scss/_colors.scss new file mode 100644 index 00000000..97c883a5 --- /dev/null +++ b/web-ui/app/scss/_colors.scss @@ -0,0 +1,13 @@ +$warning: #F7E8AF; +$search-highlight: #FFEF29; + +$total_count_bg: #C0B9B9; + +$error: #D72A25; +$attention: #F6A40A; +$success: #2DAB49; + +$contrast: #F2F3ED; +$top_pane: #EAEAEA; +$secondary: #3E3A37; +$primary_color: #EF4E2F; diff --git a/web-ui/app/scss/_compose.scss b/web-ui/app/scss/_compose.scss new file mode 100644 index 00000000..3a3dabee --- /dev/null +++ b/web-ui/app/scss/_compose.scss @@ -0,0 +1,92 @@ +// COMPOSE BUTTON  +#compose { +  margin-bottom: 5px; +  padding-right: 4px; +  #compose-trigger { +    width: 100%; +    display: inline-block; +    #compose-mails-trigger { +      background: $primary_color; +      color: #FFF; +      padding: 10px 30px; +      text-align: center; +      font-weight: 400; +      font-size: 1.2em; +      @include btn-transition; +      &:hover { +        background: lighten($primary_color, 10%); +        cursor: pointer; +      } +    } +  } +} + +// COMPOSE PANE +#compose-box, #draft-box, #reply-box { +  margin: 0 0 50px 10px; +  .input-container { +    border-bottom: 1px solid #DDD; +    padding: 1px; +  } +  label { +    color: #AAA; +    padding: 0.5rem; +    cursor: text; +    display: inline-block; +    padding: 10px; +  } +  input, textarea { +    margin: 0; +    border: none; +  } +  input { +    &#subject { +      font-size: 1.6875rem; +      line-height: 1.4; +      margin-top: 26px; +    } +  } +  textarea { +    border-bottom: 2px solid #DDD; +    min-height: 400px; +    font-family: inherit; +    font-weight: normal; +    font-size: 1rem; +    line-height: 1.6; +    text-rendering: optimizeLegibility; +  } + +  &.reply-box, &.forward-box { +    margin: 0; +    h4 { +      font-size: 0.9em; +      font-style: italic; +      color: #777; +      margin: 2px 0; +      clear: both; +      cursor: pointer; +      &:hover { +        background: $contrast; +      } +    } +    textarea { +      min-height: 200px; +      margin: 10px 0; +    } +    p { +      padding: 5px; +      margin: 10px 0; +      font-style: italic; +      cursor: pointer; +      &:hover { +        background: $contrast; +      } +    } +  } + +  @include recipients; +} + +#reply-box { +  @include recipients; +} diff --git a/web-ui/app/scss/_mascot.scss b/web-ui/app/scss/_mascot.scss new file mode 100644 index 00000000..98812ce2 --- /dev/null +++ b/web-ui/app/scss/_mascot.scss @@ -0,0 +1,32 @@ +/* SHEEP */ + +#no-message-selected-pane { +  position: absolute; +  top: 0; +  left: 0; +  width: 100%; +  height: 100vh; +   +  z-index: -100; +  background: #e5e5e3; +  padding: 30px; +  vertical-align:middle; +  text-align:center; +  -webkit-transform: translate3d(0, 0, 0); +  &:before{ +    content: ''; +    display: inline-block; +    height: 100%; +    vertical-align: middle; +    margin-right: -0.25em; +  } +  .scene{ +    display:inline-block; +    vertical-align:middle; +  } + +  .text{ +    color:#666; +    margin-bottom: 40px; +  } +} diff --git a/web-ui/app/scss/_mixins.scss b/web-ui/app/scss/_mixins.scss new file mode 100644 index 00000000..dfc0f2ec --- /dev/null +++ b/web-ui/app/scss/_mixins.scss @@ -0,0 +1,205 @@ +// SHARED MIXINS +@mixin btn-transition { +  @include transition-property(background-color); +  @include transition-duration(300ms); +  @include transition-timing-function(ease-out); +} + +@mixin tooltip($top: 8px, $left: 40px) { +  background: rgba(0, 0, 0, 0.7); +  color: #FFF; +  position: absolute; +  z-index: 2; +  left: $left; +  top: $top; +  font-size: 0.8rem; +  padding: 2px 10px; +  white-space: nowrap; +  @include border-radius(2px); +} + +@mixin tt-hint { +  .tt-hint { +    color: #999 +  } +  .tt-dropdown-menu { +    width: 400px; +    margin-top: 6px; +    padding: 8px 0; +    background-color: $contrast; +    border: 1px solid darken($contrast, 5%); +  } +  .tt-suggestion { +    padding: 3px 10px; +    font-size: 18px; +    line-height: 24px; +    &.tt-cursor { +      background-color: #FFF; +    } +    p { +      margin: 0; +    } +  } +} + +// FORM MIXINS +@mixin check-box { +  background-color: #FFF; +  border: 1px solid #CCC; +  padding: 7px; +  margin: 3px 0; +  cursor: pointer; +  display: inline-block; +  position: relative; +  @include border-radius(2px); +  @include appearance(none); + +  &:focus { +    outline: none; +    border-color: #666; +  } + +  &:active, &:checked:active { +  } + +  &:checked { +    background-color: #EEE; +    border: 1px solid darken(#DDD, 10%); +    color: #333; +  } + +  &:checked:after { +    content: '\2714'; +    font-size: 1em; +    position: absolute; +    bottom: -2px; +    left: 1px; +    color: $secondary; +  } +} + +@mixin tags { +  ul.tags { +    li { +      background: #DDD; +      display: inline; +      font-size: 0.55em; +      padding: 2px 3px; +      margin: 0 1px; +      position: relative; +      text-transform: uppercase; +      @include border-radius(2px); +      &[data-tag="drafts"] { +        color: $attention; +        background: #EEE; +      } +      &.tag:hover { +        text-decoration: line-through; +        cursor: pointer; +      } +      &.add-new { +        opacity: 0.6; +        transition: background-color 150ms ease-out; +        background: transparent; +        border: 1px solid #DDD; +        line-height: 0; +        padding: 1px 2px; +        @include border-radius(2px); +        &:hover { +          opacity: 1; +          background: #DDD; +        } +        i { +          &:before { +            vertical-align: middle; +          } +        } +      } +      &.new-tag { +        font-size: 0.7em; +        display: inline-block; +        padding: 0; +        background: transparent; +        input { +          display: inline; +          font-size: 1em; +          padding: 2px 5px; +          width: 120px; +          margin: 0; +        } +        @include tt-hint; +        .tt-dropdown-menu { +          width: 250px; +        } +      } +    } +  } +} + +@mixin searching($top, $left, $color, $size){ +  &.searching { +    &:after { +      font-family: FontAwesome; +      content: "\f002"; +      font-size: $size; +      top: $top; +      left: $left; +      position: absolute; +      color: $color; +      text-shadow: -1px 0 $contrast, 0 1px $contrast, 1px 0 $contrast, 0 -1px $contrast; +    } +  } +} + + +@mixin recipients { + +  .recipients-area { +    -webkit-appearance: none; +    background-color: white; +    font-family: inherit; +    display: flex; +    flex-wrap: wrap; +    font-size: 0.898em; +    -webkit-box-sizing: border-box; +    -moz-box-sizing: border-box; +    box-sizing: border-box; +    position: relative; + +    .recipients-navigation-handler { +      z-index: -1; +      position: absolute; +    } + +    .twitter-typeahead { +      flex: 1 1 50px; +    } + +    input[type=text] { +      vertical-align: top; +      height: 35px; +      margin-left: 1px; +      font-size: 0.9em; +      width: 100%; +    } + +    .fixed-recipient { +      display: inline-block; +      margin-right: -3px; +      flex: none; + +      .recipient-value { +        &.selected { +          border: 1px solid #666666; +        } +        background-color: #F5F5F5; +        border: 1px solid #D9D9D9; +        border-radius: 2px; +        margin: 3px; +        padding: 5px; +      } +    } +  } +} + +@include tt-hint; diff --git a/web-ui/app/scss/_read.scss b/web-ui/app/scss/_read.scss new file mode 100644 index 00000000..1d4715e0 --- /dev/null +++ b/web-ui/app/scss/_read.scss @@ -0,0 +1,105 @@ +/* MAIL PANE */ + +@mixin read-msg { +  #mail-view { +    .msg-header { +      display: flex; +      flex-wrap: nowrap; + +      position: fixed; +      width: 57%; +      top: 0; +      z-index: 10; +      background-color: white; +      font-size: 0.9em; +      padding: 0px 0; +      margin: 1px 0 0 0; +      .recipients { +        border-bottom: 1px solid #DDD; +        padding-bottom: 5px; +        line-height: 1.5em; +        i { +          padding: 0 5px; +        } +        .from { +          font-weight: 700; +        } +      } +      .close-mail-button { +        position: relative; +        float: none; +        flex-shrink: 0; +        display: inline-block; +        vertical-align: top; +        height: 27px; +        margin-right: 3px; +      } +    } +    h3 { +      margin-bottom: 0; +    } +    .tagsArea { +      clear: both; +      margin: 0 0 10px; +      @include tags; +      ul li { +        &.tag:hover { +          &:before { +            content: "click to remove"; +            text-transform: lowercase; +            font-size: 0.5rem; +            @include tooltip(18px, 8px); +          } +        } +      } +    } +  } +} + +#mail-actions { +  text-align: right; +  padding: 10px 0; +  button { +    display: inline-block; +    display: inline; +    line-height: 2em; +    border: 1px solid #DDD; +    &#reply-button-top { +      @include border-right-radius(0); +      padding: 0 20px; +    } +    &#view-more-actions { +      @include border-left-radius(0); +      padding: 0 5px; +      margin-left: -4px; +    } +    &:hover { +      @include btn-transition; +      background: darken($contrast, 5%) +    } +  } +  ul#more-actions { +    padding: 5px 0; +    width: 170px; +    text-align: left; +    display: block; +    position: absolute; +    background: #FFF; +    border: 1px solid #DDD; +    right: 0; +    top: 40px; +    z-index: 10; +    li { +      span, a { +        padding: 5px 10px; +        display: block; +        &:hover { +          cursor: pointer; +          background: $contrast; +        } +      } +    } +  } +} + + diff --git a/web-ui/app/scss/_reply.scss b/web-ui/app/scss/_reply.scss new file mode 100644 index 00000000..5a044b0b --- /dev/null +++ b/web-ui/app/scss/_reply.scss @@ -0,0 +1,36 @@ + +#reply-section { +  .reply-container { +    margin: 10px 0; +    padding: 10px; +    border: 1px dashed darken($contrast, 10%); +    @include btn-transition; +  } + +  button { +    margin: 0; +  } + +  #all-recipients { +    color: #000; +  } + +  #all-recipients:focus { +    background-color: darken($contrast, 10%) +  } + +  #reply-button, #reply-all-button, #forward-button { +    text-align: center; +    font-weight: 100; +    font-size: 1.1em; +    background: #FFF; +    color: #999; +    padding: 25px; +    margin: 0; +    @include border-radius(0); +    &:hover { +      background: darken($contrast, 5%); +      cursor: pointer; +    } +  } +} diff --git a/web-ui/app/scss/_security.scss b/web-ui/app/scss/_security.scss new file mode 100644 index 00000000..6d68066b --- /dev/null +++ b/web-ui/app/scss/_security.scss @@ -0,0 +1,47 @@ +.security-status { +  margin: 0 0 5px; +  clear: both; +  span { +    display: inline-block; +    padding: 2px 5px; +    white-space: nowrap; +    background: $success; +    color: #FFF; +    &:before { +      font-family: FontAwesome; +    } +    &.encrypted { +      &:before { +        content: "\f023  \f00c"; +      } +      &.encryption-failure { +        background: $error; +        &:before { +          content: "\f023  \f05e"; +        } +      } +    } +    &.signed { +      &:before { +        content: "\f007  \f00c"; +      } +      &.signature-not-trusted { +        background: $error; +        &:before { +          content: "\f007  \f05e"; +        } +      } +    } +    &[class^=not-], &.signature-expired, &.signature-revoked { +      background: $attention; +      &:before { +        content: "\f007  \f12a" +      } +    } +    &.not-encrypted { +      &:before { +        content: "\f023  \f12a"; +      } +    } +  } +} diff --git a/web-ui/app/scss/foundation.scss b/web-ui/app/scss/foundation.scss new file mode 100644 index 00000000..7918cf26 --- /dev/null +++ b/web-ui/app/scss/foundation.scss @@ -0,0 +1,2066 @@ +@import 'compass/css3'; + +meta { +  &.foundation-version { +    font-family: "/5.2.3/"; +  } +  &.foundation-mq-small { +    font-family: "/only screen/"; +    width: 0em; +  } +  &.foundation-mq-medium { +    font-family: "/only screen and (min-width:40.063em)/"; +    width: 40.063em; +  } +  &.foundation-mq-large { +    font-family: "/only screen and (min-width:64.063em)/"; +    width: 64.063em; +  } +  &.foundation-mq-xlarge { +    font-family: "/only screen and (min-width:90.063em)/"; +    width: 90.063em; +  } +  &.foundation-mq-xxlarge { +    font-family: "/only screen and (min-width:120.063em)/"; +    width: 120.063em; +  } +  &.foundation-data-attribute-namespace { +    font-family: false; +  } +} + +html, body { +  height: 100%; +} + +* { +  -webkit-box-sizing: border-box; +  -moz-box-sizing: border-box; +  box-sizing: border-box; +  &:before, &:after { +    -webkit-box-sizing: border-box; +    -moz-box-sizing: border-box; +    box-sizing: border-box; +  } +} + +html { +  font-size: 100%; +} + +body { +  font-family: "Open Sans", "Microsoft YaHei", "Hiragino Sans GB", "Hiragino Sans GB W3", "微软雅黑", "Helvetica Neue", Arial, sans-serif; +  font-size: 13px; +  line-height: 1.2em; +  background: white; +  color: #333; +  padding: 0; +  margin: 0; +  font-weight: normal; +  -webkit-font-smoothing: antialiased; +  font-style: normal; +  position: relative; +  cursor: default; +} + +a:hover { +  cursor: pointer; +} + +img { +  max-width: 100%; +  height: auto; +  -ms-interpolation-mode: bicubic; +} + +#map_canvas { +  img, embed, object { +    max-width: none !important; +  } +} + +.map_canvas { +  img, embed, object { +    max-width: none !important; +  } +} + +.left { +  float: left !important; +} + +.right { +  float: right !important; +} + +.clearfix { +  &:before { +    content: " "; +    display: table; +  } +  &:after { +    content: " "; +    display: table; +    clear: both; +  } +} + +.hide { +  display: none; +} + +.antialiased { +  -webkit-font-smoothing: antialiased; +  -moz-osx-font-smoothing: grayscale; +} + +img { +  display: inline-block; +  vertical-align: middle; +} + +textarea { +  height: auto; +  min-height: 50px; +  &:focus { +    outline: none; +  } +} + +select { +  width: 100%; +} + +.row { +  width: 100%; +  margin-left: auto; +  margin-right: auto; +  margin-top: 0; +  margin-bottom: 0; +  &:before { +    content: " "; +    display: table; +  } +  &:after { +    content: " "; +    display: table; +    clear: both; +  } +  &.collapse { +    > { +      .column, .columns { +        padding-left: 0; +        padding-right: 0; +      } +    } +    .row { +      margin-left: 0; +      margin-right: 0; +    } +  } +  .row { +    width: auto; +    margin-left: -0.9375em; +    margin-right: -0.9375em; +    margin-top: 0; +    margin-bottom: 0; +    max-width: none; +    &:before { +      content: " "; +      display: table; +    } +    &:after { +      content: " "; +      display: table; +      clear: both; +    } +    &.collapse { +      width: auto; +      margin: 0; +      max-width: none; +      &:before { +        content: " "; +        display: table; +      } +      &:after { +        content: " "; +        display: table; +        clear: both; +      } +    } +  } +} + +.column, .columns { +  padding-left: 0.9375em; +  padding-right: 0.9375em; +  width: 100%; +  float: left; +} + +@media only screen { +  .small-push-0 { +    position: relative; +    left: 0%; +    right: auto; +  } +  .small-pull-0 { +    position: relative; +    right: 0%; +    left: auto; +  } +  .small-push-1 { +    position: relative; +    left: 8.33333%; +    right: auto; +  } +  .small-pull-1 { +    position: relative; +    right: 8.33333%; +    left: auto; +  } +  .small-push-2 { +    position: relative; +    left: 16.66667%; +    right: auto; +  } +  .small-pull-2 { +    position: relative; +    right: 16.66667%; +    left: auto; +  } +  .small-push-3 { +    position: relative; +    left: 25%; +    right: auto; +  } +  .small-pull-3 { +    position: relative; +    right: 25%; +    left: auto; +  } +  .small-push-4 { +    position: relative; +    left: 33.33333%; +    right: auto; +  } +  .small-pull-4 { +    position: relative; +    right: 33.33333%; +    left: auto; +  } +  .small-push-5 { +    position: relative; +    left: 41.66667%; +    right: auto; +  } +  .small-pull-5 { +    position: relative; +    right: 41.66667%; +    left: auto; +  } +  .small-push-6 { +    position: relative; +    left: 50%; +    right: auto; +  } +  .small-pull-6 { +    position: relative; +    right: 50%; +    left: auto; +  } +  .small-push-7 { +    position: relative; +    left: 58.33333%; +    right: auto; +  } +  .small-pull-7 { +    position: relative; +    right: 58.33333%; +    left: auto; +  } +  .small-push-8 { +    position: relative; +    left: 66.66667%; +    right: auto; +  } +  .small-pull-8 { +    position: relative; +    right: 66.66667%; +    left: auto; +  } +  .small-push-9 { +    position: relative; +    left: 75%; +    right: auto; +  } +  .small-pull-9 { +    position: relative; +    right: 75%; +    left: auto; +  } +  .small-push-10 { +    position: relative; +    left: 83.33333%; +    right: auto; +  } +  .small-pull-10 { +    position: relative; +    right: 83.33333%; +    left: auto; +  } +  .small-push-11 { +    position: relative; +    left: 91.66667%; +    right: auto; +  } +  .small-pull-11 { +    position: relative; +    right: 91.66667%; +    left: auto; +  } +  .column, .columns { +    position: relative; +    padding-left: 0.9375em; +    padding-right: 0.9375em; +    float: left; +  } +  .small-1 { +    width: 8.33333%; +  } +  .small-2 { +    width: 16.66667%; +  } +  .small-3 { +    width: 25%; +  } +  .small-4 { +    width: 33.33333%; +  } +  .small-5 { +    width: 41.66667%; +  } +  .small-6 { +    width: 50%; +  } +  .small-7 { +    width: 58.33333%; +  } +  .small-8 { +    width: 66.66667%; +  } +  .small-9 { +    width: 75%; +  } +  .small-10 { +    width: 83.33333%; +  } +  .small-11 { +    width: 91.66667%; +  } +  .small-12 { +    width: 100%; +  } +  [class*="column"] + [class*="column"] { +    &:last-child { +      float: right; +    } +    &.end { +      float: left; +    } +  } +  .small-offset-0 { +    margin-left: 0% !important; +  } +  .small-offset-1 { +    margin-left: 8.33333% !important; +  } +  .small-offset-2 { +    margin-left: 16.66667% !important; +  } +  .small-offset-3 { +    margin-left: 25% !important; +  } +  .small-offset-4 { +    margin-left: 33.33333% !important; +  } +  .small-offset-5 { +    margin-left: 41.66667% !important; +  } +  .small-offset-6 { +    margin-left: 50% !important; +  } +  .small-offset-7 { +    margin-left: 58.33333% !important; +  } +  .small-offset-8 { +    margin-left: 66.66667% !important; +  } +  .small-offset-9 { +    margin-left: 75% !important; +  } +  .small-offset-10 { +    margin-left: 83.33333% !important; +  } +  .small-offset-11 { +    margin-left: 91.66667% !important; +  } +  .small-reset-order { +    margin-left: 0; +    margin-right: 0; +    left: auto; +    right: auto; +    float: left; +  } +  .column.small-centered, .columns.small-centered { +    margin-left: auto; +    margin-right: auto; +    float: none !important; +  } +  .column.small-uncentered, .columns.small-uncentered { +    margin-left: 0; +    margin-right: 0; +    float: left !important; +  } +  .column.small-uncentered.opposite, .columns.small-uncentered.opposite { +    float: right; +  } +} + +@media only screen and (min-width: 40.063em) { +  .medium-push-0 { +    position: relative; +    left: 0%; +    right: auto; +  } +  .medium-pull-0 { +    position: relative; +    right: 0%; +    left: auto; +  } +  .medium-push-1 { +    position: relative; +    left: 8.33333%; +    right: auto; +  } +  .medium-pull-1 { +    position: relative; +    right: 8.33333%; +    left: auto; +  } +  .medium-push-2 { +    position: relative; +    left: 16.66667%; +    right: auto; +  } +  .medium-pull-2 { +    position: relative; +    right: 16.66667%; +    left: auto; +  } +  .medium-push-3 { +    position: relative; +    left: 25%; +    right: auto; +  } +  .medium-pull-3 { +    position: relative; +    right: 25%; +    left: auto; +  } +  .medium-push-4 { +    position: relative; +    left: 33.33333%; +    right: auto; +  } +  .medium-pull-4 { +    position: relative; +    right: 33.33333%; +    left: auto; +  } +  .medium-push-5 { +    position: relative; +    left: 41.66667%; +    right: auto; +  } +  .medium-pull-5 { +    position: relative; +    right: 41.66667%; +    left: auto; +  } +  .medium-push-6 { +    position: relative; +    left: 50%; +    right: auto; +  } +  .medium-pull-6 { +    position: relative; +    right: 50%; +    left: auto; +  } +  .medium-push-7 { +    position: relative; +    left: 58.33333%; +    right: auto; +  } +  .medium-pull-7 { +    position: relative; +    right: 58.33333%; +    left: auto; +  } +  .medium-push-8 { +    position: relative; +    left: 66.66667%; +    right: auto; +  } +  .medium-pull-8 { +    position: relative; +    right: 66.66667%; +    left: auto; +  } +  .medium-push-9 { +    position: relative; +    left: 75%; +    right: auto; +  } +  .medium-pull-9 { +    position: relative; +    right: 75%; +    left: auto; +  } +  .medium-push-10 { +    position: relative; +    left: 83.33333%; +    right: auto; +  } +  .medium-pull-10 { +    position: relative; +    right: 83.33333%; +    left: auto; +  } +  .medium-push-11 { +    position: relative; +    left: 91.66667%; +    right: auto; +  } +  .medium-pull-11 { +    position: relative; +    right: 91.66667%; +    left: auto; +  } +  .column, .columns { +    position: relative; +    padding-left: 0.9375em; +    padding-right: 0.9375em; +    float: left; +  } +  .medium-1 { +    width: 8.33333%; +  } +  .medium-2 { +    width: 16.66667%; +  } +  .medium-3 { +    width: 25%; +  } +  .medium-4 { +    width: 33.33333%; +  } +  .medium-5 { +    width: 41.66667%; +  } +  .medium-6 { +    width: 50%; +  } +  .medium-7 { +    width: 58.33333%; +  } +  .medium-8 { +    width: 66.66667%; +  } +  .medium-9 { +    width: 75%; +  } +  .medium-10 { +    width: 83.33333%; +  } +  .medium-11 { +    width: 91.66667%; +  } +  .medium-12 { +    width: 100%; +  } +  [class*="column"] + [class*="column"] { +    &:last-child { +      float: right; +    } +    &.end { +      float: left; +    } +  } +  .medium-offset-0 { +    margin-left: 0% !important; +  } +  .medium-offset-1 { +    margin-left: 8.33333% !important; +  } +  .medium-offset-2 { +    margin-left: 16.66667% !important; +  } +  .medium-offset-3 { +    margin-left: 25% !important; +  } +  .medium-offset-4 { +    margin-left: 33.33333% !important; +  } +  .medium-offset-5 { +    margin-left: 41.66667% !important; +  } +  .medium-offset-6 { +    margin-left: 50% !important; +  } +  .medium-offset-7 { +    margin-left: 58.33333% !important; +  } +  .medium-offset-8 { +    margin-left: 66.66667% !important; +  } +  .medium-offset-9 { +    margin-left: 75% !important; +  } +  .medium-offset-10 { +    margin-left: 83.33333% !important; +  } +  .medium-offset-11 { +    margin-left: 91.66667% !important; +  } +  .medium-reset-order { +    margin-left: 0; +    margin-right: 0; +    left: auto; +    right: auto; +    float: left; +  } +  .column.medium-centered, .columns.medium-centered { +    margin-left: auto; +    margin-right: auto; +    float: none !important; +  } +  .column.medium-uncentered, .columns.medium-uncentered { +    margin-left: 0; +    margin-right: 0; +    float: left !important; +  } +  .column.medium-uncentered.opposite, .columns.medium-uncentered.opposite { +    float: right; +  } +  .push-0 { +    position: relative; +    left: 0%; +    right: auto; +  } +  .pull-0 { +    position: relative; +    right: 0%; +    left: auto; +  } +  .push-1 { +    position: relative; +    left: 8.33333%; +    right: auto; +  } +  .pull-1 { +    position: relative; +    right: 8.33333%; +    left: auto; +  } +  .push-2 { +    position: relative; +    left: 16.66667%; +    right: auto; +  } +  .pull-2 { +    position: relative; +    right: 16.66667%; +    left: auto; +  } +  .push-3 { +    position: relative; +    left: 25%; +    right: auto; +  } +  .pull-3 { +    position: relative; +    right: 25%; +    left: auto; +  } +  .push-4 { +    position: relative; +    left: 33.33333%; +    right: auto; +  } +  .pull-4 { +    position: relative; +    right: 33.33333%; +    left: auto; +  } +  .push-5 { +    position: relative; +    left: 41.66667%; +    right: auto; +  } +  .pull-5 { +    position: relative; +    right: 41.66667%; +    left: auto; +  } +  .push-6 { +    position: relative; +    left: 50%; +    right: auto; +  } +  .pull-6 { +    position: relative; +    right: 50%; +    left: auto; +  } +  .push-7 { +    position: relative; +    left: 58.33333%; +    right: auto; +  } +  .pull-7 { +    position: relative; +    right: 58.33333%; +    left: auto; +  } +  .push-8 { +    position: relative; +    left: 66.66667%; +    right: auto; +  } +  .pull-8 { +    position: relative; +    right: 66.66667%; +    left: auto; +  } +  .push-9 { +    position: relative; +    left: 75%; +    right: auto; +  } +  .pull-9 { +    position: relative; +    right: 75%; +    left: auto; +  } +  .push-10 { +    position: relative; +    left: 83.33333%; +    right: auto; +  } +  .pull-10 { +    position: relative; +    right: 83.33333%; +    left: auto; +  } +  .push-11 { +    position: relative; +    left: 91.66667%; +    right: auto; +  } +  .pull-11 { +    position: relative; +    right: 91.66667%; +    left: auto; +  } +} + +@media only screen and (min-width: 64.063em) { +  .large-push-0 { +    position: relative; +    left: 0%; +    right: auto; +  } +  .large-pull-0 { +    position: relative; +    right: 0%; +    left: auto; +  } +  .large-push-1 { +    position: relative; +    left: 8.33333%; +    right: auto; +  } +  .large-pull-1 { +    position: relative; +    right: 8.33333%; +    left: auto; +  } +  .large-push-2 { +    position: relative; +    left: 16.66667%; +    right: auto; +  } +  .large-pull-2 { +    position: relative; +    right: 16.66667%; +    left: auto; +  } +  .large-push-3 { +    position: relative; +    left: 25%; +    right: auto; +  } +  .large-pull-3 { +    position: relative; +    right: 25%; +    left: auto; +  } +  .large-push-4 { +    position: relative; +    left: 33.33333%; +    right: auto; +  } +  .large-pull-4 { +    position: relative; +    right: 33.33333%; +    left: auto; +  } +  .large-push-5 { +    position: relative; +    left: 41.66667%; +    right: auto; +  } +  .large-pull-5 { +    position: relative; +    right: 41.66667%; +    left: auto; +  } +  .large-push-6 { +    position: relative; +    left: 50%; +    right: auto; +  } +  .large-pull-6 { +    position: relative; +    right: 50%; +    left: auto; +  } +  .large-push-7 { +    position: relative; +    left: 58.33333%; +    right: auto; +  } +  .large-pull-7 { +    position: relative; +    right: 58.33333%; +    left: auto; +  } +  .large-push-8 { +    position: relative; +    left: 66.66667%; +    right: auto; +  } +  .large-pull-8 { +    position: relative; +    right: 66.66667%; +    left: auto; +  } +  .large-push-9 { +    position: relative; +    left: 75%; +    right: auto; +  } +  .large-pull-9 { +    position: relative; +    right: 75%; +    left: auto; +  } +  .large-push-10 { +    position: relative; +    left: 83.33333%; +    right: auto; +  } +  .large-pull-10 { +    position: relative; +    right: 83.33333%; +    left: auto; +  } +  .large-push-11 { +    position: relative; +    left: 91.66667%; +    right: auto; +  } +  .large-pull-11 { +    position: relative; +    right: 91.66667%; +    left: auto; +  } +  .column, .columns { +    position: relative; +    padding-left: 0.9375em; +    padding-right: 0.9375em; +    float: left; +  } +  .large-1 { +    width: 8.33333%; +  } +  .large-2 { +    width: 16.66667%; +  } +  .large-3 { +    width: 25%; +  } +  .large-4 { +    width: 33.33333%; +  } +  .large-5 { +    width: 41.66667%; +  } +  .large-6 { +    width: 50%; +  } +  .large-7 { +    width: 58.33333%; +  } +  .large-8 { +    width: 66.66667%; +  } +  .large-9 { +    width: 75%; +  } +  .large-10 { +    width: 83.33333%; +  } +  .large-11 { +    width: 91.66667%; +  } +  .large-12 { +    width: 100%; +  } +  [class*="column"] + [class*="column"] { +    &:last-child { +      float: right; +    } +    &.end { +      float: left; +    } +  } +  .large-offset-0 { +    margin-left: 0% !important; +  } +  .large-offset-1 { +    margin-left: 8.33333% !important; +  } +  .large-offset-2 { +    margin-left: 16.66667% !important; +  } +  .large-offset-3 { +    margin-left: 25% !important; +  } +  .large-offset-4 { +    margin-left: 33.33333% !important; +  } +  .large-offset-5 { +    margin-left: 41.66667% !important; +  } +  .large-offset-6 { +    margin-left: 50% !important; +  } +  .large-offset-7 { +    margin-left: 58.33333% !important; +  } +  .large-offset-8 { +    margin-left: 66.66667% !important; +  } +  .large-offset-9 { +    margin-left: 75% !important; +  } +  .large-offset-10 { +    margin-left: 83.33333% !important; +  } +  .large-offset-11 { +    margin-left: 91.66667% !important; +  } +  .large-reset-order { +    margin-left: 0; +    margin-right: 0; +    left: auto; +    right: auto; +    float: left; +  } +  .column.large-centered, .columns.large-centered { +    margin-left: auto; +    margin-right: auto; +    float: none !important; +  } +  .column.large-uncentered, .columns.large-uncentered { +    margin-left: 0; +    margin-right: 0; +    float: left !important; +  } +  .column.large-uncentered.opposite, .columns.large-uncentered.opposite { +    float: right; +  } +  .push-0 { +    position: relative; +    left: 0%; +    right: auto; +  } +  .pull-0 { +    position: relative; +    right: 0%; +    left: auto; +  } +  .push-1 { +    position: relative; +    left: 8.33333%; +    right: auto; +  } +  .pull-1 { +    position: relative; +    right: 8.33333%; +    left: auto; +  } +  .push-2 { +    position: relative; +    left: 16.66667%; +    right: auto; +  } +  .pull-2 { +    position: relative; +    right: 16.66667%; +    left: auto; +  } +  .push-3 { +    position: relative; +    left: 25%; +    right: auto; +  } +  .pull-3 { +    position: relative; +    right: 25%; +    left: auto; +  } +  .push-4 { +    position: relative; +    left: 33.33333%; +    right: auto; +  } +  .pull-4 { +    position: relative; +    right: 33.33333%; +    left: auto; +  } +  .push-5 { +    position: relative; +    left: 41.66667%; +    right: auto; +  } +  .pull-5 { +    position: relative; +    right: 41.66667%; +    left: auto; +  } +  .push-6 { +    position: relative; +    left: 50%; +    right: auto; +  } +  .pull-6 { +    position: relative; +    right: 50%; +    left: auto; +  } +  .push-7 { +    position: relative; +    left: 58.33333%; +    right: auto; +  } +  .pull-7 { +    position: relative; +    right: 58.33333%; +    left: auto; +  } +  .push-8 { +    position: relative; +    left: 66.66667%; +    right: auto; +  } +  .pull-8 { +    position: relative; +    right: 66.66667%; +    left: auto; +  } +  .push-9 { +    position: relative; +    left: 75%; +    right: auto; +  } +  .pull-9 { +    position: relative; +    right: 75%; +    left: auto; +  } +  .push-10 { +    position: relative; +    left: 83.33333%; +    right: auto; +  } +  .pull-10 { +    position: relative; +    right: 83.33333%; +    left: auto; +  } +  .push-11 { +    position: relative; +    left: 91.66667%; +    right: auto; +  } +  .pull-11 { +    position: relative; +    right: 91.66667%; +    left: auto; +  } +} + +.inline-list { +  margin: 0 auto 1.0625rem auto; +  margin-left: -1.375rem; +  margin-right: 0; +  padding: 0; +  list-style: none; +  overflow: hidden; +  > li { +    list-style: none; +    float: left; +    margin-left: 1.375rem; +    display: block; +    > * { +      display: block; +    } +  } +} + +.text-left { +  text-align: left !important; +} + +.text-right { +  text-align: right !important; +} + +.text-center { +  text-align: center !important; +} + +.text-justify { +  text-align: justify !important; +} + +@media only screen and (max-width: 40em) { +  .small-only-text-left { +    text-align: left !important; +  } +  .small-only-text-right { +    text-align: right !important; +  } +  .small-only-text-center { +    text-align: center !important; +  } +  .small-only-text-justify { +    text-align: justify !important; +  } +} + +@media only screen { +  .small-text-left { +    text-align: left !important; +  } +  .small-text-right { +    text-align: right !important; +  } +  .small-text-center { +    text-align: center !important; +  } +  .small-text-justify { +    text-align: justify !important; +  } +} + +@media only screen and (min-width: 40.063em) and (max-width: 64em) { +  .medium-only-text-left { +    text-align: left !important; +  } +  .medium-only-text-right { +    text-align: right !important; +  } +  .medium-only-text-center { +    text-align: center !important; +  } +  .medium-only-text-justify { +    text-align: justify !important; +  } +} + +@media only screen and (min-width: 40.063em) { +  .medium-text-left { +    text-align: left !important; +  } +  .medium-text-right { +    text-align: right !important; +  } +  .medium-text-center { +    text-align: center !important; +  } +  .medium-text-justify { +    text-align: justify !important; +  } +} + +@media only screen and (min-width: 64.063em) and (max-width: 90em) { +  .large-only-text-left { +    text-align: left !important; +  } +  .large-only-text-right { +    text-align: right !important; +  } +  .large-only-text-center { +    text-align: center !important; +  } +  .large-only-text-justify { +    text-align: justify !important; +  } +} + +@media only screen and (min-width: 64.063em) { +  .large-text-left { +    text-align: left !important; +  } +  .large-text-right { +    text-align: right !important; +  } +  .large-text-center { +    text-align: center !important; +  } +  .large-text-justify { +    text-align: justify !important; +  } +} + +@media only screen and (min-width: 90.063em) and (max-width: 120em) { +  .xlarge-only-text-left { +    text-align: left !important; +  } +  .xlarge-only-text-right { +    text-align: right !important; +  } +  .xlarge-only-text-center { +    text-align: center !important; +  } +  .xlarge-only-text-justify { +    text-align: justify !important; +  } +} + +@media only screen and (min-width: 90.063em) { +  .xlarge-text-left { +    text-align: left !important; +  } +  .xlarge-text-right { +    text-align: right !important; +  } +  .xlarge-text-center { +    text-align: center !important; +  } +  .xlarge-text-justify { +    text-align: justify !important; +  } +} + +@media only screen and (min-width: 120.063em) and (max-width: 99999999em) { +  .xxlarge-only-text-left { +    text-align: left !important; +  } +  .xxlarge-only-text-right { +    text-align: right !important; +  } +  .xxlarge-only-text-center { +    text-align: center !important; +  } +  .xxlarge-only-text-justify { +    text-align: justify !important; +  } +} + +@media only screen and (min-width: 120.063em) { +  .xxlarge-text-left { +    text-align: left !important; +  } +  .xxlarge-text-right { +    text-align: right !important; +  } +  .xxlarge-text-center { +    text-align: center !important; +  } +  .xxlarge-text-justify { +    text-align: justify !important; +  } +} + +/* Typography resets */ + +div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, p, blockquote, th, td { +  margin: 0; +  padding: 0; +} + +/* Default Link Styles */ + +a { +  color: #2ba6cb; +  text-decoration: none; +  line-height: inherit; +  &:hover, &:focus { +    color: #258faf; +    outline: none; +  } +  img { +    border: none; +  } +} + +/* Default paragraph styles */ + +p { +  font-family: inherit; +  font-weight: normal; +  font-size: 0.9rem; +  line-height: 1.4; +  margin-bottom: 1.25rem; +  text-rendering: optimizeLegibility; +  &.lead { +    font-size: 1.21875rem; +    line-height: 1.4; +  } +  aside { +    font-size: 0.875rem; +    line-height: 1.35; +    font-style: italic; +  } +} + +/* Default header styles */ + +h1, h2, h3, h4, h5, h6 { +  font-weight: normal; +  font-style: normal; +  color: #222; +  text-rendering: optimizeLegibility; +  margin-top: 0.2rem; +  margin-bottom: 0.5rem; +  line-height: 1.2; +} + +h1 small, h2 small, h3 small, h4 small, h5 small, h6 small { +  font-size: 60%; +  color: #6f6f6f; +  line-height: 0; +} + +h1 { +  font-size: 2.125rem; +} + +h2 { +  font-size: 1.6875rem; +} + +h3 { +  font-size: 1.375rem; +} + +h4, h5 { +  font-size: 1.125rem; +} + +h6 { +  font-size: 1rem; +} + +.subheader { +  line-height: 1.4; +  color: #6f6f6f; +  font-weight: normal; +  margin-top: 0.2rem; +  margin-bottom: 0.5rem; +} + +hr { +  border: solid #dddddd; +  border-width: 1px 0 0; +  clear: both; +  margin: 1.25rem 0 1.1875rem; +  height: 0; +} + +/* Helpful Typography Defaults */ + +em, i { +  font-style: italic; +  line-height: inherit; +} + +strong, b { +  font-weight: bold; +  line-height: inherit; +} + +small { +  font-size: 60%; +  line-height: inherit; +} + +code { +  font-family: Consolas, "Liberation Mono", Courier, monospace; +  font-weight: bold; +  color: #910b0e; +} + +/* Lists */ + +ul, ol, dl { +  font-size: 0.9rem; +  line-height: 1.6; +  margin-bottom: 1.25rem; +  list-style-position: outside; +  font-family: inherit; +} + +ul { +  margin-left: 0; +  &.bullets { +    margin-left: 1.1rem; +    li { +      margin-left: 1.25rem; +      margin-bottom: 0; +      list-style: circle; +    } +  } +  li { +    margin-bottom: 0; +    list-style: none; +  } +} + +/* Abbreviations */ + +abbr, acronym { +  text-transform: uppercase; +  font-size: 90%; +  color: #222222; +  border-bottom: 1px dotted #dddddd; +  cursor: help; +} + +abbr { +  text-transform: none; +} + +/* Blockquotes */ + +blockquote { +  margin: 0 0 1.25rem; +  padding: 0.5625rem 1.25rem 0 1.1875rem; +  border-left: 1px solid #dddddd; +  cite { +    display: block; +    font-size: 0.8125rem; +    color: #555555; +    &:before { +      content: "\2014 \0020"; +    } +    a { +      color: #555555; +      &:visited { +        color: #555555; +      } +    } +  } +  line-height: 1.6; +  color: #6f6f6f; +  p { +    line-height: 1.6; +    color: #6f6f6f; +  } +} + +/* Microformats */ + +.vcard { +  display: inline-block; +  margin: 0 0 1.25rem 0; +  border: 1px solid #dddddd; +  padding: 0.625rem 0.75rem; +  li { +    margin: 0; +    display: block; +  } +  .fn { +    font-weight: bold; +    font-size: 0.9375rem; +  } +} + +.vevent { +  .summary { +    font-weight: bold; +  } +  abbr { +    cursor: default; +    text-decoration: none; +    font-weight: bold; +    border: none; +    padding: 0 0.0625rem; +  } +} + +@media only screen and (min-width: 40.063em) { +  h1, h2, h3, h4, h5, h6 { +    line-height: 1.2; +  } +  h1 { +    font-size: 2.55rem; +  } +  h2 { +    font-size: 2.3125rem; +  } +  h3 { +    font-size: 1.4875rem; +  } +  h4 { +    font-size: 1.1375rem; +  } +} + +/* + * Print styles. + * + * Inlined to avoid required HTTP connection: www.phpied.com/delay-loading-your-print-css/ + * Credit to Paul Irish and HTML5 Boilerplate (html5boilerplate.com) +*/ + +.print-only { +  display: none !important; +} + +@media print { +  * { +    background: transparent !important; +    color: black !important; +    /* Black prints faster: h5bp.com/s */ +    box-shadow: none !important; +    text-shadow: none !important; +  } +  a { +    text-decoration: underline; +    &:visited { +      text-decoration: underline; +    } +    &[href]:after { +      content: " (" attr(href) ")"; +    } +  } +  abbr[title]:after { +    content: " (" attr(title) ")"; +  } +  .ir a:after { +    content: ""; +  } +  a { +    &[href^="javascript:"]:after, &[href^="#"]:after { +      content: ""; +    } +  } +  pre, blockquote { +    border: 1px solid #999999; +    page-break-inside: avoid; +  } +  thead { +    display: table-header-group; +    /* h5bp.com/t */ +  } +  tr { +    page-break-inside: avoid; +  } +  img { +    page-break-inside: avoid; +    max-width: 100% !important; +  } +  @page { +    margin: 0.5cm; +  } + +  p, h2, h3 { +    orphans: 3; +    widows: 3; +  } +  h2, h3 { +    page-break-after: avoid; +  } +  .hide-on-print { +    display: none !important; +  } +  .print-only { +    display: block !important; +  } +  .hide-for-print { +    display: none !important; +  } +  .show-for-print { +    display: inherit !important; +  } +} + +.reveal-modal-bg { +  position: fixed; +  height: 100%; +  width: 100%; +  background: black; +  background: rgba(0, 0, 0, 0.45); +  z-index: 99; +  display: none; +  top: 0; +  left: 0; +} + +dialog, .reveal-modal { +  visibility: hidden; +  display: none; +  position: absolute; +  z-index: 100; +  width: 100vw; +  top: 0; +  left: 0; +  background-color: white; +  padding: 1.25rem; +  border: solid 1px #666666; +  box-shadow: 0 0 10px rgba(0, 0, 0, 0.4); +} + +@media only screen and (max-width: 40em) { +  dialog, .reveal-modal { +    min-height: 100vh; +  } +} + +@media only screen and (min-width: 40.063em) { +  dialog, .reveal-modal { +    left: 50%; +  } +} + +dialog { +  .column, .columns { +    min-width: 0; +  } +} + +.reveal-modal { +  .column, .columns { +    min-width: 0; +  } +} + +dialog > :first-child, .reveal-modal > :first-child { +  margin-top: 0; +} + +dialog > :last-child, .reveal-modal > :last-child { +  margin-bottom: 0; +} + +@media only screen and (min-width: 40.063em) { +  dialog, .reveal-modal { +    margin-left: -26%; +    width: 50%; +  } +} + +@media only screen and (min-width: 40.063em) { +  dialog, .reveal-modal { +    top: 6.25rem; +  } +} + +dialog .close-reveal-modal, .reveal-modal .close-reveal-modal { +  font-size: 2.5rem; +  line-height: 1; +  position: absolute; +  top: 0.5rem; +  right: 0.6875rem; +  color: #aaaaaa; +  font-weight: bold; +  cursor: pointer; +} + +dialog[open] { +  display: block; +  visibility: visible; +} + +@media only screen and (min-width: 40.063em) { +  dialog, .reveal-modal { +    padding: 1.875rem; +  } +  dialog.radius, .reveal-modal.radius { +    border-radius: 3px; +  } +  dialog.round, .reveal-modal.round { +    border-radius: 1000px; +  } +  dialog.collapse, .reveal-modal.collapse { +    padding: 0; +  } +  dialog.full, .reveal-modal.full { +    top: 0; +    left: 0; +    height: 100vh; +    min-height: 100vh; +    margin-left: 0 !important; +  } +} + +@media only screen and (min-width: 40.063em) and (min-width: 40.063em) { +  dialog.tiny, .reveal-modal.tiny { +    margin-left: -15%; +    width: 30%; +  } +} + +@media only screen and (min-width: 40.063em) and (min-width: 40.063em) { +  dialog.small, .reveal-modal.small { +    margin-left: -20%; +    width: 40%; +  } +} + +@media only screen and (min-width: 40.063em) and (min-width: 40.063em) { +  dialog.medium, .reveal-modal.medium { +    margin-left: -30%; +    width: 60%; +  } +} + +@media only screen and (min-width: 40.063em) and (min-width: 40.063em) { +  dialog.large, .reveal-modal.large { +    margin-left: -35%; +    width: 70%; +  } +} + +@media only screen and (min-width: 40.063em) and (min-width: 40.063em) { +  dialog.xlarge, .reveal-modal.xlarge { +    margin-left: -47.5%; +    width: 95%; +  } +} + +@media only screen and (min-width: 40.063em) and (min-width: 40.063em) { +  dialog.full, .reveal-modal.full { +    margin-left: -50vw; +    width: 100vw; +  } +} + +@media print { +  dialog, .reveal-modal { +    background: white !important; +  } +} + +.label { +  font-weight: normal; +  text-align: center; +  text-decoration: none; +  line-height: 1; +  white-space: nowrap; +  display: inline-block; +  position: relative; +  margin-bottom: inherit; +  padding: 0.25rem 0.5rem 0.375rem; +  font-size: 0.6875rem; +  background-color: #2ba6cb; +  color: white; +  &.radius { +    border-radius: 3px; +  } +  &.round { +    border-radius: 1000px; +  } +  &.alert { +    background-color: #c60f13; +    color: white; +  } +  &.success { +    background-color: #5da423; +    color: white; +  } +  &.secondary { +    background-color: #e9e9e9; +    color: #333333; +  } +} + +button, .button, input[type=button] { +  cursor: pointer; +  margin: 0 0 1.25rem; +  border: none; +  position: relative; +  text-decoration: none; +  text-align: center; +  -webkit-appearance: none; +  display: inline-block; +  padding: 0.4rem 1.1rem; +  font-size: 0.9rem; +  background-color: #2ba6cb; +  border-color: #2285a2; +  color: white; +  transition: background-color 150ms ease-out; +  @include border-radius(2px); +  &:hover, &:focus { +    background-color: #2285a2; +    outline: none; +    color: white; +  }   +  &.large { +    padding-top: 1.125rem; +    padding-right: 2.25rem; +    padding-bottom: 1.1875rem; +    padding-left: 2.25rem; +    font-size: 1.25rem; +  } + +  &.small { +    padding-top: 0.875rem; +    padding-right: 1.75rem; +    padding-bottom: 0.9375rem; +    padding-left: 1.75rem; +    font-size: 0.8125rem; +  } + +  &.tiny { +    padding-top: 0.625rem; +    padding-right: 1.25rem; +    padding-bottom: 0.6875rem; +    padding-left: 1.25rem; +    font-size: 0.6875rem; +  } + +  &.expand { +    padding-right: 0; +    padding-left: 0; +    width: 100%; +  } + +  &.left-align { +    text-align: left; +    text-indent: 0.75rem; +  } + +  &.right-align { +    text-align: right; +    padding-right: 0.75rem; +  } + +  &.round { +    border-radius: 1000px; +  } + +  &.disabled, &[disabled] { +    background-color: #2285a2; +    border-color: #2285a2; +    color: white; +    cursor: default; +    opacity: 0.5; +    box-shadow: none; +    &:hover, &:focus { +      background-color: #2285a2; +      opacity: 0.5; +    } +  } +} + + +@media only screen and (min-width: 40.063em) { +  button, .button { +    display: inline-block; +  } +} + +.keystroke, kbd { +  background-color: #ededed; +  border-color: #dddddd; +  color: #222222; +  border-style: solid; +  border-width: 1px; +  margin: 0; +  font-family: "Consolas", "Menlo", "Courier", monospace; +  font-size: inherit; +  padding: 0.125rem 0.25rem 0; +  border-radius: 3px; +} + + + +/* We use this to get basic styling on all basic form elements */ +input[type="text"], +input[type="password"], +input[type="date"], +input[type="datetime"], +input[type="datetime-local"], +input[type="month"], +input[type="week"], +input[type="email"], +input[type="number"], +input[type="search"], +input[type="tel"], +input[type="time"], +input[type="url"], +textarea { +  -webkit-appearance: none; +  background-color: white; +  font-family: inherit; +  border: 1px solid #cccccc; +  color: rgba(0, 0, 0, 0.75); +  display: block; +  font-size: 0.875rem; +  margin: 0 0 1rem 0; +  padding: 0.4rem; +  width: 100%; +  -webkit-box-sizing: border-box; +  -moz-box-sizing: border-box; +  box-sizing: border-box; +} +  input[type="text"]:focus, +  input[type="password"]:focus, +  input[type="date"]:focus, +  input[type="datetime"]:focus, +  input[type="datetime-local"]:focus, +  input[type="month"]:focus, +  input[type="week"]:focus, +  input[type="email"]:focus, +  input[type="number"]:focus, +  input[type="search"]:focus, +  input[type="tel"]:focus, +  input[type="time"]:focus, +  input[type="url"]:focus, +  textarea:focus {} +  input[type="text"]:focus, +  input[type="password"]:focus, +  input[type="date"]:focus, +  input[type="datetime"]:focus, +  input[type="datetime-local"]:focus, +  input[type="month"]:focus, +  input[type="week"]:focus, +  input[type="email"]:focus, +  input[type="number"]:focus, +  input[type="search"]:focus, +  input[type="tel"]:focus, +  input[type="time"]:focus, +  input[type="url"]:focus, +  textarea:focus { +    background: #fafafa; +    border-color: #999999; +    outline: none; } +  input[type="text"][disabled], fieldset[disabled] input[type="text"], +  input[type="password"][disabled], fieldset[disabled] +  input[type="password"], +  input[type="date"][disabled], fieldset[disabled] +  input[type="date"], +  input[type="datetime"][disabled], fieldset[disabled] +  input[type="datetime"], +  input[type="datetime-local"][disabled], fieldset[disabled] +  input[type="datetime-local"], +  input[type="month"][disabled], fieldset[disabled] +  input[type="month"], +  input[type="week"][disabled], fieldset[disabled] +  input[type="week"], +  input[type="email"][disabled], fieldset[disabled] +  input[type="email"], +  input[type="number"][disabled], fieldset[disabled] +  input[type="number"], +  input[type="search"][disabled], fieldset[disabled] +  input[type="search"], +  input[type="tel"][disabled], fieldset[disabled] +  input[type="tel"], +  input[type="time"][disabled], fieldset[disabled] +  input[type="time"], +  input[type="url"][disabled], fieldset[disabled] +  input[type="url"], +  textarea[disabled], fieldset[disabled] +  textarea { +    background-color: #dddddd; } +  input[type="text"].radius, +  input[type="password"].radius, +  input[type="date"].radius, +  input[type="datetime"].radius, +  input[type="datetime-local"].radius, +  input[type="month"].radius, +  input[type="week"].radius, +  input[type="email"].radius, +  input[type="number"].radius, +  input[type="search"].radius, +  input[type="tel"].radius, +  input[type="time"].radius, +  input[type="url"].radius, +  textarea.radius { +    border-radius: 3px; } + +input[type="submit"] { +  -webkit-appearance: none; } + +/* Respect enforced amount of rows for textarea */ +textarea[rows] { +  height: auto; } + +/* Add height value for select elements to match text input height */ +select { +  -webkit-appearance: none !important; +  background-color: #fafafa; +  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iM3B4IiB2aWV3Qm94PSIwIDAgNiAzIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA2IDMiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwb2x5Z29uIHBvaW50cz0iNS45OTIsMCAyLjk5MiwzIC0wLjAwOCwwICIvPjwvc3ZnPg=="); +  background-repeat: no-repeat; +  background-position: 97% center; +  border: 1px solid #cccccc; +  padding: 0.5rem; +  font-size: 0.875rem; +  color: rgba(0, 0, 0, 0.75); +  line-height: normal; +  border-radius: 0; +} +  select.radius { +    border-radius: 3px; } +  select:hover { +    background-color: #f3f3f3; +    border-color: #999999; } + +/* Adjust margin for form elements below */ +input[type="file"], +input[type="checkbox"], +input[type="radio"], +select { +  margin: 0 0 1rem 0; } + +input[type="checkbox"] + label, +input[type="radio"] + label { +  display: inline-block; + +  margin-left: 0.5rem; +  margin-right: 1rem; +  margin-bottom: 0; +  vertical-align: baseline; } + +/* Normalize file input width */ +input[type="file"] { +  width: 100%; } diff --git a/web-ui/app/scss/main.scss b/web-ui/app/scss/main.scss new file mode 100644 index 00000000..23de32be --- /dev/null +++ b/web-ui/app/scss/main.scss @@ -0,0 +1,46 @@ +@import "reset.scss"; +@import "foundation.scss"; +@import "compass/css3"; +@import "colors.scss"; +@import "styles.scss"; + + +html { +    height:100%; +} +body { +    min-height:100%; +    overflow: hidden; +    background: #FFF; +} +header#main { +  overflow: hidden; +  position: fixed; +  top: 0; +  padding: 5px 0; +  width: 100%; +  position: relative; +  background: $secondary; +  border-bottom: 1px solid lighten($secondary, 5%); +  margin-bottom: 0; +} + + +.no-padding { +  padding: 0; +} + +.tip-msg { +  padding: 10px; +  margin: 8px 20px -25px 20px; +  background: $warning; +  color: darken($warning, 50%); +  font-size: 0.9em; +  i { +    margin-right: 5px; +  } +} + +.text-right { +  text-align: right; +} diff --git a/web-ui/app/scss/news-cycle.scss b/web-ui/app/scss/news-cycle.scss new file mode 100644 index 00000000..8f813996 --- /dev/null +++ b/web-ui/app/scss/news-cycle.scss @@ -0,0 +1,13 @@ +@font-face { +  font-family: 'News Cycle'; +  src: url('/fonts/NewsCycleRegular.ttf') format('truetype'); +  font-weight: normal; +  font-style: normal; +} + +@font-face { +  font-family: 'News Cycle'; +  src: url('/fonts/NewsCycleBold.ttf') format('truetype'); +  font-weight: bold; +  font-style: normal; +} diff --git a/web-ui/app/scss/opensans.scss b/web-ui/app/scss/opensans.scss new file mode 100644 index 00000000..5d5c7ff5 --- /dev/null +++ b/web-ui/app/scss/opensans.scss @@ -0,0 +1,61 @@ +@font-face { +  font-family: 'Open Sans'; +  font-style: normal; +  font-weight: 300; +  src: local('Open Sans Light'), local('OpenSans-Light'), url('/fonts/OpenSans-Light.woff') format('woff'); +} +@font-face { +  font-family: 'Open Sans'; +  font-style: normal; +  font-weight: 400; +  src: local('Open Sans'), local('OpenSans'), url('/fonts/OpenSans.woff') format('woff'); +} +@font-face { +  font-family: 'Open Sans'; +  font-style: normal; +  font-weight: 600; +  src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url('/fonts/OpenSans-Semibold.woff') format('woff'); +} +@font-face { +  font-family: 'Open Sans'; +  font-style: normal; +  font-weight: 700; +  src: local('Open Sans Bold'), local('OpenSans-Bold'), url('/fonts/OpenSans-Bold.woff') format('woff'); +} +@font-face { +  font-family: 'Open Sans'; +  font-style: normal; +  font-weight: 800; +  src: local('Open Sans Extrabold'), local('OpenSans-Extrabold'), url('/fonts/OpenSans-Extrabold.woff') format('woff'); +} +@font-face { +  font-family: 'Open Sans'; +  font-style: italic; +  font-weight: 300; +  src: local('Open Sans Light Italic'), local('OpenSansLight-Italic'), url('/fonts/OpenSansLight-Italic.woff') format('woff'); +} +@font-face { +  font-family: 'Open Sans'; +  font-style: italic; +  font-weight: 400; +  src: local('Open Sans Italic'), local('OpenSans-Italic'), url('/fonts/OpenSans-Italic.woff') format('woff'); +} +@font-face { +  font-family: 'Open Sans'; +  font-style: italic; +  font-weight: 600; +  src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url('/fonts/OpenSans-SemiboldItalic.woff +') format('woff'); +} +@font-face { +  font-family: 'Open Sans'; +  font-style: italic; +  font-weight: 700; +  src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), url('/fonts/OpenSans-BoldItalic.woff') format('woff'); +} +@font-face { +  font-family: 'Open Sans'; +  font-style: italic; +  font-weight: 800; +  src: local('Open Sans Extrabold Italic'), local('OpenSans-ExtraboldItalic'), url('/fonts/OpenSans-ExtraboldItalic.woff') format('woff'); +} diff --git a/web-ui/app/scss/reset.scss b/web-ui/app/scss/reset.scss new file mode 100644 index 00000000..55f8d054 --- /dev/null +++ b/web-ui/app/scss/reset.scss @@ -0,0 +1,421 @@ +/*! normalize.css v3.0.1 | MIT License | git.io/normalize */ + +/** + * 1. Set default font family to sans-serif. + * 2. Prevent iOS text size adjust after orientation change, without disabling + *    user zoom. + */ + +html { +  font-family: sans-serif; +  /* 1 */ +  -ms-text-size-adjust: 100%; +  /* 2 */ +  -webkit-text-size-adjust: 100%; +  /* 2 */ +} + +/** + * Remove default margin. + */ + +body { +  margin: 0; +} + +/* HTML5 display definitions +   ========================================================================== */ + +/** + * Correct `block` display not defined for any HTML5 element in IE 8/9. + * Correct `block` display not defined for `details` or `summary` in IE 10/11 and Firefox. + * Correct `block` display not defined for `main` in IE 11. + */ + +article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary { +  display: block; +} + +/** + * 1. Correct `inline-block` display not defined in IE 8/9. + * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. + */ + +audio, canvas, progress, video { +  display: inline-block; +  /* 1 */ +  vertical-align: baseline; +  /* 2 */ +} + +/** + * Prevent modern browsers from displaying `audio` without controls. + * Remove excess height in iOS 5 devices. + */ + +audio:not([controls]) { +  display: none; +  height: 0; +} + +/** + * Address `[hidden]` styling not present in IE 8/9/10. + * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22. + */ + +[hidden], template { +  display: none; +} + +/* Links +   ========================================================================== */ + +/** + * Remove the gray background color from active links in IE 10. + */ + +a { +  background: transparent; +  &:active, &:hover { +    outline: 0; +  } +} + +/** + * Improve readability when focused and also mouse hovered in all browsers. + */ + +/* Text-level semantics +   ========================================================================== */ + +/** + * Address styling not present in IE 8/9/10/11, Safari, and Chrome. + */ + +abbr[title] { +  border-bottom: 1px dotted; +} + +/** + * Address style set to `bolder` in Firefox 4+, Safari, and Chrome. + */ + +b, strong { +  font-weight: bold; +} + +/** + * Address styling not present in Safari and Chrome. + */ + +dfn { +  font-style: italic; +} + +/** + * Address variable `h1` font-size and margin within `section` and `article` + * contexts in Firefox 4+, Safari, and Chrome. + */ + +h1 { +  font-size: 2em; +  margin: 0.67em 0; +} + +/** + * Address styling not present in IE 8/9. + */ + +mark { +  background: #ff0; +  color: #000; +} + +/** + * Address inconsistent and variable font size in all browsers. + */ + +small { +  font-size: 80%; +} + +/** + * Prevent `sub` and `sup` affecting `line-height` in all browsers. + */ + +sub { +  font-size: 75%; +  line-height: 0; +  position: relative; +  vertical-align: baseline; +} + +sup { +  font-size: 75%; +  line-height: 0; +  position: relative; +  vertical-align: baseline; +  top: -0.5em; +} + +sub { +  bottom: -0.25em; +} + +/* Embedded content +   ========================================================================== */ + +/** + * Remove border when inside `a` element in IE 8/9/10. + */ + +img { +  border: 0; +} + +/** + * Correct overflow not hidden in IE 9/10/11. + */ + +svg:not(:root) { +  overflow: hidden; +} + +/* Grouping content +   ========================================================================== */ + +/** + * Address margin not present in IE 8/9 and Safari. + */ + +figure { +  margin: 1em 40px; +} + +/** + * Address differences between Firefox and other browsers. + */ + +hr { +  -moz-box-sizing: content-box; +  box-sizing: content-box; +  height: 0; +} + +/** + * Contain overflow in all browsers. + */ + +pre { +  overflow: auto; +} + +/** + * Address odd `em`-unit font size rendering in all browsers. + */ + +code, kbd, pre, samp { +  font-family: monospace, monospace; +  font-size: 1em; +} + +/* Forms +   ========================================================================== */ + +/** + * Known limitation: by default, Chrome and Safari on OS X allow very limited + * styling of `select`, unless a `border` property is set. + */ + +/** + * 1. Correct color not being inherited. + *    Known issue: affects color of disabled elements. + * 2. Correct font properties not being inherited. + * 3. Address margins set differently in Firefox 4+, Safari, and Chrome. + */ + +button, input, optgroup, select, textarea { +  color: inherit; +  /* 1 */ +  font: inherit; +  /* 2 */ +  margin: 0; +  /* 3 */ +} + +/** + * Address `overflow` set to `hidden` in IE 8/9/10/11. + */ + +button { +  overflow: visible; +  text-transform: none; +} + +/** + * Address inconsistent `text-transform` inheritance for `button` and `select`. + * All other form control elements do not inherit `text-transform` values. + * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. + * Correct `select` style inheritance in Firefox. + */ + +select { +  text-transform: none; +} + +/** + * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` + *    and `video` controls. + * 2. Correct inability to style clickable `input` types in iOS. + * 3. Improve usability and consistency of cursor style between image-type + *    `input` and others. + */ + +button, html input[type="button"] { +  -webkit-appearance: button; +  /* 2 */ +  cursor: pointer; +  /* 3 */ +} + +input { +  &[type="reset"], &[type="submit"] { +    -webkit-appearance: button; +    /* 2 */ +    cursor: pointer; +    /* 3 */ +  } +} + +/** + * Re-set default cursor for disabled elements. + */ + +button[disabled], html input[disabled] { +  cursor: default; +} + +/** + * Remove inner padding and border in Firefox 4+. + */ + +button::-moz-focus-inner { +  border: 0; +  padding: 0; +} + +input { +  &::-moz-focus-inner { +    border: 0; +    padding: 0; +  } +  line-height: normal; +  &[type="checkbox"], &[type="radio"] { +    box-sizing: border-box; +    /* 1 */ +    padding: 0; +    /* 2 */ +  } +  &[type="number"] { +    &::-webkit-inner-spin-button, &::-webkit-outer-spin-button { +      height: auto; +    } +  } +  &[type="search"] { +    -webkit-appearance: textfield; +    /* 1 */ +    -moz-box-sizing: content-box; +    -webkit-box-sizing: content-box; +    /* 2 */ +    box-sizing: content-box; +    &::-webkit-search-cancel-button, &::-webkit-search-decoration { +      -webkit-appearance: none; +    } +  } +} + +/** + * Address Firefox 4+ setting `line-height` on `input` using `!important` in + * the UA stylesheet. + */ + +/** + * It's recommended that you don't attempt to style these elements. + * Firefox's implementation doesn't respect box-sizing, padding, or width. + * + * 1. Address box sizing set to `content-box` in IE 8/9/10. + * 2. Remove excess padding in IE 8/9/10. + */ + +/** + * Fix the cursor style for Chrome's increment/decrement buttons. For certain + * `font-size` values of the `input`, it causes the cursor style of the + * decrement button to change from `default` to `text`. + */ + +/** + * 1. Address `appearance` set to `searchfield` in Safari and Chrome. + * 2. Address `box-sizing` set to `border-box` in Safari and Chrome + *    (include `-moz` to future-proof). + */ + +/** + * Remove inner padding and search cancel button in Safari and Chrome on OS X. + * Safari (but not Chrome) clips the cancel button when the search input has + * padding (and `textfield` appearance). + */ + +/** + * Define consistent border, margin, and padding. + */ + +fieldset { +  border: 1px solid #c0c0c0; +  margin: 0 2px; +  padding: 0.35em 0.625em 0.75em; +} + +/** + * 1. Correct `color` not being inherited in IE 8/9/10/11. + * 2. Remove padding so people aren't caught out if they zero out fieldsets. + */ + +legend { +  border: 0; +  /* 1 */ +  padding: 0; +  /* 2 */ +} + +/** + * Remove default vertical scrollbar in IE 8/9/10/11. + */ + +textarea { +  overflow: auto; +} + +/** + * Don't inherit the `font-weight` (applied by a rule above). + * NOTE: the default cannot safely be changed in Chrome and Safari on OS X. + */ + +optgroup { +  font-weight: bold; +} + +/* Tables +   ========================================================================== */ + +/** + * Remove most spacing between table cells. + */ + +table { +  border-collapse: collapse; +  border-spacing: 0; +} + +td, th { +  padding: 0; +} diff --git a/web-ui/app/scss/styles.scss b/web-ui/app/scss/styles.scss new file mode 100644 index 00000000..8f643b34 --- /dev/null +++ b/web-ui/app/scss/styles.scss @@ -0,0 +1,610 @@ +@import "compass/css3"; +@import "colors.scss"; +@import "mixins.scss"; +@import "alerts.scss"; +@import "read.scss"; +@import "reply.scss"; +@import "compose.scss"; +@import "security.scss"; + + +#logo { +  color: #FFF; +} + +.search-highlight { +  background-color: $search-highlight; +} + + +@mixin list-actions { +  #list-actions { +    width: 100%; +    height: 34px; +    margin: 0; +    border-top: 1px solid #FFF; +    border-bottom: 2px solid lighten($top_pane, 30%); +    background: $top_pane; +    clear: both; +    overflow: hidden; +    z-index: 1; +    li { +      display: inline-block; +      margin: 0 -3px; +      vertical-align: top; +      input[type=checkbox] { +        @include check-box; +        margin: 7px 8px; +      } +      select { +        padding: 1px 3px; +        margin: 0; +      } +      input[type=button] { +        margin: 2px; +        padding: 4px 10px; +        background: lighten($contrast, 5%); +        color: #333; +        text-transform: uppercase; +        font-weight: 400; +        font-size: 0.8em; +        opacity: 0.7; +        border: 1px solid darken($contrast, 10%); +        @include border-radius(1px); +        @include btn-transition; +        &:hover { +          opacity: 1; +        } +        &[disabled=disabled] { +          opacity: 0.4; +          cursor: default; +        } +      } +    } + +    #pagination-trigger { +      cursor: pointer; +      margin: 0 5px; +    } +  } +} + +@mixin email-list { +  ul#mail-list { +    clear: both; +    li { +      height: 50px; +      position: relative; +      padding: 2px 5px; +      background: lighten($contrast, 2%); +      border-bottom: 1px solid white; +      cursor: pointer; +      font-weight: bold; +      transition: background-color 150ms ease-out; +      span { +        display: inline-block; +        vertical-align: top; +        &:last-child { +          width: 92%; +        } +        input[type=checkbox] { +          @include check-box; +          margin-right: 2px; +        } +        a { +          color: #333; +        } +      } +      .subject-and-tags { +        display: inline-block; +        width: 90%; +        overflow: hidden; +        text-overflow: ellipsis; +        white-space: nowrap; +        @include tags; +        ul.tags { +          display: inline-block; +          li { +            display: inline-block; +            height: auto; +            font-weight: 400; +            border: none; +            &.tag:hover { +              text-decoration: none; +            } +          } +        } +      } + +      .received-date, .sent-date { +        position: absolute; +        right: 10px; +        font-size: 0.7em; +      } +      .from { +        white-space: nowrap; +        font-size: 0.8em; +        width: 80%; +        overflow: hidden; +        text-overflow: ellipsis; +      } + +      &.status-read { +        background: $contrast; +        a { +          font-weight: normal; +          color: #555; +        } +      } +      &:hover { +        background: darken($contrast, 5%); +      } +      &.selected { +        background: #FFF; +        a { +          color: #333; +        } +      } +    } +  } +} + +@mixin mail-count($bg_color) { +  background: $bg_color; +  color: #FFF; +  padding: 2px 5px; +  font-size: 0.7em; +  margin-left: 5px; +  font-weight: 700; +  @include border-radius(100px); +} + +article { +  padding-left: 50px !important; +} + +section { +  display: inline-block; +  vertical-align: top; +  height: 100vh; +  overflow-y: scroll; +  &#top-pane { +    height: auto; +    overflow: hidden; +    background: darken($top_pane, 10%); +    border-top: 1px solid $top_pane; +    @include list-actions; +    #compose-search-trigger { +      padding: 4px; +    } +   #actions { +      ul { +        margin: 0; +        li { +          display: inline-block; +          margin-right: -5px; +          a { +            transition: background-color 150ms ease-out; +            background: darken($top_pane, 10%); +            color: #FFF; +            font-size: 1.5em; +            display: block; +            padding: 14px 20px; +            margin: 0 1px 0px; +            opacity: 0.35; +            &.selected { +              background: $top_pane; +              opacity: 1; +              cursor: default; +            } +            &:hover { +              opacity: 1; +            } +          } +        } +      } +    } +    #search-trigger { +      input { +        margin: 0; +        padding: 8px 30px; +        color: #EEE; +        background: lighten(#333, 10%); +        border: none; +        transition: background-color 150ms ease-out; +        &:hover { +          background: lighten(#333, 12%); +        } +        &:focus { +          background: lighten(#333, 20%); +        } +      } +      &:before { +        font-family: "FontAwesome"; +        content: "\f002"; +        position: absolute; +        padding: 0 10px; +        top: 9px; +        color: #999; +      } +    } +  } + +  &#left-pane { +    nav { +      padding-bottom: 25px; +      border-right: 1px solid $contrast; +      ul#default-tag-list, #custom-tag-list { +        li { +          transition: background-color 150ms ease-out; +          padding: 2px 10px; +          cursor: pointer; +          &:hover { +            background: #CCC; +          } +          &.selected { +            font-weight: bold; +            background: $contrast; +          } +        } +      } + +      ul#default-tag-list { +        li { +          padding: 5px 10px; +          position: relative; +          @include searching(4px, 19px, #333, 0.7em); + +          &:before { +            font-family: "FontAwesome"; +            margin-right: 10px; +            font-weight: normal; +          } +          &:nth-child(1) { +            &:before { +              content: "\f01c"; +            } +          } +          &:nth-child(2) { +            &:before { +              content: "\f1d8"; +            } +          } +          &:nth-child(3) { +            &:before { +              content: "\f040"; +            } +          } +          &:nth-child(4) { +            &:before { +              content: "\f014"; +            } +          } +          &:nth-child(5) { +            &:before { +              content: "\f187"; +            } +          } +        } +      } + +      ul#custom-tag-list { +        padding-bottom: 30px; +        li { +          font-size: 0.8em; +          padding: 5px 20px; +        } +      } + +      h3 { +        text-transform: uppercase; +        font-size: 0.6em; +        padding: 5px; +        font-weight: 600; +        margin: 0 10px; +        border-bottom: 1px dotted #DDD; +      } +    } +  } + +  &#middle-pane { +    background: lighten($contrast, 2%); +    @include email-list; +  } + +  &#right-pane { +    padding: 0 10px 60px 0px; +    background: #FFF; +    top: -25px; +    box-shadow: -2px -2px 5px rgba(0, 0, 0, 0.12); +    z-index: 2; +    @include read-msg; +    [id^=fullView-] { +      position: relative; +    } +  } +} + +.unread-count { +  @include mail-count($error); +} +.total-count { +  @include mail-count($total_count_bg); +} + + +/* ACTIONS */ +#refresh-mails-trigger { +  i { +    cursor: pointer; +    opacity: 0.9; +    padding: 4px; +    &:hover { +      opacity: 1; +      &:after { +        content: "\f021"; +      } +      &:before { +        content: "refresh"; +        font-size: 0.8em; +        padding-right: 5px; +      } +    } +  } +} + + + +.buttons-group { +  clear: both; +  margin: 20px 0 0; +  padding: 0; +} + +#draft-save-status { +  float: right; +  padding: 0.4rem 1.1rem; +  color: #91C2D1; +} + +button { +  border: 1px solid transparent; +  i { +    margin-left: 5px; +  } +  &#trash-button, &#draft-button { +    background: #FFF; +    border: 1px solid #999; +    color: #999; +    float: right; +    margin-left: 5px; +    &:hover, &:focus { +      background: #EEE; +    } +  } +  &.close-mail-button { +    background: transparent; +    color: #999; +    float: right; +    &:hover { +      color: darken(#999, 10%); +    } +  } +  &.close-mail-button { +    position: absolute; +    left: 0; +    top: 0; +    margin: 0; +    padding: 3px 6px 5px; +    background: #DDD; +    opacity: 0.7; +    @include border-radius(0); +    &:hover { +      opacity: 1; +    } +    i { +      margin: 0; +    } +  } +  &.no-style { +    background: transparent; +    color: #999; +    padding: 0; +    margin: 0; +    i { +      margin: 0; +      padding: 0; +      vertical-align: middle; +    } +    &:hover { +    } +  } +} + +.collapsed-nav { +  width: 50px; +  position: absolute; +  z-index: 2; +  height: 100vh; +  background: #FFF; +  border-right: 1px solid darken($contrast, 20%); +  .left-off-canvas-toggle { +    text-align: center; +    display: block; +    left: 0; +    padding: 10px; +    background: #FFF; +    top: 0; +    z-index: 10000; +    position: relative; +  } +  ul.shortcuts { +    margin-top: 10px; +    li { +      position: relative; +      margin-bottom: 5px; +      opacity: 0.8; +      &.selected { +        background: $contrast; +        color: #212121; +        opacity: 1; +        cursor: default; +      } +      @include searching(6px, 26px, #666, 0.9em); +      a { +        display: block; +        position: relative; +        font-size: 1.4em; +        padding: 5px; +        color: #555; +        text-align: center; +        &:hover { +          background: darken($contrast, 10%); +          color: #333; +          @include btn-transition; +        } +        &[title]:hover:after { +          content: attr(title); +          @include tooltip; +        } +      } +      .unread-count, .total-count { +        font-size: 0.5em; +        padding: 1px 5px 0; +        top: 1px; +        left: 0; +        border: 1px solid #FFF; +        position: absolute; +        opacity: 0.88; +      } +      .total-count { +        background: #999; +      } +    } +  } +  #custom-tags-shortcuts { +    li { +      border-top: 1px solid #DDD; +    } +  } +  div.shortcut-label { +      font-size: xx-small; +      text-transform: uppercase; +      text-align: center; +  } +} +.move-right { +  ul.shortcuts { +    li { +      display: none; +    } +  } +} + +.left-off-canvas-menu { +  width: 222px; +  -webkit-backface-visibility: hidden; +  box-sizing: content-box; +  left: 0; +  top: 0; +  bottom: 0; +  position: absolute; +  overflow-y: auto; +  z-index: 1001; +  transition: transform 500ms ease 0s; +  -webkit-overflow-scrolling: touch; +  -ms-transform: translate(-100%, 0); +  -webkit-transform: translate3d(-100%, 0, 0); +  -moz-transform: translate3d(-100%, 0, 0); +  -ms-transform: translate3d(-100%, 0, 0); +  -o-transform: translate3d(-100%, 0, 0); +  transform: translate3d(-100%, 0, 0); +} +.left-off-canvas-menu * { +-webkit-backface-visibility: hidden; } + + +.off-canvas-wrap { +  -webkit-backface-visibility: hidden; +  position: relative; +  width: 100%; +overflow: hidden; } +.off-canvas-wrap.move-right, .off-canvas-wrap.move-left { +  min-height: 100%; +-webkit-overflow-scrolling: touch; } + +.inner-wrap { +  -webkit-backface-visibility: hidden; +  position: relative; +  width: 100%; +  -webkit-transition: -webkit-transform 500ms ease; +  -moz-transition: -moz-transform 500ms ease; +  -ms-transition: -ms-transform 500ms ease; +  -o-transition: -o-transform 500ms ease; +transition: transform 500ms ease; } +.inner-wrap:before, .inner-wrap:after { +  content: " "; +display: table; } +.inner-wrap:after { +clear: both; } + +.move-right > .inner-wrap { +  -ms-transform: translate(13.88889rem, 0); +  -webkit-transform: translate3d(13.88889rem, 0, 0); +  -moz-transform: translate3d(13.88889rem, 0, 0); +  -ms-transform: translate3d(13.88889rem, 0, 0); +  -o-transform: translate3d(13.88889rem, 0, 0); +transform: translate3d(13.88889rem, 0, 0); } +.move-right .exit-off-canvas { +  -webkit-backface-visibility: hidden; +  transition: background 300ms ease; +  cursor: pointer; +  display: block; +  position: absolute; +  background: rgba(255, 255, 255, 0.2); +  top: 0; +  bottom: 0; +  left: 0; +  right: 0; +  z-index: 1002; +-webkit-tap-highlight-color: rgba(0, 0, 0, 0); } +@media only screen and (min-width:40.063em) { +  .move-right .exit-off-canvas:hover { +background: rgba(255, 255, 255, 0.05); } } + +.offcanvas-overlap .left-off-canvas-menu, .offcanvas-overlap .right-off-canvas-menu { +  -ms-transform: none; +  -webkit-transform: none; +  -moz-transform: none; +  -o-transform: none; +  transform: none; +z-index: 1003; } +.offcanvas-overlap .exit-offcanvas-menu { +  -webkit-backface-visibility: hidden; +  transition: background 300ms ease; +  cursor: pointer; +  display: block; +  position: absolute; +  background: rgba(255, 255, 255, 0.2); +  top: 0; +  bottom: 0; +  left: 0; +  right: 0; +  z-index: 1002; +  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +z-index: 1002; } + + +#delete-modal { +  button#trash-button, button#archive-button { +    width: 40%; +    margin: 0 22px 30px; +    height: 80px; +  } +  small { +    font-size: 80%; +    display: block; +  } +} + +@import "mascot.scss";  | 
