.clearfix:after, .request-filter-form:after, .create-form .submit-row:after,
.create-form .sub-form:after, .create-form .form-group:after {
  content: "";
  display: table;
  clear: both; }

body {
  overflow-x: initial; }

@page {
  margin: 0.75cm; }

header {
  display: block !important; }
  @media only screen and (max-width: 768px) {
    header #logo {
      left: -14px; }
    header .header-menu {
      margin: 10px -32px 0;
      padding-left: 0;
      padding-bottom: 10px; }
      header .header-menu li {
        width: 100%;
        padding-left: 0; } }
  header .header-menu li.open .dropdown-menu a {
    color: #333; }
    header .header-menu li.open .dropdown-menu a:hover {
      color: #fff;
      background-color: #448DDE !important; }
  header .header-menu-nav > ul > li > a {
    font-size: 110%;
    margin-left: 1em; }
    header .header-menu-nav > ul > li > a .glyphicon {
      top: 3px; }
      @media only screen and (max-width: 768px) {
        header .header-menu-nav > ul > li > a .glyphicon {
          top: -2px; } }
  header .header-menu-nav .dropdown-menu {
    margin-left: 30px;
    margin-top: 5px;
    padding-bottom: 2px; }
    header .header-menu-nav .dropdown-menu.dropdown-create {
      min-width: 160px; }
    header .header-menu-nav .dropdown-menu > li .glyphicon {
      top: 2px;
      font-size: 14px; }

body > .container {
  min-height: calc(100vh - 385px);
  position: relative; }

@media only screen and (max-width:991px) {
  .row {
    margin: 0; }
  .fullwidth {
    padding: 0; }
  .breadcrumb {
    font-size: 90%; } }

@media only screen and (min-width:992px) {
  footer {
    height: 180px; } }

@media print {
  footer {
    display: none; } }

.navbar-default {
  border: none;
  box-shadow: 0 0 20px -7px rgba(0, 0, 0, 0.5); }

.pages {
  margin-top: 2em; }

.label {
  display: inline-block;
  padding: 5px 6px; }

.label-new {
  background-color: #dfe19077;
  color: rgba(0, 0, 0, 0.5);
  border: 1px solid rgba(0, 0, 0, 0.05);
  padding: 4px 5px 3px; }

.content .search-form button:not(:last-child) {
  right: 75px; }

.content .search-form .btn.reset {
  position: absolute;
  right: 30px;
  width: 45px;
  height: 45px;
  background-color: #ff9933;
  border-color: #ff8c19; }

.content h1 {
  font-size: 32px;
  margin-top: 0.66rem; }
  .content h1 small {
    display: inline-block;
    margin-left: 1rem; }
  @media only screen and (max-width: 768px) {
    .content h1 {
      font-size: 24px;
      margin-bottom: 0.75em; } }
  @media print {
    .content h1 {
      color: #111 !important;
      font-size: 15pt; } }
  .content h1 .print-title {
    display: none; }
    @media print {
      .content h1 .print-title {
        display: inline; } }
.alert p {
  margin-bottom: 0; }

.inactive {
  opacity: 0.8; }
  .inactive:hover {
    opacity: 1; }

.has-tooltip {
  color: #555555;
  border-bottom: 1px dotted #555555; }
  .has-tooltip:hover {
    cursor: default; }

.tooltip-inner {
  padding: 7px; }

ol {
  padding-left: 1.5em; }

.well {
  padding: 8px 12px;
  margin: 3px 0 20px; }

a.btn .glyphicon {
  color: #fff;
  margin-left: -3px; }
  a.btn .glyphicon.glyphicon-print {
    font-size: 85%;
    margin-left: -2px;
    margin-right: -3px; }

.btn {
  border: 1px solid transparent; }
  .btn:hover .glyphicon, .btn:hover .glyphicon::before {
    color: #ffffff !important; }

.bootstrap-datetimepicker-widget a.btn .glyphicon {
  color: #448DDE; }

a.btn-xs .glyphicon {
  font-size: 14px;
  margin-right: -2px; }

.btn.pull-right + .btn.pull-right {
  margin-right: 5px; }

body.staff .text-block .text-block-edit {
  display: block;
  position: absolute;
  top: -16px;
  right: 0;
  font-size: 1.2rem;
  font-style: normal;
  font-weight: normal; }

.request-list table tbody {
  font-size: 85%; }
  @media print {
    .request-list table tbody {
      font-size: 8pt; } }
  @media only screen and (max-width: 768px) {
    .request-list table tbody {
      font-size: 120%; } }
  .request-list table tbody .request-list--grouper td {
    font-weight: bold;
    font-size: 14px;
    background-color: #F1F7FD; }
    @media print {
      .request-list table tbody .request-list--grouper td {
        display: none; } }
  @media only screen and (max-width: 768px) {
    .request-list table tbody td {
      padding-top: 12px;
      padding-bottom: 12px; }
      .request-list table tbody td.long-text {
        max-width: 120px;
        white-space: normal; } }
  .request-list table tbody td.alt-request {
    color: #555555; }
  .request-list table tbody td.action-icons {
    text-align: right; }
  @media print {
    .request-list table tbody td.cbx {
      display: none; } }
  .request-list table tbody td .action-icon .glyphicon {
    font-size: 14px;
    width: 18px; }
    .request-list table tbody td .action-icon .glyphicon.glyphicon-print {
      font-size: 11px; }
  .request-list table tbody td .action-icon.disabled {
    opacity: 0.33;
    filter: grayscale(1); }
  .request-list table tbody td .action-icon.btn {
    margin: -3px 2px;
    border-radius: 2px; }
  .request-list table tbody td .action-icon:hover .glyphicon {
    color: #1c5ba0; }

.sum-table {
  margin-top: -0.5em;
  border-top: 1px solid #448DDE;
  border-bottom: 1px solid #448DDE;
  background-color: #F1F7FD; }
  @media print {
    .sum-table {
      margin-top: 0.5em; } }
  .sum-table tr:first-child td {
    padding-top: 1em !important; }
  .sum-table tr:last-child td {
    padding-bottom: 1em !important; }
  .sum-table td {
    border: none !important;
    text-align: right;
    padding: 0.25em 0 !important; }
  .sum-table td:last-child {
    padding-right: 1.5em !important; }
    @media print {
      .sum-table td:last-child {
        padding-right: 0.85cm !important; } }
  .sum-table td:first-child {
    width: 99%; }
  .sum-table .sum-label {
    padding-right: 10px !important; }
    .sum-table .sum-label:after {
      content: ":"; }
  .sum-table .sum {
    font-weight: bold; }
  .sum-table .sum-total {
    font-weight: bold;
    font-size: 105%; }

.muted {
  color: #cccccc; }

.info-sidebar {
  padding: 0 0 20px 30px; }
  @media only screen and (max-width: 768px) {
    .info-sidebar {
      margin-top: 2em; } }
.text-block {
  position: relative; }
  .text-block .text-block-edit {
    display: none; }

.content .request-detail dl {
  margin: 8px 0;
  padding: 8px 0 0;
  border-top: 1px solid rgba(241, 247, 253, 0.5); }
  .content .request-detail dl:first-child {
    border-top: 0; }
  .content .request-detail dl.total {
    font-size: 110%; }
  @media only screen and (max-width: 768px) {
    .content .request-detail dl {
      padding-top: 12px; } }
.request-detail--data {
  padding-bottom: 8px; }

.request-detail--data dl dd,
.request-detail--data dl dt {
  display: inline-block;
  vertical-align: middle;
  padding: 3px 0; }
  @media only screen and (max-width: 768px) {
    .request-detail--data dl dd,
    .request-detail--data dl dt {
      padding: 2px 0; } }
  .request-detail--data dl dd.large,
  .request-detail--data dl dt.large {
    font-size: 120%; }

.request-detail--data dl dt {
  width: 35%;
  text-align: right; }
  .request-detail--data dl dt.text + dd {
    vertical-align: top;
    font-size: 90%; }
  @media only screen and (max-width: 768px) {
    .request-detail--data dl dt {
      width: 100%;
      text-align: left;
      padding-left: 10px;
      margin-bottom: -3px; } }
.request-detail--data dl dd {
  margin-left: 1em;
  width: calc(65% - 20px); }
  @media only screen and (max-width: 768px) {
    .request-detail--data dl dd {
      width: 100%;
      text-align: left;
      margin-bottom: 5px;
      margin-left: 10px; }
      .request-detail--data dl dd .status-text {
        display: block;
        margin-top: 3px; } }
  .request-detail--data dl dd.has-listing {
    vertical-align: top; }
    .request-detail--data dl dd.has-listing .list-item {
      display: block;
      margin-bottom: 5px; }
      @media only screen and (min-width:769px) {
        .request-detail--data dl dd.has-listing .list-item {
          margin-left: -3px;
          margin-bottom: 3px; } }
      .request-detail--data dl dd.has-listing .list-item .btn {
        margin-top: -2px; }

.request-list tr.clickable:hover {
  background-color: #D1E3F6;
  cursor: pointer; }

.request-list th .sort-link {
  color: #448DDE;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  transition: color 0.2s ease; }
  .request-list th .sort-link:hover {
    color: #2067b5;
    text-decoration: underline; }
  .request-list th .sort-link .sort-icon {
    width: 10px;
    height: 10px;
    display: inline-flex; }
    .request-list th .sort-link .sort-icon svg {
      width: 100%;
      height: 100%;
      vertical-align: middle; }

.submit-row {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap; }
  @media only screen and (max-width: 768px) {
    .submit-row {
      flex-direction: column;
      align-items: stretch; }
      .submit-row .btn {
        margin-bottom: 15px; }
        .submit-row .btn:last-child {
          margin-bottom: 0; } }
  .submit-row .button-group-right {
    display: flex;
    gap: 5px;
    flex-wrap: wrap;
    margin-left: auto;
    margin-right: -10px; }
    .submit-row .button-group-right .btn-danger {
      margin-left: 30px; }
    @media only screen and (max-width: 768px) {
      .submit-row .button-group-right {
        flex-direction: column;
        width: 100%;
        margin-left: 0; }
        .submit-row .button-group-right .btn-danger {
          margin-left: 0; } }
.form-box {
  max-width: 600px;
  padding: 30px;
  background-color: rgba(238, 238, 238, 0.7); }
  .form-box .form-group {
    margin-top: 1.5em; }

.create-form {
  padding: 30px;
  background-color: #D1E3F6; }
  @media only screen and (max-width: 768px) {
    .create-form {
      padding: 5px 12px 12px; } }
  .create-form .alert {
    position: relative;
    top: 1rem; }
  .create-form .form-header {
    background-color: rgba(255, 255, 255, 0.5);
    margin-top: -1.75em;
    margin-left: -1.75em;
    margin-bottom: 0.5em;
    width: calc(100% + 3.5em);
    padding: 1.5em 2.5em 0.5em 2em;
    border-bottom: 1px solid #bcd6f2; }
    @media only screen and (max-width: 768px) {
      .create-form .form-header {
        padding: 0.65em 0.75em;
        margin-left: -0.33em;
        margin-top: 0;
        width: calc(100% + 0.7em); } }
  .create-form h3 {
    position: relative; }
    .create-form h3 span {
      display: inline-block;
      float: left;
      margin-bottom: 1.5rem; }
      @media only screen and (max-width: 768px) {
        .create-form h3 span {
          padding-left: 1rem;
          padding-top: 0.5rem; } }
  .create-form .control-label {
    font-size: 15px; }
    @media only screen and (max-width: 768px) {
      .create-form .control-label {
        font-size: 13px;
        width: 110%; } }
    .create-form .control-label.required:after {
      content: "*"; }
  .create-form input[type="text"],
  .create-form input[type="date"],
  .create-form input[type="time"],
  .create-form input[type="number"],
  .create-form select {
    height: 40px; }
  .create-form textarea {
    height: 62px;
    line-height: 1.5;
    font-size: 15px;
    padding: 8px 12px; }
  .create-form input[type="file"] {
    border: none;
    outline: none; }
  .create-form .help-block {
    font-size: 12px; }
  .create-form .input-group {
    margin-bottom: 10px; }
  .create-form .input-group-addon {
    width: 32px;
    padding: 0; }
    .create-form .input-group-addon .glyphicon {
      font-size: 16px; }
  .create-form .form-group {
    margin-bottom: 5px;
    display: inline-block;
    width: 100%; }
  .create-form .side-by-side {
    display: flex;
    justify-content: space-between; }
    .create-form .side-by-side .form-group {
      vertical-align: top; }
    .create-form .side-by-side.two .form-group {
      width: calc(50% - 6px); }
    .create-form .side-by-side.three .form-group {
      width: calc(33.333% - 6px); }
  .create-form .formset {
    padding: 0;
    margin-bottom: 21px;
    margin-top: -1px; }
    .create-form .formset .formset-forms {
      padding-top: 2px;
      padding-bottom: 0.66rem; }
      .create-form .formset .formset-forms .alert {
        font-size: 90%; }
    .create-form .formset .formset-form {
      display: none;
      padding: 0.66rem 0;
      border-top: 1px solid #cccccc;
      position: relative;
      opacity: 0.9; }
      .create-form .formset .formset-form:hover {
        opacity: 1; }
      .create-form .formset .formset-form:first-child {
        border-top: none;
        margin-top: -1rem; }
      .create-form .formset .formset-form.has-changed {
        display: block;
        margin-bottom: 0; }
      .create-form .formset .formset-form label {
        font-size: 14px; }
      .create-form .formset .formset-form .form-group input:not([type="file"]) {
        padding: 5px 8px;
        margin-bottom: 0; }
      .create-form .formset .formset-form .form-group {
        vertical-align: top; }
      .create-form .formset .formset-form .remove-formset {
        position: absolute;
        right: 3px;
        top: 3px;
        display: inline-block;
        width: 16px;
        height: 16px; }
        .create-form .formset .formset-form .remove-formset .glyphicon {
          font-size: 16px; }
    .create-form .formset .add-formset .glyphicon {
      font-size: 16px;
      position: relative;
      top: 0; }
  .create-form .passenger-form .form-group {
    display: inline-block; }
    .create-form .passenger-form .form-group:first-child {
      width: 65%; }
    .create-form .passenger-form .form-group:nth-child(2) {
      width: calc(35% - 4px); }
  .create-form .receipt-form .form-group:nth-child(2),
  .create-form .receipt-form .form-group:nth-child(3) {
    display: inline-block;
    width: 70%;
    overflow: hidden; }
  .create-form .receipt-form .form-group:nth-child(3) {
    width: calc(30% - 4px); }
  .create-form .receipt-form input[type="file"] {
    font-size: 12px;
    max-width: 250px; }
  .create-form .submit-row,
  .create-form .sub-form {
    margin: 15px -30px 0;
    padding: 25px 30px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.5); }
    .create-form .submit-row .form-group,
    .create-form .sub-form .form-group {
      margin-bottom: 0; }
    @media only screen and (max-width: 768px) {
      .create-form .submit-row,
      .create-form .sub-form {
        margin: 0 -12px;
        padding: 20px 20px 5px; }
        .create-form .submit-row .btn,
        .create-form .sub-form .btn {
          width: 100%;
          margin: 0 0 5px; }
          .create-form .submit-row .btn.pull-right,
          .create-form .sub-form .btn.pull-right {
            margin-right: 0; }
          .create-form .submit-row .btn:first-child,
          .create-form .sub-form .btn:first-child {
            margin-bottom: 24px; }
          .create-form .submit-row .btn:last-child,
          .create-form .sub-form .btn:last-child {
            margin-top: 20px; }
        .create-form .submit-row .form-toggle,
        .create-form .sub-form .form-toggle {
          margin-top: 12px; } }
  .create-form .submit-row .form-description {
    padding: 0 0 10px; }
  .create-form ul.nav-tabs {
    position: relative;
    float: right;
    width: auto;
    bottom: 5px;
    margin: 0; }
    @media only screen and (max-width: 768px) {
      .create-form ul.nav-tabs {
        width: 100%;
        left: 5px; } }
    .create-form ul.nav-tabs li a,
    .create-form ul.nav-tabs li input {
      display: inline-block;
      margin: 0; }
    .create-form ul.nav-tabs li input {
      position: relative;
      top: 4px;
      margin-right: 10px; }
    .create-form ul.nav-tabs li a {
      font-size: 14px;
      font-weight: bold;
      color: #111111;
      border-radius: 5px 5px 0 0;
      opacity: 0.66;
      background-color: transparent;
      margin-right: 10px; }
      @media only screen and (max-width: 768px) {
        .create-form ul.nav-tabs li a {
          padding: 3px 8px 4px;
          font-size: 14px;
          margin-right: 3px; } }
      .create-form ul.nav-tabs li a:hover {
        color: #111111;
        opacity: 1;
        border-color: transparent;
        background-color: transparent; }
      .create-form ul.nav-tabs li a span {
        display: block;
        position: absolute;
        width: 20px;
        height: 20px;
        margin-top: -20px; }
    .create-form ul.nav-tabs li:last-child a {
      padding-right: 0;
      margin-right: 0; }
    .create-form ul.nav-tabs li.active a {
      color: #111111;
      opacity: 1;
      background-color: transparent;
      border-color: transparent; }

.form-description {
  font-size: 90%; }

form .form-control {
  color: #555555; }

form .control-label {
  margin-bottom: 5px;
  font-size: 13px; }

.content .typeahead.dropdown-menu {
  list-style: none;
  margin-left: 0;
  font-size: 14px;
  left: 16px;
  width: calc(100% - 31px);
  overflow: hidden; }
  .content .typeahead.dropdown-menu li a {
    padding: 5px 8px; }

#create-request .help-block {
  font-size: 12px; }

.form-box {
  max-width: 600px;
  padding: 30px;
  background-color: rgba(238, 238, 238, 0.7); }
  .form-box .form-group {
    margin-top: 1.5em; }

#id_date {
  margin-top: 0; }

.input-group-addon {
  padding: 3px; }
  .input-group-addon span {
    font-size: 1em; }

.bootstrap-datetimepicker-widget ul {
  list-style: none; }

.request-filter-form {
  margin: 0 -15px 1.5em; }
  .request-filter-form h4 {
    margin: 0;
    padding: 0.6em 0.8em;
    height: 2.5em;
    background-color: #F1F7FD; }
  .request-filter-form .search-form {
    margin-top: 0;
    margin-bottom: 20px; }
    .request-filter-form .search-form input {
      margin-top: 16px;
      float: left; }
  @media only screen and (max-width: 768px) {
    .request-filter-form {
      display: none; } }
  @media print {
    .request-filter-form {
      display: none; } }
.search-form-filter h4 {
  margin: -16px -15px 1.5rem; }

.search-form-filter .fields {
  margin: 0; }

.search-form-filter .form-group {
  clear: both; }

.search-form-filter .date-filter {
  margin-bottom: 10px; }

.search-form-filter .date-filter > label {
  font-size: 14px;
  margin-bottom: 0.5em; }

.search-form-filter .date-filter .form-group {
  width: calc(50% - 0.33em);
  display: inline-block;
  margin: 0 0.5em 0 0; }
  .search-form-filter .date-filter .form-group label {
    display: none; }
  .search-form-filter .date-filter .form-group input {
    font-size: 12px; }
  .search-form-filter .date-filter .form-group:last-child {
    margin-left: -3px;
    margin-right: -8px; }
  .search-form-filter .date-filter .form-group .help-block {
    float: right;
    font-size: 12px; }

.search-form-filter .filter-form-show-more {
  font-size: 90%; }
  .search-form-filter .filter-form-show-more .less {
    display: none; }

.search-form-filter .collapsing + .filter-form-show-more .less,
.search-form-filter .collapse.in + .filter-form-show-more .less {
  display: inline; }

.search-form-filter .collapsing + .filter-form-show-more .more,
.search-form-filter .collapse.in + .filter-form-show-more .more {
  display: none; }

.label.label-info {
  background-color: #8fabc8; }
