Fix ios player playback/subtitles menu
[oweals/peertube.git] / client / src / sass / application.scss
index cdb4865577c4262d86236de4ac96150440ab7c2e..c1135cd023ec1e46fcae008712997dc7aacf6e7e 100644 (file)
-@import '../video.js/dist/video-js.css';
+$icon-font-path: '../../node_modules/@neos21/bootstrap3-glyphicons/assets/fonts/';
+@import '_bootstrap';
+
+@import '_variables';
+@import '_mixins';
+
+@import '_fonts';
+
+@import '~video.js/dist/video-js.css';
+
+$assets-path: '../assets/';
+@import './player/index';
+@import './loading-bar';
+
+@import './primeng-custom';
+
+[hidden] {
+  display: none !important;
+}
 
 body {
-  padding: 20px;
+  /*** theme ***/
+  // now beware node-sass requires interpolation
+  // for css custom properties #{$var}
+  --mainColor: #{$orange-color};
+  --mainHoverColor: #{$orange-hoover-color};
+  --mainBackgroundColor: #{$bg-color};
+  --mainForegroundColor: #{$fg-color};
+  --submenuColor: #{$sub-menu-color};
+  --inputColor: #{$input-background-color};
+  --inputPlaceholderColor: #{$input-placeholder-color};
+
+  font-family: $main-fonts;
+  font-weight: $font-regular;
+  color: var(--mainForegroundColor);
+  font-size: 14px;
+}
+
+#incompatible-browser {
+  display: none;
+  text-align: center;
+  position: absolute;
+  width: 100%;
+  top: 45%;
+}
+
+strong {
+  font-weight: $font-semibold;
+}
+
+input.readonly {
+  /* Force blank on readonly inputs */
+  background-color: var(--inputColor) !important;
+}
+
+input, textarea {
+  outline: none;
+  color: var(--mainForegroundColor);
+}
+
+label {
+  font-weight: $font-bold;
+  font-size: 15px;
+}
+
+.form-error {
+  display: block;
+  color: $red;
+  margin-top: 5px;
+}
+
+.input-error {
+  border-color: $red !important;
+}
+
+.fullWidth {
+  width: 100%;
+  margin-left: auto;
+  margin-right: auto;
+  max-width: initial;
+}
+
+.glyphicon-black {
+  color: black;
+}
+
+.main-col {
+  margin-left: $menu-width;
+  width: auto;
+
+  .margin-content {
+    margin-left: $not-expanded-horizontal-margins;
+    margin-right: $not-expanded-horizontal-margins;
+    flex-grow: 1;
+  }
+
+  .sub-menu {
+    background-color: var(--submenuColor);
+    width: 100%;
+    height: 81px;
+    margin-bottom: 30px;
+    display: flex;
+    align-items: center;
+    padding-left: $not-expanded-horizontal-margins;
+    padding-right: $not-expanded-horizontal-margins;
+  }
+
+  // Override some properties if the main content is expanded (no menu on the left)
+  &.expanded {
+    margin-left: 0;
+
+    .margin-content {
+      margin-left: $expanded-horizontal-margins;
+      margin-right: $expanded-horizontal-margins;
+    }
+
+    .sub-menu {
+      padding-left: $expanded-horizontal-margins;
+      padding-right: $expanded-horizontal-margins;
+    }
+  }
+}
+
+.title-page {
+  color: var(--mainForegroundColor);
+  font-size: 16px;
+  display: inline-block;
+  margin-right: 55px;
+  font-weight: $font-semibold;
+  @include disable-default-a-behaviour;
+
+  &.active, &.title-page-single {
+    border-bottom: 2px solid var(--mainColor);
+    font-weight: $font-bold;
+    margin-top: 30px;
+    margin-bottom: 25px;
+  }
+
+  &:hover, &:active, &:focus {
+    color: var(--mainForegroundColor);
+  }
+
+  @media screen and (max-width: 500px) {
+    margin-right: 20px;
+  }
+}
+
+.admin-sub-header {
+  display: flex;
+  align-items: center;
+  margin-bottom: 30px;
+
+  .form-sub-title {
+    flex-grow: 1;
+  }
+
+  .admin-sub-nav a {
+    @include disable-default-a-behaviour;
+
+    font-size: 16px;
+    color: var(--mainForegroundColor);
+    padding: 5px 15px;
+    border-radius: 0.25rem;
+
+    &.active {
+      font-weight: $font-semibold;
+      background-color: #f0f0f0;
+      color: #000;
+    }
+  }
+}
+
+.form-sub-title {
+  font-size: 20px;
+  font-weight: bold;
+}
+
+// Thanks https://gist.github.com/alexandrevicenzi/680147013e902a4eaa5d
+.glyphicon-refresh-animate {
+  animation: spin .7s infinite linear;
+}
 
-  @media screen and (max-width: 400px) {
-    padding: 3px;
+@keyframes spin {
+  from { transform: scale(1) rotate(0deg);}
+  to { transform: scale(1) rotate(360deg);}
+}
+
+// Bootstrap customizations
+.dropdown-menu {
+  border-radius: 3px;
+  box-shadow: 0 3px 6px;
+  font-size: 15px;
+
+  .dropdown-item {
+    padding: 3px 15px;
+  }
+
+  a {
+    color: #000 !important;
   }
 }
 
-menu {
-  @media screen and (max-width: 600px) {
-    margin-right: 3px !important;
-    padding: 3px !important;
-    min-height: 400px !important;
+.modal {
+  .modal-content {
+    background-color: var(--mainBackgroundColor);
   }
 
-  min-height: 600px;
-  margin-right: 20px;
-  border-right: 1px solid rgba(0, 0, 0, 0.2);
+  .modal-header {
+    border-bottom: none;
+    margin-bottom: 5px;
+
+    .modal-title {
+      font-size: 20px;
+      font-weight: $font-semibold;
+    }
+
+    .close {
+      @include icon(24px);
 
-  .panel-block:not(:last-child) {
-    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
+      position: relative;
+      top: 3px;
+      float: right;
+      background-image: url('../assets/images/global/cross.svg');
+
+      margin: 0;
+      padding: 0;
+      opacity: 1;
+    }
   }
 
-  .panel-button {
-    margin: 8px;
-    cursor: pointer;
-    transition: margin 0.2s;
+  .inputs {
+    margin-top: 40px;
+    margin-bottom: 0;
+    text-align: right;
 
-    &:hover {
-      margin-left: 15px;
+    .action-button-cancel {
+      @include peertube-button;
+      @include grey-button;
+
+      display: inline-block;
+      margin-right: 10px;
     }
 
-    a {
-      color: #333333;
+    .action-button-submit {
+      @include peertube-button;
+      @include orange-button;
     }
   }
+}
+
+// Nav customizations
+.nav .nav-link {
+  display: flex !important;
+  align-items: center;
+  height: 30px !important;
+  padding: 10px 15px !important;
+}
+
+.nav.nav-pills {
+  font-size: 16px !important;
+
+  .nav-link.active {
+    font-weight: $font-semibold !important;
+  }
+
+  a {
+    @include disable-default-a-behaviour;
+
+    color: var(--mainForegroundColor);
+  }
+}
+
+ngb-tabset.bootstrap {
 
-  .glyphicon {
-    margin: 5px;
+  .nav-link {
+    &, & a {
+      @include disable-default-a-behaviour;
+
+      color: var(--mainForegroundColor) !important;
+    }
   }
 }
 
-.table-column-id {
-  width: 200px;
+.orange-button {
+  @include peertube-button;
+  @include orange-button;
 }
 
-[hidden] {
-  display: none !important;
+.orange-button-link {
+  @include peertube-button-link;
+  @include orange-button;
 }
 
-input.readonly {
-  /* Force blank on readonly inputs */
-  background-color: #fff !important;
+.grey-button {
+  @include peertube-button;
+  @include grey-button;
 }
 
-footer {
-  border-top: 1px solid rgba(0, 0, 0, 0.2);
-  padding-top: 10px;
-  text-align: center;
-  font-size: small;
-  margin-top: 30px;
+.grey-button-link {
+  @include peertube-button-link;
+  @include grey-button;
 }
+
+// In tables, don't have a hover different background
+table {
+  .action-button-edit, .action-button-delete {
+    &:hover, &:active, &:focus, &[disabled], &.disabled {
+      background-color: $grey-color !important;
+    }
+  }
+}
+
+.no-results {
+  height: 40vh;
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  font-size: 16px;
+  font-weight: $font-semibold;
+}
+
+@media screen and (max-width: 1200px) {
+  .main-col {
+    &.expanded {
+      .margin-content {
+        margin-left: $expanded-horizontal-margins/2;
+        margin-right: $expanded-horizontal-margins/2;
+      }
+    }
+  }
+}
+
+@media screen and (max-width: 900px) {
+  .main-col {
+    &.expanded {
+      .margin-content {
+        margin-left: $expanded-horizontal-margins/3;
+        margin-right: $expanded-horizontal-margins/3;
+      }
+
+      .sub-menu {
+        padding-left: 50px;
+
+        .title-page {
+          font-size: 15px;
+        }
+      }
+    }
+  }
+}
+
+@media screen and (max-width: $small-view) {
+  .main-col {
+    margin-left: 0;
+
+    &, &.expanded {
+      .margin-content {
+        margin-left: 15px;
+        margin-right: 15px;
+      }
+
+      .sub-menu {
+        padding-left: 15px;
+        padding-right: 15px;
+        margin-bottom: 10px;
+      }
+
+      input[type=text], input[type=password] {
+        width: 100% !important;
+      }
+    }
+  }
+}
\ No newline at end of file