Skip to content
Snippets Groups Projects
App.scss 9.61 KiB
Newer Older
  • Learn to ignore specific revisions
  • Jiayi Zheng's avatar
    Jiayi Zheng committed
    @import './_variables.scss';
    
    lain's avatar
    lain committed
    #app {
    
      background-size: cover;
      background-attachment: fixed;
      background-repeat: no-repeat;
      background-position: 0 50px;
      min-height: 100vh;
    
    lain's avatar
    .
    lain committed
    }
    
    
    i {
      user-select: none;
    }
    
    
    lain's avatar
    .
    lain committed
    h4 {
    
    lain's avatar
    .
    lain committed
    }
    
    #content {
    
      box-sizing: border-box;
      padding-top: 60px;
      margin: auto;
      min-height: 100vh;
      max-width: 980px;
      background-color: rgba(0,0,0,0.15);
    
    lain's avatar
    .
    lain committed
    }
    
    .text-center {
    
    lain's avatar
    .
    lain committed
    }
    
    body {
    
      font-family: sans-serif;
      font-size: 14px;
      margin: 0;
      color: $fallback--fg;
      color: var(--fg, $fallback--fg);
    
    lain's avatar
    .
    lain committed
    }
    
    a {
    
      text-decoration: none;
      color: $fallback--link;
      color: var(--link, $fallback--link);
    
    lain's avatar
    .
    lain committed
    }
    
    
    HJ's avatar
    HJ committed
    button {
    
      color: $fallback--fg;
      color: var(--fg, $fallback--fg);
    
      background-color: $fallback--btn;
      background-color: var(--btn, $fallback--btn);
      border: none;
    
      border-radius: $fallback--btnRadius;
      border-radius: var(--btnRadius, $fallback--btnRadius);
    
      cursor: pointer;
      border-top: 1px solid rgba(255, 255, 255, 0.2);
      border-bottom: 1px solid rgba(0, 0, 0, 0.2);
      box-shadow: 0px 0px 2px black;
      font-size: 14px;
      font-family: sans-serif;
    
    HJ's avatar
    HJ committed
      &::-moz-focus-inner {
        border: none;
      }
    
    
      &:hover {
        box-shadow: 0px 0px 4px rgba(255, 255, 255, 0.3);
      }
    
    HJ's avatar
    HJ committed
      &:active {
        border-bottom: 1px solid rgba(255, 255, 255, 0.2);
        border-top: 1px solid rgba(0, 0, 0, 0.2);
      }
    
    
      &:disabled {
        cursor: not-allowed;
        opacity: 0.5;
      }
    
      &.pressed {
        color: $fallback--faint;
        color: var(--faint, $fallback--faint);
        background-color: $fallback--bg;
        background-color: var(--bg, $fallback--bg)
      }
    
    hakui's avatar
    hakui committed
    }
    
    
    HJ's avatar
    HJ committed
      border-radius: $fallback--inputRadius;
      border-radius: var(--inputRadius, $fallback--inputRadius);
    
      border-bottom: 1px solid rgba(255, 255, 255, 0.2);
      border-top: 1px solid rgba(0, 0, 0, 0.2);
      box-shadow: 0px 0px 2px black inset;
    
    HJ's avatar
    HJ committed
      background-color: $fallback--input;
      background-color: var(--input, $fallback--input);
    
      color: $fallback--lightFg;
      color: var(--lightFg, $fallback--lightFg);
    
      font-family: sans-serif;
      font-size: 14px;
    
    HJ's avatar
    HJ committed
      padding: 8px 7px;
    
      display: inline-block;
      position: relative;
    
      height: 29px;
      line-height: 16px;
    
    HJ's avatar
    HJ committed
      hyphens: none;
    
    
      .icon-down-open {
        position: absolute;
        top: 0;
        bottom: 0;
        right: 5px;
        height: 100%;
        color: $fallback--fg;
        color: var(--fg, $fallback--fg);
        line-height: 29px;
        z-index: 0;
        pointer-events: none;
      }
    
      select {
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        background: transparent;
        border: none;
        margin: 0;
        color: $fallback--fg;
        color: var(--fg, $fallback--fg);
    
        padding: 4px 2em 3px 3px;
    
        height: 29px;
        line-height: 16px;
    
    
      &[type=radio],
      &[type=checkbox] {
        display: none;
        &:checked + label::before {
    
          color: $fallback--fg;
          color: var(--fg, $fallback--fg);
    
        &:disabled,
        {
          &,
          & + label,
          & + label::before {
            opacity: .5;
          }
        }
    
        + label::before {
          display: inline-block;
          content: '✔';
          transition: color 200ms;
          width: 1.1em;
          height: 1.1em;
    
          border-radius: $fallback--checkBoxRadius;
          border-radius: var(--checkBoxRadius, $fallback--checkBoxRadius);
    
          border-bottom: 1px solid rgba(255, 255, 255, 0.2);
          border-top: 1px solid rgba(0, 0, 0, 0.2);
          box-shadow: 0px 0px 2px black inset;
          margin-right: .5em;
    
    HJ's avatar
    HJ committed
          background-color: $fallback--input;
    
          background-color: var(--input, $fallback--input);
    
          text-align: center;
          line-height: 1.1em;
          font-size: 1.1em;
          box-sizing: border-box;
          color: transparent;
          overflow: hidden;
    
    option {
      color: $fallback--fg;
      color: var(--fg, $fallback--fg);
      background-color: $fallback--bg;
      background-color: var(--bg, $fallback--bg);
    }
    
    
    HJ's avatar
    HJ committed
    i[class*=icon-] {
    
      color: $fallback--icon;
      color: var(--icon, $fallback--icon)
    
    lain's avatar
    .
    lain committed
    .container {
    
      display: flex;
      flex-wrap: wrap;
      margin: 0;
      padding: 0 10px 0 10px;
    
    lain's avatar
    .
    lain committed
    }
    
    .gaps {
    
    lain's avatar
    .
    lain committed
    }
    
    .item {
    
    HJ's avatar
    HJ committed
      line-height: 50px;
      height: 50px;
    
      .nav-icon {
        font-size: 1.1em;
        margin-left: 0.4em;
      }
    
    lain's avatar
    .
    lain committed
    }
    
    .gaps > .item {
    
    lain's avatar
    .
    lain committed
    }
    
    .auto-size {
    
    lain's avatar
    .
    lain committed
    }
    
    nav {
    
      width: 100%;
      align-items: center;
      position: fixed;
      height: 50px;
    
    
      .logo {
        display: flex;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
    
        align-items: stretch;
        justify-content: center;
        flex: 0 0 auto;
        z-index: -1;
    
        .mask {
          mask-repeat: no-repeat;
          mask-position: center;
          mask-size: contain;
          background-color: $fallback--fg;
          background-color: var(--fg, $fallback--fg);
          position: absolute;
          top: 0;
          bottom: 0;
          left: 0;
          right: 0;
        }
    
          height: 100%;
          object-fit: contain;
    
      .inner-nav {
        padding-left: 20px;
        padding-right: 20px;
        display: flex;
    
    lain's avatar
    .
    lain committed
        align-items: center;
    
        flex-basis: 970px;
        margin: auto;
    
    lain's avatar
    .
    lain committed
        height: 50px;
    
    
        a i {
          color: $fallback--link;
          color: var(--link, $fallback--link);
        }
    
    lain's avatar
    .
    lain committed
    }
    
    main-router {
    
    lain's avatar
    .
    lain committed
    }
    
    .status.compact {
    
      color: rgba(0, 0, 0, 0.42);
      font-weight: 300;
    
    lain's avatar
    .
    lain committed
    
    
    lain's avatar
    .
    lain committed
    }
    
    /* Panel */
    
    .panel {
    
      display: flex;
      flex-direction: column;
      margin: 0.5em;
    
    lain's avatar
    .
    lain committed
    
    
      background-color: $fallback--bg;
      background-color: var(--bg, $fallback--bg);
    
      border-radius: $fallback--panelRadius;
    
      border-radius: var(--panelRadius, $fallback--panelRadius);
    
      box-shadow: 1px 1px 4px rgba(0,0,0,.6);
    
    }
    
    .panel-body:empty::before {
    
      content: "¯\\_(ツ)_/¯"; // Could use words but it'd require translations
      display: block;
      margin: 1em;
      text-align: center;
    
    lain's avatar
    .
    lain committed
    }
    
    .panel-heading {
    
    HJ's avatar
    HJ committed
      display: flex;
    
      border-radius: $fallback--panelRadius $fallback--panelRadius 0 0;
      border-radius: var(--panelRadius, $fallback--panelRadius) var(--panelRadius, $fallback--panelRadius) 0 0;
    
    HJ's avatar
    HJ committed
      padding: .6em .6em;
    
      background-color: $fallback--btn;
      background-color: var(--btn, $fallback--btn);
    
    HJ's avatar
    HJ committed
      align-items: baseline;
    
      .title {
        flex: 1 0 auto;
    
        font-size: 1.3em;
      }
    
      .alert {
        white-space: nowrap;
        text-overflow: ellipsis;
        overflow-x: hidden;
    
    HJ's avatar
    HJ committed
      }
    
      button {
    
        flex-shrink: 0;
      }
    
      button, .alert {
        // height: 100%;
        line-height: 21px;
        min-height: 0;
        box-sizing: border-box;
        margin: 0;
        margin-left: .25em;
        min-width: 1px;
        align-self: stretch;
    
    HJ's avatar
    HJ committed
      }
    
    lain's avatar
    .
    lain committed
    }
    
    
    .panel-heading.stub {
      border-radius: $fallback--panelRadius;
      border-radius: var(--panelRadius, $fallback--panelRadius);
    }
    
    
    lain's avatar
    .
    lain committed
    .panel-footer {
    
      border-radius: 0 0 $fallback--panelRadius $fallback--panelRadius;
      border-radius: 0 0 var(--panelRadius, $fallback--panelRadius) var(--panelRadius, $fallback--panelRadius);
    
    lain's avatar
    .
    lain committed
    }
    
    .panel-body > p {
    
      line-height: 18px;
      padding: 1em;
      margin: 0;
    
    lain's avatar
    .
    lain committed
    }
    
    
    lain's avatar
    lain committed
    .container > * {
    
    lain's avatar
    .
    lain committed
    }
    
    .fa {
    
    lain's avatar
    .
    lain committed
    }
    
    
    lain's avatar
    lain committed
    nav {
    
      z-index: 1000;
      background-color: $fallback--btn;
      background-color: var(--btn, $fallback--btn);
      color: $fallback--faint;
      color: var(--faint, $fallback--faint);
      box-shadow: 0px 0px 4px rgba(0,0,0,.6);
    
    lain's avatar
    lain committed
    }
    
    
    .fade-enter-active, .fade-leave-active {
      transition: opacity .2s
    }
    .fade-enter, .fade-leave-active {
      opacity: 0
    }
    
    lain's avatar
    lain committed
    
    .main {
    
      flex-basis: 60%;
      flex-grow: 1;
      flex-shrink: 1;
    
    lain's avatar
    lain committed
    }
    
    lain's avatar
    lain committed
    .mobile-shown {
    
    lain's avatar
    lain committed
    }
    
    .panel-switcher {
    
      display: none;
      width: 100%;
      height: 46px;
      button {
        display: block;
        flex: 1;
        max-height: 32px;
        margin: 0.5em;
        padding: 0.5em;
      }
    
        flex-shrink: 0;
        flex-grow: 0;
    
    .alert {
      margin: 0.35em;
      padding: 0.25em;
      border-radius: $fallback--tooltipRadius;
      border-radius: var(--tooltipRadius, $fallback--tooltipRadius);
      color: $fallback--faint;
      color: var(--faint, $fallback--faint);
      min-height: 28px;
      line-height: 28px;
    
      &.error {
        background-color: $fallback--cAlertRed;
        background-color: var(--cAlertRed, $fallback--cAlertRed);
      }
    }
    
    
    .faint {
      color: $fallback--faint;
    
    Shpuld Shpludson's avatar
    Shpuld Shpludson committed
      color: var(--faint, $fallback--faint);
    
    lain's avatar
    lain committed
    @media all and (max-width: 959px) {
    
      .panel-switcher {
        display: flex;
      }
    
      .panel {
        margin: 0.5em 0 0.5em 0;
      }
    
    lain's avatar
    lain committed
    }
    
    lain's avatar
    lain committed
    
    .item.right {
    
      text-align: right;
      padding-right: 20px;
    
    lain's avatar
    lain committed
    }
    
    
    .visibility-tray {
      font-size: 1.2em;
      padding: 3px;
      cursor: pointer;
    
      .selected {
        color: $fallback--lightFg;
        color: var(--lightFg, $fallback--lightFg);
      }
    
    
      .text-format {
        float: right;
      }
    
    }
    
    .visibility-notice {
      padding: .5em;
      border: 1px solid $fallback--faint;
      border: 1px solid var(--faint, $fallback--faint);
      border-radius: $fallback--inputRadius;
      border-radius: var(--inputRadius, $fallback--inputRadius);
    }