html, body {
  height: 100%;
}

body {
  min-width: 320px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}

body.fixed-navbar {
  padding-top: 70px;
}

#app {
  position: relative;
  z-index: 0;
}

/* Get rid of the left/right margins for the top navbar. */
.navbar {
  margin-left: 0;
  margin-right: 0;

  /* Make sure anything in the navbar orders above the page contents (e.g. gadgets) */
  z-index: 10;
}

.navbar .container-fluid {
  padding-left: 0;
  padding-right: 0;
}

.dropdown-header {
  text-align: center;
}

.page-menu {
  margin-left: -15px;
}

.page-menu > li > a {
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 50vw;
  overflow-x: hidden;
}

.page-menu > li > ui.dropdown-menu > li {
  line-height: 2em;
}

.page-menu-filter {
  padding: 10px;
}

.menu-icon {
  width: 20px;
  margin-right: 0.4em;
  text-align: center;
}

ul.navbar-menu {
  min-width: 230px;
  max-width: 50vw;
  max-height: 70vh;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}

.navbar-nav .open .dropdown-menu>li>a {
  line-height: 1.8em;
}

.dropdown-menu > li > a {
  word-wrap: normal;
  white-space: normal;
  word-break: break-word;
}

.logo {
  background-image: url("../images/groov-logo.png");
  background-size: 100%;
  background-repeat: no-repeat;
  width: 480px;
  height: 172px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 10px;
  margin-top: 30px;
}

.navbar-logo {
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  display: inline-block;
  left: 50%;
  margin-left: -68px;
  margin-top: 8px;
  width: 135px;
  height: 35px;
}

@media (max-width: 520px) {
  .logo {
    background-image: url("../images/groov-logo-mobile.png");
    width: 300px;
    height: 107px;
  }
}

/* Pages and gadgets */
.page-container {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;

  /* Make sure we're establishing a new stacking context for gadgets. */
  z-index: 1;
}

.gadget-container {
	position: absolute;
}

.gadget-container-bordered {
  position: absolute;
  border: 1px solid black;
  background-color: rgba(0, 0, 0, 0.2);
}

/* Edit views. */
.edit-row {
  /* The row of buttons we use ends up being 30 pixels high, so we make the line height on these
     rows 30 pixels to keep things lined up nicely.
  */
  line-height: 30px;
}

.edit-row-label {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  max-width: 65vw;
}

.label-disabled {
  background-color: white;
  color: #777;
}

/* Fix a rendering issue in Safari when using a fixed navbar.
 * For details: https://github.com/twbs/bootstrap/issues/11333
 */
.navbar-fixed-top {
   -webkit-font-smoothing: subpixel-antialiased;
}

/* Non-responsive overrides
 *
 * Utilize the following CSS to disable the responsive-ness of the container,
 * grid system, and navbar.
 */

.container > .navbar-header,
.container-fluid > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-collapse {
    margin-right: 0;
    margin-left: 0;
}

/* Always apply the floated nav */
.navbar-nav {
  float: left;
  margin: 0;
}
.navbar-nav > li {
  float: left;
}

.navbar-nav > li > a {
  padding: 15px;
  font-weight: bold;
}

/* Redeclare since we override the float above */
.navbar-nav.navbar-right {
  float: right;
}

/* Undo custom dropdowns */
.navbar .navbar-nav .open .dropdown-menu {
  position: absolute;
  float: left;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
          box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
}

.navbar-right .dropdown-menu {
  right: 0;
  left: auto;
}

/* Undo form expansion */
.navbar-form {
  float: left;
  width: auto;
  padding-top: 0;
  padding-bottom: 0;
  margin-right: 0;
  margin-left: 0;
  border: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
}

/* Copy-pasted from forms.less since we mixin the .form-inline styles. */
.navbar-form .form-group {
  display: inline-block;
  margin-bottom: 0;
  vertical-align: middle;
}

.navbar-form .form-control {
  display: inline-block;
  width: auto;
  vertical-align: middle;
}

.navbar-form .form-control-static {
  display: inline-block;
}

.navbar-form .input-group {
  display: inline-table;
  vertical-align: middle;
}

.navbar-form .input-group .input-group-addon,
.navbar-form .input-group .input-group-btn,
.navbar-form .input-group .form-control {
  width: auto;
}

.navbar-form .input-group > .form-control {
  width: 100%;
}

.navbar-form .control-label {
  margin-bottom: 0;
  vertical-align: middle;
}

.navbar-form .radio,
.navbar-form .checkbox {
  display: inline-block;
  margin-top: 0;
  margin-bottom: 0;
  vertical-align: middle;
}

.navbar-form .radio label,
.navbar-form .checkbox label {
  padding-left: 0;
}

.navbar-form .radio input[type="radio"],
.navbar-form .checkbox input[type="checkbox"] {
  position: relative;
  margin-left: 0;
}

.navbar-form .has-feedback .form-control-feedback {
  top: 0;
}

/* Undo inline form compaction on small screens */
.form-inline .form-group {
  display: inline-block;
  margin-bottom: 0;
  vertical-align: middle;
}

.form-inline .form-control {
  display: inline-block;
  width: auto;
  vertical-align: middle;
}

.form-inline .form-control-static {
  display: inline-block;
}

.form-inline .input-group {
  display: inline-table;
  vertical-align: middle;
}
.form-inline .input-group .input-group-addon,
.form-inline .input-group .input-group-btn,
.form-inline .input-group .form-control {
  width: auto;
}

.form-inline .input-group > .form-control {
  width: 100%;
}

.form-inline .control-label {
  margin-bottom: 0;
  vertical-align: middle;
}

.form-inline .radio,
.form-inline .checkbox {
  display: inline-block;
  margin-top: 0;
  margin-bottom: 0;
  vertical-align: middle;
}
.form-inline .radio label,
.form-inline .checkbox label {
  padding-left: 0;
}

.form-inline .radio input[type="radio"],
.form-inline .checkbox input[type="checkbox"] {
  position: relative;
  margin-left: 0;
}

.form-inline .has-feedback .form-control-feedback {
  top: 0;
}
