@charset "UTF-8";
/*!
 * Bootstrap v3.4.1 (https://getbootstrap.com/)
 * Copyright 2011-2019 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

a:active,
a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type=checkbox],
input[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

input[type=search] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print {
  *,
  *:before,
  *:after {
    color: #000 !important;
    text-shadow: none !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  .navbar {
    display: none;
  }
  .btn > .caret,
  .dropup > .btn > .caret {
    border-top-color: #000 !important;
  }
  .label {
    border: 1px solid #000;
  }
  .table {
    border-collapse: collapse !important;
  }
  .table td,
  .table th {
    background-color: #fff !important;
  }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ddd !important;
  }
}
@font-face {
  font-family: "Glyphicons Halflings";
  src: url(/fonts/vendor/bootstrap-sass/bootstrap/glyphicons-halflings-regular.eot?5be1347c682810f199c7f486f40c5974);
  src: url(/fonts/vendor/bootstrap-sass/bootstrap/glyphicons-halflings-regular.eot?5be1347c682810f199c7f486f40c5974?#iefix) format("embedded-opentype"), url(/fonts/vendor/bootstrap-sass/bootstrap/glyphicons-halflings-regular.woff2?be810be3a3e14c682a257d6eff341fe4) format("woff2"), url(/fonts/vendor/bootstrap-sass/bootstrap/glyphicons-halflings-regular.woff?82b1212e45a2bc35dd731913b27ad813) format("woff"), url(/fonts/vendor/bootstrap-sass/bootstrap/glyphicons-halflings-regular.ttf?4692b9ec53fd5972caa2f2372ae20d16) format("truetype"), url(/fonts/vendor/bootstrap-sass/bootstrap/glyphicons-halflings-regular.svg?060b2710bdbbe3dfe48b58d59bd5f1fb#glyphicons_halflingsregular) format("svg");
}
.glyphicon {
  position: relative;
  top: 1px;
  display: inline-block;
  font-family: "Glyphicons Halflings";
  font-style: normal;
  font-weight: 400;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.glyphicon-asterisk:before {
  content: "*";
}

.glyphicon-plus:before {
  content: "+";
}

.glyphicon-euro:before,
.glyphicon-eur:before {
  content: "€";
}

.glyphicon-minus:before {
  content: "−";
}

.glyphicon-cloud:before {
  content: "☁";
}

.glyphicon-envelope:before {
  content: "✉";
}

.glyphicon-pencil:before {
  content: "✏";
}

.glyphicon-glass:before {
  content: "\e001";
}

.glyphicon-music:before {
  content: "\e002";
}

.glyphicon-search:before {
  content: "\e003";
}

.glyphicon-heart:before {
  content: "\e005";
}

.glyphicon-star:before {
  content: "\e006";
}

.glyphicon-star-empty:before {
  content: "\e007";
}

.glyphicon-user:before {
  content: "\e008";
}

.glyphicon-film:before {
  content: "\e009";
}

.glyphicon-th-large:before {
  content: "\e010";
}

.glyphicon-th:before {
  content: "\e011";
}

.glyphicon-th-list:before {
  content: "\e012";
}

.glyphicon-ok:before {
  content: "\e013";
}

.glyphicon-remove:before {
  content: "\e014";
}

.glyphicon-zoom-in:before {
  content: "\e015";
}

.glyphicon-zoom-out:before {
  content: "\e016";
}

.glyphicon-off:before {
  content: "\e017";
}

.glyphicon-signal:before {
  content: "\e018";
}

.glyphicon-cog:before {
  content: "\e019";
}

.glyphicon-trash:before {
  content: "\e020";
}

.glyphicon-home:before {
  content: "\e021";
}

.glyphicon-file:before {
  content: "\e022";
}

.glyphicon-time:before {
  content: "\e023";
}

.glyphicon-road:before {
  content: "\e024";
}

.glyphicon-download-alt:before {
  content: "\e025";
}

.glyphicon-download:before {
  content: "\e026";
}

.glyphicon-upload:before {
  content: "\e027";
}

.glyphicon-inbox:before {
  content: "\e028";
}

.glyphicon-play-circle:before {
  content: "\e029";
}

.glyphicon-repeat:before {
  content: "\e030";
}

.glyphicon-refresh:before {
  content: "\e031";
}

.glyphicon-list-alt:before {
  content: "\e032";
}

.glyphicon-lock:before {
  content: "\e033";
}

.glyphicon-flag:before {
  content: "\e034";
}

.glyphicon-headphones:before {
  content: "\e035";
}

.glyphicon-volume-off:before {
  content: "\e036";
}

.glyphicon-volume-down:before {
  content: "\e037";
}

.glyphicon-volume-up:before {
  content: "\e038";
}

.glyphicon-qrcode:before {
  content: "\e039";
}

.glyphicon-barcode:before {
  content: "\e040";
}

.glyphicon-tag:before {
  content: "\e041";
}

.glyphicon-tags:before {
  content: "\e042";
}

.glyphicon-book:before {
  content: "\e043";
}

.glyphicon-bookmark:before {
  content: "\e044";
}

.glyphicon-print:before {
  content: "\e045";
}

.glyphicon-camera:before {
  content: "\e046";
}

.glyphicon-font:before {
  content: "\e047";
}

.glyphicon-bold:before {
  content: "\e048";
}

.glyphicon-italic:before {
  content: "\e049";
}

.glyphicon-text-height:before {
  content: "\e050";
}

.glyphicon-text-width:before {
  content: "\e051";
}

.glyphicon-align-left:before {
  content: "\e052";
}

.glyphicon-align-center:before {
  content: "\e053";
}

.glyphicon-align-right:before {
  content: "\e054";
}

.glyphicon-align-justify:before {
  content: "\e055";
}

.glyphicon-list:before {
  content: "\e056";
}

.glyphicon-indent-left:before {
  content: "\e057";
}

.glyphicon-indent-right:before {
  content: "\e058";
}

.glyphicon-facetime-video:before {
  content: "\e059";
}

.glyphicon-picture:before {
  content: "\e060";
}

.glyphicon-map-marker:before {
  content: "\e062";
}

.glyphicon-adjust:before {
  content: "\e063";
}

.glyphicon-tint:before {
  content: "\e064";
}

.glyphicon-edit:before {
  content: "\e065";
}

.glyphicon-share:before {
  content: "\e066";
}

.glyphicon-check:before {
  content: "\e067";
}

.glyphicon-move:before {
  content: "\e068";
}

.glyphicon-step-backward:before {
  content: "\e069";
}

.glyphicon-fast-backward:before {
  content: "\e070";
}

.glyphicon-backward:before {
  content: "\e071";
}

.glyphicon-play:before {
  content: "\e072";
}

.glyphicon-pause:before {
  content: "\e073";
}

.glyphicon-stop:before {
  content: "\e074";
}

.glyphicon-forward:before {
  content: "\e075";
}

.glyphicon-fast-forward:before {
  content: "\e076";
}

.glyphicon-step-forward:before {
  content: "\e077";
}

.glyphicon-eject:before {
  content: "\e078";
}

.glyphicon-chevron-left:before {
  content: "\e079";
}

.glyphicon-chevron-right:before {
  content: "\e080";
}

.glyphicon-plus-sign:before {
  content: "\e081";
}

.glyphicon-minus-sign:before {
  content: "\e082";
}

.glyphicon-remove-sign:before {
  content: "\e083";
}

.glyphicon-ok-sign:before {
  content: "\e084";
}

.glyphicon-question-sign:before {
  content: "\e085";
}

.glyphicon-info-sign:before {
  content: "\e086";
}

.glyphicon-screenshot:before {
  content: "\e087";
}

.glyphicon-remove-circle:before {
  content: "\e088";
}

.glyphicon-ok-circle:before {
  content: "\e089";
}

.glyphicon-ban-circle:before {
  content: "\e090";
}

.glyphicon-arrow-left:before {
  content: "\e091";
}

.glyphicon-arrow-right:before {
  content: "\e092";
}

.glyphicon-arrow-up:before {
  content: "\e093";
}

.glyphicon-arrow-down:before {
  content: "\e094";
}

.glyphicon-share-alt:before {
  content: "\e095";
}

.glyphicon-resize-full:before {
  content: "\e096";
}

.glyphicon-resize-small:before {
  content: "\e097";
}

.glyphicon-exclamation-sign:before {
  content: "\e101";
}

.glyphicon-gift:before {
  content: "\e102";
}

.glyphicon-leaf:before {
  content: "\e103";
}

.glyphicon-fire:before {
  content: "\e104";
}

.glyphicon-eye-open:before {
  content: "\e105";
}

.glyphicon-eye-close:before {
  content: "\e106";
}

.glyphicon-warning-sign:before {
  content: "\e107";
}

.glyphicon-plane:before {
  content: "\e108";
}

.glyphicon-calendar:before {
  content: "\e109";
}

.glyphicon-random:before {
  content: "\e110";
}

.glyphicon-comment:before {
  content: "\e111";
}

.glyphicon-magnet:before {
  content: "\e112";
}

.glyphicon-chevron-up:before {
  content: "\e113";
}

.glyphicon-chevron-down:before {
  content: "\e114";
}

.glyphicon-retweet:before {
  content: "\e115";
}

.glyphicon-shopping-cart:before {
  content: "\e116";
}

.glyphicon-folder-close:before {
  content: "\e117";
}

.glyphicon-folder-open:before {
  content: "\e118";
}

.glyphicon-resize-vertical:before {
  content: "\e119";
}

.glyphicon-resize-horizontal:before {
  content: "\e120";
}

.glyphicon-hdd:before {
  content: "\e121";
}

.glyphicon-bullhorn:before {
  content: "\e122";
}

.glyphicon-bell:before {
  content: "\e123";
}

.glyphicon-certificate:before {
  content: "\e124";
}

.glyphicon-thumbs-up:before {
  content: "\e125";
}

.glyphicon-thumbs-down:before {
  content: "\e126";
}

.glyphicon-hand-right:before {
  content: "\e127";
}

.glyphicon-hand-left:before {
  content: "\e128";
}

.glyphicon-hand-up:before {
  content: "\e129";
}

.glyphicon-hand-down:before {
  content: "\e130";
}

.glyphicon-circle-arrow-right:before {
  content: "\e131";
}

.glyphicon-circle-arrow-left:before {
  content: "\e132";
}

.glyphicon-circle-arrow-up:before {
  content: "\e133";
}

.glyphicon-circle-arrow-down:before {
  content: "\e134";
}

.glyphicon-globe:before {
  content: "\e135";
}

.glyphicon-wrench:before {
  content: "\e136";
}

.glyphicon-tasks:before {
  content: "\e137";
}

.glyphicon-filter:before {
  content: "\e138";
}

.glyphicon-briefcase:before {
  content: "\e139";
}

.glyphicon-fullscreen:before {
  content: "\e140";
}

.glyphicon-dashboard:before {
  content: "\e141";
}

.glyphicon-paperclip:before {
  content: "\e142";
}

.glyphicon-heart-empty:before {
  content: "\e143";
}

.glyphicon-link:before {
  content: "\e144";
}

.glyphicon-phone:before {
  content: "\e145";
}

.glyphicon-pushpin:before {
  content: "\e146";
}

.glyphicon-usd:before {
  content: "\e148";
}

.glyphicon-gbp:before {
  content: "\e149";
}

.glyphicon-sort:before {
  content: "\e150";
}

.glyphicon-sort-by-alphabet:before {
  content: "\e151";
}

.glyphicon-sort-by-alphabet-alt:before {
  content: "\e152";
}

.glyphicon-sort-by-order:before {
  content: "\e153";
}

.glyphicon-sort-by-order-alt:before {
  content: "\e154";
}

.glyphicon-sort-by-attributes:before {
  content: "\e155";
}

.glyphicon-sort-by-attributes-alt:before {
  content: "\e156";
}

.glyphicon-unchecked:before {
  content: "\e157";
}

.glyphicon-expand:before {
  content: "\e158";
}

.glyphicon-collapse-down:before {
  content: "\e159";
}

.glyphicon-collapse-up:before {
  content: "\e160";
}

.glyphicon-log-in:before {
  content: "\e161";
}

.glyphicon-flash:before {
  content: "\e162";
}

.glyphicon-log-out:before {
  content: "\e163";
}

.glyphicon-new-window:before {
  content: "\e164";
}

.glyphicon-record:before {
  content: "\e165";
}

.glyphicon-save:before {
  content: "\e166";
}

.glyphicon-open:before {
  content: "\e167";
}

.glyphicon-saved:before {
  content: "\e168";
}

.glyphicon-import:before {
  content: "\e169";
}

.glyphicon-export:before {
  content: "\e170";
}

.glyphicon-send:before {
  content: "\e171";
}

.glyphicon-floppy-disk:before {
  content: "\e172";
}

.glyphicon-floppy-saved:before {
  content: "\e173";
}

.glyphicon-floppy-remove:before {
  content: "\e174";
}

.glyphicon-floppy-save:before {
  content: "\e175";
}

.glyphicon-floppy-open:before {
  content: "\e176";
}

.glyphicon-credit-card:before {
  content: "\e177";
}

.glyphicon-transfer:before {
  content: "\e178";
}

.glyphicon-cutlery:before {
  content: "\e179";
}

.glyphicon-header:before {
  content: "\e180";
}

.glyphicon-compressed:before {
  content: "\e181";
}

.glyphicon-earphone:before {
  content: "\e182";
}

.glyphicon-phone-alt:before {
  content: "\e183";
}

.glyphicon-tower:before {
  content: "\e184";
}

.glyphicon-stats:before {
  content: "\e185";
}

.glyphicon-sd-video:before {
  content: "\e186";
}

.glyphicon-hd-video:before {
  content: "\e187";
}

.glyphicon-subtitles:before {
  content: "\e188";
}

.glyphicon-sound-stereo:before {
  content: "\e189";
}

.glyphicon-sound-dolby:before {
  content: "\e190";
}

.glyphicon-sound-5-1:before {
  content: "\e191";
}

.glyphicon-sound-6-1:before {
  content: "\e192";
}

.glyphicon-sound-7-1:before {
  content: "\e193";
}

.glyphicon-copyright-mark:before {
  content: "\e194";
}

.glyphicon-registration-mark:before {
  content: "\e195";
}

.glyphicon-cloud-download:before {
  content: "\e197";
}

.glyphicon-cloud-upload:before {
  content: "\e198";
}

.glyphicon-tree-conifer:before {
  content: "\e199";
}

.glyphicon-tree-deciduous:before {
  content: "\e200";
}

.glyphicon-cd:before {
  content: "\e201";
}

.glyphicon-save-file:before {
  content: "\e202";
}

.glyphicon-open-file:before {
  content: "\e203";
}

.glyphicon-level-up:before {
  content: "\e204";
}

.glyphicon-copy:before {
  content: "\e205";
}

.glyphicon-paste:before {
  content: "\e206";
}

.glyphicon-alert:before {
  content: "\e209";
}

.glyphicon-equalizer:before {
  content: "\e210";
}

.glyphicon-king:before {
  content: "\e211";
}

.glyphicon-queen:before {
  content: "\e212";
}

.glyphicon-pawn:before {
  content: "\e213";
}

.glyphicon-bishop:before {
  content: "\e214";
}

.glyphicon-knight:before {
  content: "\e215";
}

.glyphicon-baby-formula:before {
  content: "\e216";
}

.glyphicon-tent:before {
  content: "⛺";
}

.glyphicon-blackboard:before {
  content: "\e218";
}

.glyphicon-bed:before {
  content: "\e219";
}

.glyphicon-apple:before {
  content: "\f8ff";
}

.glyphicon-erase:before {
  content: "\e221";
}

.glyphicon-hourglass:before {
  content: "⌛";
}

.glyphicon-lamp:before {
  content: "\e223";
}

.glyphicon-duplicate:before {
  content: "\e224";
}

.glyphicon-piggy-bank:before {
  content: "\e225";
}

.glyphicon-scissors:before {
  content: "\e226";
}

.glyphicon-bitcoin:before {
  content: "\e227";
}

.glyphicon-btc:before {
  content: "\e227";
}

.glyphicon-xbt:before {
  content: "\e227";
}

.glyphicon-yen:before {
  content: "¥";
}

.glyphicon-jpy:before {
  content: "¥";
}

.glyphicon-ruble:before {
  content: "₽";
}

.glyphicon-rub:before {
  content: "₽";
}

.glyphicon-scale:before {
  content: "\e230";
}

.glyphicon-ice-lolly:before {
  content: "\e231";
}

.glyphicon-ice-lolly-tasted:before {
  content: "\e232";
}

.glyphicon-education:before {
  content: "\e233";
}

.glyphicon-option-horizontal:before {
  content: "\e234";
}

.glyphicon-option-vertical:before {
  content: "\e235";
}

.glyphicon-menu-hamburger:before {
  content: "\e236";
}

.glyphicon-modal-window:before {
  content: "\e237";
}

.glyphicon-oil:before {
  content: "\e238";
}

.glyphicon-grain:before {
  content: "\e239";
}

.glyphicon-sunglasses:before {
  content: "\e240";
}

.glyphicon-text-size:before {
  content: "\e241";
}

.glyphicon-text-color:before {
  content: "\e242";
}

.glyphicon-text-background:before {
  content: "\e243";
}

.glyphicon-object-align-top:before {
  content: "\e244";
}

.glyphicon-object-align-bottom:before {
  content: "\e245";
}

.glyphicon-object-align-horizontal:before {
  content: "\e246";
}

.glyphicon-object-align-left:before {
  content: "\e247";
}

.glyphicon-object-align-vertical:before {
  content: "\e248";
}

.glyphicon-object-align-right:before {
  content: "\e249";
}

.glyphicon-triangle-right:before {
  content: "\e250";
}

.glyphicon-triangle-left:before {
  content: "\e251";
}

.glyphicon-triangle-bottom:before {
  content: "\e252";
}

.glyphicon-triangle-top:before {
  content: "\e253";
}

.glyphicon-console:before {
  content: "\e254";
}

.glyphicon-superscript:before {
  content: "\e255";
}

.glyphicon-subscript:before {
  content: "\e256";
}

.glyphicon-menu-left:before {
  content: "\e257";
}

.glyphicon-menu-right:before {
  content: "\e258";
}

.glyphicon-menu-down:before {
  content: "\e259";
}

.glyphicon-menu-up:before {
  content: "\e260";
}

* {
  box-sizing: border-box;
}

*:before,
*:after {
  box-sizing: border-box;
}

html {
  font-size: 10px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

body {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.428571429;
  color: #333333;
  background-color: #fff;
}

input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

a {
  color: #337ab7;
  text-decoration: none;
}
a:hover, a:focus {
  color: #23527c;
  text-decoration: underline;
}
a:focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

figure {
  margin: 0;
}

img {
  vertical-align: middle;
}

.img-responsive {
  display: block;
  max-width: 100%;
  height: auto;
}

.img-rounded {
  border-radius: 6px;
}

.img-thumbnail {
  padding: 4px;
  line-height: 1.428571429;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  transition: all 0.2s ease-in-out;
  display: inline-block;
  max-width: 100%;
  height: auto;
}

.img-circle {
  border-radius: 50%;
}

hr {
  margin-top: 20px;
  margin-bottom: 20px;
  border: 0;
  border-top: 1px solid #eeeeee;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}

[role=button] {
  cursor: pointer;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: inherit;
  font-weight: 500;
  line-height: 1.1;
  color: inherit;
}
h1 small,
h1 .small, h2 small,
h2 .small, h3 small,
h3 .small, h4 small,
h4 .small, h5 small,
h5 .small, h6 small,
h6 .small,
.h1 small,
.h1 .small, .h2 small,
.h2 .small, .h3 small,
.h3 .small, .h4 small,
.h4 .small, .h5 small,
.h5 .small, .h6 small,
.h6 .small {
  font-weight: 400;
  line-height: 1;
  color: #777777;
}

h1, .h1,
h2, .h2,
h3, .h3 {
  margin-top: 20px;
  margin-bottom: 10px;
}
h1 small,
h1 .small, .h1 small,
.h1 .small,
h2 small,
h2 .small, .h2 small,
.h2 .small,
h3 small,
h3 .small, .h3 small,
.h3 .small {
  font-size: 65%;
}

h4, .h4,
h5, .h5,
h6, .h6 {
  margin-top: 10px;
  margin-bottom: 10px;
}
h4 small,
h4 .small, .h4 small,
.h4 .small,
h5 small,
h5 .small, .h5 small,
.h5 .small,
h6 small,
h6 .small, .h6 small,
.h6 .small {
  font-size: 75%;
}

h1, .h1 {
  font-size: 36px;
}

h2, .h2 {
  font-size: 30px;
}

h3, .h3 {
  font-size: 24px;
}

h4, .h4 {
  font-size: 18px;
}

h5, .h5 {
  font-size: 14px;
}

h6, .h6 {
  font-size: 12px;
}

p {
  margin: 0 0 10px;
}

.lead {
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .lead {
    font-size: 21px;
  }
}

small,
.small {
  font-size: 85%;
}

mark,
.mark {
  padding: 0.2em;
  background-color: #fcf8e3;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

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

.text-justify {
  text-align: justify;
}

.text-nowrap {
  white-space: nowrap;
}

.text-lowercase {
  text-transform: lowercase;
}

.text-uppercase, .initialism {
  text-transform: uppercase;
}

.text-capitalize {
  text-transform: capitalize;
}

.text-muted {
  color: #777777;
}

.text-primary {
  color: #337ab7;
}

a.text-primary:hover,
a.text-primary:focus {
  color: #286090;
}

.text-success {
  color: #3c763d;
}

a.text-success:hover,
a.text-success:focus {
  color: #2b542c;
}

.text-info {
  color: #31708f;
}

a.text-info:hover,
a.text-info:focus {
  color: #245269;
}

.text-warning {
  color: #8a6d3b;
}

a.text-warning:hover,
a.text-warning:focus {
  color: #66512c;
}

.text-danger {
  color: #a94442;
}

a.text-danger:hover,
a.text-danger:focus {
  color: #843534;
}

.bg-primary {
  color: #fff;
}

.bg-primary {
  background-color: #337ab7;
}

a.bg-primary:hover,
a.bg-primary:focus {
  background-color: #286090;
}

.bg-success {
  background-color: #dff0d8;
}

a.bg-success:hover,
a.bg-success:focus {
  background-color: #c1e2b3;
}

.bg-info {
  background-color: #d9edf7;
}

a.bg-info:hover,
a.bg-info:focus {
  background-color: #afd9ee;
}

.bg-warning {
  background-color: #fcf8e3;
}

a.bg-warning:hover,
a.bg-warning:focus {
  background-color: #f7ecb5;
}

.bg-danger {
  background-color: #f2dede;
}

a.bg-danger:hover,
a.bg-danger:focus {
  background-color: #e4b9b9;
}

.page-header {
  padding-bottom: 9px;
  margin: 40px 0 20px;
  border-bottom: 1px solid #eeeeee;
}

ul,
ol {
  margin-top: 0;
  margin-bottom: 10px;
}
ul ul,
ul ol,
ol ul,
ol ol {
  margin-bottom: 0;
}

.list-unstyled {
  padding-left: 0;
  list-style: none;
}

.list-inline {
  padding-left: 0;
  list-style: none;
  margin-left: -5px;
}
.list-inline > li {
  display: inline-block;
  padding-right: 5px;
  padding-left: 5px;
}

dl {
  margin-top: 0;
  margin-bottom: 20px;
}

dt,
dd {
  line-height: 1.428571429;
}

dt {
  font-weight: 700;
}

dd {
  margin-left: 0;
}

.dl-horizontal dd:before, .dl-horizontal dd:after {
  display: table;
  content: " ";
}
.dl-horizontal dd:after {
  clear: both;
}
@media (min-width: 1236px) {
  .dl-horizontal dt {
    float: left;
    width: 160px;
    clear: left;
    text-align: right;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .dl-horizontal dd {
    margin-left: 180px;
  }
}

abbr[title],
abbr[data-original-title] {
  cursor: help;
}

.initialism {
  font-size: 90%;
}

blockquote {
  padding: 10px 20px;
  margin: 0 0 20px;
  font-size: 17.5px;
  border-left: 5px solid #eeeeee;
}
blockquote p:last-child,
blockquote ul:last-child,
blockquote ol:last-child {
  margin-bottom: 0;
}
blockquote footer,
blockquote small,
blockquote .small {
  display: block;
  font-size: 80%;
  line-height: 1.428571429;
  color: #777777;
}
blockquote footer:before,
blockquote small:before,
blockquote .small:before {
  content: "— ";
}

.blockquote-reverse,
blockquote.pull-right {
  padding-right: 15px;
  padding-left: 0;
  text-align: right;
  border-right: 5px solid #eeeeee;
  border-left: 0;
}
.blockquote-reverse footer:before,
.blockquote-reverse small:before,
.blockquote-reverse .small:before,
blockquote.pull-right footer:before,
blockquote.pull-right small:before,
blockquote.pull-right .small:before {
  content: "";
}
.blockquote-reverse footer:after,
.blockquote-reverse small:after,
.blockquote-reverse .small:after,
blockquote.pull-right footer:after,
blockquote.pull-right small:after,
blockquote.pull-right .small:after {
  content: " —";
}

address {
  margin-bottom: 20px;
  font-style: normal;
  line-height: 1.428571429;
}

code,
kbd,
pre,
samp {
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
}

code {
  padding: 2px 4px;
  font-size: 90%;
  color: #c7254e;
  background-color: #f9f2f4;
  border-radius: 4px;
}

kbd {
  padding: 2px 4px;
  font-size: 90%;
  color: #fff;
  background-color: #333;
  border-radius: 3px;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
}
kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: 700;
  box-shadow: none;
}

pre {
  display: block;
  padding: 9.5px;
  margin: 0 0 10px;
  font-size: 13px;
  line-height: 1.428571429;
  color: #333333;
  word-break: break-all;
  word-wrap: break-word;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 4px;
}
pre code {
  padding: 0;
  font-size: inherit;
  color: inherit;
  white-space: pre-wrap;
  background-color: transparent;
  border-radius: 0;
}

.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}

.container {
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}
.container:before, .container:after {
  display: table;
  content: " ";
}
.container:after {
  clear: both;
}
@media (min-width: 768px) {
  .container {
    width: 750px;
  }
}
@media (min-width: 992px) {
  .container {
    width: 970px;
  }
}
@media (min-width: 1200px) {
  .container {
    width: 1170px;
  }
}

.container-fluid {
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}
.container-fluid:before, .container-fluid:after {
  display: table;
  content: " ";
}
.container-fluid:after {
  clear: both;
}

.row {
  margin-right: -15px;
  margin-left: -15px;
}
.row:before, .row:after {
  display: table;
  content: " ";
}
.row:after {
  clear: both;
}

.row-no-gutters {
  margin-right: 0;
  margin-left: 0;
}
.row-no-gutters [class*=col-] {
  padding-right: 0;
  padding-left: 0;
}

.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  position: relative;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
}

.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
  float: left;
}

.col-xs-1 {
  width: 8.3333333333%;
}

.col-xs-2 {
  width: 16.6666666667%;
}

.col-xs-3 {
  width: 25%;
}

.col-xs-4 {
  width: 33.3333333333%;
}

.col-xs-5 {
  width: 41.6666666667%;
}

.col-xs-6 {
  width: 50%;
}

.col-xs-7 {
  width: 58.3333333333%;
}

.col-xs-8 {
  width: 66.6666666667%;
}

.col-xs-9 {
  width: 75%;
}

.col-xs-10 {
  width: 83.3333333333%;
}

.col-xs-11 {
  width: 91.6666666667%;
}

.col-xs-12 {
  width: 100%;
}

.col-xs-pull-0 {
  right: auto;
}

.col-xs-pull-1 {
  right: 8.3333333333%;
}

.col-xs-pull-2 {
  right: 16.6666666667%;
}

.col-xs-pull-3 {
  right: 25%;
}

.col-xs-pull-4 {
  right: 33.3333333333%;
}

.col-xs-pull-5 {
  right: 41.6666666667%;
}

.col-xs-pull-6 {
  right: 50%;
}

.col-xs-pull-7 {
  right: 58.3333333333%;
}

.col-xs-pull-8 {
  right: 66.6666666667%;
}

.col-xs-pull-9 {
  right: 75%;
}

.col-xs-pull-10 {
  right: 83.3333333333%;
}

.col-xs-pull-11 {
  right: 91.6666666667%;
}

.col-xs-pull-12 {
  right: 100%;
}

.col-xs-push-0 {
  left: auto;
}

.col-xs-push-1 {
  left: 8.3333333333%;
}

.col-xs-push-2 {
  left: 16.6666666667%;
}

.col-xs-push-3 {
  left: 25%;
}

.col-xs-push-4 {
  left: 33.3333333333%;
}

.col-xs-push-5 {
  left: 41.6666666667%;
}

.col-xs-push-6 {
  left: 50%;
}

.col-xs-push-7 {
  left: 58.3333333333%;
}

.col-xs-push-8 {
  left: 66.6666666667%;
}

.col-xs-push-9 {
  left: 75%;
}

.col-xs-push-10 {
  left: 83.3333333333%;
}

.col-xs-push-11 {
  left: 91.6666666667%;
}

.col-xs-push-12 {
  left: 100%;
}

.col-xs-offset-0 {
  margin-left: 0%;
}

.col-xs-offset-1 {
  margin-left: 8.3333333333%;
}

.col-xs-offset-2 {
  margin-left: 16.6666666667%;
}

.col-xs-offset-3 {
  margin-left: 25%;
}

.col-xs-offset-4 {
  margin-left: 33.3333333333%;
}

.col-xs-offset-5 {
  margin-left: 41.6666666667%;
}

.col-xs-offset-6 {
  margin-left: 50%;
}

.col-xs-offset-7 {
  margin-left: 58.3333333333%;
}

.col-xs-offset-8 {
  margin-left: 66.6666666667%;
}

.col-xs-offset-9 {
  margin-left: 75%;
}

.col-xs-offset-10 {
  margin-left: 83.3333333333%;
}

.col-xs-offset-11 {
  margin-left: 91.6666666667%;
}

.col-xs-offset-12 {
  margin-left: 100%;
}

@media (min-width: 768px) {
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left;
  }
  .col-sm-1 {
    width: 8.3333333333%;
  }
  .col-sm-2 {
    width: 16.6666666667%;
  }
  .col-sm-3 {
    width: 25%;
  }
  .col-sm-4 {
    width: 33.3333333333%;
  }
  .col-sm-5 {
    width: 41.6666666667%;
  }
  .col-sm-6 {
    width: 50%;
  }
  .col-sm-7 {
    width: 58.3333333333%;
  }
  .col-sm-8 {
    width: 66.6666666667%;
  }
  .col-sm-9 {
    width: 75%;
  }
  .col-sm-10 {
    width: 83.3333333333%;
  }
  .col-sm-11 {
    width: 91.6666666667%;
  }
  .col-sm-12 {
    width: 100%;
  }
  .col-sm-pull-0 {
    right: auto;
  }
  .col-sm-pull-1 {
    right: 8.3333333333%;
  }
  .col-sm-pull-2 {
    right: 16.6666666667%;
  }
  .col-sm-pull-3 {
    right: 25%;
  }
  .col-sm-pull-4 {
    right: 33.3333333333%;
  }
  .col-sm-pull-5 {
    right: 41.6666666667%;
  }
  .col-sm-pull-6 {
    right: 50%;
  }
  .col-sm-pull-7 {
    right: 58.3333333333%;
  }
  .col-sm-pull-8 {
    right: 66.6666666667%;
  }
  .col-sm-pull-9 {
    right: 75%;
  }
  .col-sm-pull-10 {
    right: 83.3333333333%;
  }
  .col-sm-pull-11 {
    right: 91.6666666667%;
  }
  .col-sm-pull-12 {
    right: 100%;
  }
  .col-sm-push-0 {
    left: auto;
  }
  .col-sm-push-1 {
    left: 8.3333333333%;
  }
  .col-sm-push-2 {
    left: 16.6666666667%;
  }
  .col-sm-push-3 {
    left: 25%;
  }
  .col-sm-push-4 {
    left: 33.3333333333%;
  }
  .col-sm-push-5 {
    left: 41.6666666667%;
  }
  .col-sm-push-6 {
    left: 50%;
  }
  .col-sm-push-7 {
    left: 58.3333333333%;
  }
  .col-sm-push-8 {
    left: 66.6666666667%;
  }
  .col-sm-push-9 {
    left: 75%;
  }
  .col-sm-push-10 {
    left: 83.3333333333%;
  }
  .col-sm-push-11 {
    left: 91.6666666667%;
  }
  .col-sm-push-12 {
    left: 100%;
  }
  .col-sm-offset-0 {
    margin-left: 0%;
  }
  .col-sm-offset-1 {
    margin-left: 8.3333333333%;
  }
  .col-sm-offset-2 {
    margin-left: 16.6666666667%;
  }
  .col-sm-offset-3 {
    margin-left: 25%;
  }
  .col-sm-offset-4 {
    margin-left: 33.3333333333%;
  }
  .col-sm-offset-5 {
    margin-left: 41.6666666667%;
  }
  .col-sm-offset-6 {
    margin-left: 50%;
  }
  .col-sm-offset-7 {
    margin-left: 58.3333333333%;
  }
  .col-sm-offset-8 {
    margin-left: 66.6666666667%;
  }
  .col-sm-offset-9 {
    margin-left: 75%;
  }
  .col-sm-offset-10 {
    margin-left: 83.3333333333%;
  }
  .col-sm-offset-11 {
    margin-left: 91.6666666667%;
  }
  .col-sm-offset-12 {
    margin-left: 100%;
  }
}
@media (min-width: 992px) {
  .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left;
  }
  .col-md-1 {
    width: 8.3333333333%;
  }
  .col-md-2 {
    width: 16.6666666667%;
  }
  .col-md-3 {
    width: 25%;
  }
  .col-md-4 {
    width: 33.3333333333%;
  }
  .col-md-5 {
    width: 41.6666666667%;
  }
  .col-md-6 {
    width: 50%;
  }
  .col-md-7 {
    width: 58.3333333333%;
  }
  .col-md-8 {
    width: 66.6666666667%;
  }
  .col-md-9 {
    width: 75%;
  }
  .col-md-10 {
    width: 83.3333333333%;
  }
  .col-md-11 {
    width: 91.6666666667%;
  }
  .col-md-12 {
    width: 100%;
  }
  .col-md-pull-0 {
    right: auto;
  }
  .col-md-pull-1 {
    right: 8.3333333333%;
  }
  .col-md-pull-2 {
    right: 16.6666666667%;
  }
  .col-md-pull-3 {
    right: 25%;
  }
  .col-md-pull-4 {
    right: 33.3333333333%;
  }
  .col-md-pull-5 {
    right: 41.6666666667%;
  }
  .col-md-pull-6 {
    right: 50%;
  }
  .col-md-pull-7 {
    right: 58.3333333333%;
  }
  .col-md-pull-8 {
    right: 66.6666666667%;
  }
  .col-md-pull-9 {
    right: 75%;
  }
  .col-md-pull-10 {
    right: 83.3333333333%;
  }
  .col-md-pull-11 {
    right: 91.6666666667%;
  }
  .col-md-pull-12 {
    right: 100%;
  }
  .col-md-push-0 {
    left: auto;
  }
  .col-md-push-1 {
    left: 8.3333333333%;
  }
  .col-md-push-2 {
    left: 16.6666666667%;
  }
  .col-md-push-3 {
    left: 25%;
  }
  .col-md-push-4 {
    left: 33.3333333333%;
  }
  .col-md-push-5 {
    left: 41.6666666667%;
  }
  .col-md-push-6 {
    left: 50%;
  }
  .col-md-push-7 {
    left: 58.3333333333%;
  }
  .col-md-push-8 {
    left: 66.6666666667%;
  }
  .col-md-push-9 {
    left: 75%;
  }
  .col-md-push-10 {
    left: 83.3333333333%;
  }
  .col-md-push-11 {
    left: 91.6666666667%;
  }
  .col-md-push-12 {
    left: 100%;
  }
  .col-md-offset-0 {
    margin-left: 0%;
  }
  .col-md-offset-1 {
    margin-left: 8.3333333333%;
  }
  .col-md-offset-2 {
    margin-left: 16.6666666667%;
  }
  .col-md-offset-3 {
    margin-left: 25%;
  }
  .col-md-offset-4 {
    margin-left: 33.3333333333%;
  }
  .col-md-offset-5 {
    margin-left: 41.6666666667%;
  }
  .col-md-offset-6 {
    margin-left: 50%;
  }
  .col-md-offset-7 {
    margin-left: 58.3333333333%;
  }
  .col-md-offset-8 {
    margin-left: 66.6666666667%;
  }
  .col-md-offset-9 {
    margin-left: 75%;
  }
  .col-md-offset-10 {
    margin-left: 83.3333333333%;
  }
  .col-md-offset-11 {
    margin-left: 91.6666666667%;
  }
  .col-md-offset-12 {
    margin-left: 100%;
  }
}
@media (min-width: 1200px) {
  .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
    float: left;
  }
  .col-lg-1 {
    width: 8.3333333333%;
  }
  .col-lg-2 {
    width: 16.6666666667%;
  }
  .col-lg-3 {
    width: 25%;
  }
  .col-lg-4 {
    width: 33.3333333333%;
  }
  .col-lg-5 {
    width: 41.6666666667%;
  }
  .col-lg-6 {
    width: 50%;
  }
  .col-lg-7 {
    width: 58.3333333333%;
  }
  .col-lg-8 {
    width: 66.6666666667%;
  }
  .col-lg-9 {
    width: 75%;
  }
  .col-lg-10 {
    width: 83.3333333333%;
  }
  .col-lg-11 {
    width: 91.6666666667%;
  }
  .col-lg-12 {
    width: 100%;
  }
  .col-lg-pull-0 {
    right: auto;
  }
  .col-lg-pull-1 {
    right: 8.3333333333%;
  }
  .col-lg-pull-2 {
    right: 16.6666666667%;
  }
  .col-lg-pull-3 {
    right: 25%;
  }
  .col-lg-pull-4 {
    right: 33.3333333333%;
  }
  .col-lg-pull-5 {
    right: 41.6666666667%;
  }
  .col-lg-pull-6 {
    right: 50%;
  }
  .col-lg-pull-7 {
    right: 58.3333333333%;
  }
  .col-lg-pull-8 {
    right: 66.6666666667%;
  }
  .col-lg-pull-9 {
    right: 75%;
  }
  .col-lg-pull-10 {
    right: 83.3333333333%;
  }
  .col-lg-pull-11 {
    right: 91.6666666667%;
  }
  .col-lg-pull-12 {
    right: 100%;
  }
  .col-lg-push-0 {
    left: auto;
  }
  .col-lg-push-1 {
    left: 8.3333333333%;
  }
  .col-lg-push-2 {
    left: 16.6666666667%;
  }
  .col-lg-push-3 {
    left: 25%;
  }
  .col-lg-push-4 {
    left: 33.3333333333%;
  }
  .col-lg-push-5 {
    left: 41.6666666667%;
  }
  .col-lg-push-6 {
    left: 50%;
  }
  .col-lg-push-7 {
    left: 58.3333333333%;
  }
  .col-lg-push-8 {
    left: 66.6666666667%;
  }
  .col-lg-push-9 {
    left: 75%;
  }
  .col-lg-push-10 {
    left: 83.3333333333%;
  }
  .col-lg-push-11 {
    left: 91.6666666667%;
  }
  .col-lg-push-12 {
    left: 100%;
  }
  .col-lg-offset-0 {
    margin-left: 0%;
  }
  .col-lg-offset-1 {
    margin-left: 8.3333333333%;
  }
  .col-lg-offset-2 {
    margin-left: 16.6666666667%;
  }
  .col-lg-offset-3 {
    margin-left: 25%;
  }
  .col-lg-offset-4 {
    margin-left: 33.3333333333%;
  }
  .col-lg-offset-5 {
    margin-left: 41.6666666667%;
  }
  .col-lg-offset-6 {
    margin-left: 50%;
  }
  .col-lg-offset-7 {
    margin-left: 58.3333333333%;
  }
  .col-lg-offset-8 {
    margin-left: 66.6666666667%;
  }
  .col-lg-offset-9 {
    margin-left: 75%;
  }
  .col-lg-offset-10 {
    margin-left: 83.3333333333%;
  }
  .col-lg-offset-11 {
    margin-left: 91.6666666667%;
  }
  .col-lg-offset-12 {
    margin-left: 100%;
  }
}
table {
  background-color: transparent;
}
table col[class*=col-] {
  position: static;
  display: table-column;
  float: none;
}
table td[class*=col-],
table th[class*=col-] {
  position: static;
  display: table-cell;
  float: none;
}

caption {
  padding-top: 8px;
  padding-bottom: 8px;
  color: #777777;
  text-align: left;
}

th {
  text-align: left;
}

.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 20px;
}
.table > thead > tr > th,
.table > thead > tr > td,
.table > tbody > tr > th,
.table > tbody > tr > td,
.table > tfoot > tr > th,
.table > tfoot > tr > td {
  padding: 8px;
  line-height: 1.428571429;
  vertical-align: top;
  border-top: 1px solid #ddd;
}
.table > thead > tr > th {
  vertical-align: bottom;
  border-bottom: 2px solid #ddd;
}
.table > caption + thead > tr:first-child > th,
.table > caption + thead > tr:first-child > td,
.table > colgroup + thead > tr:first-child > th,
.table > colgroup + thead > tr:first-child > td,
.table > thead:first-child > tr:first-child > th,
.table > thead:first-child > tr:first-child > td {
  border-top: 0;
}
.table > tbody + tbody {
  border-top: 2px solid #ddd;
}
.table .table {
  background-color: #fff;
}

.table-condensed > thead > tr > th,
.table-condensed > thead > tr > td,
.table-condensed > tbody > tr > th,
.table-condensed > tbody > tr > td,
.table-condensed > tfoot > tr > th,
.table-condensed > tfoot > tr > td {
  padding: 5px;
}

.table-bordered {
  border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > thead > tr > td,
.table-bordered > tbody > tr > th,
.table-bordered > tbody > tr > td,
.table-bordered > tfoot > tr > th,
.table-bordered > tfoot > tr > td {
  border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > thead > tr > td {
  border-bottom-width: 2px;
}

.table-striped > tbody > tr:nth-of-type(odd) {
  background-color: #f9f9f9;
}

.table-hover > tbody > tr:hover {
  background-color: #f5f5f5;
}

.table > thead > tr > td.active,
.table > thead > tr > th.active, .table > thead > tr.active > td, .table > thead > tr.active > th,
.table > tbody > tr > td.active,
.table > tbody > tr > th.active,
.table > tbody > tr.active > td,
.table > tbody > tr.active > th,
.table > tfoot > tr > td.active,
.table > tfoot > tr > th.active,
.table > tfoot > tr.active > td,
.table > tfoot > tr.active > th {
  background-color: #f5f5f5;
}

.table-hover > tbody > tr > td.active:hover,
.table-hover > tbody > tr > th.active:hover, .table-hover > tbody > tr.active:hover > td, .table-hover > tbody > tr:hover > .active, .table-hover > tbody > tr.active:hover > th {
  background-color: #e8e8e8;
}

.table > thead > tr > td.success,
.table > thead > tr > th.success, .table > thead > tr.success > td, .table > thead > tr.success > th,
.table > tbody > tr > td.success,
.table > tbody > tr > th.success,
.table > tbody > tr.success > td,
.table > tbody > tr.success > th,
.table > tfoot > tr > td.success,
.table > tfoot > tr > th.success,
.table > tfoot > tr.success > td,
.table > tfoot > tr.success > th {
  background-color: #dff0d8;
}

.table-hover > tbody > tr > td.success:hover,
.table-hover > tbody > tr > th.success:hover, .table-hover > tbody > tr.success:hover > td, .table-hover > tbody > tr:hover > .success, .table-hover > tbody > tr.success:hover > th {
  background-color: #d0e9c6;
}

.table > thead > tr > td.info,
.table > thead > tr > th.info, .table > thead > tr.info > td, .table > thead > tr.info > th,
.table > tbody > tr > td.info,
.table > tbody > tr > th.info,
.table > tbody > tr.info > td,
.table > tbody > tr.info > th,
.table > tfoot > tr > td.info,
.table > tfoot > tr > th.info,
.table > tfoot > tr.info > td,
.table > tfoot > tr.info > th {
  background-color: #d9edf7;
}

.table-hover > tbody > tr > td.info:hover,
.table-hover > tbody > tr > th.info:hover, .table-hover > tbody > tr.info:hover > td, .table-hover > tbody > tr:hover > .info, .table-hover > tbody > tr.info:hover > th {
  background-color: #c4e3f3;
}

.table > thead > tr > td.warning,
.table > thead > tr > th.warning, .table > thead > tr.warning > td, .table > thead > tr.warning > th,
.table > tbody > tr > td.warning,
.table > tbody > tr > th.warning,
.table > tbody > tr.warning > td,
.table > tbody > tr.warning > th,
.table > tfoot > tr > td.warning,
.table > tfoot > tr > th.warning,
.table > tfoot > tr.warning > td,
.table > tfoot > tr.warning > th {
  background-color: #fcf8e3;
}

.table-hover > tbody > tr > td.warning:hover,
.table-hover > tbody > tr > th.warning:hover, .table-hover > tbody > tr.warning:hover > td, .table-hover > tbody > tr:hover > .warning, .table-hover > tbody > tr.warning:hover > th {
  background-color: #faf2cc;
}

.table > thead > tr > td.danger,
.table > thead > tr > th.danger, .table > thead > tr.danger > td, .table > thead > tr.danger > th,
.table > tbody > tr > td.danger,
.table > tbody > tr > th.danger,
.table > tbody > tr.danger > td,
.table > tbody > tr.danger > th,
.table > tfoot > tr > td.danger,
.table > tfoot > tr > th.danger,
.table > tfoot > tr.danger > td,
.table > tfoot > tr.danger > th {
  background-color: #f2dede;
}

.table-hover > tbody > tr > td.danger:hover,
.table-hover > tbody > tr > th.danger:hover, .table-hover > tbody > tr.danger:hover > td, .table-hover > tbody > tr:hover > .danger, .table-hover > tbody > tr.danger:hover > th {
  background-color: #ebcccc;
}

.table-responsive {
  min-height: 0.01%;
  overflow-x: auto;
}
@media screen and (max-width: 767px) {
  .table-responsive {
    width: 100%;
    margin-bottom: 15px;
    overflow-y: hidden;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    border: 1px solid #ddd;
  }
  .table-responsive > .table {
    margin-bottom: 0;
  }
  .table-responsive > .table > thead > tr > th,
  .table-responsive > .table > thead > tr > td,
  .table-responsive > .table > tbody > tr > th,
  .table-responsive > .table > tbody > tr > td,
  .table-responsive > .table > tfoot > tr > th,
  .table-responsive > .table > tfoot > tr > td {
    white-space: nowrap;
  }
  .table-responsive > .table-bordered {
    border: 0;
  }
  .table-responsive > .table-bordered > thead > tr > th:first-child,
  .table-responsive > .table-bordered > thead > tr > td:first-child,
  .table-responsive > .table-bordered > tbody > tr > th:first-child,
  .table-responsive > .table-bordered > tbody > tr > td:first-child,
  .table-responsive > .table-bordered > tfoot > tr > th:first-child,
  .table-responsive > .table-bordered > tfoot > tr > td:first-child {
    border-left: 0;
  }
  .table-responsive > .table-bordered > thead > tr > th:last-child,
  .table-responsive > .table-bordered > thead > tr > td:last-child,
  .table-responsive > .table-bordered > tbody > tr > th:last-child,
  .table-responsive > .table-bordered > tbody > tr > td:last-child,
  .table-responsive > .table-bordered > tfoot > tr > th:last-child,
  .table-responsive > .table-bordered > tfoot > tr > td:last-child {
    border-right: 0;
  }
  .table-responsive > .table-bordered > tbody > tr:last-child > th,
  .table-responsive > .table-bordered > tbody > tr:last-child > td,
  .table-responsive > .table-bordered > tfoot > tr:last-child > th,
  .table-responsive > .table-bordered > tfoot > tr:last-child > td {
    border-bottom: 0;
  }
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 20px;
  font-size: 21px;
  line-height: inherit;
  color: #333333;
  border: 0;
  border-bottom: 1px solid #e5e5e5;
}

label {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 5px;
  font-weight: 700;
}

input[type=search] {
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

input[type=radio],
input[type=checkbox] {
  margin: 4px 0 0;
  margin-top: 1px \9 ;
  line-height: normal;
}
input[type=radio][disabled], input[type=radio].disabled, fieldset[disabled] input[type=radio],
input[type=checkbox][disabled],
input[type=checkbox].disabled,
fieldset[disabled] input[type=checkbox] {
  cursor: not-allowed;
}

input[type=file] {
  display: block;
}

input[type=range] {
  display: block;
  width: 100%;
}

select[multiple],
select[size] {
  height: auto;
}

input[type=file]:focus,
input[type=radio]:focus,
input[type=checkbox]:focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

output {
  display: block;
  padding-top: 7px;
  font-size: 14px;
  line-height: 1.428571429;
  color: #555555;
}

.form-control {
  display: block;
  width: 100%;
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.428571429;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}
.form-control:focus {
  border-color: #66afe9;
  outline: 0;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.form-control::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.form-control:-ms-input-placeholder {
  color: #999;
}
.form-control::-webkit-input-placeholder {
  color: #999;
}
.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}
.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control {
  background-color: #eeeeee;
  opacity: 1;
}
.form-control[disabled], fieldset[disabled] .form-control {
  cursor: not-allowed;
}

textarea.form-control {
  height: auto;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type=date].form-control,
  input[type=time].form-control,
  input[type=datetime-local].form-control,
  input[type=month].form-control {
    line-height: 34px;
  }
  input[type=date].input-sm,
  .input-group-sm > .input-group-btn > input[type=date].btn, .input-group-sm input[type=date],
  input[type=time].input-sm,
  .input-group-sm > .input-group-btn > input[type=time].btn,
  .input-group-sm input[type=time],
  input[type=datetime-local].input-sm,
  .input-group-sm > .input-group-btn > input[type=datetime-local].btn,
  .input-group-sm input[type=datetime-local],
  input[type=month].input-sm,
  .input-group-sm > .input-group-btn > input[type=month].btn,
  .input-group-sm input[type=month] {
    line-height: 30px;
  }
  input[type=date].input-lg,
  .input-group-lg > .input-group-btn > input[type=date].btn, .input-group-lg input[type=date],
  input[type=time].input-lg,
  .input-group-lg > .input-group-btn > input[type=time].btn,
  .input-group-lg input[type=time],
  input[type=datetime-local].input-lg,
  .input-group-lg > .input-group-btn > input[type=datetime-local].btn,
  .input-group-lg input[type=datetime-local],
  input[type=month].input-lg,
  .input-group-lg > .input-group-btn > input[type=month].btn,
  .input-group-lg input[type=month] {
    line-height: 46px;
  }
}
.form-group {
  margin-bottom: 15px;
}

.radio,
.checkbox {
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px;
}
.radio.disabled label, fieldset[disabled] .radio label,
.checkbox.disabled label,
fieldset[disabled] .checkbox label {
  cursor: not-allowed;
}
.radio label,
.checkbox label {
  min-height: 20px;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: 400;
  cursor: pointer;
}

.radio input[type=radio],
.radio-inline input[type=radio],
.checkbox input[type=checkbox],
.checkbox-inline input[type=checkbox] {
  position: absolute;
  margin-top: 4px \9 ;
  margin-left: -20px;
}

.radio + .radio,
.checkbox + .checkbox {
  margin-top: -5px;
}

.radio-inline,
.checkbox-inline {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: 400;
  vertical-align: middle;
  cursor: pointer;
}
.radio-inline.disabled, fieldset[disabled] .radio-inline,
.checkbox-inline.disabled,
fieldset[disabled] .checkbox-inline {
  cursor: not-allowed;
}

.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
  margin-top: 0;
  margin-left: 10px;
}

.form-control-static {
  min-height: 34px;
  padding-top: 7px;
  padding-bottom: 7px;
  margin-bottom: 0;
}
.form-control-static.input-lg, .input-group-lg > .form-control-static.form-control,
.input-group-lg > .form-control-static.input-group-addon,
.input-group-lg > .input-group-btn > .form-control-static.btn, .form-control-static.input-sm, .input-group-sm > .form-control-static.form-control,
.input-group-sm > .form-control-static.input-group-addon,
.input-group-sm > .input-group-btn > .form-control-static.btn {
  padding-right: 0;
  padding-left: 0;
}

.input-sm, .input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

select.input-sm, .input-group-sm > select.form-control,
.input-group-sm > select.input-group-addon,
.input-group-sm > .input-group-btn > select.btn {
  height: 30px;
  line-height: 30px;
}

textarea.input-sm, .input-group-sm > textarea.form-control,
.input-group-sm > textarea.input-group-addon,
.input-group-sm > .input-group-btn > textarea.btn,
select[multiple].input-sm,
.input-group-sm > select[multiple].form-control,
.input-group-sm > select[multiple].input-group-addon,
.input-group-sm > .input-group-btn > select[multiple].btn {
  height: auto;
}

.form-group-sm .form-control {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}
.form-group-sm select.form-control {
  height: 30px;
  line-height: 30px;
}
.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
  height: auto;
}
.form-group-sm .form-control-static {
  height: 30px;
  min-height: 32px;
  padding: 6px 10px;
  font-size: 12px;
  line-height: 1.5;
}

.input-lg, .input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.3333333;
  border-radius: 6px;
}

select.input-lg, .input-group-lg > select.form-control,
.input-group-lg > select.input-group-addon,
.input-group-lg > .input-group-btn > select.btn {
  height: 46px;
  line-height: 46px;
}

textarea.input-lg, .input-group-lg > textarea.form-control,
.input-group-lg > textarea.input-group-addon,
.input-group-lg > .input-group-btn > textarea.btn,
select[multiple].input-lg,
.input-group-lg > select[multiple].form-control,
.input-group-lg > select[multiple].input-group-addon,
.input-group-lg > .input-group-btn > select[multiple].btn {
  height: auto;
}

.form-group-lg .form-control {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.3333333;
  border-radius: 6px;
}
.form-group-lg select.form-control {
  height: 46px;
  line-height: 46px;
}
.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
  height: auto;
}
.form-group-lg .form-control-static {
  height: 46px;
  min-height: 38px;
  padding: 11px 16px;
  font-size: 18px;
  line-height: 1.3333333;
}

.has-feedback {
  position: relative;
}
.has-feedback .form-control {
  padding-right: 42.5px;
}

.form-control-feedback {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: block;
  width: 34px;
  height: 34px;
  line-height: 34px;
  text-align: center;
  pointer-events: none;
}

.input-lg + .form-control-feedback, .input-group-lg > .form-control + .form-control-feedback,
.input-group-lg > .input-group-addon + .form-control-feedback,
.input-group-lg > .input-group-btn > .btn + .form-control-feedback,
.input-group-lg + .form-control-feedback,
.form-group-lg .form-control + .form-control-feedback {
  width: 46px;
  height: 46px;
  line-height: 46px;
}

.input-sm + .form-control-feedback, .input-group-sm > .form-control + .form-control-feedback,
.input-group-sm > .input-group-addon + .form-control-feedback,
.input-group-sm > .input-group-btn > .btn + .form-control-feedback,
.input-group-sm + .form-control-feedback,
.form-group-sm .form-control + .form-control-feedback {
  width: 30px;
  height: 30px;
  line-height: 30px;
}

.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline, .has-success.radio label, .has-success.checkbox label, .has-success.radio-inline label, .has-success.checkbox-inline label {
  color: #3c763d;
}
.has-success .form-control {
  border-color: #3c763d;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-success .form-control:focus {
  border-color: #2b542c;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
}
.has-success .input-group-addon {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #3c763d;
}
.has-success .form-control-feedback {
  color: #3c763d;
}

.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline, .has-warning.radio label, .has-warning.checkbox label, .has-warning.radio-inline label, .has-warning.checkbox-inline label {
  color: #8a6d3b;
}
.has-warning .form-control {
  border-color: #8a6d3b;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-warning .form-control:focus {
  border-color: #66512c;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
}
.has-warning .input-group-addon {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #8a6d3b;
}
.has-warning .form-control-feedback {
  color: #8a6d3b;
}

.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline, .has-error.radio label, .has-error.checkbox label, .has-error.radio-inline label, .has-error.checkbox-inline label {
  color: #a94442;
}
.has-error .form-control {
  border-color: #a94442;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-error .form-control:focus {
  border-color: #843534;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
}
.has-error .input-group-addon {
  color: #a94442;
  background-color: #f2dede;
  border-color: #a94442;
}
.has-error .form-control-feedback {
  color: #a94442;
}

.has-feedback label ~ .form-control-feedback {
  top: 25px;
}
.has-feedback label.sr-only ~ .form-control-feedback {
  top: 0;
}

.help-block {
  display: block;
  margin-top: 5px;
  margin-bottom: 10px;
  color: #737373;
}

@media (min-width: 768px) {
  .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;
  }
}

.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
  padding-top: 7px;
  margin-top: 0;
  margin-bottom: 0;
}
.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: 27px;
}
.form-horizontal .form-group {
  margin-right: -15px;
  margin-left: -15px;
}
.form-horizontal .form-group:before, .form-horizontal .form-group:after {
  display: table;
  content: " ";
}
.form-horizontal .form-group:after {
  clear: both;
}
@media (min-width: 768px) {
  .form-horizontal .control-label {
    padding-top: 7px;
    margin-bottom: 0;
    text-align: right;
  }
}
.form-horizontal .has-feedback .form-control-feedback {
  right: 15px;
}
@media (min-width: 768px) {
  .form-horizontal .form-group-lg .control-label {
    padding-top: 11px;
    font-size: 18px;
  }
}
@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 6px;
    font-size: 12px;
  }
}

.btn {
  display: inline-block;
  margin-bottom: 0;
  font-weight: normal;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.428571429;
  border-radius: 4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.btn:focus, .btn.focus, .btn:active:focus, .btn:active.focus, .btn.active:focus, .btn.active.focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
.btn:hover, .btn:focus, .btn.focus {
  color: #333;
  text-decoration: none;
}
.btn:active, .btn.active {
  background-image: none;
  outline: 0;
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn.disabled, .btn[disabled], fieldset[disabled] .btn {
  cursor: not-allowed;
  filter: alpha(opacity=65);
  opacity: 0.65;
  box-shadow: none;
}

a.btn.disabled, fieldset[disabled] a.btn {
  pointer-events: none;
}

.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
.btn-default:focus, .btn-default.focus {
  color: #333;
  background-color: #e6e6e6;
  border-color: #8c8c8c;
}
.btn-default:hover {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.btn-default:active, .btn-default.active, .open > .btn-default.dropdown-toggle {
  color: #333;
  background-color: #e6e6e6;
  background-image: none;
  border-color: #adadad;
}
.btn-default:active:hover, .btn-default:active:focus, .btn-default:active.focus, .btn-default.active:hover, .btn-default.active:focus, .btn-default.active.focus, .open > .btn-default.dropdown-toggle:hover, .open > .btn-default.dropdown-toggle:focus, .open > .btn-default.dropdown-toggle.focus {
  color: #333;
  background-color: #d4d4d4;
  border-color: #8c8c8c;
}
.btn-default.disabled:hover, .btn-default.disabled:focus, .btn-default.disabled.focus, .btn-default[disabled]:hover, .btn-default[disabled]:focus, .btn-default[disabled].focus, fieldset[disabled] .btn-default:hover, fieldset[disabled] .btn-default:focus, fieldset[disabled] .btn-default.focus {
  background-color: #fff;
  border-color: #ccc;
}
.btn-default .badge {
  color: #fff;
  background-color: #333;
}

.btn-primary {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4;
}
.btn-primary:focus, .btn-primary.focus {
  color: #fff;
  background-color: #286090;
  border-color: #122b40;
}
.btn-primary:hover {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}
.btn-primary:active, .btn-primary.active, .open > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #286090;
  background-image: none;
  border-color: #204d74;
}
.btn-primary:active:hover, .btn-primary:active:focus, .btn-primary:active.focus, .btn-primary.active:hover, .btn-primary.active:focus, .btn-primary.active.focus, .open > .btn-primary.dropdown-toggle:hover, .open > .btn-primary.dropdown-toggle:focus, .open > .btn-primary.dropdown-toggle.focus {
  color: #fff;
  background-color: #204d74;
  border-color: #122b40;
}
.btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled].focus, fieldset[disabled] .btn-primary:hover, fieldset[disabled] .btn-primary:focus, fieldset[disabled] .btn-primary.focus {
  background-color: #337ab7;
  border-color: #2e6da4;
}
.btn-primary .badge {
  color: #337ab7;
  background-color: #fff;
}

.btn-success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.btn-success:focus, .btn-success.focus {
  color: #fff;
  background-color: #449d44;
  border-color: #255625;
}
.btn-success:hover {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.btn-success:active, .btn-success.active, .open > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #449d44;
  background-image: none;
  border-color: #398439;
}
.btn-success:active:hover, .btn-success:active:focus, .btn-success:active.focus, .btn-success.active:hover, .btn-success.active:focus, .btn-success.active.focus, .open > .btn-success.dropdown-toggle:hover, .open > .btn-success.dropdown-toggle:focus, .open > .btn-success.dropdown-toggle.focus {
  color: #fff;
  background-color: #398439;
  border-color: #255625;
}
.btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled.focus, .btn-success[disabled]:hover, .btn-success[disabled]:focus, .btn-success[disabled].focus, fieldset[disabled] .btn-success:hover, fieldset[disabled] .btn-success:focus, fieldset[disabled] .btn-success.focus {
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.btn-success .badge {
  color: #5cb85c;
  background-color: #fff;
}

.btn-info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da;
}
.btn-info:focus, .btn-info.focus {
  color: #fff;
  background-color: #31b0d5;
  border-color: #1b6d85;
}
.btn-info:hover {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.btn-info:active, .btn-info.active, .open > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #31b0d5;
  background-image: none;
  border-color: #269abc;
}
.btn-info:active:hover, .btn-info:active:focus, .btn-info:active.focus, .btn-info.active:hover, .btn-info.active:focus, .btn-info.active.focus, .open > .btn-info.dropdown-toggle:hover, .open > .btn-info.dropdown-toggle:focus, .open > .btn-info.dropdown-toggle.focus {
  color: #fff;
  background-color: #269abc;
  border-color: #1b6d85;
}
.btn-info.disabled:hover, .btn-info.disabled:focus, .btn-info.disabled.focus, .btn-info[disabled]:hover, .btn-info[disabled]:focus, .btn-info[disabled].focus, fieldset[disabled] .btn-info:hover, fieldset[disabled] .btn-info:focus, fieldset[disabled] .btn-info.focus {
  background-color: #5bc0de;
  border-color: #46b8da;
}
.btn-info .badge {
  color: #5bc0de;
  background-color: #fff;
}

.btn-warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #eea236;
}
.btn-warning:focus, .btn-warning.focus {
  color: #fff;
  background-color: #ec971f;
  border-color: #985f0d;
}
.btn-warning:hover {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.btn-warning:active, .btn-warning.active, .open > .btn-warning.dropdown-toggle {
  color: #fff;
  background-color: #ec971f;
  background-image: none;
  border-color: #d58512;
}
.btn-warning:active:hover, .btn-warning:active:focus, .btn-warning:active.focus, .btn-warning.active:hover, .btn-warning.active:focus, .btn-warning.active.focus, .open > .btn-warning.dropdown-toggle:hover, .open > .btn-warning.dropdown-toggle:focus, .open > .btn-warning.dropdown-toggle.focus {
  color: #fff;
  background-color: #d58512;
  border-color: #985f0d;
}
.btn-warning.disabled:hover, .btn-warning.disabled:focus, .btn-warning.disabled.focus, .btn-warning[disabled]:hover, .btn-warning[disabled]:focus, .btn-warning[disabled].focus, fieldset[disabled] .btn-warning:hover, fieldset[disabled] .btn-warning:focus, fieldset[disabled] .btn-warning.focus {
  background-color: #f0ad4e;
  border-color: #eea236;
}
.btn-warning .badge {
  color: #f0ad4e;
  background-color: #fff;
}

.btn-danger {
  color: #fff;
  background-color: #d9534f;
  border-color: #d43f3a;
}
.btn-danger:focus, .btn-danger.focus {
  color: #fff;
  background-color: #c9302c;
  border-color: #761c19;
}
.btn-danger:hover {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}
.btn-danger:active, .btn-danger.active, .open > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #c9302c;
  background-image: none;
  border-color: #ac2925;
}
.btn-danger:active:hover, .btn-danger:active:focus, .btn-danger:active.focus, .btn-danger.active:hover, .btn-danger.active:focus, .btn-danger.active.focus, .open > .btn-danger.dropdown-toggle:hover, .open > .btn-danger.dropdown-toggle:focus, .open > .btn-danger.dropdown-toggle.focus {
  color: #fff;
  background-color: #ac2925;
  border-color: #761c19;
}
.btn-danger.disabled:hover, .btn-danger.disabled:focus, .btn-danger.disabled.focus, .btn-danger[disabled]:hover, .btn-danger[disabled]:focus, .btn-danger[disabled].focus, fieldset[disabled] .btn-danger:hover, fieldset[disabled] .btn-danger:focus, fieldset[disabled] .btn-danger.focus {
  background-color: #d9534f;
  border-color: #d43f3a;
}
.btn-danger .badge {
  color: #d9534f;
  background-color: #fff;
}

.btn-link {
  font-weight: 400;
  color: #337ab7;
  border-radius: 0;
}
.btn-link, .btn-link:active, .btn-link.active, .btn-link[disabled], fieldset[disabled] .btn-link {
  background-color: transparent;
  box-shadow: none;
}
.btn-link, .btn-link:hover, .btn-link:focus, .btn-link:active {
  border-color: transparent;
}
.btn-link:hover, .btn-link:focus {
  color: #23527c;
  text-decoration: underline;
  background-color: transparent;
}
.btn-link[disabled]:hover, .btn-link[disabled]:focus, fieldset[disabled] .btn-link:hover, fieldset[disabled] .btn-link:focus {
  color: #777777;
  text-decoration: none;
}

.btn-lg, .btn-group-lg > .btn {
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.3333333;
  border-radius: 6px;
}

.btn-sm, .btn-group-sm > .btn {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

.btn-xs, .btn-group-xs > .btn {
  padding: 1px 5px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

.btn-block {
  display: block;
  width: 100%;
}

.btn-block + .btn-block {
  margin-top: 5px;
}

input[type=submit].btn-block,
input[type=reset].btn-block,
input[type=button].btn-block {
  width: 100%;
}

.fade {
  opacity: 0;
  transition: opacity 0.15s linear;
}
.fade.in {
  opacity: 1;
}

.collapse {
  display: none;
}
.collapse.in {
  display: block;
}

tr.collapse.in {
  display: table-row;
}

tbody.collapse.in {
  display: table-row-group;
}

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition-property: height, visibility;
  transition-duration: 0.35s;
  transition-timing-function: ease;
}

.caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 2px;
  vertical-align: middle;
  border-top: 4px dashed;
  border-top: 4px solid \9 ;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
}

.dropup,
.dropdown {
  position: relative;
}

.dropdown-toggle:focus {
  outline: 0;
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  font-size: 14px;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
}
.dropdown-menu.pull-right {
  right: 0;
  left: auto;
}
.dropdown-menu .divider {
  height: 1px;
  margin: 9px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}
.dropdown-menu > li > a {
  display: block;
  padding: 3px 20px;
  clear: both;
  font-weight: 400;
  line-height: 1.428571429;
  color: #333333;
  white-space: nowrap;
}
.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus {
  color: #262626;
  text-decoration: none;
  background-color: #f5f5f5;
}

.dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus {
  color: #fff;
  text-decoration: none;
  background-color: #337ab7;
  outline: 0;
}

.dropdown-menu > .disabled > a, .dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
  color: #777777;
}
.dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
  text-decoration: none;
  cursor: not-allowed;
  background-color: transparent;
  background-image: none;
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
}

.open > .dropdown-menu {
  display: block;
}
.open > a {
  outline: 0;
}

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

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

.dropdown-header {
  display: block;
  padding: 3px 20px;
  font-size: 12px;
  line-height: 1.428571429;
  color: #777777;
  white-space: nowrap;
}

.dropdown-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 990;
}

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

.dropup .caret,
.navbar-fixed-bottom .dropdown .caret {
  content: "";
  border-top: 0;
  border-bottom: 4px dashed;
  border-bottom: 4px solid \9 ;
}
.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-bottom: 2px;
}

@media (min-width: 1236px) {
  .navbar-right .dropdown-menu {
    right: 0;
    left: auto;
  }
  .navbar-right .dropdown-menu-left {
    left: 0;
    right: auto;
  }
}
.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-block;
  vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  float: left;
}
.btn-group > .btn:hover, .btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
.btn-group-vertical > .btn:hover,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 2;
}

.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group {
  margin-left: -1px;
}

.btn-toolbar {
  margin-left: -5px;
}
.btn-toolbar:before, .btn-toolbar:after {
  display: table;
  content: " ";
}
.btn-toolbar:after {
  clear: both;
}
.btn-toolbar .btn,
.btn-toolbar .btn-group,
.btn-toolbar .input-group {
  float: left;
}
.btn-toolbar > .btn,
.btn-toolbar > .btn-group,
.btn-toolbar > .input-group {
  margin-left: 5px;
}

.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
  border-radius: 0;
}

.btn-group > .btn:first-child {
  margin-left: 0;
}
.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.btn-group > .btn:last-child:not(:first-child),
.btn-group > .dropdown-toggle:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group > .btn-group {
  float: left;
}

.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}

.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
  outline: 0;
}

.btn-group > .btn + .dropdown-toggle {
  padding-right: 8px;
  padding-left: 8px;
}

.btn-group > .btn-lg + .dropdown-toggle, .btn-group-lg.btn-group > .btn + .dropdown-toggle {
  padding-right: 12px;
  padding-left: 12px;
}

.btn-group.open .dropdown-toggle {
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn-group.open .dropdown-toggle.btn-link {
  box-shadow: none;
}

.btn .caret {
  margin-left: 0;
}

.btn-lg .caret, .btn-group-lg > .btn .caret {
  border-width: 5px 5px 0;
  border-bottom-width: 0;
}

.dropup .btn-lg .caret, .dropup .btn-group-lg > .btn .caret {
  border-width: 0 5px 5px;
}

.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group,
.btn-group-vertical > .btn-group > .btn {
  display: block;
  float: none;
  width: 100%;
  max-width: 100%;
}
.btn-group-vertical > .btn-group:before, .btn-group-vertical > .btn-group:after {
  display: table;
  content: " ";
}
.btn-group-vertical > .btn-group:after {
  clear: both;
}
.btn-group-vertical > .btn-group > .btn {
  float: none;
}
.btn-group-vertical > .btn + .btn,
.btn-group-vertical > .btn + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.btn-group-vertical > .btn-group + .btn-group {
  margin-top: -1px;
  margin-left: 0;
}

.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
  border-radius: 0;
}
.btn-group-vertical > .btn:first-child:not(:last-child) {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn:last-child:not(:first-child) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
}

.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}

.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.btn-group-justified {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
}
.btn-group-justified > .btn,
.btn-group-justified > .btn-group {
  display: table-cell;
  float: none;
  width: 1%;
}
.btn-group-justified > .btn-group .btn {
  width: 100%;
}
.btn-group-justified > .btn-group .dropdown-menu {
  left: auto;
}

[data-toggle=buttons] > .btn input[type=radio],
[data-toggle=buttons] > .btn input[type=checkbox],
[data-toggle=buttons] > .btn-group > .btn input[type=radio],
[data-toggle=buttons] > .btn-group > .btn input[type=checkbox] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}

.input-group {
  position: relative;
  display: table;
  border-collapse: separate;
}
.input-group[class*=col-] {
  float: none;
  padding-right: 0;
  padding-left: 0;
}
.input-group .form-control {
  position: relative;
  z-index: 2;
  float: left;
  width: 100%;
  margin-bottom: 0;
}
.input-group .form-control:focus {
  z-index: 3;
}

.input-group-addon,
.input-group-btn,
.input-group .form-control {
  display: table-cell;
}
.input-group-addon:not(:first-child):not(:last-child),
.input-group-btn:not(:first-child):not(:last-child),
.input-group .form-control:not(:first-child):not(:last-child) {
  border-radius: 0;
}

.input-group-addon,
.input-group-btn {
  width: 1%;
  white-space: nowrap;
  vertical-align: middle;
}

.input-group-addon {
  padding: 6px 12px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  color: #555555;
  text-align: center;
  background-color: #eeeeee;
  border: 1px solid #ccc;
  border-radius: 4px;
}
.input-group-addon.input-sm,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .input-group-addon.btn {
  padding: 5px 10px;
  font-size: 12px;
  border-radius: 3px;
}
.input-group-addon.input-lg,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .input-group-addon.btn {
  padding: 10px 16px;
  font-size: 18px;
  border-radius: 6px;
}
.input-group-addon input[type=radio],
.input-group-addon input[type=checkbox] {
  margin-top: 0;
}

.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group-addon:first-child {
  border-right: 0;
}

.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group-addon:last-child {
  border-left: 0;
}

.input-group-btn {
  position: relative;
  font-size: 0;
  white-space: nowrap;
}
.input-group-btn > .btn {
  position: relative;
}
.input-group-btn > .btn + .btn {
  margin-left: -1px;
}
.input-group-btn > .btn:hover, .input-group-btn > .btn:focus, .input-group-btn > .btn:active {
  z-index: 2;
}
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group {
  margin-right: -1px;
}
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group {
  z-index: 2;
  margin-left: -1px;
}

.nav {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
.nav:before, .nav:after {
  display: table;
  content: " ";
}
.nav:after {
  clear: both;
}
.nav > li {
  position: relative;
  display: block;
}
.nav > li > a {
  position: relative;
  display: block;
  padding: 10px 15px;
}
.nav > li > a:hover, .nav > li > a:focus {
  text-decoration: none;
  background-color: #eeeeee;
}
.nav > li.disabled > a {
  color: #777777;
}
.nav > li.disabled > a:hover, .nav > li.disabled > a:focus {
  color: #777777;
  text-decoration: none;
  cursor: not-allowed;
  background-color: transparent;
}
.nav .open > a, .nav .open > a:hover, .nav .open > a:focus {
  background-color: #eeeeee;
  border-color: #337ab7;
}
.nav .nav-divider {
  height: 1px;
  margin: 9px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}
.nav > li > a > img {
  max-width: none;
}

.nav-tabs {
  border-bottom: 1px solid #ddd;
}
.nav-tabs > li {
  float: left;
  margin-bottom: -1px;
}
.nav-tabs > li > a {
  margin-right: 2px;
  line-height: 1.428571429;
  border: 1px solid transparent;
  border-radius: 4px 4px 0 0;
}
.nav-tabs > li > a:hover {
  border-color: #eeeeee #eeeeee #ddd;
}
.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
  color: #555555;
  cursor: default;
  background-color: #fff;
  border: 1px solid #ddd;
  border-bottom-color: transparent;
}
.nav-pills > li {
  float: left;
}
.nav-pills > li > a {
  border-radius: 4px;
}
.nav-pills > li + li {
  margin-left: 2px;
}
.nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus {
  color: #fff;
  background-color: #337ab7;
}

.nav-stacked > li {
  float: none;
}
.nav-stacked > li + li {
  margin-top: 2px;
  margin-left: 0;
}

.nav-justified, .nav-tabs.nav-justified {
  width: 100%;
}
.nav-justified > li, .nav-tabs.nav-justified > li {
  float: none;
}
.nav-justified > li > a, .nav-tabs.nav-justified > li > a {
  margin-bottom: 5px;
  text-align: center;
}
.nav-justified > .dropdown .dropdown-menu {
  top: auto;
  left: auto;
}
@media (min-width: 768px) {
  .nav-justified > li, .nav-tabs.nav-justified > li {
    display: table-cell;
    width: 1%;
  }
  .nav-justified > li > a, .nav-tabs.nav-justified > li > a {
    margin-bottom: 0;
  }
}

.nav-tabs-justified, .nav-tabs.nav-justified {
  border-bottom: 0;
}
.nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
  margin-right: 0;
  border-radius: 4px;
}
.nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a,
.nav-tabs-justified > .active > a:hover,
.nav-tabs-justified > .active > a:focus {
  border: 1px solid #ddd;
}
@media (min-width: 768px) {
  .nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
    border-bottom: 1px solid #ddd;
    border-radius: 4px 4px 0 0;
  }
  .nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a,
  .nav-tabs-justified > .active > a:hover,
  .nav-tabs-justified > .active > a:focus {
    border-bottom-color: #fff;
  }
}

.tab-content > .tab-pane {
  display: none;
}
.tab-content > .active {
  display: block;
}

.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.navbar {
  position: relative;
  min-height: 50px;
  margin-bottom: 20px;
  border: 1px solid transparent;
}
.navbar:before, .navbar:after {
  display: table;
  content: " ";
}
.navbar:after {
  clear: both;
}
@media (min-width: 1236px) {
  .navbar {
    border-radius: 4px;
  }
}

.navbar-header:before, .navbar-header:after {
  display: table;
  content: " ";
}
.navbar-header:after {
  clear: both;
}
@media (min-width: 1236px) {
  .navbar-header {
    float: left;
  }
}

.navbar-collapse {
  padding-right: 15px;
  padding-left: 15px;
  overflow-x: visible;
  border-top: 1px solid transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
  -webkit-overflow-scrolling: touch;
}
.navbar-collapse:before, .navbar-collapse:after {
  display: table;
  content: " ";
}
.navbar-collapse:after {
  clear: both;
}
.navbar-collapse.in {
  overflow-y: auto;
}
@media (min-width: 1236px) {
  .navbar-collapse {
    width: auto;
    border-top: 0;
    box-shadow: none;
  }
  .navbar-collapse.collapse {
    display: block !important;
    height: auto !important;
    padding-bottom: 0;
    overflow: visible !important;
  }
  .navbar-collapse.in {
    overflow-y: visible;
  }
  .navbar-fixed-top .navbar-collapse, .navbar-static-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse {
    padding-right: 0;
    padding-left: 0;
  }
}

.navbar-fixed-top,
.navbar-fixed-bottom {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1030;
}
.navbar-fixed-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
  max-height: 340px;
}
@media (max-device-width: 480px) and (orientation: landscape) {
  .navbar-fixed-top .navbar-collapse,
  .navbar-fixed-bottom .navbar-collapse {
    max-height: 200px;
  }
}
@media (min-width: 1236px) {
  .navbar-fixed-top,
  .navbar-fixed-bottom {
    border-radius: 0;
  }
}

.navbar-fixed-top {
  top: 0;
  border-width: 0 0 1px;
}

.navbar-fixed-bottom {
  bottom: 0;
  margin-bottom: 0;
  border-width: 1px 0 0;
}

.container > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-header,
.container-fluid > .navbar-collapse {
  margin-right: -15px;
  margin-left: -15px;
}
@media (min-width: 1236px) {
  .container > .navbar-header,
  .container > .navbar-collapse,
  .container-fluid > .navbar-header,
  .container-fluid > .navbar-collapse {
    margin-right: 0;
    margin-left: 0;
  }
}

.navbar-static-top {
  z-index: 1000;
  border-width: 0 0 1px;
}
@media (min-width: 1236px) {
  .navbar-static-top {
    border-radius: 0;
  }
}

.navbar-brand {
  float: left;
  height: 50px;
  padding: 15px 15px;
  font-size: 18px;
  line-height: 20px;
}
.navbar-brand:hover, .navbar-brand:focus {
  text-decoration: none;
}
.navbar-brand > img {
  display: block;
}
@media (min-width: 1236px) {
  .navbar > .container .navbar-brand, .navbar > .container-fluid .navbar-brand {
    margin-left: -15px;
  }
}

.navbar-toggle {
  position: relative;
  float: right;
  padding: 9px 10px;
  margin-right: 15px;
  margin-top: 8px;
  margin-bottom: 8px;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 4px;
}
.navbar-toggle:focus {
  outline: 0;
}
.navbar-toggle .icon-bar {
  display: block;
  width: 22px;
  height: 2px;
  border-radius: 1px;
}
.navbar-toggle .icon-bar + .icon-bar {
  margin-top: 4px;
}
@media (min-width: 1236px) {
  .navbar-toggle {
    display: none;
  }
}

.navbar-nav {
  margin: 7.5px -15px;
}
.navbar-nav > li > a {
  padding-top: 10px;
  padding-bottom: 10px;
  line-height: 20px;
}
@media (max-width: 1235px) {
  .navbar-nav .open .dropdown-menu {
    position: static;
    float: none;
    width: auto;
    margin-top: 0;
    background-color: transparent;
    border: 0;
    box-shadow: none;
  }
  .navbar-nav .open .dropdown-menu > li > a,
  .navbar-nav .open .dropdown-menu .dropdown-header {
    padding: 5px 15px 5px 25px;
  }
  .navbar-nav .open .dropdown-menu > li > a {
    line-height: 20px;
  }
  .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-nav .open .dropdown-menu > li > a:focus {
    background-image: none;
  }
}
@media (min-width: 1236px) {
  .navbar-nav {
    float: left;
    margin: 0;
  }
  .navbar-nav > li {
    float: left;
  }
  .navbar-nav > li > a {
    padding-top: 15px;
    padding-bottom: 15px;
  }
}

.navbar-form {
  padding: 10px 15px;
  margin-right: -15px;
  margin-left: -15px;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  margin-top: 8px;
  margin-bottom: 8px;
}
@media (min-width: 768px) {
  .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;
  }
}
@media (max-width: 1235px) {
  .navbar-form .form-group {
    margin-bottom: 5px;
  }
  .navbar-form .form-group:last-child {
    margin-bottom: 0;
  }
}
@media (min-width: 1236px) {
  .navbar-form {
    width: auto;
    padding-top: 0;
    padding-bottom: 0;
    margin-right: 0;
    margin-left: 0;
    border: 0;
    box-shadow: none;
  }
}

.navbar-nav > li > .dropdown-menu {
  margin-top: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
  margin-bottom: 0;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.navbar-btn {
  margin-top: 8px;
  margin-bottom: 8px;
}
.navbar-btn.btn-sm, .btn-group-sm > .navbar-btn.btn {
  margin-top: 10px;
  margin-bottom: 10px;
}
.navbar-btn.btn-xs, .btn-group-xs > .navbar-btn.btn {
  margin-top: 14px;
  margin-bottom: 14px;
}

.navbar-text {
  margin-top: 15px;
  margin-bottom: 15px;
}
@media (min-width: 1236px) {
  .navbar-text {
    float: left;
    margin-right: 15px;
    margin-left: 15px;
  }
}

@media (min-width: 1236px) {
  .navbar-left {
    float: left !important;
  }
  .navbar-right {
    float: right !important;
    margin-right: -15px;
  }
  .navbar-right ~ .navbar-right {
    margin-right: 0;
  }
}
.navbar-default {
  background-color: #f8f8f8;
  border-color: #e7e7e7;
}
.navbar-default .navbar-brand {
  color: #777;
}
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {
  color: #5e5e5e;
  background-color: transparent;
}
.navbar-default .navbar-text {
  color: #777;
}
.navbar-default .navbar-nav > li > a {
  color: #777;
}
.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {
  color: #333;
  background-color: transparent;
}
.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus {
  color: #555;
  background-color: #e7e7e7;
}
.navbar-default .navbar-nav > .disabled > a, .navbar-default .navbar-nav > .disabled > a:hover, .navbar-default .navbar-nav > .disabled > a:focus {
  color: #ccc;
  background-color: transparent;
}
.navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {
  color: #555;
  background-color: #e7e7e7;
}
@media (max-width: 1235px) {
  .navbar-default .navbar-nav .open .dropdown-menu > li > a {
    color: #777;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #333;
    background-color: transparent;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #555;
    background-color: #e7e7e7;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
    color: #ccc;
    background-color: transparent;
  }
}
.navbar-default .navbar-toggle {
  border-color: #ddd;
}
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
  background-color: #ddd;
}
.navbar-default .navbar-toggle .icon-bar {
  background-color: #888;
}
.navbar-default .navbar-collapse,
.navbar-default .navbar-form {
  border-color: #e7e7e7;
}
.navbar-default .navbar-link {
  color: #777;
}
.navbar-default .navbar-link:hover {
  color: #333;
}
.navbar-default .btn-link {
  color: #777;
}
.navbar-default .btn-link:hover, .navbar-default .btn-link:focus {
  color: #333;
}
.navbar-default .btn-link[disabled]:hover, .navbar-default .btn-link[disabled]:focus, fieldset[disabled] .navbar-default .btn-link:hover, fieldset[disabled] .navbar-default .btn-link:focus {
  color: #ccc;
}

.navbar-inverse {
  background-color: #222;
  border-color: #090909;
}
.navbar-inverse .navbar-brand {
  color: #9d9d9d;
}
.navbar-inverse .navbar-brand:hover, .navbar-inverse .navbar-brand:focus {
  color: #fff;
  background-color: transparent;
}
.navbar-inverse .navbar-text {
  color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a {
  color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a:hover, .navbar-inverse .navbar-nav > li > a:focus {
  color: #fff;
  background-color: transparent;
}
.navbar-inverse .navbar-nav > .active > a, .navbar-inverse .navbar-nav > .active > a:hover, .navbar-inverse .navbar-nav > .active > a:focus {
  color: #fff;
  background-color: #090909;
}
.navbar-inverse .navbar-nav > .disabled > a, .navbar-inverse .navbar-nav > .disabled > a:hover, .navbar-inverse .navbar-nav > .disabled > a:focus {
  color: #444;
  background-color: transparent;
}
.navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus {
  color: #fff;
  background-color: #090909;
}
@media (max-width: 1235px) {
  .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
    border-color: #090909;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
    background-color: #090909;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
    color: #9d9d9d;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #fff;
    background-color: transparent;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #fff;
    background-color: #090909;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
    color: #444;
    background-color: transparent;
  }
}
.navbar-inverse .navbar-toggle {
  border-color: #333;
}
.navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus {
  background-color: #333;
}
.navbar-inverse .navbar-toggle .icon-bar {
  background-color: #fff;
}
.navbar-inverse .navbar-collapse,
.navbar-inverse .navbar-form {
  border-color: #101010;
}
.navbar-inverse .navbar-link {
  color: #9d9d9d;
}
.navbar-inverse .navbar-link:hover {
  color: #fff;
}
.navbar-inverse .btn-link {
  color: #9d9d9d;
}
.navbar-inverse .btn-link:hover, .navbar-inverse .btn-link:focus {
  color: #fff;
}
.navbar-inverse .btn-link[disabled]:hover, .navbar-inverse .btn-link[disabled]:focus, fieldset[disabled] .navbar-inverse .btn-link:hover, fieldset[disabled] .navbar-inverse .btn-link:focus {
  color: #444;
}

.breadcrumb {
  padding: 8px 15px;
  margin-bottom: 20px;
  list-style: none;
  background-color: #f5f5f5;
  border-radius: 4px;
}
.breadcrumb > li {
  display: inline-block;
}
.breadcrumb > li + li:before {
  padding: 0 5px;
  color: #ccc;
  content: "/ ";
}
.breadcrumb > .active {
  color: #777777;
}

.pagination {
  display: inline-block;
  padding-left: 0;
  margin: 20px 0;
  border-radius: 4px;
}
.pagination > li {
  display: inline;
}
.pagination > li > a,
.pagination > li > span {
  position: relative;
  float: left;
  padding: 6px 12px;
  margin-left: -1px;
  line-height: 1.428571429;
  color: #337ab7;
  text-decoration: none;
  background-color: #fff;
  border: 1px solid #ddd;
}
.pagination > li > a:hover, .pagination > li > a:focus,
.pagination > li > span:hover,
.pagination > li > span:focus {
  z-index: 2;
  color: #23527c;
  background-color: #eeeeee;
  border-color: #ddd;
}
.pagination > li:first-child > a,
.pagination > li:first-child > span {
  margin-left: 0;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}
.pagination > li:last-child > a,
.pagination > li:last-child > span {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
.pagination > .active > a, .pagination > .active > a:hover, .pagination > .active > a:focus,
.pagination > .active > span,
.pagination > .active > span:hover,
.pagination > .active > span:focus {
  z-index: 3;
  color: #fff;
  cursor: default;
  background-color: #337ab7;
  border-color: #337ab7;
}
.pagination > .disabled > span,
.pagination > .disabled > span:hover,
.pagination > .disabled > span:focus,
.pagination > .disabled > a,
.pagination > .disabled > a:hover,
.pagination > .disabled > a:focus {
  color: #777777;
  cursor: not-allowed;
  background-color: #fff;
  border-color: #ddd;
}

.pagination-lg > li > a,
.pagination-lg > li > span {
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.3333333;
}
.pagination-lg > li:first-child > a,
.pagination-lg > li:first-child > span {
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px;
}
.pagination-lg > li:last-child > a,
.pagination-lg > li:last-child > span {
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px;
}

.pagination-sm > li > a,
.pagination-sm > li > span {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
}
.pagination-sm > li:first-child > a,
.pagination-sm > li:first-child > span {
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
}
.pagination-sm > li:last-child > a,
.pagination-sm > li:last-child > span {
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
}

.pager {
  padding-left: 0;
  margin: 20px 0;
  text-align: center;
  list-style: none;
}
.pager:before, .pager:after {
  display: table;
  content: " ";
}
.pager:after {
  clear: both;
}
.pager li {
  display: inline;
}
.pager li > a,
.pager li > span {
  display: inline-block;
  padding: 5px 14px;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 15px;
}
.pager li > a:hover,
.pager li > a:focus {
  text-decoration: none;
  background-color: #eeeeee;
}
.pager .next > a,
.pager .next > span {
  float: right;
}
.pager .previous > a,
.pager .previous > span {
  float: left;
}
.pager .disabled > a,
.pager .disabled > a:hover,
.pager .disabled > a:focus,
.pager .disabled > span {
  color: #777777;
  cursor: not-allowed;
  background-color: #fff;
}

.label {
  display: inline;
  padding: 0.2em 0.6em 0.3em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25em;
}
.label:empty {
  display: none;
}
.btn .label {
  position: relative;
  top: -1px;
}

a.label:hover, a.label:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}

.label-default {
  background-color: #777777;
}
.label-default[href]:hover, .label-default[href]:focus {
  background-color: #5e5e5e;
}

.label-primary {
  background-color: #337ab7;
}
.label-primary[href]:hover, .label-primary[href]:focus {
  background-color: #286090;
}

.label-success {
  background-color: #5cb85c;
}
.label-success[href]:hover, .label-success[href]:focus {
  background-color: #449d44;
}

.label-info {
  background-color: #5bc0de;
}
.label-info[href]:hover, .label-info[href]:focus {
  background-color: #31b0d5;
}

.label-warning {
  background-color: #f0ad4e;
}
.label-warning[href]:hover, .label-warning[href]:focus {
  background-color: #ec971f;
}

.label-danger {
  background-color: #d9534f;
}
.label-danger[href]:hover, .label-danger[href]:focus {
  background-color: #c9302c;
}

.badge {
  display: inline-block;
  min-width: 10px;
  padding: 3px 7px;
  font-size: 12px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  background-color: #777777;
  border-radius: 10px;
}
.badge:empty {
  display: none;
}
.btn .badge {
  position: relative;
  top: -1px;
}
.btn-xs .badge, .btn-group-xs > .btn .badge {
  top: 0;
  padding: 1px 5px;
}
.list-group-item.active > .badge, .nav-pills > .active > a > .badge {
  color: #337ab7;
  background-color: #fff;
}
.list-group-item > .badge {
  float: right;
}
.list-group-item > .badge + .badge {
  margin-right: 5px;
}
.nav-pills > li > a > .badge {
  margin-left: 3px;
}

a.badge:hover, a.badge:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}

.jumbotron {
  padding-top: 30px;
  padding-bottom: 30px;
  margin-bottom: 30px;
  color: inherit;
  background-color: #eeeeee;
}
.jumbotron h1,
.jumbotron .h1 {
  color: inherit;
}
.jumbotron p {
  margin-bottom: 15px;
  font-size: 21px;
  font-weight: 200;
}
.jumbotron > hr {
  border-top-color: #d5d5d5;
}
.container .jumbotron, .container-fluid .jumbotron {
  padding-right: 15px;
  padding-left: 15px;
  border-radius: 6px;
}
.jumbotron .container {
  max-width: 100%;
}
@media screen and (min-width: 768px) {
  .jumbotron {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .container .jumbotron, .container-fluid .jumbotron {
    padding-right: 60px;
    padding-left: 60px;
  }
  .jumbotron h1,
  .jumbotron .h1 {
    font-size: 63px;
  }
}

.thumbnail {
  display: block;
  padding: 4px;
  margin-bottom: 20px;
  line-height: 1.428571429;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  transition: border 0.2s ease-in-out;
}
.thumbnail > img,
.thumbnail a > img {
  display: block;
  max-width: 100%;
  height: auto;
  margin-right: auto;
  margin-left: auto;
}
.thumbnail .caption {
  padding: 9px;
  color: #333333;
}

a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
  border-color: #337ab7;
}

.alert {
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid transparent;
  border-radius: 4px;
}
.alert h4 {
  margin-top: 0;
  color: inherit;
}
.alert .alert-link {
  font-weight: bold;
}
.alert > p,
.alert > ul {
  margin-bottom: 0;
}
.alert > p + p {
  margin-top: 5px;
}

.alert-dismissable,
.alert-dismissible {
  padding-right: 35px;
}
.alert-dismissable .close,
.alert-dismissible .close {
  position: relative;
  top: -2px;
  right: -21px;
  color: inherit;
}

.alert-success {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d6e9c6;
}
.alert-success hr {
  border-top-color: #c9e2b3;
}
.alert-success .alert-link {
  color: #2b542c;
}

.alert-info {
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bce8f1;
}
.alert-info hr {
  border-top-color: #a6e1ec;
}
.alert-info .alert-link {
  color: #245269;
}

.alert-warning {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #faebcc;
}
.alert-warning hr {
  border-top-color: #f7e1b5;
}
.alert-warning .alert-link {
  color: #66512c;
}

.alert-danger {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
}
.alert-danger hr {
  border-top-color: #e4b9c0;
}
.alert-danger .alert-link {
  color: #843534;
}
@keyframes progress-bar-stripes {
  from {
    background-position: 40px 0;
  }
  to {
    background-position: 0 0;
  }
}
.progress {
  height: 20px;
  margin-bottom: 20px;
  overflow: hidden;
  background-color: #f5f5f5;
  border-radius: 4px;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
}

.progress-bar {
  float: left;
  width: 0%;
  height: 100%;
  font-size: 12px;
  line-height: 20px;
  color: #fff;
  text-align: center;
  background-color: #337ab7;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  transition: width 0.6s ease;
}

.progress-striped .progress-bar,
.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 40px 40px;
}

.progress.active .progress-bar,
.progress-bar.active {
  animation: progress-bar-stripes 2s linear infinite;
}

.progress-bar-success {
  background-color: #5cb85c;
}
.progress-striped .progress-bar-success {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}

.progress-bar-info {
  background-color: #5bc0de;
}
.progress-striped .progress-bar-info {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}

.progress-bar-warning {
  background-color: #f0ad4e;
}
.progress-striped .progress-bar-warning {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}

.progress-bar-danger {
  background-color: #d9534f;
}
.progress-striped .progress-bar-danger {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}

.media {
  margin-top: 15px;
}
.media:first-child {
  margin-top: 0;
}

.media,
.media-body {
  overflow: hidden;
  zoom: 1;
}

.media-body {
  width: 10000px;
}

.media-object {
  display: block;
}
.media-object.img-thumbnail {
  max-width: none;
}

.media-right,
.media > .pull-right {
  padding-left: 10px;
}

.media-left,
.media > .pull-left {
  padding-right: 10px;
}

.media-left,
.media-right,
.media-body {
  display: table-cell;
  vertical-align: top;
}

.media-middle {
  vertical-align: middle;
}

.media-bottom {
  vertical-align: bottom;
}

.media-heading {
  margin-top: 0;
  margin-bottom: 5px;
}

.media-list {
  padding-left: 0;
  list-style: none;
}

.list-group {
  padding-left: 0;
  margin-bottom: 20px;
}

.list-group-item {
  position: relative;
  display: block;
  padding: 10px 15px;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid #ddd;
}
.list-group-item:first-child {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}
.list-group-item:last-child {
  margin-bottom: 0;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
}
.list-group-item.disabled, .list-group-item.disabled:hover, .list-group-item.disabled:focus {
  color: #777777;
  cursor: not-allowed;
  background-color: #eeeeee;
}
.list-group-item.disabled .list-group-item-heading, .list-group-item.disabled:hover .list-group-item-heading, .list-group-item.disabled:focus .list-group-item-heading {
  color: inherit;
}
.list-group-item.disabled .list-group-item-text, .list-group-item.disabled:hover .list-group-item-text, .list-group-item.disabled:focus .list-group-item-text {
  color: #777777;
}
.list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus {
  z-index: 2;
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
}
.list-group-item.active .list-group-item-heading,
.list-group-item.active .list-group-item-heading > small,
.list-group-item.active .list-group-item-heading > .small, .list-group-item.active:hover .list-group-item-heading,
.list-group-item.active:hover .list-group-item-heading > small,
.list-group-item.active:hover .list-group-item-heading > .small, .list-group-item.active:focus .list-group-item-heading,
.list-group-item.active:focus .list-group-item-heading > small,
.list-group-item.active:focus .list-group-item-heading > .small {
  color: inherit;
}
.list-group-item.active .list-group-item-text, .list-group-item.active:hover .list-group-item-text, .list-group-item.active:focus .list-group-item-text {
  color: #c7ddef;
}

a.list-group-item,
button.list-group-item {
  color: #555;
}
a.list-group-item .list-group-item-heading,
button.list-group-item .list-group-item-heading {
  color: #333;
}
a.list-group-item:hover, a.list-group-item:focus,
button.list-group-item:hover,
button.list-group-item:focus {
  color: #555;
  text-decoration: none;
  background-color: #f5f5f5;
}

button.list-group-item {
  width: 100%;
  text-align: left;
}

.list-group-item-success {
  color: #3c763d;
  background-color: #dff0d8;
}

a.list-group-item-success,
button.list-group-item-success {
  color: #3c763d;
}
a.list-group-item-success .list-group-item-heading,
button.list-group-item-success .list-group-item-heading {
  color: inherit;
}
a.list-group-item-success:hover, a.list-group-item-success:focus,
button.list-group-item-success:hover,
button.list-group-item-success:focus {
  color: #3c763d;
  background-color: #d0e9c6;
}
a.list-group-item-success.active, a.list-group-item-success.active:hover, a.list-group-item-success.active:focus,
button.list-group-item-success.active,
button.list-group-item-success.active:hover,
button.list-group-item-success.active:focus {
  color: #fff;
  background-color: #3c763d;
  border-color: #3c763d;
}

.list-group-item-info {
  color: #31708f;
  background-color: #d9edf7;
}

a.list-group-item-info,
button.list-group-item-info {
  color: #31708f;
}
a.list-group-item-info .list-group-item-heading,
button.list-group-item-info .list-group-item-heading {
  color: inherit;
}
a.list-group-item-info:hover, a.list-group-item-info:focus,
button.list-group-item-info:hover,
button.list-group-item-info:focus {
  color: #31708f;
  background-color: #c4e3f3;
}
a.list-group-item-info.active, a.list-group-item-info.active:hover, a.list-group-item-info.active:focus,
button.list-group-item-info.active,
button.list-group-item-info.active:hover,
button.list-group-item-info.active:focus {
  color: #fff;
  background-color: #31708f;
  border-color: #31708f;
}

.list-group-item-warning {
  color: #8a6d3b;
  background-color: #fcf8e3;
}

a.list-group-item-warning,
button.list-group-item-warning {
  color: #8a6d3b;
}
a.list-group-item-warning .list-group-item-heading,
button.list-group-item-warning .list-group-item-heading {
  color: inherit;
}
a.list-group-item-warning:hover, a.list-group-item-warning:focus,
button.list-group-item-warning:hover,
button.list-group-item-warning:focus {
  color: #8a6d3b;
  background-color: #faf2cc;
}
a.list-group-item-warning.active, a.list-group-item-warning.active:hover, a.list-group-item-warning.active:focus,
button.list-group-item-warning.active,
button.list-group-item-warning.active:hover,
button.list-group-item-warning.active:focus {
  color: #fff;
  background-color: #8a6d3b;
  border-color: #8a6d3b;
}

.list-group-item-danger {
  color: #a94442;
  background-color: #f2dede;
}

a.list-group-item-danger,
button.list-group-item-danger {
  color: #a94442;
}
a.list-group-item-danger .list-group-item-heading,
button.list-group-item-danger .list-group-item-heading {
  color: inherit;
}
a.list-group-item-danger:hover, a.list-group-item-danger:focus,
button.list-group-item-danger:hover,
button.list-group-item-danger:focus {
  color: #a94442;
  background-color: #ebcccc;
}
a.list-group-item-danger.active, a.list-group-item-danger.active:hover, a.list-group-item-danger.active:focus,
button.list-group-item-danger.active,
button.list-group-item-danger.active:hover,
button.list-group-item-danger.active:focus {
  color: #fff;
  background-color: #a94442;
  border-color: #a94442;
}

.list-group-item-heading {
  margin-top: 0;
  margin-bottom: 5px;
}

.list-group-item-text {
  margin-bottom: 0;
  line-height: 1.3;
}

.panel {
  margin-bottom: 20px;
  background-color: #fff;
  border: 1px solid transparent;
  border-radius: 4px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}

.panel-body {
  padding: 15px;
}
.panel-body:before, .panel-body:after {
  display: table;
  content: " ";
}
.panel-body:after {
  clear: both;
}

.panel-heading {
  padding: 10px 15px;
  border-bottom: 1px solid transparent;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}
.panel-heading > .dropdown .dropdown-toggle {
  color: inherit;
}

.panel-title {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
  color: inherit;
}
.panel-title > a,
.panel-title > small,
.panel-title > .small,
.panel-title > small > a,
.panel-title > .small > a {
  color: inherit;
}

.panel-footer {
  padding: 10px 15px;
  background-color: #f5f5f5;
  border-top: 1px solid #ddd;
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
}

.panel > .list-group,
.panel > .panel-collapse > .list-group {
  margin-bottom: 0;
}
.panel > .list-group .list-group-item,
.panel > .panel-collapse > .list-group .list-group-item {
  border-width: 1px 0;
  border-radius: 0;
}
.panel > .list-group:first-child .list-group-item:first-child,
.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {
  border-top: 0;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}
.panel > .list-group:last-child .list-group-item:last-child,
.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {
  border-bottom: 0;
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
}
.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.panel-heading + .list-group .list-group-item:first-child {
  border-top-width: 0;
}

.list-group + .panel-footer {
  border-top-width: 0;
}

.panel > .table,
.panel > .table-responsive > .table,
.panel > .panel-collapse > .table {
  margin-bottom: 0;
}
.panel > .table caption,
.panel > .table-responsive > .table caption,
.panel > .panel-collapse > .table caption {
  padding-right: 15px;
  padding-left: 15px;
}
.panel > .table:first-child,
.panel > .table-responsive:first-child > .table:first-child {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}
.panel > .table:first-child > thead:first-child > tr:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {
  border-top-left-radius: 3px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {
  border-top-right-radius: 3px;
}
.panel > .table:last-child,
.panel > .table-responsive:last-child > .table:last-child {
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
  border-bottom-left-radius: 3px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
  border-bottom-right-radius: 3px;
}
.panel > .panel-body + .table,
.panel > .panel-body + .table-responsive,
.panel > .table + .panel-body,
.panel > .table-responsive + .panel-body {
  border-top: 1px solid #ddd;
}
.panel > .table > tbody:first-child > tr:first-child th,
.panel > .table > tbody:first-child > tr:first-child td {
  border-top: 0;
}
.panel > .table-bordered,
.panel > .table-responsive > .table-bordered {
  border: 0;
}
.panel > .table-bordered > thead > tr > th:first-child,
.panel > .table-bordered > thead > tr > td:first-child,
.panel > .table-bordered > tbody > tr > th:first-child,
.panel > .table-bordered > tbody > tr > td:first-child,
.panel > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-bordered > tfoot > tr > td:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
  border-left: 0;
}
.panel > .table-bordered > thead > tr > th:last-child,
.panel > .table-bordered > thead > tr > td:last-child,
.panel > .table-bordered > tbody > tr > th:last-child,
.panel > .table-bordered > tbody > tr > td:last-child,
.panel > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-bordered > tfoot > tr > td:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
  border-right: 0;
}
.panel > .table-bordered > thead > tr:first-child > td,
.panel > .table-bordered > thead > tr:first-child > th,
.panel > .table-bordered > tbody > tr:first-child > td,
.panel > .table-bordered > tbody > tr:first-child > th,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
  border-bottom: 0;
}
.panel > .table-bordered > tbody > tr:last-child > td,
.panel > .table-bordered > tbody > tr:last-child > th,
.panel > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-bordered > tfoot > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
  border-bottom: 0;
}
.panel > .table-responsive {
  margin-bottom: 0;
  border: 0;
}

.panel-group {
  margin-bottom: 20px;
}
.panel-group .panel {
  margin-bottom: 0;
  border-radius: 4px;
}
.panel-group .panel + .panel {
  margin-top: 5px;
}
.panel-group .panel-heading {
  border-bottom: 0;
}
.panel-group .panel-heading + .panel-collapse > .panel-body,
.panel-group .panel-heading + .panel-collapse > .list-group {
  border-top: 1px solid #ddd;
}
.panel-group .panel-footer {
  border-top: 0;
}
.panel-group .panel-footer + .panel-collapse .panel-body {
  border-bottom: 1px solid #ddd;
}

.panel-default {
  border-color: #ddd;
}
.panel-default > .panel-heading {
  color: #333333;
  background-color: #f5f5f5;
  border-color: #ddd;
}
.panel-default > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #ddd;
}
.panel-default > .panel-heading .badge {
  color: #f5f5f5;
  background-color: #333333;
}
.panel-default > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #ddd;
}

.panel-primary {
  border-color: #337ab7;
}
.panel-primary > .panel-heading {
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
}
.panel-primary > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #337ab7;
}
.panel-primary > .panel-heading .badge {
  color: #337ab7;
  background-color: #fff;
}
.panel-primary > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #337ab7;
}

.panel-success {
  border-color: #d6e9c6;
}
.panel-success > .panel-heading {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d6e9c6;
}
.panel-success > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #d6e9c6;
}
.panel-success > .panel-heading .badge {
  color: #dff0d8;
  background-color: #3c763d;
}
.panel-success > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #d6e9c6;
}

.panel-info {
  border-color: #bce8f1;
}
.panel-info > .panel-heading {
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bce8f1;
}
.panel-info > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #bce8f1;
}
.panel-info > .panel-heading .badge {
  color: #d9edf7;
  background-color: #31708f;
}
.panel-info > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #bce8f1;
}

.panel-warning {
  border-color: #faebcc;
}
.panel-warning > .panel-heading {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #faebcc;
}
.panel-warning > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #faebcc;
}
.panel-warning > .panel-heading .badge {
  color: #fcf8e3;
  background-color: #8a6d3b;
}
.panel-warning > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #faebcc;
}

.panel-danger {
  border-color: #ebccd1;
}
.panel-danger > .panel-heading {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
}
.panel-danger > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #ebccd1;
}
.panel-danger > .panel-heading .badge {
  color: #f2dede;
  background-color: #a94442;
}
.panel-danger > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #ebccd1;
}

.embed-responsive {
  position: relative;
  display: block;
  height: 0;
  padding: 0;
  overflow: hidden;
}
.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.embed-responsive-16by9 {
  padding-bottom: 56.25%;
}

.embed-responsive-4by3 {
  padding-bottom: 75%;
}

.well {
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border: 1px solid #e3e3e3;
  border-radius: 4px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
}
.well blockquote {
  border-color: #ddd;
  border-color: rgba(0, 0, 0, 0.15);
}

.well-lg {
  padding: 24px;
  border-radius: 6px;
}

.well-sm {
  padding: 9px;
  border-radius: 3px;
}

.close {
  float: right;
  font-size: 21px;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  filter: alpha(opacity=20);
  opacity: 0.2;
}
.close:hover, .close:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
  filter: alpha(opacity=50);
  opacity: 0.5;
}

button.close {
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

.modal-open {
  overflow: hidden;
}

.modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  display: none;
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
  outline: 0;
}
.modal.fade .modal-dialog {
  transform: translate(0, -25%);
  transition: transform 0.3s ease-out;
}
.modal.in .modal-dialog {
  transform: translate(0, 0);
}

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px;
}

.modal-content {
  position: relative;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #999;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  outline: 0;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: #000;
}
.modal-backdrop.fade {
  filter: alpha(opacity=0);
  opacity: 0;
}
.modal-backdrop.in {
  filter: alpha(opacity=50);
  opacity: 0.5;
}

.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5;
}
.modal-header:before, .modal-header:after {
  display: table;
  content: " ";
}
.modal-header:after {
  clear: both;
}

.modal-header .close {
  margin-top: -2px;
}

.modal-title {
  margin: 0;
  line-height: 1.428571429;
}

.modal-body {
  position: relative;
  padding: 15px;
}

.modal-footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5;
}
.modal-footer:before, .modal-footer:after {
  display: table;
  content: " ";
}
.modal-footer:after {
  clear: both;
}
.modal-footer .btn + .btn {
  margin-bottom: 0;
  margin-left: 5px;
}
.modal-footer .btn-group .btn + .btn {
  margin-left: -1px;
}
.modal-footer .btn-block + .btn-block {
  margin-left: 0;
}

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}

@media (min-width: 768px) {
  .modal-dialog {
    width: 600px;
    margin: 30px auto;
  }
  .modal-content {
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
  }
  .modal-sm {
    width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg {
    width: 900px;
  }
}
.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.428571429;
  line-break: auto;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  white-space: normal;
  font-size: 12px;
  filter: alpha(opacity=0);
  opacity: 0;
}
.tooltip.in {
  filter: alpha(opacity=90);
  opacity: 0.9;
}
.tooltip.top {
  padding: 5px 0;
  margin-top: -3px;
}
.tooltip.right {
  padding: 0 5px;
  margin-left: 3px;
}
.tooltip.bottom {
  padding: 5px 0;
  margin-top: 3px;
}
.tooltip.left {
  padding: 0 5px;
  margin-left: -3px;
}
.tooltip.top .tooltip-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.top-left .tooltip-arrow {
  right: 5px;
  bottom: 0;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.top-right .tooltip-arrow {
  bottom: 0;
  left: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.right .tooltip-arrow {
  top: 50%;
  left: 0;
  margin-top: -5px;
  border-width: 5px 5px 5px 0;
  border-right-color: #000;
}
.tooltip.left .tooltip-arrow {
  top: 50%;
  right: 0;
  margin-top: -5px;
  border-width: 5px 0 5px 5px;
  border-left-color: #000;
}
.tooltip.bottom .tooltip-arrow {
  top: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.tooltip.bottom-left .tooltip-arrow {
  top: 0;
  right: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.tooltip.bottom-right .tooltip-arrow {
  top: 0;
  left: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}

.tooltip-inner {
  max-width: 200px;
  padding: 3px 8px;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 4px;
}

.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: none;
  max-width: 276px;
  padding: 1px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.428571429;
  line-break: auto;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  white-space: normal;
  font-size: 14px;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
}
.popover.top {
  margin-top: -10px;
}
.popover.right {
  margin-left: 10px;
}
.popover.bottom {
  margin-top: 10px;
}
.popover.left {
  margin-left: -10px;
}
.popover > .arrow {
  border-width: 11px;
}
.popover > .arrow, .popover > .arrow:after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}
.popover > .arrow:after {
  content: "";
  border-width: 10px;
}
.popover.top > .arrow {
  bottom: -11px;
  left: 50%;
  margin-left: -11px;
  border-top-color: #999999;
  border-top-color: rgba(0, 0, 0, 0.25);
  border-bottom-width: 0;
}
.popover.top > .arrow:after {
  bottom: 1px;
  margin-left: -10px;
  content: " ";
  border-top-color: #fff;
  border-bottom-width: 0;
}
.popover.right > .arrow {
  top: 50%;
  left: -11px;
  margin-top: -11px;
  border-right-color: #999999;
  border-right-color: rgba(0, 0, 0, 0.25);
  border-left-width: 0;
}
.popover.right > .arrow:after {
  bottom: -10px;
  left: 1px;
  content: " ";
  border-right-color: #fff;
  border-left-width: 0;
}
.popover.bottom > .arrow {
  top: -11px;
  left: 50%;
  margin-left: -11px;
  border-top-width: 0;
  border-bottom-color: #999999;
  border-bottom-color: rgba(0, 0, 0, 0.25);
}
.popover.bottom > .arrow:after {
  top: 1px;
  margin-left: -10px;
  content: " ";
  border-top-width: 0;
  border-bottom-color: #fff;
}
.popover.left > .arrow {
  top: 50%;
  right: -11px;
  margin-top: -11px;
  border-right-width: 0;
  border-left-color: #999999;
  border-left-color: rgba(0, 0, 0, 0.25);
}
.popover.left > .arrow:after {
  right: 1px;
  bottom: -10px;
  content: " ";
  border-right-width: 0;
  border-left-color: #fff;
}

.popover-title {
  padding: 8px 14px;
  margin: 0;
  font-size: 14px;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-radius: 5px 5px 0 0;
}

.popover-content {
  padding: 9px 14px;
}

.carousel {
  position: relative;
}

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.carousel-inner > .item {
  position: relative;
  display: none;
  transition: 0.6s ease-in-out left;
}
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  display: block;
  max-width: 100%;
  height: auto;
  line-height: 1;
}
@media all and (transform-3d), (-webkit-transform-3d) {
  .carousel-inner > .item {
    transition: transform 0.6s ease-in-out;
    backface-visibility: hidden;
    perspective: 1000px;
  }
  .carousel-inner > .item.next, .carousel-inner > .item.active.right {
    transform: translate3d(100%, 0, 0);
    left: 0;
  }
  .carousel-inner > .item.prev, .carousel-inner > .item.active.left {
    transform: translate3d(-100%, 0, 0);
    left: 0;
  }
  .carousel-inner > .item.next.left, .carousel-inner > .item.prev.right, .carousel-inner > .item.active {
    transform: translate3d(0, 0, 0);
    left: 0;
  }
}
.carousel-inner > .active,
.carousel-inner > .next,
.carousel-inner > .prev {
  display: block;
}
.carousel-inner > .active {
  left: 0;
}
.carousel-inner > .next,
.carousel-inner > .prev {
  position: absolute;
  top: 0;
  width: 100%;
}
.carousel-inner > .next {
  left: 100%;
}
.carousel-inner > .prev {
  left: -100%;
}
.carousel-inner > .next.left,
.carousel-inner > .prev.right {
  left: 0;
}
.carousel-inner > .active.left {
  left: -100%;
}
.carousel-inner > .active.right {
  left: 100%;
}

.carousel-control {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 15%;
  font-size: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  background-color: rgba(0, 0, 0, 0);
  filter: alpha(opacity=50);
  opacity: 0.5;
}
.carousel-control.left {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#80000000", endColorstr="#00000000", GradientType=1);
  background-repeat: repeat-x;
}
.carousel-control.right {
  right: 0;
  left: auto;
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#00000000", endColorstr="#80000000", GradientType=1);
  background-repeat: repeat-x;
}
.carousel-control:hover, .carousel-control:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  filter: alpha(opacity=90);
  opacity: 0.9;
}
.carousel-control .icon-prev,
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-left,
.carousel-control .glyphicon-chevron-right {
  position: absolute;
  top: 50%;
  z-index: 5;
  display: inline-block;
  margin-top: -10px;
}
.carousel-control .icon-prev,
.carousel-control .glyphicon-chevron-left {
  left: 50%;
  margin-left: -10px;
}
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-right {
  right: 50%;
  margin-right: -10px;
}
.carousel-control .icon-prev,
.carousel-control .icon-next {
  width: 20px;
  height: 20px;
  font-family: serif;
  line-height: 1;
}
.carousel-control .icon-prev:before {
  content: "‹";
}
.carousel-control .icon-next:before {
  content: "›";
}

.carousel-indicators {
  position: absolute;
  bottom: 10px;
  left: 50%;
  z-index: 15;
  width: 60%;
  padding-left: 0;
  margin-left: -30%;
  text-align: center;
  list-style: none;
}
.carousel-indicators li {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 1px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #000 \9 ;
  background-color: rgba(0, 0, 0, 0);
  border: 1px solid #fff;
  border-radius: 10px;
}
.carousel-indicators .active {
  width: 12px;
  height: 12px;
  margin: 0;
  background-color: #fff;
}

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
}
.carousel-caption .btn {
  text-shadow: none;
}

@media screen and (min-width: 768px) {
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -10px;
    font-size: 30px;
  }
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .icon-prev {
    margin-left: -10px;
  }
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-next {
    margin-right: -10px;
  }
  .carousel-caption {
    right: 20%;
    left: 20%;
    padding-bottom: 30px;
  }
  .carousel-indicators {
    bottom: 20px;
  }
}
.clearfix:before, .clearfix:after {
  display: table;
  content: " ";
}
.clearfix:after {
  clear: both;
}

.center-block {
  display: block;
  margin-right: auto;
  margin-left: auto;
}

.pull-right {
  float: right !important;
}

.pull-left {
  float: left !important;
}

.hide {
  display: none !important;
}

.show {
  display: block !important;
}

.invisible {
  visibility: hidden;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.hidden {
  display: none !important;
}

.affix {
  position: fixed;
}
.visible-xs {
  display: none !important;
}

.visible-sm {
  display: none !important;
}

.visible-md {
  display: none !important;
}

.visible-lg {
  display: none !important;
}

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important;
}

@media (max-width: 767px) {
  .visible-xs {
    display: block !important;
  }
  table.visible-xs {
    display: table !important;
  }
  tr.visible-xs {
    display: table-row !important;
  }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important;
  }
  table.visible-sm {
    display: table !important;
  }
  tr.visible-sm {
    display: table-row !important;
  }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important;
  }
  table.visible-md {
    display: table !important;
  }
  tr.visible-md {
    display: table-row !important;
  }
  th.visible-md,
  td.visible-md {
    display: table-cell !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-block {
    display: block !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline {
    display: inline !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg {
    display: block !important;
  }
  table.visible-lg {
    display: table !important;
  }
  tr.visible-lg {
    display: table-row !important;
  }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-block {
    display: block !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg-inline {
    display: inline !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg-inline-block {
    display: inline-block !important;
  }
}

@media (max-width: 767px) {
  .hidden-xs {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important;
  }
}
.visible-print {
  display: none !important;
}

@media print {
  .visible-print {
    display: block !important;
  }
  table.visible-print {
    display: table !important;
  }
  tr.visible-print {
    display: table-row !important;
  }
  th.visible-print,
  td.visible-print {
    display: table-cell !important;
  }
}
.visible-print-block {
  display: none !important;
}
@media print {
  .visible-print-block {
    display: block !important;
  }
}

.visible-print-inline {
  display: none !important;
}
@media print {
  .visible-print-inline {
    display: inline !important;
  }
}

.visible-print-inline-block {
  display: none !important;
}
@media print {
  .visible-print-inline-block {
    display: inline-block !important;
  }
}

@media print {
  .hidden-print {
    display: none !important;
  }
}
/*!
 *  Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@font-face {
  font-family: "FontAwesome";
  src: url(/fonts/vendor/font-awesome/fontawesome-webfont.eot?8b43027f47b20503057dfbbaa9401fef);
  src: url(/fonts/vendor/font-awesome/fontawesome-webfont.eot?8b43027f47b20503057dfbbaa9401fef?#iefix&v=4.7.0) format("embedded-opentype"), url(/fonts/vendor/font-awesome/fontawesome-webfont.woff2?20fd1704ea223900efa9fd4e869efb08) format("woff2"), url(/fonts/vendor/font-awesome/fontawesome-webfont.woff?f691f37e57f04c152e2315ab7dbad881) format("woff"), url(/fonts/vendor/font-awesome/fontawesome-webfont.ttf?1e59d2330b4c6deb84b340635ed36249) format("truetype"), url(/fonts/vendor/font-awesome/fontawesome-webfont.svg?c1e38fd9e0e74ba58f7a2b77ef29fdd3#fontawesomeregular) format("svg");
  font-weight: normal;
  font-style: normal;
}
.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.3333333333em;
  line-height: 0.75em;
  vertical-align: -15%;
}

.fa-2x {
  font-size: 2em;
}

.fa-3x {
  font-size: 3em;
}

.fa-4x {
  font-size: 4em;
}

.fa-5x {
  font-size: 5em;
}

.fa-fw {
  width: 1.2857142857em;
  text-align: center;
}

.fa-ul {
  padding-left: 0;
  margin-left: 2.1428571429em;
  list-style-type: none;
}
.fa-ul > li {
  position: relative;
}

.fa-li {
  position: absolute;
  left: -2.1428571429em;
  width: 2.1428571429em;
  top: 0.1428571429em;
  text-align: center;
}
.fa-li.fa-lg {
  left: -1.8571428571em;
}

.fa-border {
  padding: 0.2em 0.25em 0.15em;
  border: solid 0.08em #eee;
  border-radius: 0.1em;
}

.fa-pull-left {
  float: left;
}

.fa-pull-right {
  float: right;
}

.fa.fa-pull-left {
  margin-right: 0.3em;
}
.fa.fa-pull-right {
  margin-left: 0.3em;
}

/* Deprecated as of 4.4.0 */
.pull-right {
  float: right;
}

.pull-left {
  float: left;
}

.fa.pull-left {
  margin-right: 0.3em;
}
.fa.pull-right {
  margin-left: 0.3em;
}

.fa-spin {
  animation: fa-spin 2s infinite linear;
}

.fa-pulse {
  animation: fa-spin 1s infinite steps(8);
}
@keyframes fa-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}
.fa-rotate-90 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
  transform: rotate(90deg);
}

.fa-rotate-180 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
  transform: rotate(180deg);
}

.fa-rotate-270 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
  transform: rotate(270deg);
}

.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  transform: scale(-1, 1);
}

.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  transform: scale(1, -1);
}

:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
  filter: none;
}

.fa-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle;
}

.fa-stack-1x, .fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
}

.fa-stack-1x {
  line-height: inherit;
}

.fa-stack-2x {
  font-size: 2em;
}

.fa-inverse {
  color: #fff;
}

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-glass:before {
  content: "\f000";
}

.fa-music:before {
  content: "\f001";
}

.fa-search:before {
  content: "\f002";
}

.fa-envelope-o:before {
  content: "\f003";
}

.fa-heart:before {
  content: "\f004";
}

.fa-star:before {
  content: "\f005";
}

.fa-star-o:before {
  content: "\f006";
}

.fa-user:before {
  content: "\f007";
}

.fa-film:before {
  content: "\f008";
}

.fa-th-large:before {
  content: "\f009";
}

.fa-th:before {
  content: "\f00a";
}

.fa-th-list:before {
  content: "\f00b";
}

.fa-check:before {
  content: "\f00c";
}

.fa-remove:before,
.fa-close:before,
.fa-times:before {
  content: "\f00d";
}

.fa-search-plus:before {
  content: "\f00e";
}

.fa-search-minus:before {
  content: "\f010";
}

.fa-power-off:before {
  content: "\f011";
}

.fa-signal:before {
  content: "\f012";
}

.fa-gear:before,
.fa-cog:before {
  content: "\f013";
}

.fa-trash-o:before {
  content: "\f014";
}

.fa-home:before {
  content: "\f015";
}

.fa-file-o:before {
  content: "\f016";
}

.fa-clock-o:before {
  content: "\f017";
}

.fa-road:before {
  content: "\f018";
}

.fa-download:before {
  content: "\f019";
}

.fa-arrow-circle-o-down:before {
  content: "\f01a";
}

.fa-arrow-circle-o-up:before {
  content: "\f01b";
}

.fa-inbox:before {
  content: "\f01c";
}

.fa-play-circle-o:before {
  content: "\f01d";
}

.fa-rotate-right:before,
.fa-repeat:before {
  content: "\f01e";
}

.fa-refresh:before {
  content: "\f021";
}

.fa-list-alt:before {
  content: "\f022";
}

.fa-lock:before {
  content: "\f023";
}

.fa-flag:before {
  content: "\f024";
}

.fa-headphones:before {
  content: "\f025";
}

.fa-volume-off:before {
  content: "\f026";
}

.fa-volume-down:before {
  content: "\f027";
}

.fa-volume-up:before {
  content: "\f028";
}

.fa-qrcode:before {
  content: "\f029";
}

.fa-barcode:before {
  content: "\f02a";
}

.fa-tag:before {
  content: "\f02b";
}

.fa-tags:before {
  content: "\f02c";
}

.fa-book:before {
  content: "\f02d";
}

.fa-bookmark:before {
  content: "\f02e";
}

.fa-print:before {
  content: "\f02f";
}

.fa-camera:before {
  content: "\f030";
}

.fa-font:before {
  content: "\f031";
}

.fa-bold:before {
  content: "\f032";
}

.fa-italic:before {
  content: "\f033";
}

.fa-text-height:before {
  content: "\f034";
}

.fa-text-width:before {
  content: "\f035";
}

.fa-align-left:before {
  content: "\f036";
}

.fa-align-center:before {
  content: "\f037";
}

.fa-align-right:before {
  content: "\f038";
}

.fa-align-justify:before {
  content: "\f039";
}

.fa-list:before {
  content: "\f03a";
}

.fa-dedent:before,
.fa-outdent:before {
  content: "\f03b";
}

.fa-indent:before {
  content: "\f03c";
}

.fa-video-camera:before {
  content: "\f03d";
}

.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
  content: "\f03e";
}

.fa-pencil:before {
  content: "\f040";
}

.fa-map-marker:before {
  content: "\f041";
}

.fa-adjust:before {
  content: "\f042";
}

.fa-tint:before {
  content: "\f043";
}

.fa-edit:before,
.fa-pencil-square-o:before {
  content: "\f044";
}

.fa-share-square-o:before {
  content: "\f045";
}

.fa-check-square-o:before {
  content: "\f046";
}

.fa-arrows:before {
  content: "\f047";
}

.fa-step-backward:before {
  content: "\f048";
}

.fa-fast-backward:before {
  content: "\f049";
}

.fa-backward:before {
  content: "\f04a";
}

.fa-play:before {
  content: "\f04b";
}

.fa-pause:before {
  content: "\f04c";
}

.fa-stop:before {
  content: "\f04d";
}

.fa-forward:before {
  content: "\f04e";
}

.fa-fast-forward:before {
  content: "\f050";
}

.fa-step-forward:before {
  content: "\f051";
}

.fa-eject:before {
  content: "\f052";
}

.fa-chevron-left:before {
  content: "\f053";
}

.fa-chevron-right:before {
  content: "\f054";
}

.fa-plus-circle:before {
  content: "\f055";
}

.fa-minus-circle:before {
  content: "\f056";
}

.fa-times-circle:before {
  content: "\f057";
}

.fa-check-circle:before {
  content: "\f058";
}

.fa-question-circle:before {
  content: "\f059";
}

.fa-info-circle:before {
  content: "\f05a";
}

.fa-crosshairs:before {
  content: "\f05b";
}

.fa-times-circle-o:before {
  content: "\f05c";
}

.fa-check-circle-o:before {
  content: "\f05d";
}

.fa-ban:before {
  content: "\f05e";
}

.fa-arrow-left:before {
  content: "\f060";
}

.fa-arrow-right:before {
  content: "\f061";
}

.fa-arrow-up:before {
  content: "\f062";
}

.fa-arrow-down:before {
  content: "\f063";
}

.fa-mail-forward:before,
.fa-share:before {
  content: "\f064";
}

.fa-expand:before {
  content: "\f065";
}

.fa-compress:before {
  content: "\f066";
}

.fa-plus:before {
  content: "\f067";
}

.fa-minus:before {
  content: "\f068";
}

.fa-asterisk:before {
  content: "\f069";
}

.fa-exclamation-circle:before {
  content: "\f06a";
}

.fa-gift:before {
  content: "\f06b";
}

.fa-leaf:before {
  content: "\f06c";
}

.fa-fire:before {
  content: "\f06d";
}

.fa-eye:before {
  content: "\f06e";
}

.fa-eye-slash:before {
  content: "\f070";
}

.fa-warning:before,
.fa-exclamation-triangle:before {
  content: "\f071";
}

.fa-plane:before {
  content: "\f072";
}

.fa-calendar:before {
  content: "\f073";
}

.fa-random:before {
  content: "\f074";
}

.fa-comment:before {
  content: "\f075";
}

.fa-magnet:before {
  content: "\f076";
}

.fa-chevron-up:before {
  content: "\f077";
}

.fa-chevron-down:before {
  content: "\f078";
}

.fa-retweet:before {
  content: "\f079";
}

.fa-shopping-cart:before {
  content: "\f07a";
}

.fa-folder:before {
  content: "\f07b";
}

.fa-folder-open:before {
  content: "\f07c";
}

.fa-arrows-v:before {
  content: "\f07d";
}

.fa-arrows-h:before {
  content: "\f07e";
}

.fa-bar-chart-o:before,
.fa-bar-chart:before {
  content: "\f080";
}

.fa-twitter-square:before {
  content: "\f081";
}

.fa-facebook-square:before {
  content: "\f082";
}

.fa-camera-retro:before {
  content: "\f083";
}

.fa-key:before {
  content: "\f084";
}

.fa-gears:before,
.fa-cogs:before {
  content: "\f085";
}

.fa-comments:before {
  content: "\f086";
}

.fa-thumbs-o-up:before {
  content: "\f087";
}

.fa-thumbs-o-down:before {
  content: "\f088";
}

.fa-star-half:before {
  content: "\f089";
}

.fa-heart-o:before {
  content: "\f08a";
}

.fa-sign-out:before {
  content: "\f08b";
}

.fa-linkedin-square:before {
  content: "\f08c";
}

.fa-thumb-tack:before {
  content: "\f08d";
}

.fa-external-link:before {
  content: "\f08e";
}

.fa-sign-in:before {
  content: "\f090";
}

.fa-trophy:before {
  content: "\f091";
}

.fa-github-square:before {
  content: "\f092";
}

.fa-upload:before {
  content: "\f093";
}

.fa-lemon-o:before {
  content: "\f094";
}

.fa-phone:before {
  content: "\f095";
}

.fa-square-o:before {
  content: "\f096";
}

.fa-bookmark-o:before {
  content: "\f097";
}

.fa-phone-square:before {
  content: "\f098";
}

.fa-twitter:before {
  content: "\f099";
}

.fa-facebook-f:before,
.fa-facebook:before {
  content: "\f09a";
}

.fa-github:before {
  content: "\f09b";
}

.fa-unlock:before {
  content: "\f09c";
}

.fa-credit-card:before {
  content: "\f09d";
}

.fa-feed:before,
.fa-rss:before {
  content: "\f09e";
}

.fa-hdd-o:before {
  content: "\f0a0";
}

.fa-bullhorn:before {
  content: "\f0a1";
}

.fa-bell:before {
  content: "\f0f3";
}

.fa-certificate:before {
  content: "\f0a3";
}

.fa-hand-o-right:before {
  content: "\f0a4";
}

.fa-hand-o-left:before {
  content: "\f0a5";
}

.fa-hand-o-up:before {
  content: "\f0a6";
}

.fa-hand-o-down:before {
  content: "\f0a7";
}

.fa-arrow-circle-left:before {
  content: "\f0a8";
}

.fa-arrow-circle-right:before {
  content: "\f0a9";
}

.fa-arrow-circle-up:before {
  content: "\f0aa";
}

.fa-arrow-circle-down:before {
  content: "\f0ab";
}

.fa-globe:before {
  content: "\f0ac";
}

.fa-wrench:before {
  content: "\f0ad";
}

.fa-tasks:before {
  content: "\f0ae";
}

.fa-filter:before {
  content: "\f0b0";
}

.fa-briefcase:before {
  content: "\f0b1";
}

.fa-arrows-alt:before {
  content: "\f0b2";
}

.fa-group:before,
.fa-users:before {
  content: "\f0c0";
}

.fa-chain:before,
.fa-link:before {
  content: "\f0c1";
}

.fa-cloud:before {
  content: "\f0c2";
}

.fa-flask:before {
  content: "\f0c3";
}

.fa-cut:before,
.fa-scissors:before {
  content: "\f0c4";
}

.fa-copy:before,
.fa-files-o:before {
  content: "\f0c5";
}

.fa-paperclip:before {
  content: "\f0c6";
}

.fa-save:before,
.fa-floppy-o:before {
  content: "\f0c7";
}

.fa-square:before {
  content: "\f0c8";
}

.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
  content: "\f0c9";
}

.fa-list-ul:before {
  content: "\f0ca";
}

.fa-list-ol:before {
  content: "\f0cb";
}

.fa-strikethrough:before {
  content: "\f0cc";
}

.fa-underline:before {
  content: "\f0cd";
}

.fa-table:before {
  content: "\f0ce";
}

.fa-magic:before {
  content: "\f0d0";
}

.fa-truck:before {
  content: "\f0d1";
}

.fa-pinterest:before {
  content: "\f0d2";
}

.fa-pinterest-square:before {
  content: "\f0d3";
}

.fa-google-plus-square:before {
  content: "\f0d4";
}

.fa-google-plus:before {
  content: "\f0d5";
}

.fa-money:before {
  content: "\f0d6";
}

.fa-caret-down:before {
  content: "\f0d7";
}

.fa-caret-up:before {
  content: "\f0d8";
}

.fa-caret-left:before {
  content: "\f0d9";
}

.fa-caret-right:before {
  content: "\f0da";
}

.fa-columns:before {
  content: "\f0db";
}

.fa-unsorted:before,
.fa-sort:before {
  content: "\f0dc";
}

.fa-sort-down:before,
.fa-sort-desc:before {
  content: "\f0dd";
}

.fa-sort-up:before,
.fa-sort-asc:before {
  content: "\f0de";
}

.fa-envelope:before {
  content: "\f0e0";
}

.fa-linkedin:before {
  content: "\f0e1";
}

.fa-rotate-left:before,
.fa-undo:before {
  content: "\f0e2";
}

.fa-legal:before,
.fa-gavel:before {
  content: "\f0e3";
}

.fa-dashboard:before,
.fa-tachometer:before {
  content: "\f0e4";
}

.fa-comment-o:before {
  content: "\f0e5";
}

.fa-comments-o:before {
  content: "\f0e6";
}

.fa-flash:before,
.fa-bolt:before {
  content: "\f0e7";
}

.fa-sitemap:before {
  content: "\f0e8";
}

.fa-umbrella:before {
  content: "\f0e9";
}

.fa-paste:before,
.fa-clipboard:before {
  content: "\f0ea";
}

.fa-lightbulb-o:before {
  content: "\f0eb";
}

.fa-exchange:before {
  content: "\f0ec";
}

.fa-cloud-download:before {
  content: "\f0ed";
}

.fa-cloud-upload:before {
  content: "\f0ee";
}

.fa-user-md:before {
  content: "\f0f0";
}

.fa-stethoscope:before {
  content: "\f0f1";
}

.fa-suitcase:before {
  content: "\f0f2";
}

.fa-bell-o:before {
  content: "\f0a2";
}

.fa-coffee:before {
  content: "\f0f4";
}

.fa-cutlery:before {
  content: "\f0f5";
}

.fa-file-text-o:before {
  content: "\f0f6";
}

.fa-building-o:before {
  content: "\f0f7";
}

.fa-hospital-o:before {
  content: "\f0f8";
}

.fa-ambulance:before {
  content: "\f0f9";
}

.fa-medkit:before {
  content: "\f0fa";
}

.fa-fighter-jet:before {
  content: "\f0fb";
}

.fa-beer:before {
  content: "\f0fc";
}

.fa-h-square:before {
  content: "\f0fd";
}

.fa-plus-square:before {
  content: "\f0fe";
}

.fa-angle-double-left:before {
  content: "\f100";
}

.fa-angle-double-right:before {
  content: "\f101";
}

.fa-angle-double-up:before {
  content: "\f102";
}

.fa-angle-double-down:before {
  content: "\f103";
}

.fa-angle-left:before {
  content: "\f104";
}

.fa-angle-right:before {
  content: "\f105";
}

.fa-angle-up:before {
  content: "\f106";
}

.fa-angle-down:before {
  content: "\f107";
}

.fa-desktop:before {
  content: "\f108";
}

.fa-laptop:before {
  content: "\f109";
}

.fa-tablet:before {
  content: "\f10a";
}

.fa-mobile-phone:before,
.fa-mobile:before {
  content: "\f10b";
}

.fa-circle-o:before {
  content: "\f10c";
}

.fa-quote-left:before {
  content: "\f10d";
}

.fa-quote-right:before {
  content: "\f10e";
}

.fa-spinner:before {
  content: "\f110";
}

.fa-circle:before {
  content: "\f111";
}

.fa-mail-reply:before,
.fa-reply:before {
  content: "\f112";
}

.fa-github-alt:before {
  content: "\f113";
}

.fa-folder-o:before {
  content: "\f114";
}

.fa-folder-open-o:before {
  content: "\f115";
}

.fa-smile-o:before {
  content: "\f118";
}

.fa-frown-o:before {
  content: "\f119";
}

.fa-meh-o:before {
  content: "\f11a";
}

.fa-gamepad:before {
  content: "\f11b";
}

.fa-keyboard-o:before {
  content: "\f11c";
}

.fa-flag-o:before {
  content: "\f11d";
}

.fa-flag-checkered:before {
  content: "\f11e";
}

.fa-terminal:before {
  content: "\f120";
}

.fa-code:before {
  content: "\f121";
}

.fa-mail-reply-all:before,
.fa-reply-all:before {
  content: "\f122";
}

.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
  content: "\f123";
}

.fa-location-arrow:before {
  content: "\f124";
}

.fa-crop:before {
  content: "\f125";
}

.fa-code-fork:before {
  content: "\f126";
}

.fa-unlink:before,
.fa-chain-broken:before {
  content: "\f127";
}

.fa-question:before {
  content: "\f128";
}

.fa-info:before {
  content: "\f129";
}

.fa-exclamation:before {
  content: "\f12a";
}

.fa-superscript:before {
  content: "\f12b";
}

.fa-subscript:before {
  content: "\f12c";
}

.fa-eraser:before {
  content: "\f12d";
}

.fa-puzzle-piece:before {
  content: "\f12e";
}

.fa-microphone:before {
  content: "\f130";
}

.fa-microphone-slash:before {
  content: "\f131";
}

.fa-shield:before {
  content: "\f132";
}

.fa-calendar-o:before {
  content: "\f133";
}

.fa-fire-extinguisher:before {
  content: "\f134";
}

.fa-rocket:before {
  content: "\f135";
}

.fa-maxcdn:before {
  content: "\f136";
}

.fa-chevron-circle-left:before {
  content: "\f137";
}

.fa-chevron-circle-right:before {
  content: "\f138";
}

.fa-chevron-circle-up:before {
  content: "\f139";
}

.fa-chevron-circle-down:before {
  content: "\f13a";
}

.fa-html5:before {
  content: "\f13b";
}

.fa-css3:before {
  content: "\f13c";
}

.fa-anchor:before {
  content: "\f13d";
}

.fa-unlock-alt:before {
  content: "\f13e";
}

.fa-bullseye:before {
  content: "\f140";
}

.fa-ellipsis-h:before {
  content: "\f141";
}

.fa-ellipsis-v:before {
  content: "\f142";
}

.fa-rss-square:before {
  content: "\f143";
}

.fa-play-circle:before {
  content: "\f144";
}

.fa-ticket:before {
  content: "\f145";
}

.fa-minus-square:before {
  content: "\f146";
}

.fa-minus-square-o:before {
  content: "\f147";
}

.fa-level-up:before {
  content: "\f148";
}

.fa-level-down:before {
  content: "\f149";
}

.fa-check-square:before {
  content: "\f14a";
}

.fa-pencil-square:before {
  content: "\f14b";
}

.fa-external-link-square:before {
  content: "\f14c";
}

.fa-share-square:before {
  content: "\f14d";
}

.fa-compass:before {
  content: "\f14e";
}

.fa-toggle-down:before,
.fa-caret-square-o-down:before {
  content: "\f150";
}

.fa-toggle-up:before,
.fa-caret-square-o-up:before {
  content: "\f151";
}

.fa-toggle-right:before,
.fa-caret-square-o-right:before {
  content: "\f152";
}

.fa-euro:before,
.fa-eur:before {
  content: "\f153";
}

.fa-gbp:before {
  content: "\f154";
}

.fa-dollar:before,
.fa-usd:before {
  content: "\f155";
}

.fa-rupee:before,
.fa-inr:before {
  content: "\f156";
}

.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
  content: "\f157";
}

.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
  content: "\f158";
}

.fa-won:before,
.fa-krw:before {
  content: "\f159";
}

.fa-bitcoin:before,
.fa-btc:before {
  content: "\f15a";
}

.fa-file:before {
  content: "\f15b";
}

.fa-file-text:before {
  content: "\f15c";
}

.fa-sort-alpha-asc:before {
  content: "\f15d";
}

.fa-sort-alpha-desc:before {
  content: "\f15e";
}

.fa-sort-amount-asc:before {
  content: "\f160";
}

.fa-sort-amount-desc:before {
  content: "\f161";
}

.fa-sort-numeric-asc:before {
  content: "\f162";
}

.fa-sort-numeric-desc:before {
  content: "\f163";
}

.fa-thumbs-up:before {
  content: "\f164";
}

.fa-thumbs-down:before {
  content: "\f165";
}

.fa-youtube-square:before {
  content: "\f166";
}

.fa-youtube:before {
  content: "\f167";
}

.fa-xing:before {
  content: "\f168";
}

.fa-xing-square:before {
  content: "\f169";
}

.fa-youtube-play:before {
  content: "\f16a";
}

.fa-dropbox:before {
  content: "\f16b";
}

.fa-stack-overflow:before {
  content: "\f16c";
}

.fa-instagram:before {
  content: "\f16d";
}

.fa-flickr:before {
  content: "\f16e";
}

.fa-adn:before {
  content: "\f170";
}

.fa-bitbucket:before {
  content: "\f171";
}

.fa-bitbucket-square:before {
  content: "\f172";
}

.fa-tumblr:before {
  content: "\f173";
}

.fa-tumblr-square:before {
  content: "\f174";
}

.fa-long-arrow-down:before {
  content: "\f175";
}

.fa-long-arrow-up:before {
  content: "\f176";
}

.fa-long-arrow-left:before {
  content: "\f177";
}

.fa-long-arrow-right:before {
  content: "\f178";
}

.fa-apple:before {
  content: "\f179";
}

.fa-windows:before {
  content: "\f17a";
}

.fa-android:before {
  content: "\f17b";
}

.fa-linux:before {
  content: "\f17c";
}

.fa-dribbble:before {
  content: "\f17d";
}

.fa-skype:before {
  content: "\f17e";
}

.fa-foursquare:before {
  content: "\f180";
}

.fa-trello:before {
  content: "\f181";
}

.fa-female:before {
  content: "\f182";
}

.fa-male:before {
  content: "\f183";
}

.fa-gittip:before,
.fa-gratipay:before {
  content: "\f184";
}

.fa-sun-o:before {
  content: "\f185";
}

.fa-moon-o:before {
  content: "\f186";
}

.fa-archive:before {
  content: "\f187";
}

.fa-bug:before {
  content: "\f188";
}

.fa-vk:before {
  content: "\f189";
}

.fa-weibo:before {
  content: "\f18a";
}

.fa-renren:before {
  content: "\f18b";
}

.fa-pagelines:before {
  content: "\f18c";
}

.fa-stack-exchange:before {
  content: "\f18d";
}

.fa-arrow-circle-o-right:before {
  content: "\f18e";
}

.fa-arrow-circle-o-left:before {
  content: "\f190";
}

.fa-toggle-left:before,
.fa-caret-square-o-left:before {
  content: "\f191";
}

.fa-dot-circle-o:before {
  content: "\f192";
}

.fa-wheelchair:before {
  content: "\f193";
}

.fa-vimeo-square:before {
  content: "\f194";
}

.fa-turkish-lira:before,
.fa-try:before {
  content: "\f195";
}

.fa-plus-square-o:before {
  content: "\f196";
}

.fa-space-shuttle:before {
  content: "\f197";
}

.fa-slack:before {
  content: "\f198";
}

.fa-envelope-square:before {
  content: "\f199";
}

.fa-wordpress:before {
  content: "\f19a";
}

.fa-openid:before {
  content: "\f19b";
}

.fa-institution:before,
.fa-bank:before,
.fa-university:before {
  content: "\f19c";
}

.fa-mortar-board:before,
.fa-graduation-cap:before {
  content: "\f19d";
}

.fa-yahoo:before {
  content: "\f19e";
}

.fa-google:before {
  content: "\f1a0";
}

.fa-reddit:before {
  content: "\f1a1";
}

.fa-reddit-square:before {
  content: "\f1a2";
}

.fa-stumbleupon-circle:before {
  content: "\f1a3";
}

.fa-stumbleupon:before {
  content: "\f1a4";
}

.fa-delicious:before {
  content: "\f1a5";
}

.fa-digg:before {
  content: "\f1a6";
}

.fa-pied-piper-pp:before {
  content: "\f1a7";
}

.fa-pied-piper-alt:before {
  content: "\f1a8";
}

.fa-drupal:before {
  content: "\f1a9";
}

.fa-joomla:before {
  content: "\f1aa";
}

.fa-language:before {
  content: "\f1ab";
}

.fa-fax:before {
  content: "\f1ac";
}

.fa-building:before {
  content: "\f1ad";
}

.fa-child:before {
  content: "\f1ae";
}

.fa-paw:before {
  content: "\f1b0";
}

.fa-spoon:before {
  content: "\f1b1";
}

.fa-cube:before {
  content: "\f1b2";
}

.fa-cubes:before {
  content: "\f1b3";
}

.fa-behance:before {
  content: "\f1b4";
}

.fa-behance-square:before {
  content: "\f1b5";
}

.fa-steam:before {
  content: "\f1b6";
}

.fa-steam-square:before {
  content: "\f1b7";
}

.fa-recycle:before {
  content: "\f1b8";
}

.fa-automobile:before,
.fa-car:before {
  content: "\f1b9";
}

.fa-cab:before,
.fa-taxi:before {
  content: "\f1ba";
}

.fa-tree:before {
  content: "\f1bb";
}

.fa-spotify:before {
  content: "\f1bc";
}

.fa-deviantart:before {
  content: "\f1bd";
}

.fa-soundcloud:before {
  content: "\f1be";
}

.fa-database:before {
  content: "\f1c0";
}

.fa-file-pdf-o:before {
  content: "\f1c1";
}

.fa-file-word-o:before {
  content: "\f1c2";
}

.fa-file-excel-o:before {
  content: "\f1c3";
}

.fa-file-powerpoint-o:before {
  content: "\f1c4";
}

.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
  content: "\f1c5";
}

.fa-file-zip-o:before,
.fa-file-archive-o:before {
  content: "\f1c6";
}

.fa-file-sound-o:before,
.fa-file-audio-o:before {
  content: "\f1c7";
}

.fa-file-movie-o:before,
.fa-file-video-o:before {
  content: "\f1c8";
}

.fa-file-code-o:before {
  content: "\f1c9";
}

.fa-vine:before {
  content: "\f1ca";
}

.fa-codepen:before {
  content: "\f1cb";
}

.fa-jsfiddle:before {
  content: "\f1cc";
}

.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
  content: "\f1cd";
}

.fa-circle-o-notch:before {
  content: "\f1ce";
}

.fa-ra:before,
.fa-resistance:before,
.fa-rebel:before {
  content: "\f1d0";
}

.fa-ge:before,
.fa-empire:before {
  content: "\f1d1";
}

.fa-git-square:before {
  content: "\f1d2";
}

.fa-git:before {
  content: "\f1d3";
}

.fa-y-combinator-square:before,
.fa-yc-square:before,
.fa-hacker-news:before {
  content: "\f1d4";
}

.fa-tencent-weibo:before {
  content: "\f1d5";
}

.fa-qq:before {
  content: "\f1d6";
}

.fa-wechat:before,
.fa-weixin:before {
  content: "\f1d7";
}

.fa-send:before,
.fa-paper-plane:before {
  content: "\f1d8";
}

.fa-send-o:before,
.fa-paper-plane-o:before {
  content: "\f1d9";
}

.fa-history:before {
  content: "\f1da";
}

.fa-circle-thin:before {
  content: "\f1db";
}

.fa-header:before {
  content: "\f1dc";
}

.fa-paragraph:before {
  content: "\f1dd";
}

.fa-sliders:before {
  content: "\f1de";
}

.fa-share-alt:before {
  content: "\f1e0";
}

.fa-share-alt-square:before {
  content: "\f1e1";
}

.fa-bomb:before {
  content: "\f1e2";
}

.fa-soccer-ball-o:before,
.fa-futbol-o:before {
  content: "\f1e3";
}

.fa-tty:before {
  content: "\f1e4";
}

.fa-binoculars:before {
  content: "\f1e5";
}

.fa-plug:before {
  content: "\f1e6";
}

.fa-slideshare:before {
  content: "\f1e7";
}

.fa-twitch:before {
  content: "\f1e8";
}

.fa-yelp:before {
  content: "\f1e9";
}

.fa-newspaper-o:before {
  content: "\f1ea";
}

.fa-wifi:before {
  content: "\f1eb";
}

.fa-calculator:before {
  content: "\f1ec";
}

.fa-paypal:before {
  content: "\f1ed";
}

.fa-google-wallet:before {
  content: "\f1ee";
}

.fa-cc-visa:before {
  content: "\f1f0";
}

.fa-cc-mastercard:before {
  content: "\f1f1";
}

.fa-cc-discover:before {
  content: "\f1f2";
}

.fa-cc-amex:before {
  content: "\f1f3";
}

.fa-cc-paypal:before {
  content: "\f1f4";
}

.fa-cc-stripe:before {
  content: "\f1f5";
}

.fa-bell-slash:before {
  content: "\f1f6";
}

.fa-bell-slash-o:before {
  content: "\f1f7";
}

.fa-trash:before {
  content: "\f1f8";
}

.fa-copyright:before {
  content: "\f1f9";
}

.fa-at:before {
  content: "\f1fa";
}

.fa-eyedropper:before {
  content: "\f1fb";
}

.fa-paint-brush:before {
  content: "\f1fc";
}

.fa-birthday-cake:before {
  content: "\f1fd";
}

.fa-area-chart:before {
  content: "\f1fe";
}

.fa-pie-chart:before {
  content: "\f200";
}

.fa-line-chart:before {
  content: "\f201";
}

.fa-lastfm:before {
  content: "\f202";
}

.fa-lastfm-square:before {
  content: "\f203";
}

.fa-toggle-off:before {
  content: "\f204";
}

.fa-toggle-on:before {
  content: "\f205";
}

.fa-bicycle:before {
  content: "\f206";
}

.fa-bus:before {
  content: "\f207";
}

.fa-ioxhost:before {
  content: "\f208";
}

.fa-angellist:before {
  content: "\f209";
}

.fa-cc:before {
  content: "\f20a";
}

.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
  content: "\f20b";
}

.fa-meanpath:before {
  content: "\f20c";
}

.fa-buysellads:before {
  content: "\f20d";
}

.fa-connectdevelop:before {
  content: "\f20e";
}

.fa-dashcube:before {
  content: "\f210";
}

.fa-forumbee:before {
  content: "\f211";
}

.fa-leanpub:before {
  content: "\f212";
}

.fa-sellsy:before {
  content: "\f213";
}

.fa-shirtsinbulk:before {
  content: "\f214";
}

.fa-simplybuilt:before {
  content: "\f215";
}

.fa-skyatlas:before {
  content: "\f216";
}

.fa-cart-plus:before {
  content: "\f217";
}

.fa-cart-arrow-down:before {
  content: "\f218";
}

.fa-diamond:before {
  content: "\f219";
}

.fa-ship:before {
  content: "\f21a";
}

.fa-user-secret:before {
  content: "\f21b";
}

.fa-motorcycle:before {
  content: "\f21c";
}

.fa-street-view:before {
  content: "\f21d";
}

.fa-heartbeat:before {
  content: "\f21e";
}

.fa-venus:before {
  content: "\f221";
}

.fa-mars:before {
  content: "\f222";
}

.fa-mercury:before {
  content: "\f223";
}

.fa-intersex:before,
.fa-transgender:before {
  content: "\f224";
}

.fa-transgender-alt:before {
  content: "\f225";
}

.fa-venus-double:before {
  content: "\f226";
}

.fa-mars-double:before {
  content: "\f227";
}

.fa-venus-mars:before {
  content: "\f228";
}

.fa-mars-stroke:before {
  content: "\f229";
}

.fa-mars-stroke-v:before {
  content: "\f22a";
}

.fa-mars-stroke-h:before {
  content: "\f22b";
}

.fa-neuter:before {
  content: "\f22c";
}

.fa-genderless:before {
  content: "\f22d";
}

.fa-facebook-official:before {
  content: "\f230";
}

.fa-pinterest-p:before {
  content: "\f231";
}

.fa-whatsapp:before {
  content: "\f232";
}

.fa-server:before {
  content: "\f233";
}

.fa-user-plus:before {
  content: "\f234";
}

.fa-user-times:before {
  content: "\f235";
}

.fa-hotel:before,
.fa-bed:before {
  content: "\f236";
}

.fa-viacoin:before {
  content: "\f237";
}

.fa-train:before {
  content: "\f238";
}

.fa-subway:before {
  content: "\f239";
}

.fa-medium:before {
  content: "\f23a";
}

.fa-yc:before,
.fa-y-combinator:before {
  content: "\f23b";
}

.fa-optin-monster:before {
  content: "\f23c";
}

.fa-opencart:before {
  content: "\f23d";
}

.fa-expeditedssl:before {
  content: "\f23e";
}

.fa-battery-4:before,
.fa-battery:before,
.fa-battery-full:before {
  content: "\f240";
}

.fa-battery-3:before,
.fa-battery-three-quarters:before {
  content: "\f241";
}

.fa-battery-2:before,
.fa-battery-half:before {
  content: "\f242";
}

.fa-battery-1:before,
.fa-battery-quarter:before {
  content: "\f243";
}

.fa-battery-0:before,
.fa-battery-empty:before {
  content: "\f244";
}

.fa-mouse-pointer:before {
  content: "\f245";
}

.fa-i-cursor:before {
  content: "\f246";
}

.fa-object-group:before {
  content: "\f247";
}

.fa-object-ungroup:before {
  content: "\f248";
}

.fa-sticky-note:before {
  content: "\f249";
}

.fa-sticky-note-o:before {
  content: "\f24a";
}

.fa-cc-jcb:before {
  content: "\f24b";
}

.fa-cc-diners-club:before {
  content: "\f24c";
}

.fa-clone:before {
  content: "\f24d";
}

.fa-balance-scale:before {
  content: "\f24e";
}

.fa-hourglass-o:before {
  content: "\f250";
}

.fa-hourglass-1:before,
.fa-hourglass-start:before {
  content: "\f251";
}

.fa-hourglass-2:before,
.fa-hourglass-half:before {
  content: "\f252";
}

.fa-hourglass-3:before,
.fa-hourglass-end:before {
  content: "\f253";
}

.fa-hourglass:before {
  content: "\f254";
}

.fa-hand-grab-o:before,
.fa-hand-rock-o:before {
  content: "\f255";
}

.fa-hand-stop-o:before,
.fa-hand-paper-o:before {
  content: "\f256";
}

.fa-hand-scissors-o:before {
  content: "\f257";
}

.fa-hand-lizard-o:before {
  content: "\f258";
}

.fa-hand-spock-o:before {
  content: "\f259";
}

.fa-hand-pointer-o:before {
  content: "\f25a";
}

.fa-hand-peace-o:before {
  content: "\f25b";
}

.fa-trademark:before {
  content: "\f25c";
}

.fa-registered:before {
  content: "\f25d";
}

.fa-creative-commons:before {
  content: "\f25e";
}

.fa-gg:before {
  content: "\f260";
}

.fa-gg-circle:before {
  content: "\f261";
}

.fa-tripadvisor:before {
  content: "\f262";
}

.fa-odnoklassniki:before {
  content: "\f263";
}

.fa-odnoklassniki-square:before {
  content: "\f264";
}

.fa-get-pocket:before {
  content: "\f265";
}

.fa-wikipedia-w:before {
  content: "\f266";
}

.fa-safari:before {
  content: "\f267";
}

.fa-chrome:before {
  content: "\f268";
}

.fa-firefox:before {
  content: "\f269";
}

.fa-opera:before {
  content: "\f26a";
}

.fa-internet-explorer:before {
  content: "\f26b";
}

.fa-tv:before,
.fa-television:before {
  content: "\f26c";
}

.fa-contao:before {
  content: "\f26d";
}

.fa-500px:before {
  content: "\f26e";
}

.fa-amazon:before {
  content: "\f270";
}

.fa-calendar-plus-o:before {
  content: "\f271";
}

.fa-calendar-minus-o:before {
  content: "\f272";
}

.fa-calendar-times-o:before {
  content: "\f273";
}

.fa-calendar-check-o:before {
  content: "\f274";
}

.fa-industry:before {
  content: "\f275";
}

.fa-map-pin:before {
  content: "\f276";
}

.fa-map-signs:before {
  content: "\f277";
}

.fa-map-o:before {
  content: "\f278";
}

.fa-map:before {
  content: "\f279";
}

.fa-commenting:before {
  content: "\f27a";
}

.fa-commenting-o:before {
  content: "\f27b";
}

.fa-houzz:before {
  content: "\f27c";
}

.fa-vimeo:before {
  content: "\f27d";
}

.fa-black-tie:before {
  content: "\f27e";
}

.fa-fonticons:before {
  content: "\f280";
}

.fa-reddit-alien:before {
  content: "\f281";
}

.fa-edge:before {
  content: "\f282";
}

.fa-credit-card-alt:before {
  content: "\f283";
}

.fa-codiepie:before {
  content: "\f284";
}

.fa-modx:before {
  content: "\f285";
}

.fa-fort-awesome:before {
  content: "\f286";
}

.fa-usb:before {
  content: "\f287";
}

.fa-product-hunt:before {
  content: "\f288";
}

.fa-mixcloud:before {
  content: "\f289";
}

.fa-scribd:before {
  content: "\f28a";
}

.fa-pause-circle:before {
  content: "\f28b";
}

.fa-pause-circle-o:before {
  content: "\f28c";
}

.fa-stop-circle:before {
  content: "\f28d";
}

.fa-stop-circle-o:before {
  content: "\f28e";
}

.fa-shopping-bag:before {
  content: "\f290";
}

.fa-shopping-basket:before {
  content: "\f291";
}

.fa-hashtag:before {
  content: "\f292";
}

.fa-bluetooth:before {
  content: "\f293";
}

.fa-bluetooth-b:before {
  content: "\f294";
}

.fa-percent:before {
  content: "\f295";
}

.fa-gitlab:before {
  content: "\f296";
}

.fa-wpbeginner:before {
  content: "\f297";
}

.fa-wpforms:before {
  content: "\f298";
}

.fa-envira:before {
  content: "\f299";
}

.fa-universal-access:before {
  content: "\f29a";
}

.fa-wheelchair-alt:before {
  content: "\f29b";
}

.fa-question-circle-o:before {
  content: "\f29c";
}

.fa-blind:before {
  content: "\f29d";
}

.fa-audio-description:before {
  content: "\f29e";
}

.fa-volume-control-phone:before {
  content: "\f2a0";
}

.fa-braille:before {
  content: "\f2a1";
}

.fa-assistive-listening-systems:before {
  content: "\f2a2";
}

.fa-asl-interpreting:before,
.fa-american-sign-language-interpreting:before {
  content: "\f2a3";
}

.fa-deafness:before,
.fa-hard-of-hearing:before,
.fa-deaf:before {
  content: "\f2a4";
}

.fa-glide:before {
  content: "\f2a5";
}

.fa-glide-g:before {
  content: "\f2a6";
}

.fa-signing:before,
.fa-sign-language:before {
  content: "\f2a7";
}

.fa-low-vision:before {
  content: "\f2a8";
}

.fa-viadeo:before {
  content: "\f2a9";
}

.fa-viadeo-square:before {
  content: "\f2aa";
}

.fa-snapchat:before {
  content: "\f2ab";
}

.fa-snapchat-ghost:before {
  content: "\f2ac";
}

.fa-snapchat-square:before {
  content: "\f2ad";
}

.fa-pied-piper:before {
  content: "\f2ae";
}

.fa-first-order:before {
  content: "\f2b0";
}

.fa-yoast:before {
  content: "\f2b1";
}

.fa-themeisle:before {
  content: "\f2b2";
}

.fa-google-plus-circle:before,
.fa-google-plus-official:before {
  content: "\f2b3";
}

.fa-fa:before,
.fa-font-awesome:before {
  content: "\f2b4";
}

.fa-handshake-o:before {
  content: "\f2b5";
}

.fa-envelope-open:before {
  content: "\f2b6";
}

.fa-envelope-open-o:before {
  content: "\f2b7";
}

.fa-linode:before {
  content: "\f2b8";
}

.fa-address-book:before {
  content: "\f2b9";
}

.fa-address-book-o:before {
  content: "\f2ba";
}

.fa-vcard:before,
.fa-address-card:before {
  content: "\f2bb";
}

.fa-vcard-o:before,
.fa-address-card-o:before {
  content: "\f2bc";
}

.fa-user-circle:before {
  content: "\f2bd";
}

.fa-user-circle-o:before {
  content: "\f2be";
}

.fa-user-o:before {
  content: "\f2c0";
}

.fa-id-badge:before {
  content: "\f2c1";
}

.fa-drivers-license:before,
.fa-id-card:before {
  content: "\f2c2";
}

.fa-drivers-license-o:before,
.fa-id-card-o:before {
  content: "\f2c3";
}

.fa-quora:before {
  content: "\f2c4";
}

.fa-free-code-camp:before {
  content: "\f2c5";
}

.fa-telegram:before {
  content: "\f2c6";
}

.fa-thermometer-4:before,
.fa-thermometer:before,
.fa-thermometer-full:before {
  content: "\f2c7";
}

.fa-thermometer-3:before,
.fa-thermometer-three-quarters:before {
  content: "\f2c8";
}

.fa-thermometer-2:before,
.fa-thermometer-half:before {
  content: "\f2c9";
}

.fa-thermometer-1:before,
.fa-thermometer-quarter:before {
  content: "\f2ca";
}

.fa-thermometer-0:before,
.fa-thermometer-empty:before {
  content: "\f2cb";
}

.fa-shower:before {
  content: "\f2cc";
}

.fa-bathtub:before,
.fa-s15:before,
.fa-bath:before {
  content: "\f2cd";
}

.fa-podcast:before {
  content: "\f2ce";
}

.fa-window-maximize:before {
  content: "\f2d0";
}

.fa-window-minimize:before {
  content: "\f2d1";
}

.fa-window-restore:before {
  content: "\f2d2";
}

.fa-times-rectangle:before,
.fa-window-close:before {
  content: "\f2d3";
}

.fa-times-rectangle-o:before,
.fa-window-close-o:before {
  content: "\f2d4";
}

.fa-bandcamp:before {
  content: "\f2d5";
}

.fa-grav:before {
  content: "\f2d6";
}

.fa-etsy:before {
  content: "\f2d7";
}

.fa-imdb:before {
  content: "\f2d8";
}

.fa-ravelry:before {
  content: "\f2d9";
}

.fa-eercast:before {
  content: "\f2da";
}

.fa-microchip:before {
  content: "\f2db";
}

.fa-snowflake-o:before {
  content: "\f2dc";
}

.fa-superpowers:before {
  content: "\f2dd";
}

.fa-wpexplorer:before {
  content: "\f2de";
}

.fa-meetup:before {
  content: "\f2e0";
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}

/* http://www.samrayner.com/bootstrap-side-navbar */
@media (max-width: 1236px) {
  .navbar-fixed-side {
    margin-left: -15px;
    margin-right: -15px;
  }
}
@media (min-width: 1236px) {
  .navbar-fixed-side {
    position: fixed;
    margin: 0 -15px;
    height: 100vh;
    width: inherit;
    overflow: auto;
    border-top-width: 0;
    border-bottom-width: 0;
    border-radius: 0;
  }
  .navbar-fixed-side .container, .navbar-fixed-side .container-fluid {
    width: auto;
    padding-left: 0;
    padding-right: 0;
  }
  .navbar-fixed-side .navbar-header {
    float: none;
  }
  .navbar-fixed-side .navbar-brand {
    height: auto;
  }
  .navbar-fixed-side > .container .navbar-brand, .navbar-fixed-side > .container-fluid .navbar-brand {
    margin-left: 0;
  }
  .navbar-fixed-side .navbar-collapse {
    width: 100%;
    border-top: 1px solid #e7e7e7;
  }
  .navbar-fixed-side .navbar-nav {
    float: none;
    margin: 0 -15px;
  }
  .navbar-fixed-side .navbar-nav > li {
    float: none;
  }
  .navbar-fixed-side .navbar-nav > li > a {
    padding-top: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e7e7e7;
  }
  .navbar-fixed-side .navbar-form {
    margin: 0;
    margin-left: -15px;
    margin-right: -15px;
    padding: 10px 15px;
    border-bottom: 1px solid #e7e7e7;
  }
  .navbar-fixed-side .navbar-text {
    float: none;
    margin-left: 0;
    margin-right: 0;
  }
  .navbar-fixed-side .navbar-left,
  .navbar-fixed-side .navbar-right {
    float: none !important;
  }
  .navbar-fixed-side .navbar-nav .dropdown-menu {
    position: static;
    float: none;
    width: auto;
    margin-top: 0;
    background-color: transparent;
    border: 0;
    box-shadow: none;
    border-bottom: 1px solid #e7e7e7;
  }
  .navbar-fixed-side .navbar-nav .dropdown-menu > li > a,
  .navbar-fixed-side .navbar-nav .dropdown-menu .dropdown-header {
    padding: 5px 15px 5px 25px;
  }
  .navbar-fixed-side .navbar-nav .dropdown-menu > li > a {
    line-height: 20px;
    color: #777;
  }
  .navbar-fixed-side .navbar-nav .dropdown-menu > li > a:hover, .navbar-fixed-side .navbar-nav .dropdown-menu > li > a:focus {
    background-image: none;
  }
  .navbar-fixed-side .navbar-nav .dropdown-menu > .active > a {
    background-color: #2E1F69;
    color: #555;
  }
  .navbar-fixed-side .navbar-nav > li > a:hover, .navbar-fixed-side .navbar-nav > li > a:focus,
  .navbar-fixed-side .navbar-nav .dropdown-menu > li > a:hover,
  .navbar-fixed-side .navbar-nav .dropdown-menu > li > a:focus {
    background-color: #f0f0f0;
    color: #333;
  }
  .navbar-fixed-side .dropdown > .dropdown-toggle,
  .navbar-fixed-side .dropdown-menu > .dropdown-header {
    background-color: transparent !important;
    color: #9d9d9d !important;
    cursor: default;
    font-size: 0.8em;
    text-transform: uppercase;
    border-bottom: none;
    padding-bottom: 0;
  }
  .navbar-fixed-side .dropdown-toggle .caret {
    display: none;
  }
  .navbar-fixed-side .dropdown-menu {
    display: block;
  }
  .navbar-fixed-side.navbar-inverse .navbar-collapse,
  .navbar-fixed-side.navbar-inverse .navbar-nav > li > a,
  .navbar-fixed-side.navbar-inverse .navbar-form,
  .navbar-fixed-side.navbar-inverse .navbar-nav .dropdown-menu {
    border-color: #363636;
  }
  .navbar-fixed-side.navbar-inverse .divider {
    background-color: #363636;
  }
  .navbar-fixed-side.navbar-inverse .navbar-nav .dropdown-menu > li > a {
    color: #9d9d9d;
  }
  .navbar-fixed-side.navbar-inverse .navbar-nav .dropdown-menu > .active > a {
    background-color: #090909;
    color: #fff;
  }
  .navbar-fixed-side.navbar-inverse .navbar-nav > li:not(.active) > a:hover, .navbar-fixed-side.navbar-inverse .navbar-nav > li:not(.active) > a:focus,
  .navbar-fixed-side.navbar-inverse .navbar-nav .dropdown-menu > li:not(.active) > a:hover,
  .navbar-fixed-side.navbar-inverse .navbar-nav .dropdown-menu > li:not(.active) > a:focus {
    background-color: #2f2f2f;
    color: #fff;
  }
  .navbar-fixed-side.navbar-inverse .dropdown > .dropdown-toggle {
    color: #777777 !important;
  }
}

/* border-top */
.border-top-none {
  border-top-width: 0px !important;
}

.border-bottom-light {
  border-bottom: 1px solid #eee;
}

.inline {
  display: inline-block;
}

/* height */
.height-full {
  height: calc(100vh - 50px);
  padding-bottom: 64px;
}

/* overflow */
.overflow-none {
  overflow: hidden;
}

.overflow-auto {
  overflow: auto;
}

/* margin-bottom */
.margin-bottom-none {
  margin-bottom: 0px;
}

.margin-bottom-xs {
  margin-bottom: 5px;
}

.margin-bottom-sm {
  margin-bottom: 10px;
}

.margin-bottom-md {
  margin-bottom: 20px;
}

.margin-bottom-lg {
  margin-bottom: 35px;
}

.margin-bottom-xl {
  margin-bottom: 50px;
}

/* margin-top */
.margin-top-none {
  margin-top: 0px;
}

.margin-top-xs {
  margin-top: 5px;
}

.margin-top-sm {
  margin-top: 10px;
}

.margin-top-md {
  margin-top: 20px;
}

.margin-top-lg {
  margin-top: 35px;
}

.margin-top-xl {
  margin-top: 50px;
}

/* margin-right */
.margin-right-none {
  margin-right: 0px;
}

.margin-right-xs {
  margin-right: 5px;
}

.margin-right-sm {
  margin-right: 10px;
}

.margin-right-md {
  margin-right: 20px;
}

.margin-right-lg {
  margin-right: 35px;
}

.margin-right-xl {
  margin-right: 50px;
}

/* margin-left */
.margin-left-none {
  margin-left: 0px;
}

.margin-left-xs {
  margin-left: 5px;
}

.margin-left-sm {
  margin-left: 10px;
}

.margin-left-md {
  margin-left: 20px;
}

.margin-left-lg {
  margin-left: 35px;
}

.margin-left-xl {
  margin-left: 50px;
}

/* padding-top */
.padding-top-none {
  padding-top: 0px;
}

.padding-top-xs {
  padding-top: 5px;
}

.padding-top-sm {
  padding-top: 10px;
}

.padding-top-md {
  padding-top: 20px;
}

.padding-top-lg {
  padding-top: 35px;
}

.padding-top-xl {
  padding-top: 50px;
}

/* padding-bottom */
.padding-bottom-none {
  padding-bottom: 0px;
}

.padding-bottom-xs {
  padding-bottom: 5px;
}

.padding-bottom-sm {
  padding-bottom: 10px;
}

.padding-bottom-md {
  padding-bottom: 20px;
}

.padding-bottom-lg {
  padding-bottom: 35px;
}

.padding-bottom-xl {
  padding-bottom: 50px;
}

/* padding-left */
.padding-left-none {
  padding-left: 0px;
}

.padding-left-xs {
  padding-left: 5px;
}

.padding-left-sm {
  padding-left: 10px;
}

.padding-left-md {
  padding-left: 20px;
}

.padding-left-lg {
  padding-left: 35px;
}

.padding-left-xl {
  padding-left: 50px;
}

/* padding-right */
.padding-right-none {
  padding-right: 0px;
}

.padding-right-xs {
  padding-right: 5px;
}

.padding-right-sm {
  padding-right: 10px;
}

.padding-right-md {
  padding-right: 20px;
}

.padding-right-lg {
  padding-right: 35px;
}

.padding-right-xl {
  padding-right: 50px;
}

/* padding-full */
.padding-none {
  padding: 0px;
}

.padding-xs {
  padding: 5px;
}

.padding-sm {
  padding: 10px;
}

.padding-md {
  padding: 20px;
}

.padding-lg {
  padding: 35px;
}

.padding-xl {
  padding: 50px;
}

/* Color Scheme Variable */
/* Light Purple */
/* Dark Purple */
/* Light Blue */
/* Dark Blue */
/* Blue-Green */
/* Purple-Pink */
/* Jay Scheme */
.mobile-layout-header {
  padding-top: 185px !important;
}

.mobile-layout-header:before {
  content: "";
  display: block;
  border-top: 1px solid grey;
}

/* For 2024 Redesign */
.beanstalk-text-color {
  color: #000145;
}

.beanstalk-text {
  font-family: Inter, sans-serif;
}

.beanstalk-text-white {
  color: #FFFFFF;
}

.beanstalk-text-small {
  font-family: Inter, sans-serif;
  font-size: 16px;
  font-weight: normal;
  line-height: 32px;
  letter-spacing: -0.01em;
  text-align: left;
}

.beanstalk-text-medium {
  font-family: Inter, sans-serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 32px;
  letter-spacing: -0.01em;
  text-align: left;
}

.beanstalk-text-season-browsing-text {
  font-family: Inter, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  text-align: center;
  color: #000145;
}

.beanstalk-season-dot {
  height: 8px;
  width: 8px;
  background-color: #bbb;
  border-radius: 50%;
  display: inline-block;
}

.beanstalk-link {
  font-family: Inter, sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 20px;
  text-align: left;
  color: #402B95;
}

.beanstalk-link-subtext {
  font-family: Inter, sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 20px;
  text-align: left;
  color: #000145;
}

.beanstalk-sub-top-nav-left-side {
  width: 19%;
}
@media (min-width: 768px) and (max-width: 1235px) {
  .beanstalk-sub-top-nav-left-side {
    width: 100%;
  }
  .beanstalk-sub-top-nav-left-side .navbar-toggle {
    float: left;
    margin-left: 15px;
    margin-right: 15px;
  }
}

.beanstalk-model-left-nav {
  width: 19%;
}

.beanstalk-model-main-content {
  width: 81%;
  height: 92vh;
  overflow-x: hidden;
  overflow-y: auto;
  border-left: 1px solid #E8E8F2;
}

.beanstalk-left-nav-width {
  width: 19%;
}

.beanstalk-main-content-width {
  width: 81%;
}

.width-95 {
  width: 95%;
}

.width-5 {
  width: 5%;
}

.navbar-right {
  margin-right: 10px !important;
}

.beanstalk-badge {
  height: 24px;
  padding: 5px 8px 5px 8px;
  border-radius: 6px;
  font-family: Inter, sans-serif;
  font-size: 13px;
  font-weight: 600;
  min-width: 64px;
  min-height: 36px;
  display: inline-block;
  text-align: center;
  border: 1px solid black;
}

.beanstalk-badge-green {
  background: rgba(20, 167, 105, 0.0784313725);
  color: #14A769;
}

.beanstalk-badge-red {
  background: rgba(217, 45, 20, 0.0784313725);
  color: #D92D14;
}

.beanstalk-badge-purple {
  background: rgba(151, 20, 217, 0.0784313725);
  color: #9714d9;
}

.beanstalk-badge-orange {
  background: rgba(240, 178, 53, 0.0784313725);
}

.beanstalk-badge-yellow {
  background: #ffef85;
  color: #a14d07;
}

.beanstalk-badge-cyan {
  background: #a8d1e3;
  color: #00538d;
}

.beanstalk-page-header-text {
  font-family: Inter, sans-serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 24px;
  text-align: left;
  color: #000145;
}

.beanstalk-table {
  font-family: Inter, sans-serif;
  font-size: 14px;
  font-weight: 450;
  line-height: 18px;
  text-align: left;
  border-radius: 8px;
  border-width: 0px;
  color: #000145;
  width: 100%;
}

.beanstalk-table-bordered tr {
  border: 1px solid #E8E8F2;
}

.beanstalk-table-header-middle-align thead > tr > th {
  vertical-align: middle;
  white-space: nowrap;
}

.beanstalk-table-mobile td,
.beanstalk-table-mobile th {
  padding: 2px 4px 2px 4px;
}

.beanstalk-table-sticky-header {
  border-top: 0px;
}
.beanstalk-table-sticky-header thead {
  position: sticky;
  top: -16px;
  z-index: 100;
  background-color: white;
}
.beanstalk-table-sticky-header th {
  border-top: 0px;
  background-color: white;
}
.beanstalk-table-sticky-header td {
  overflow: visible;
}

.beanstalk-table td.danger {
  background-color: #facfcf;
}

.beanstalk-table td.success {
  background-color: #E3FFE9;
}

.beanstalk-table td.warning {
  background-color: #FDFFDC;
}

.beanstalk-table thead {
  border: 1px solid #F8F8F9;
  bordder-radius: 8px 8px 0px 0px;
}

.beanstalk-table th {
  position: sticky;
  top: -1;
  background-color: #F8F8F9;
  color: #7F809D;
}

.beanstalk-table tr {
  border-top: 1px solid #E8E8F2;
}

.beanstalk-table th,
td {
  padding: 12px 16px 12px 16px;
}

.beanstalk-vertical-table {
  font-family: Inter, sans-serif;
  font-size: 14px;
  font-weight: 450;
  line-height: 18px;
  text-align: left;
  border-radius: 8px;
  border-width: 0px;
  color: #000145;
  width: 100%;
  border: 1px solid #E8E8F2;
}

.beanstalk-vertical-table th {
  background-color: #F8F8F9;
  color: #7F809D;
  border-right: 1px solid #E8E8F2;
  width: 50% !important;
}

.beanstalk-vertical-table tr {
  border-bottom: 1px solid #E8E8F2;
}

.beanstalk-vertical-table th,
td {
  padding: 12px 16px 12px 16px;
}

.beanstalk-svg {
  filter: brightness(0) saturate(100%);
  padding-right: 12px;
}

.beanstalk-svg-filter-blue {
  filter: invert(37%) sepia(90%) saturate(1288%) hue-rotate(167deg) brightness(92%) contrast(102%);
}

.beanstalk-svg-filter-blue-important {
  filter: invert(37%) sepia(90%) saturate(1288%) hue-rotate(167deg) brightness(92%) contrast(102%) !important;
}

.beanstalk-svg-filter-white {
  filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(1%) hue-rotate(20deg) brightness(103%) contrast(101%);
}

.beanstalk-svg-filter-grey {
  filter: brightness(0) saturate(100%) invert(60%) sepia(13%) saturate(592%) hue-rotate(200deg) brightness(83%) contrast(93%);
}

.beanstalk-svg-filter-green {
  filter: brightness(0) saturate(100%) invert(37%) sepia(99%) saturate(723%) hue-rotate(84deg) brightness(107%) contrast(92%);
  font-weight: bold;
}

.beanstalk-left-menu {
  background: linear-gradient(180deg, #402B95 0%, #6090FB 100%);
  color: #FFFFFF;
  padding-right: 1px;
  height: 100vh;
}

.beanstalk-top-nav-gradient {
  background-color: #402B95;
}

.beanstalk-seasons-box-font-color {
  color: #402B95;
}

ul.nav > li.navtab-list-item > a:hover {
  background-color: transparent;
  outline: 0;
}

ul.nav > li.navtab-list-item > a:active {
  background-color: transparent;
  outline: 0;
}

.beanstalk-left-nav {
  position: relative;
  margin-left: 0px;
  margin-right: 0px;
  width: auto;
  border: 0px;
  background-color: transparent;
  max-height: calc(100vh - 54px);
  /* 60px top nav + 20 px padding at the top of the left nav */
  overflow-x: hidden;
  font-size: 14px !important;
}

.beanstalk-left-nav-ul > li > a {
  padding-top: 10px;
  padding-bottom: 10px;
  border-bottom: 0px !important;
  background-color: transparent;
  color: #FFFFFF !important;
  border-radius: 8px;
}

.beanstalk-left-nav-ul > li > a:focus {
  background-color: #2E1F69;
}

.beanstalk-dropdown-menu {
  margin-left: 24px;
}

.beanstalk-left-nav-ul > li > a > img,
.beanstalk-left-nav-ul > li > a > i,
.beanstalk-left-nav-ul > li.dropdown > a > div > div > img,
.beanstalk-left-nav-ul > li.dropdown > a > div > div > i {
  min-width: 32px;
}

.beanstalk-left-nav-ul > .active > a,
.beanstalk-left-nav-ul > .active > a:hover,
.beanstalk-left-nav-ul > .active > a:focus {
  color: #FFFFFF !important;
  background-color: #2E1F69 !important;
}

.beanstalk-left-nav-ul > .active > a > img,
.beanstalk-left-nav-ul > .active > a:hover > img,
.beanstalk-left-nav-ul > .active > a:focus > img {
  filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(288deg) brightness(102%) contrast(102%);
}

.beanstalk-left-nav-ul > li > ul.collapse {
  display: none;
}

.beanstalk-left-nav-ul > li > ul.show,
.beanstalk-left-nav-ul > li > ul.in {
  display: block !important;
}

.beanstalk-left-nav-dropdown-link {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  border-bottom: 0px !important;
  background-color: #FFFFFF !important;
  color: #FFFFFF !important;
  border-radius: 8px !important;
}

ul.beanstalk-left-nav-ul > li.active > a > i.beanstalk-svg {
  filter: none;
}

.beanstalk-left-nav-ul > li.dropdown.active > a > div > div > img,
.beanstalk-left-nav-ul > li.dropdown.active > a:hover > div > div > img,
.beanstalk-left-nav-ul > li.dropdown.active > a:focus > div > div > img {
  filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(288deg) brightness(102%) contrast(102%);
}

.beanstalk-left-nav-ul > li.dropdown.active > a > div > div > i,
.beanstalk-left-nav-ul > li.dropdown.active > a:hover > div > div > i,
.beanstalk-left-nav-ul > li.dropdown.active > a:focus > div > div > i {
  filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(288deg) brightness(102%) contrast(102%);
}

.beanstalk-left-nav-ul > li.dropdown.active > a,
.beanstalk-left-nav-ul > li.dropdown.active > a:hover,
.beanstalk-left-nav-ul > li.dropdown.active > a:focus {
  color: #FFFFFF !important;
  background-color: transparent !important;
}

.beanstalk-left-nav-ul > li > a:hover,
.beanstalk-left-nav-ul > li > a:focus,
nav.beanstalk-left-nav > div > div > .beanstalk-left-nav-ul > li > a:hover,
nav.beanstalk-left-nav > div > div > .beanstalk-left-nav-ul > li > a:focus {
  background-color: rgba(255, 255, 255, 0.2) !important;
}

.beanstalk-left-nav > li > a,
.beanstalk-left-nav .dropdown-menu > li > a {
  color: #FFFFFF !important;
}

.beanstalk-left-nav > li > a:hover,
.beanstalk-left-nav > li > a:focus,
.beanstalk-left-nav .dropdown-menu > li > a:hover,
.beanstalk-left-nav .dropdown-menu > li > a:focus {
  background-color: #2E1F69 !important;
  font-weight: bold;
  border-radius: 8px;
}

.beanstalk-nav-tabs {
  background: #F4F4F5;
  text-align: center;
  padding: 0px;
  margin: 0px !important;
  border-radius: 2px;
  list-style: none;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 6px !important;
  border: 0px !important;
}

.beanstalk-nav-tab {
  margin: 6px 12px 6px 12px !important;
  border-radius: 2px !important;
  color: #71717A;
  vertical-align: middle;
  font-family: Inter, sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  text-align: center;
  border: 0px !important;
}

.beanstalk-nav-tab .active {
  box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.0509803922);
}

.beanstalk-panel {
  font-family: "Inter", sans-serif;
  border: 1px solid #E8E8F2;
  box-shadow: 0px 2px 8px 0px rgba(0, 1, 69, 0.0392156863);
  background: #FFFFFF;
  width: auto;
  height: auto;
  border-radius: 8px;
  border-width: 1px;
  color: #000145;
  overflow: hidden;
}

.beanstalk-panel-heading {
  width: 100%;
  height: auto;
  padding: 16px 20px 24px 20px;
  gap: 4px;
  border: 4px 0px 0px 0px;
}

.panel-danger {
  background-color: #facfcf;
}

.panel-warning {
  background-color: #FDFFDC;
}

.panel-success {
  background-color: #E3FFE9;
}

.panel-primary {
  background-color: #DCF8FF;
  overflow: hidden;
}

.panel-default-gray {
  background-color: #f5f5f5;
  border-bottom: 1px solid #D3D3D3;
}

.panel-primary-underline {
  background-color: #DCF8FF;
  border-bottom: 1px solid #D3D3D3;
}

.beanstalk-panel-title {
  font-size: 18px;
  font-weight: 600;
  line-height: 24px;
  text-align: left;
  color: #000145;
}

.beanstalk-panel-body {
  width: auto;
  height: auto;
  gap: 16px;
  padding: 16px 20px 16px 20px;
}

.beanstalk-link {
  color: #402B95;
}

.beanstalk-wrap {
  word-wrap: break-word;
}

.beanstalk-button-large {
  padding: 12px 18px !important;
  font-size: 20px !important;
}

.beanstalk-button {
  padding: 6px 12px 6px 12px;
  border-radius: 8px;
  font-family: Inter, sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 28px;
  letter-spacing: -0.02em;
  text-align: center;
  border: 1px solid #402B95;
  background-color: #FFFFFF;
  color: #402B95;
  transition-duration: 0.15s;
}

.beanstalk-button:disabled,
.beanstalk-button[disabled] {
  background: linear-gradient(180deg, #373737 0%, #b6b6b6 100%) !important;
  cursor: not-allowed;
}

a.beanstalk-button {
  display: inline-block;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  border-radius: 8px;
  text-decoration: none;
}

.beanstalk-login-button {
  padding: 6px 12px 6px 12px;
  border-radius: 8px;
  font-family: Inter, sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 28px;
  letter-spacing: -0.02em;
  text-align: center;
  border: 1px solid #402B95;
  background-color: #FFFFFF;
  color: #402B95;
  transition-duration: 0.15s;
  width: 100%;
}

.beanstalk-button:hover {
  background-color: #F5F5F5;
  color: #6090FB;
}

.beanstalk-button-blue {
  background: linear-gradient(180deg, #402B95 0%, #6090FB 100%);
  color: #FFFFFF;
  border-width: 0px;
  transition: 1s;
}

.beanstalk-button-blue:hover {
  background: linear-gradient(180deg, #6090FB 0%, #402B95 100%);
  color: #FFFFFF;
}

.beanstalk-button-blue:focus {
  filter: grayscale(0.8);
}

.beanstalk-button-pink-purple {
  background: linear-gradient(180deg, #882F96 0%, #AB4E55 100%);
  color: #FFFFFF;
  border-width: 0px;
  transition: 1s;
}

.beanstalk-button-pink-purple:hover {
  background: linear-gradient(180deg, #AB4E55 0%, #882F96 100%);
  color: #FFFFFF;
}

.beanstalk-button-pink-purple:focus {
  filter: grayscale(0.8);
}

.beanstalk-button-red {
  color: #fff;
  background-color: #d9534f;
  border-color: #d43f3a;
  border-width: 1px;
  transition: 1s;
}

.beanstalk-button-red:hover {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}

.beanstalk-button-white {
  background-color: transparent;
  color: #FFF;
  border: 1px solid #FFFFFF;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 28px;
  letter-spacing: -0.02em;
  text-underline-position: from-font;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
}

.beanstalk-button-white:hover {
  background-color: transparent;
  color: #b8b8b8;
  border: 1px solid #b8b8b8;
}

label.beanstalk-control-label {
  font-family: "Inter", sans-serif;
  font-size: 16px;
  font-weight: 450;
  line-height: 16px;
  text-align: left;
  font-variation-settings: "slnt" 0;
}

input.beanstalk-form-control,
select.beanstalk-form-control {
  border: 1px solid #D2D2DD;
  background: #FFFFFF;
  text-align: left;
  width: 100%;
  height: 40px;
  padding: 8px;
  border-radius: 6px;
  border: 1px solid var(--Grey-30, #D2D2DD);
  color: #000145;
}

input.beanstalk-form-control[type=checkbox] {
  width: 20px;
  height: 20px;
  border-radius: 4px;
  border: 1px solid #D2D2DD;
  background: #FFFFFF;
  accent-color: #000145;
}

input.beanstalk-form-control[readonly],
select.beanstalk-form-control[readonly] {
  color: #32333E;
  opacity: 0.5;
  background: #F8F8F9;
  border: 1px solid #D2D2DD;
}

.input-group-addon.addon-left-side {
  border-radius: 6px 0px 0px 6px;
}

.beanstalk-form-control.addon-left-side {
  border-radius: 0px 6px 6px 0px;
}

.beanstalk-partner-header-turnkey-badge {
  background: #FF8600;
  width: 28px;
  height: 28px;
  padding: 4px;
  border-radius: 6px;
  color: #FFFFFF;
  text-align: center;
  display: inline-block;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 20px;
  text-align: center;
}

.beanstalk-partner-header-comprehensive-badge {
  background: #5CB85C;
  width: 28px;
  height: 28px;
  padding: 4px;
  border-radius: 6px;
  color: #FFFFFF;
  text-align: center;
  display: inline-block;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 20px;
  text-align: center;
}

.beanstalk-fade-in {
  opacity: 0;
  animation-name: beanstalkSlowLoad;
  animation-duration: 0.25s;
  animation-delay: 0.5s;
  animation-fill-mode: forwards;
  animation-iteration-count: 1;
}

@keyframes beanstalkSlowLoad {
  0% {
    opacity: 0;
    transform: translateY(20%);
  }
  100% {
    opacity: 1;
    transform: translateY(0%);
  }
}
.beanstalk-sub-nav {
  background-color: #fff;
}

.beanstalk-survey-line-break {
  border-top: 1px solid #F8F8F9;
  padding-top: 20px;
}

.beanstalk-designated-signer {
  color: #00D704;
  all: unset;
  cursor: pointer;
}

.beanstalk-non-designated-signer {
  all: unset;
  color: #000145;
  cursor: pointer;
}

.beanstalk-left-nav-ul .beanstalk-dropdown > .beanstalk-dropdown-menu > li.active {
  background-color: #2E1F69;
}

.beanstalk-header-text {
  color: #FFFFFF;
}

.beanstalk-grid-button {
  font-size: 20px;
  border-radius: 8px;
  padding-top: 4px;
  padding-bottom: 4px;
}

.new-partner-or-campus {
  background-color: #ffffbf;
  padding: 5px;
  border-radius: 7px;
  border: 1px solid #ffefe0;
}

a[aria-expanded=true] .fa-plus {
  display: none !important;
}

a[aria-expanded=true] .fa-minus {
  display: inline-block !important;
}

a[aria-expanded=false] .fa-minus {
  display: none !important;
}

a[aria-expanded=false] .fa-plus {
  display: inline-block !important;
}

.beanstalk-scrollable {
  scrollbar-width: thin;
  scrollbar-color: #9CA3AF #F8F8F9;
}
.beanstalk-scrollable::-webkit-scrollbar {
  width: 10px;
  height: 10px;
  border-radius: 100px;
}
.beanstalk-scrollable::-webkit-scrollbar-thumb {
  background-color: #9CA3AF;
  border: 2px solid #E8E8F2;
  border-radius: 100px;
}
.beanstalk-scrollable::-webkit-scrollbar-track {
  background: #F8F8F9;
  border-radius: 100px;
}

.table-wrapper {
  max-height: 550px;
  overflow-y: auto;
  overflow-x: auto;
  position: relative;
}

.table {
  width: 100%;
  border-collapse: collapse;
}

.format-header {
  position: sticky;
  top: 0;
  z-index: 2;
  background-color: #d9edf7;
  box-shadow: 0 2px 2px -1px rgba(0, 0, 0, 0.4);
}

.table-wrapper::-webkit-scrollbar {
  height: 10px;
  width: 10px;
}

.table-wrapper::-webkit-scrollbar-track {
  background: #f1f1f1;
}

.table-wrapper::-webkit-scrollbar-thumb {
  background: #888;
}

.table-wrapper::-webkit-scrollbar-thumb:hover {
  background: #555;
}

.dropdown-submenu {
  position: relative;
}

.dropdown-submenu .dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: -6px;
  margin-left: -1px;
  border-radius: 0 6px 6px 6px;
  max-height: 250px;
  overflow: auto;
}

.dropdown-submenu:hover .dropdown-menu {
  display: block;
}

.dropdown-submenu > a:after {
  display: block;
  content: " ";
  float: right;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
  border-width: 5px 0 5px 5px;
  border-left-color: #ccc;
  margin-top: 5px;
  margin-right: -10px;
}

.dropdown-submenu:hover > a:after {
  border-left-color: #fff;
}

.dropdown-submenu.pull-left {
  float: none;
}

.dropdown-submenu.pull-left > .dropdown-menu {
  left: -100%;
  margin-left: 10px;
  border-radius: 6px 0 6px 6px;
}

.before-and-after-care-enrollments-edit-text {
  font-size: 18px;
}

.before-and-after-care-enrollments-edit-text ol {
  text-align: left;
  font-size: 18px;
}

.before-and-after-care-week ul {
  padding: 0;
  margin: 0;
  clear: both;
}

.before-and-after-care-week li {
  list-style-type: none;
  list-style-position: outside;
  float: left;
  display: table-cell;
  vertical-align: middle;
}

.before-and-after-care-week-mobile-ul {
  font-size: 12px !important;
}

.before-and-after-care-week-mobile-major-label {
  width: 20vw !important;
  font-size: 12px;
  font-weight: normal;
}

.before-and-after-care-week input[type=checkbox]:not(:checked),
.before-and-after-care-week input[type=checkbox]:checked {
  position: absolute;
  left: -9999%;
}

.before-and-after-care-week input[type=checkbox] + label {
  display: table-cell;
  cursor: pointer;
  border: 1px solid black;
  color: black;
  background-color: white;
  margin-bottom: 10px;
  width: 12vw;
  height: 64px;
  text-align: center;
  vertical-align: middle;
}

.before-and-after-care-week input[type=checkbox]:checked + label {
  border: 1px solid darkgreen;
  color: black;
  background-color: lightgreen;
}

.catalogue-body {
  padding-bottom: 20px;
  font-size: 18px;
  overflow: overlay;
  overflow-x: hidden;
}

.catalogue-body h1 {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 64px;
  line-height: 64px;
}

.catalogue-body h2 {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: bold;
  font-size: 64px;
  line-height: 64px;
}

.catalogue-body h3 {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: bold;
  font-size: 28px;
  line-height: 32px;
}

.catalogue-body h4 {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 600;
  font-size: 20px;
  line-height: 28px;
}

.catalogue-body h5 {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: bold;
  font-size: 16px;
  line-height: 24px;
}

.catalogue-body h6 {
  font-family: Open Sans;
  font-style: normal;
  font-weight: 600;
  font-size: 14px;
  line-height: 16px;
}

.body-1 {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: normal;
  font-size: 20px;
  line-height: 32px;
}

.body-2 {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: normal;
  font-size: 16px;
  line-height: 24px;
}

.black-rocket-orange-gradient {
  background: rgb(239, 157, 8);
  background: linear-gradient(0deg, rgb(239, 157, 8) 0%, rgb(248, 188, 80) 100%);
}

.black-rocket-dark-purple-gradient {
  background: rgb(147, 90, 197);
  background: linear-gradient(0deg, rgb(147, 90, 197) 0%, rgb(109, 59, 152) 100%);
}

.black-rocket-purple-gradient {
  background: rgb(185, 148, 246);
  background: linear-gradient(0deg, rgb(185, 148, 246) 0%, rgb(157, 115, 226) 100%);
}

.catalogue-body::-webkit-scrollbar {
  width: 10px;
  height: 10px;
  border-radius: 100px;
}

.catalogue-body::-webkit-scrollbar-thumb {
  background-color: #BFBFBF;
  border: 3px solid #BFBFBF;
  border-radius: 100px;
  height: 0px;
}

.catalogue-body::-webkit-scrollbar-track {
  height: 1px;
  border-radius: 100px;
  background: rgba(0, 0, 0, 0.4);
}

.catalogue-body::-webkit-scrollbar-corner {
  background-color: transparent;
}

.modal::-webkit-scrollbar {
  width: 10px;
  height: 10px;
  border-radius: 100px;
}

.modal::-webkit-scrollbar-thumb {
  background-color: #BFBFBF;
  border: 3px solid #BFBFBF;
  border-radius: 100px;
  height: 0px;
}

.modal::-webkit-scrollbar-track {
  height: 1px;
  border-radius: 100px;
  background: rgba(0, 0, 0, 0.4);
}

.modal::-webkit-scrollbar-corner {
  background-color: transparent;
}

body.modal-open {
  overflow: hidden;
}

.add-to-cart-modal {
  color: #1E182D;
}

.hero-image-desktop {
  background-image: url("/img/location/hero.jpg");
  min-height: 100vh;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.hero-image-logoless {
  background-image: url("/img/location/hero_logoless.png");
}

.hero-content-desktop {
  margin-top: 11%;
  margin-left: 10%;
  width: 33%;
  background-color: white;
  padding-bottom: 100px;
}

.hero-content-header-1 {
  color: #1E182D;
}

.what-to-expect-section {
  background-color: #6D3B98;
  color: #FFFFFF;
  padding-bottom: 64px;
}

.what-to-expect-section-primary-content {
  margin-top: 5%;
}

.what-to-expect-section-primary-content ul {
  list-style: none;
  padding: 24px;
}

.what-to-expect-section-primary-content li {
  font-style: normal;
  font-weight: normal;
  font-size: 20px;
  line-height: 32px;
}

.what-to-expect-section-primary-content li:before {
  content: "\f054";
  font-family: FontAwesome;
  color: #9D73E2;
}

.what-to-expect-section-centered-text {
  align-items: center;
  text-align: center;
}

.what-to-expect-section-hanging-monster {
  position: relative;
  width: 100%;
}

.what-to-expect-section-separator {
  position: relative;
  width: 100vw;
  height: 15vh;
}

.what-to-expect-section-separator:before {
  position: absolute;
  content: "";
  width: 100%;
  height: 15vh;
  background: url("/img/location/what_to_expect_separator_left_line.svg") 0% 0% no-repeat, #6D3B98;
  clip-path: polygon(100% 0, 0 0, 0 100%);
  z-index: 1;
}

.what-to-expect-section-separator:after {
  position: absolute;
  content: "";
  width: 100%;
  height: 15vh;
  background-color: transparent;
  clip-path: polygon(100% 0, 0 100%, 100% 100%);
  z-index: 1;
}

.courses-and-filters-section {
  margin-top: -15vh;
  background-color: #9D73E2;
  overflow: auto;
}

.courses-and-filters-color-splash-desktop {
  background-image: url("/img/location/color_splash_1.png");
  background-repeat: no-repeat;
  max-width: 100vw;
  min-height: 600px;
}

.courses-and-filters-sunburst-desktop {
  background-image: url("/img/location/sunburst.png");
  background-repeat: no-repeat;
  max-width: 100vw;
}

.course-and-filter-header {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: bold;
  font-size: 42px;
  line-height: 48px;
  color: #FFFFFF;
}

.courses-and-filters-filters-section {
  background: #FFFFFF;
  border-radius: 32px;
  width: 100%;
}

.filters-header {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: bold;
  font-size: 20px;
  line-height: 24px;
  color: #1E182D;
}

.filters-course-count {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: normal;
  font-size: 12px;
  line-height: 24px;
  color: #1E182D;
  opacity: 0.6;
}

.filters-clear-all-link {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: normal;
  font-size: 12px;
  line-height: 24px;
  color: #6D3B98;
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
}

.filter-heading {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: bold;
  font-size: 12px;
  line-height: 16px;
  display: flex;
  align-items: center;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #6D3B98;
  padding-bottom: 16px;
}

.filter-checkbox-container {
  display: block;
  position: relative;
  padding-left: 52px;
  padding-bottom: 16px;
  margin-bottom: 0px;
  font-size: 14px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.filter-checkbox-container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}

.filter-checkmark {
  position: absolute;
  top: 0;
  left: 15px;
  height: 18px;
  width: 18px;
  background-color: #fff;
  border: 3px solid #1E182D;
  border-radius: 2px;
  opacity: 0.4;
}

.filter-checkbox-container:hover input ~ .filter-checkmark {
  background-color: #ccc;
}

.filter-checkbox-container input:checked ~ .filter-checkmark {
  background-color: #6D3B98;
  border: 3px solid #6D3B98;
  border-radius: 2px;
  opacity: 1;
}

.filter-checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

.filter-checkbox-container input:checked ~ .filter-checkmark:after {
  display: block;
}

.filter-checkbox-container .filter-checkmark:after {
  left: 3px;
  top: -2px;
  width: 6px;
  height: 12px;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.subtitle-1 {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: normal;
  font-size: 16px;
  line-height: 24px;
  color: #1E182D;
}

.subtitle-2 {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: normal;
  font-size: 14px;
  line-height: 20px;
  color: #1E182D;
}

.filter-input-label {
  display: inline-block;
  margin-top: -4px;
}

.courses-and-filters-course-section {
  background: #FFFFFF;
  border-radius: 32px;
  width: 100%;
}

.courses-class-type-header-online {
  height: 35px;
  top: 0px;
  background: #6DDBFF;
  border: 2px solid #3AB9E2;
  box-sizing: border-box;
  border-radius: 0px 0px 4px 4px;
}

.courses-class-type-header-in-room {
  height: 35px;
  top: 0px;
  background: #F7D251;
  border: 2px solid #DDAE41;
  box-sizing: border-box;
  border-radius: 0px 0px 4px 4px;
}

.courses-class-type-header-text {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: bold;
  font-size: 14px;
  line-height: 16px;
  color: #1E182D;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  align-items: center;
  text-align: center;
  padding-top: 6px;
}

.course-banner-image {
  background-color: #fff;
  position: relative;
  border-radius: 24px;
  width: 100%;
  background: url() 50% 50% no-repeat;
  background-size: cover;
  background-clip: content-box;
}

.course-banner-image:before {
  display: block;
  content: "";
  padding-top: 75%;
}

.course-banner-image-single-section-purchase-page {
  background-color: #fff;
  position: relative;
  border-radius: 24px;
  width: 100%;
  background: url() 50% 50% no-repeat;
  background-size: cover;
  background-clip: content-box;
}

.course-banner-image-single-section-purchase-page:before {
  display: block;
  content: "";
  padding-top: 0%;
}

.course-nav-tabs {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: bold;
  font-size: 12px;
  line-height: 24px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  border-bottom: 0px;
  border-radius: 25px;
}

.course-nav-tabs > li.active > a, .course-nav-tabs > li.active > a:hover, .course-nav-tabs > li.active > a:focus {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: bold;
  font-size: 12px;
  line-height: 24px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #6D3B98;
  opacity: 1;
  border: 0px;
  border-bottom: 2px solid #6D3B98;
}

.course-nav-tabs > li > a {
  color: #1E182D;
  opacity: 0.6;
}

.course-session-card {
  background-color: #fff;
  box-shadow: 2px 4px 20px rgba(0, 0, 0, 0.1);
  border-radius: 12px;
  display: flex;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  overflow-x: auto;
  scroll-snap-align: start;
  flex-shrink: 0;
  height: 300px;
  margin-right: 50px;
  border-radius: 10px;
}

.sessions-carousel {
  overflow: hidden;
}

.course-session-slider {
  width: 100%;
  text-align: center;
  overflow: hidden;
}

.course-session-slide-container {
  display: flex;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  height: 260px;
  /*
  scroll-snap-points-x: repeat(300px);
  scroll-snap-type: mandatory;
  */
}

.course-session-slide-container::-webkit-scrollbar {
  width: 10px;
  height: 10px;
  border-radius: 100px;
}

.course-session-slide-container::-webkit-scrollbar-thumb {
  background-color: #BFBFBF;
  border: 3px solid #BFBFBF;
  border-radius: 100px;
  height: 0px;
}

.course-session-slide-container::-webkit-scrollbar-track {
  opacity: 0.1;
  height: 1px;
  border-radius: 100px;
  border: 1px solid #1E182D;
}

.course-session-slide {
  float: left;
  scroll-snap-align: none;
  flex-shrink: 0;
  width: 172px;
  height: 180px;
  margin-top: 36px;
  margin-bottom: 16px;
  margin-right: 16px;
  margin-left: 16px;
  padding-right: 36px;
  background-color: #fff;
  box-shadow: 2px 4px 20px rgba(0, 0, 0, 0.1);
  border-radius: 12px;
  display: flex;
  transform-origin: center center;
  transform: scale(1);
  transition: transform 0.5s;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.course-session-price-badge {
  width: 50px;
  height: 50px;
  right: -18px;
  top: -18px;
  background-image: url("/img/location/course_price_badge.svg");
  background-repeat: no-repeat;
  display: inline-block;
  position: absolute;
}

.course-session-price-text {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: bold;
  font-size: 10px;
  line-height: 14px;
  left: 20%;
  top: 30%;
  position: absolute;
}

.course-session-dates {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 600;
  font-size: 16px;
  line-height: 24px;
  color: #1E182D;
  text-align: left;
  margin-left: 20px;
  padding-bottom: 8px;
}

.course-session-days, .course-session-times, .course-session-ages, .course-session-campus {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 600;
  font-size: 11px;
  line-height: 16px;
  text-align: left;
  color: #1E182D;
  margin-left: 20px;
  padding-bottom: 8px;
}

.course-session-add-to-cart-button-container {
  height: 36px;
  width: 152px;
  display: inline-block;
  position: absolute;
  background: #9D73E2;
  box-sizing: border-box;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  left: 20px;
  margin-top: 5%;
}

.course-session-add-to-cart-button {
  display: inline-block;
  position: absolute;
  height: 32px;
  width: 148px;
  top: 2px;
  left: 2px;
  border: 0px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 10px;
  line-height: 16px;
  color: #6D3B98;
  background: #E6DBF0;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  transition-duration: 0.1s;
}

.course-session-add-to-cart-button:hover {
  border: 0px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 10px;
  line-height: 16px;
  color: #fff;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  background: linear-gradient(308deg, #6D3B98 50%, #E6DBF0 60%, #6D3B98 70%);
}

.course-session-add-student-to-cart-button-container {
  height: 36px;
  width: 152px;
  display: inline-block;
  background: #9D73E2;
  box-sizing: border-box;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  margin-top: 4px;
}

.course-session-add-student-to-cart-button {
  text-decoration: none;
  display: inline-block;
  height: 32px;
  width: 148px;
  border: 0px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 10px;
  line-height: 16px;
  color: #6D3B98;
  background: #E6DBF0;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  transition-duration: 0.1s;
  padding-top: 4px;
}

.course-session-add-student-to-cart-button:hover {
  text-decoration: none;
  border: 0px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 10px;
  line-height: 16px;
  color: #fff;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  background: linear-gradient(308deg, #6D3B98 50%, #E6DBF0 60%, #6D3B98 70%);
}

.course-session-add-to-waitlist-button-container {
  height: 36px;
  width: 152px;
  display: inline-block;
  position: absolute;
  background: #E03B36;
  box-sizing: border-box;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  left: 20px;
  margin-top: 5%;
}

.course-session-add-to-waitlist-button {
  display: inline-block;
  position: absolute;
  height: 32px;
  width: 148px;
  top: 2px;
  left: 2px;
  border: 0px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 10px;
  line-height: 16px;
  color: #AD2E2A;
  background: #E67F7C;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  transition-duration: 0.1s;
}

.course-session-add-to-waitlist-button:hover {
  border: 0px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 10px;
  line-height: 16px;
  color: #fff;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  background: linear-gradient(308deg, #AD2E2A 50%, #E67F7C 60%, #AD2E2A 70%);
}

.watch-course-video-button {
  padding-top: 16px;
  position: relative;
  color: #6D3B98;
}

.watch-course-video-text {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  vertical-align: middle;
  top: 10px;
  color: #6D3B98;
}

.filter-date-container {
  display: block;
  position: relative;
  padding-left: 20px;
  padding-bottom: 16px;
  margin-bottom: 0px;
  font-size: 14px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  border-radius: 2px;
}

.filter-date-container input {
  border: 2px solid #6D3B98;
}

.filter-date-container input:focus {
  border: 2px solid #6D3B98;
}

.filter-select-container {
  display: block;
  position: relative;
  padding-left: 20px;
  padding-bottom: 16px;
  margin-bottom: 0px;
  font-size: 14px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.filter-select-container input {
  border: 2px solid #6D3B98;
  border-radius: 4px;
}

.filter-select-container input:focus {
  border: 2px solid #6D3B98;
}

.hero-call-to-action-button-container {
  height: 50px;
  width: 250px;
  display: inline-block;
  position: absolute;
  background: #9D73E2;
  box-sizing: border-box;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  margin-top: 24px;
}

.hero-call-to-action-button {
  display: inline-block;
  position: absolute;
  height: 46px;
  width: 246px;
  top: 2px;
  left: 2px;
  border: 0px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 16px;
  line-height: 24px;
  color: #fff;
  background: #6D3B98;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  transition-duration: 0.1s;
}

.hero-call-to-action-button:hover {
  border: 0px;
  color: #fff;
  background: linear-gradient(308deg, #6D3B98 50%, #E6DBF0 60%, #6D3B98 70%);
}

.catalog-download-button-container {
  height: 50px;
  width: 250px;
  display: inline-block;
  background: #FED064;
  box-sizing: border-box;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  margin-top: 24px;
}

.catalog-download-button {
  display: inline-block;
  height: 46px;
  width: 246px;
  margin-top: 2px;
  border: 0px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 16px;
  line-height: 24px;
  color: #fff;
  background: #EF7708;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  transition-duration: 0.1s;
}

.catalog-download-button:hover {
  border: 0px;
  color: #fff;
  background: linear-gradient(308deg, #EF7708 50%, #FED064 60%, #EF7708 70%);
}

.addon-buy-button-container {
  height: 50px;
  width: 220px;
  display: inline-block;
  background: #4dcc4b;
  box-sizing: border-box;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
}

.addon-buy-button {
  display: inline-block;
  height: 46px;
  width: 216px;
  margin-top: 2px;
  margin-right: 2px;
  border: 0px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 16px;
  line-height: 24px;
  color: #fff;
  background: #3b9c3a;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  transition-duration: 0.1s;
}

.addon-buy-button:hover {
  border: 0px;
  color: #fff;
  background: linear-gradient(308deg, #3b9c3a 50%, #4dcc4b 60%, #3b9c3a 70%);
}

/* The Modal (background) */
.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  /* z-index: 1; /* Sit on top */
  padding-top: 100px; /* Location of the box */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0, 0, 0); /* Fallback color */
  background-color: rgba(0, 0, 0, 0.7); /* Black w/ opacity */
  transition: all ease 1s;
}

.modal-mobile {
  padding-top: 0px;
}

/* Modal Content */
.modal-content {
  background-color: #fefefe;
  margin: auto;
  padding: 20px;
  border: 1px solid #888;
  margin-left: 5%;
  width: 90%;
}

.mobile-modal-content {
  background-color: #fefefe;
  margin: auto;
  padding: 0px;
  border: 1px solid #888;
  width: 100%;
  position: absolute; /* Stay in place more than fixed for mobile phones */
}

/* The Close Button */
.close {
  color: #111;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
}

.shopping-cart-wrapper {
  background-color: green;
  position: fixed;
  bottom: 0px;
  z-index: 11;
  width: 100%;
  left: 0px;
  padding: 8px 16px 8px 16px;
  border-radius: 1px;
  text-align: center;
  color: white;
  transition: transform 0.2s;
}

.shopping-cart-wrapper:hover {
  transform: scale(1.1);
}

.shopping-cart-item-count {
  color: white;
  font-weight: bold;
  font-size: 20px;
}

.shopping-cart-total {
  color: white;
  font-size: 16px;
}

.checkout-wrapper {
  text-align: center;
  color: white;
}

.remove-line-item-button {
  font-size: 24px;
  color: red;
  font-weight: bold;
  transition: 0.3s;
  cursor: pointer;
}

.remove-line-item-button:hover {
  transform: scale(1.5) !important;
  color: red !important;
  text-decoration: none !important;
}

.line-item-details {
  margin-right: 4px;
}

.catalogue-body .modal-open {
  overflow: hidden;
}

.hero-image-mobile {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  max-width: 100vw;
}

.hero-content-mobile {
  margin-left: 5%;
  width: 90%;
}

.catalogue-body .mobile-h1 {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 46px;
  line-height: 50px;
}

.catalogue-body .mobile-h2 {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: bold;
  font-size: 24px;
  line-height: 32px;
}

.catalogue-body .mobile-h3 {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: bold;
  font-size: 28px;
  line-height: 32px;
}

.catalogue-body .mobile-h4 {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 600;
  font-size: 20px;
  line-height: 28px;
}

.catalogue-body .mobile-h5 {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: bold;
  font-size: 16px;
  line-height: 24px;
}

.catalogue-body .mobile-h6 {
  font-family: Open Sans;
  font-style: normal;
  font-weight: 600;
  font-size: 14px;
  line-height: 16px;
}

.mobile-body-1 {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: normal;
  font-size: 20px;
  line-height: 32px;
}

.mobile-body-2 {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: normal;
  font-size: 16px;
  line-height: 24px;
}

.hero-section-mobile {
  padding-bottom: 128px;
}

.hero-call-to-action-button-container-mobile {
  height: 50px;
  width: 90vw;
  display: inline-block;
  position: absolute;
  background: #9D73E2;
  box-sizing: border-box;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  left: 0;
  right: 0;
  margin-right: 24px;
  margin-left: 24px;
  margin-top: 32px;
}

.hero-call-to-action-button-mobile {
  display: inline-block;
  position: absolute;
  height: 46px;
  width: 89vw;
  top: 2px;
  left: 2px;
  border: 0px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 24px;
  line-height: 28px;
  color: #fff;
  background: #6D3B98;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  transition-duration: 0.1s;
}
.hero-call-to-action-button-mobile:focus {
  outline: 0;
}
.hero-call-to-action-button-mobile:hover {
  border: 0px;
  color: #fff;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  background: linear-gradient(308deg, #6D3B98 50%, #E6DBF0 60%, #6D3B98 70%);
}

.mobile-what-to-expect-list li {
  padding-bottom: 12px;
}

.courses-and-filters-color-splash-mobile {
  background-image: url(/img/location/color_splash_1.png);
  background-repeat: no-repeat;
  max-width: 100%;
  min-height: 600px;
  background-position: center;
  background-size: cover;
}

.courses-and-filters-mobile {
  background-repeat: no-repeat;
  max-width: 100vw;
}

.courses-and-filters-filters-section-mobile {
  border-radius: 0px !important;
  background: #FFFFFF;
  border-radius: 32px;
  width: 100%;
}

.filters-course-count-mobile {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: normal;
  font-size: 12px;
  line-height: 24px;
  color: #fff;
  opacity: 0.6;
}

.filters-clear-all-link-mobile {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: normal;
  font-size: 12px;
  line-height: 24px;
  color: #fff;
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
  float: right;
}

.mobile-iframe-parent {
  float: none;
  clear: both;
  width: 100%;
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 25px;
  height: 0;
}

.mobile-iframe-parent iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.mobile-video-play-button-container {
  background-color: #fff;
  width: 64px;
  height: 64px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 100px;
}

.mobile-video-play-button {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 24px;
  color: #9D73E2;
}

.course-session-slide-container-mobile {
  display: flex;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  height: 252px;
  /*
  scroll-snap-points-x: repeat(300px);
  scroll-snap-type: mandatory;
  */
}

.course-session-slide-container-mobile::-webkit-scrollbar {
  width: 10px;
  height: 10px;
  border-radius: 100px;
}

.course-session-slide-container-mobile::-webkit-scrollbar-thumb {
  background-color: #BFBFBF;
  border: 3px solid #BFBFBF;
  border-radius: 100px;
  height: 0px;
}

.course-session-slide-container-mobile::-webkit-scrollbar-track {
  opacity: 0.1;
  height: 1px;
  border-radius: 100px;
  border: 1px solid #1E182D;
}

.course-session-slide-mobile {
  float: left;
  scroll-snap-align: none;
  flex-shrink: 0;
  width: 160px;
  height: 170px;
  margin-top: 36px;
  margin-bottom: 16px;
  margin-right: 16px;
  margin-left: 16px;
  padding-right: 36px;
  background-color: #fff;
  box-shadow: 2px 4px 20px rgba(0, 0, 0, 0.1);
  border-radius: 12px;
  display: flex;
  transform-origin: center center;
  transform: scale(1);
  transition: transform 0.5s;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.course-session-add-to-cart-button-mobile-container {
  height: 36px;
  width: 152px;
  display: inline-block;
  position: absolute;
  background: #9D73E2;
  box-sizing: border-box;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  left: 20px;
  margin-top: 5%;
}

.course-session-add-to-cart-button-mobile {
  display: inline-block;
  position: absolute;
  height: 32px;
  width: 148px;
  top: 2px;
  left: 2px;
  border: 0px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 10px;
  line-height: 16px;
  color: #6D3B98;
  background: #E6DBF0;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  transition-duration: 0.1s;
}

.course-session-add-to-cart-button-mobile:hover {
  border: 0px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 10px;
  line-height: 16px;
  color: #fff;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  background: linear-gradient(308deg, #6D3B98 50%, #E6DBF0 60%, #6D3B98 70%);
}

.course-session-add-to-waitlist-button-mobile-container {
  height: 36px;
  width: 152px;
  display: inline-block;
  position: absolute;
  background: #E03B36;
  box-sizing: border-box;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  left: 20px;
  margin-top: 5%;
}

.course-session-add-to-waitlist-button-mobile {
  display: inline-block;
  position: absolute;
  height: 32px;
  width: 148px;
  top: 2px;
  left: 2px;
  border: 0px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 10px;
  line-height: 16px;
  color: #E03B36;
  background: #E67F7C;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  transition-duration: 0.1s;
}

.course-session-add-to-waitlist-button-mobile:hover {
  border: 0px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 10px;
  line-height: 16px;
  color: #fff;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  background: linear-gradient(308deg, #E03B36 50%, #E67F7C 60%, #E03B36 70%);
}

.nav-mobile > li {
  width: 100%;
  text-align: center;
}

.nav-mobile > li.active > a, .nav-mobile > li.active > a:hover, .nav-mobile > li.active > a:focus {
  border: 2px solid #6D3B98;
}

.testimonial-quote {
  font-size: 20px;
  font-family: "Inter", sans-serif;
  font-style: italic;
  color: #1E182D;
}

.testimonial-name {
  font-size: 16px;
  font-weight: 700;
  font-family: "Inter", sans-serif;
  color: #1E182D;
}

.testimonial-source {
  font-size: 12px;
  letter-spacing: 0.1em;
  font-family: "Inter", sans-serif;
  color: #9D73E2;
  font-weight: 700;
}

.filters-hanging-monster {
  background-image: url("/img/location/yellow_hanging_monster.png");
  width: 299px;
  height: 290px;
}

.course-description-container {
  overflow-y: auto;
  scroll-snap-type: y mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
}

.course-description-container::-webkit-scrollbar {
  width: 10px;
  height: 10px;
  border-radius: 100px;
}

.course-description-container::-webkit-scrollbar-thumb {
  background-color: #BFBFBF;
  border: 3px solid #BFBFBF;
  border-radius: 100px;
  height: 0px;
}

.course-description-container::-webkit-scrollbar-track {
  opacity: 0.1;
  height: 1px;
  border-radius: 100px;
  border: 1px solid #1E182D;
}

.load-more-button-container-mobile {
  height: 50px;
  width: 90vw;
  display: inline-block;
  position: absolute;
  background: #E6DBF0;
  box-sizing: border-box;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  left: 0;
  right: 0;
  margin-right: 24px;
  margin-left: 24px;
  margin-top: 32px;
}

.load-more-button-mobile {
  display: inline-block;
  position: absolute;
  height: 46px;
  width: 89vw;
  top: 2px;
  left: 2px;
  border: 0px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 24px;
  line-height: 28px;
  color: #fff;
  background: #6D3B98;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  transition-duration: 0.1s;
}
.load-more-button-mobile:focus {
  outline: 0;
}
.load-more-button-mobile:hover {
  border: 0px;
  color: #fff;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  background: linear-gradient(308deg, #6D3B98 50%, #E6DBF0 60%, #6D3B98 70%);
}

.load-more-button-container-desktop {
  height: 50px;
  width: 250px;
  display: inline-block;
  position: absolute;
  background: #E6DBF0;
  box-sizing: border-box;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  left: 0;
  right: 0;
  margin-right: 24px;
  margin-left: 24px;
  margin-top: 32px;
}

.load-more-button-desktop {
  display: inline-block;
  position: absolute;
  height: 46px;
  width: 246px;
  top: 2px;
  left: 2px;
  border: 0px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 24px;
  line-height: 28px;
  color: #fff;
  background: #6D3B98;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  transition-duration: 0.1s;
}
.load-more-button-desktop:focus {
  outline: 0;
}
.load-more-button-desktop:hover {
  border: 0px;
  color: #fff;
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 10% 100%, 0 80%);
  background: linear-gradient(308deg, #6D3B98 50%, #E6DBF0 60%, #6D3B98 70%);
}

.add-to-cart-section-info {
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: normal;
  font-size: 16px;
  line-height: 22px;
  color: #1E182D;
  text-align: center;
  padding-bottom: 4px;
}

.catalogue-grid-week-table {
  background: white;
  text-align: center !important;
  vertical-align: middle !important;
  font-size: 16px;
  font-weight: 700;
  font-family: Inter, sans-serif;
  font-style: normal;
  margin-bottom: 0px;
}

.catalogue-grid-week-table tr:nth-child(even) {
  background-color: #f2f2f2 !important;
}

.catalogue-grid-week-table tr:nth-child(odd) {
  background-color: #ffffff;
}

.catalogue-grid-week-table-am-pm td:nth-child(3) {
  border-left: 2px solid #111;
}

.catalogue-grid-week-table-am-pm th:nth-child(2) {
  border-left: 2px solid #111;
}

.catalogue-grid-week-table td {
  max-width: 20vw;
  padding: 4px;
}

.catalogue-grid-week-table th {
  position: sticky;
  top: 0;
  text-align: center;
  vertical-align: top;
  z-index: 10;
  background-color: #f2f2f2;
  box-shadow: inset 0 2px 0 #ddd, inset 0 -2px 0 #ddd;
  border-right: 1px solid #ddd;
  border-left: 1px solid #ddd;
}

.catalogue-grid-week-table th > tr {
  vertical-align: middle !important;
}

.catalogue-grid-week-table tr {
  height: 100px;
}

.catalogue-grid-week-table-header-column {
  position: sticky;
  left: 0;
  z-index: 11;
  background-color: inherit;
  box-shadow: inset 2px 0 0 #ddd, inset -2px 0 0 #ddd;
}

.catalogue-grid-week-table td {
  text-align: center !important;
  vertical-align: top !important;
  border: 1px solid #ddd;
}

.catalogue-grid-week-table-link {
  color: #6D3B98;
}

.catalogue-grid-week-table-link:hover {
  color: #9D73E2;
}

.catalogue-grid-week-table-link:focus {
  color: #9D73E2;
}

.catalogue-grid-purple-button {
  border: 2px solid #9D73E2;
  color: #6D3B98;
  background: #E6DBF0;
  transition-duration: 0.1s;
  min-width: 140px;
}

.catalogue-grid-purple-button:hover {
  color: #fff;
  border: 2px solid #9D73E2;
  background: linear-gradient(308deg, #6D3B98 50%, #E6DBF0 60%, #6D3B98 70%);
}

.catalogue-grid-purple-button:active {
  color: #fff;
  border: 2px solid #9D73E2;
  background: linear-gradient(308deg, #6D3B98 50%, #E6DBF0 60%, #6D3B98 70%);
}

.catalogue-grid-orange-toggle-button {
  border: 2px solid #F8A24C;
  color: #fff;
  background: #EF7708;
  font-size: 24px;
  border-radius: 64px;
  margin-bottom: 20px;
  min-width: 54px;
  padding: 6px;
}

.catalogue-grid-orange-toggle-button:active, .catalogue-grid-orange-toggle-button:focus {
  color: white !important;
  background-color: #D56C06;
}

.catalogue-grid-orange-toggle-button:hover {
  color: white !important;
  border: 2px solid #F8A24C;
  background: linear-gradient(308deg, #EF7708 50%, #F8A24C 60%, #EF7708 70%);
}

.catalogue-grid-orange-arrow-button {
  border: 2px solid #F8A24C;
  color: #fff;
  background: #EF7708;
  font-size: 36px;
  border-radius: 64px;
  margin-bottom: 20px;
  min-width: 54px;
  padding: 0px;
  padding-top: 1px;
}

.catalogue-grid-orange-arrow-button:hover, .catalogue-grid-orange-arrow-button:active, .catalogue-grid-orange-arrow-button:focus {
  color: #fff !important;
  border: 2px solid #F8A24C;
  background: linear-gradient(308deg, #EF7708 50%, #F8A24C 60%, #EF7708 70%);
}

.catalogue-grid-orange-button {
  border: 2px solid #F8A24C;
  color: #fff;
  background: #EF7708;
  transition-duration: 0.1s;
  min-width: 140px;
}

.catalogue-grid-orange-button:hover {
  color: #fff;
  border: 2px solid #F8A24C;
  background: linear-gradient(308deg, #EF7708 50%, #F8A24C 60%, #EF7708 70%);
}

.catalogue-grid-orange-button:active {
  color: #fff;
  border: 2px solid #F8A24C;
  background: linear-gradient(308deg, #EF7708 50%, #F8A24C 60%, #EF7708 70%);
}

.catalogue-grid-week-table-waitlist-button {
  border: 2px solid #E03B36;
  color: #AD2E2A;
  background: #E67F7C;
  transition-duration: 0.1s;
  min-width: 140px;
}

.catalogue-grid-week-table-waitlist-button:hover {
  color: #fff;
  border: 2px solid #E03B36;
  background: linear-gradient(308deg, #AD2E2A 50%, #E67F7C 60%, #AD2E2A 70%);
}

.catalogue-grid-week-table-waitlist-button:active {
  color: #fff;
  border: 2px solid #E03B36;
  background: linear-gradient(308deg, #AD2E2A 50%, #E67F7C 60%, #AD2E2A 70%);
}

.select-your-bundle-button {
  transition: all 0.2s ease-in;
  color: white;
  border-radius: 32px;
  z-index: auto;
  background-image: linear-gradient(to bottom right, #3b2c67, #6252ce);
  margin: 1%;
  width: 31.1%;
}

.select-your-bundle-button:hover, .select-your-bundle-button:focus {
  transform: scale(1.1);
  background-color: #372a60;
  z-index: 10;
  color: white;
}

.select-your-bundle-button-focused {
  transform: scale(1.1);
  background-color: #372a60;
  z-index: 10;
  color: white;
}

.catalogue-grid-select-weeks::-webkit-scrollbar {
  width: 10px;
  height: 10px;
  border-radius: 100px;
}

.catalogue-grid-select-weeks::-webkit-scrollbar-thumb {
  background-color: #BFBFBF;
  border: 3px solid #BFBFBF;
  border-radius: 100px;
  height: 0px;
}

.catalogue-grid-select-weeks::-webkit-scrollbar-track {
  height: 1px;
  border-radius: 100px;
  background: rgba(0, 0, 0, 0.4);
}

.catalogue-grid-select-weeks::-webkit-scrollbar-corner {
  background-color: transparent;
}

.catalogue-grid-select-weeks {
  width: 20vw;
  height: 30vh !important;
}

.select-your-bundle-buttons-container {
  border-radius: 32px;
  background-color: #2d1048;
}

.select-your-bundle-button-header-empty {
  min-height: 10vh;
  border-radius: 24px 24px 0px 0px;
}

.select-your-bundle-button-header-text {
  text-transform: uppercase;
  background-color: #fc8744;
  min-height: 10vh;
  font-size: 24px;
  border-radius: 32px 32px 0px 0px;
  padding-top: 20px;
  font-weight: 600;
}

.select-your-bundle-button-white-card {
  color: #752995;
  background-color: white;
  box-shadow: 10px 10px #4c3c98;
  border-radius: 0px 32px 32px 0px;
  border: grey 1px solid;
}

.select-your-bundle-button-title {
  font-size: 30px;
  font-weight: 800;
  text-transform: uppercase;
}

.select-your-bundle-button-original-price {
  color: #a49b9b;
  line-height: 1em;
  font-size: 40px;
  font-weight: 900;
  text-decoration: line-through;
  -webkit-text-decoration-color: #ff0600;
          text-decoration-color: #ff0600;
}

.select-your-bundle-button-per-week-text {
  font-size: 64px;
  font-weight: 900;
  line-height: 1em;
}

.select-your-bundle-button-save-up-to-text {
  margin-bottom: 2px;
  text-transform: uppercase;
  font-weight: 900;
  letter-spacing: 0em;
  font-size: 18px;
}

.select-your-bundle-button-per-week-sub-text {
  font-weight: 900;
  font-size: 22px;
  color: #fc8744;
}

.select-your-bundle-button-save-up-to-container {
  background-image: linear-gradient(to bottom, #3b2c68, #4e3e97);
  color: #fc8744;
  border-radius: 0px 0px 32px 32px;
  min-height: 15vh;
}

.select-your-bundle-button-save-up-to-value {
  margin-top: 0px;
  font-size: 36px !important;
  line-height: 28px !important;
  font-weight: 900 !important;
}

.catalogue-grid-rotated-step-text {
  font-size: 64px !important;
  font-weight: bold;
  -webkit-transform: rotate(-90deg) translate(-100px, 0px);
  white-space: nowrap;
  -moz-transform: rotate(-90deg) translate(-100px, 0px);
}

.choose-your-filters-section {
  background-color: #1E182D;
  overflow: auto;
}

.choose-your-filters-inverted-color-splash-desktop {
  background-image: url("/img/location/inverted_color_splash.png");
  background-repeat: no-repeat;
  max-width: 100vw;
  min-height: 400px;
}

.choose-your-filters-inverted-color-splash-mobile {
  background-image: url("/img/location/inverted_color_splash.png");
  background-repeat: no-repeat;
  background-position: top;
}

.rounded-borders {
  border-radius: 32px;
}

.transparent-purple-container {
  background: rgba(109, 59, 152, 0.5);
  padding: 24px;
  border-radius: 32px;
}

.choose-your-filters-filter-panel-mobile {
  background-image: linear-gradient(to bottom right, #3b2c67, #6252ce);
  min-height: 98px;
}

.choose-your-filters-filter-panel {
  background-image: linear-gradient(to bottom right, #3b2c67, #6252ce);
  min-height: 98px;
  width: 14.85%;
  margin-left: 1.5%;
}

.choose-your-filters-filter-header {
  background-color: #2d1049;
  min-height: 4vh;
  border-radius: 32px 32px 0px 0px;
  color: white;
}

.choose-your-filters-filter-body-third {
  min-height: 22vh;
}

.catalogue-grid-filter-input {
  border-radius: 5px;
  width: 100%;
  height: 40px;
  font-size: 16px;
  color: #35495E;
  text-align: left;
  border: none;
  padding-left: 8px;
  display: inline-block;
  font-family: "Inter", sans-serif;
}

.catalogue-grid-filter-input::-moz-placeholder {
  color: #ADADAD;
  letter-spacing: -0.04rem;
  opacity: 1;
  font-size: 14px;
}

.catalogue-grid-filter-input::placeholder {
  color: #ADADAD;
  letter-spacing: -0.04rem;
  opacity: 1;
  font-size: 14px;
}

.catalogue-grid-filter-checkbox-container {
  display: block;
  position: relative;
  padding-left: 4px;
  padding-bottom: 10px;
  padding-top: 10px;
  margin-bottom: 0px;
  font-size: 14px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  border-radius: 32px;
  transition-duration: 0.1s;
}

.catalogue-grid-filter-checkbox-container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}

.catalogue-grid-filter-checkmark {
  position: absolute;
  top: 25%;
  left: 12px;
  height: 18px;
  width: 18px;
  background-color: #fff;
  border: 2px solid #1E182D;
  border-radius: 32px;
  opacity: 0.4;
}

.catalogue-grid-filter-checkbox-container:hover input ~ .catalogue-grid-filter-checkmark {
  background-color: #ccc;
}

.catalogue-grid-filter-checkbox-container input:checked ~ .catalogue-grid-filter-checkmark {
  background-color: #EF7708;
  border: 2px solid white;
  border-radius: 32px;
  opacity: 1;
}

.catalogue-grid-filter-checkmark:after {
  content: "";
  position: absolute;
  right: 0px;
  display: none;
}

.catalogue-grid-filter-checkbox-container input:checked ~ .catalogue-grid-filter-checkmark:after {
  display: block;
}

.catalogue-grid-filter-checkbox-container .catalogue-grid-filter-checkmark:after {
  left: 4px;
  top: 0px;
  width: 6px;
  height: 12px;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.catalogue-grid-filter-checkbox-container-checked {
  background-color: #EF7708;
  color: white;
  background-image: linear-gradient(to top, #EF7708, #F8A24C);
}

.catalogue-grid-filter-checkbox-container:hover {
  background-color: #F8A24C;
}

.select-your-bundle-button-mobile {
  transition: all 0.2s ease-in;
  color: white;
  border-radius: 32px;
  z-index: auto;
  background-color: #372a60;
  margin: 4%;
  width: 92%;
}

.select-your-bundle-button-mobile:hover, .select-your-bundle-button-mobile:focus {
  background-color: #372a60;
  z-index: 10;
  color: white;
}

.select-your-bundle-button-mobile-focused {
  background-color: #372a60;
  z-index: 10;
  color: white;
}

.select-your-bundle-button-mobile-header-text {
  background-color: #ff6c00;
  min-height: 6vh;
  font-size: 26px;
  border-radius: 32px 32px 0px 0px;
  padding-top: 6px;
}

.select-your-bundle-button-mobile-title {
  font-size: 24px;
  font-weight: bold;
}

.select-your-bundle-button-mobile-per-week-text {
  font-size: 24px;
  border-bottom: 1px solid #c689f5;
}

.select-your-bundle-button-mobile-per-week-sub-text {
  font-size: 16px;
  color: #c689f5;
}

.select-your-bundle-button-mobile-save-up-to-container {
  background-color: #f6cd70;
  color: #2e1049;
  border-radius: 0px 0px 32px 32px;
}

.select-your-bundle-button-mobile-save-up-to-text {
  margin-top: 0px;
  font-size: 24px;
}

.cart-progress {
  width: 0%;
  height: 10px;
  background-color: #2183DD;
  transition: width 0.5s;
  z-index: 20;
}
.cart-progress.cart-progress-1 {
  width: calc(25vw);
}
.cart-progress.cart-progress-2 {
  width: calc(50vw);
}
.cart-progress.cart-progress-3 {
  width: calc(75vw);
}
.cart-progress.cart-progress-4 {
  width: calc(100vw);
}
.cart-progress.cart-progress-complete {
  width: 100vw;
}

.cart-progress-bg {
  position: absolute;
  width: 100vw;
  height: 10px;
  background-color: #E5E5E5;
  z-index: 19;
}

.cart-progress-step {
  position: absolute;
  top: -16px;
  left: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  z-index: 20;
}
.cart-progress-step.cart-progress-step-1 {
  left: calc(24vw - 36px);
}
.cart-progress-step.cart-progress-step-2 {
  left: calc(48vw - 36px);
}
.cart-progress-step.cart-progress-step-3 {
  left: calc(72vw - 36px);
}
.cart-progress-step.cart-progress-step-4 {
  left: calc(96vw - 36px);
}
.cart-progress-step.cart-progress-step-active {
  color: white;
  font-weight: 600;
  background-color: white;
  background-image: url(/img/monster-square.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  border-radius: 50%;
  height: 64px;
  width: 64px;
}
.cart-progress-step.cart-progress-step-active .cart-progress-indicator {
  background-color: transparent;
  position: absolute;
  border-color: black;
  top: 0px;
}
.cart-progress-step.cart-progress-step-complete .cart-progress-indicator {
  background-color: #009900;
  border-color: black;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
}
.cart-progress-step.cart-progress-step-complete .cart-progress-indicator .fa {
  display: block;
}
.cart-progress-step.cart-progress-step-complete .cart-progress-label {
  font-weight: bold;
  color: white;
}

.cart-progress-indicator {
  width: 78px;
  height: 78px;
  border: 2px solid black;
  border-radius: 50%;
  background-color: #ed5a5a;
  margin-bottom: 10px;
}
.cart-progress-indicator .fa {
  display: none;
  font-size: 16px;
  color: white;
}

.shopping-cart-progress-bar {
  width: 0vw;
  background: linear-gradient(to left, #EF7708, #F8A24C);
  transition: width 0.5s;
  z-index: 20;
  height: 64px;
}

.shopping-cart-progress-monster {
  left: 0px;
  transition: 0.5s;
  position: absolute;
  height: 64px;
  transform: scaleX(-1);
}

.shopping-cart-distance-to-next-tier {
  font-size: 20px;
  color: gold;
  text-shadow: -1px 0 black, 0 1px black, 1px 0 black, 0 -1px black;
  line-height: 1em;
  font-weight: 600;
}

.cart-progress-label {
  position: absolute;
  top: 14px;
  width: 200px;
  font-weight: bold;
}

.grid-shopping-cart-wrapper {
  background-color: lightgray;
  border: 2px solid black;
  position: fixed;
  bottom: 0px;
  z-index: 11;
  width: 100%;
  left: 0px;
  border-radius: 1px;
  text-align: center;
  color: white;
  transition: 0.2s;
  height: 64px;
}

.grid-shopping-cart-wrapper:hover {
  box-shadow: 1px 1px 2px black, 0 0 25px #F8A24C, 0 0 5px #EF7708;
}

.grid-shopping-cart-total {
  color: white;
  font-size: 16px;
}

.grid-checkout-wrapper {
  text-align: center;
  color: white;
}

.shopping-cart-cart-icon-wrapper {
  position: fixed;
  height: 64px;
  bottom: 0px;
  right: 0px;
  width: 200px;
  background-color: green;
  color: white;
  padding-top: 10px;
  border: 2px solid black;
}

.grid-catalogue-btn-large {
  min-width: 17vw;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 16px;
  line-height: 24px;
}

.grid-catalogue-btn-large-mobile {
  text-transform: uppercase;
  font-weight: bold;
}

.add-to-cart-section-info-strikethrough {
  text-decoration: line-through;
}

.catalogue-grid-red-button {
  border: 2px solid #E03B36;
  color: #AD2E2A;
  background: #E67F7C;
  transition-duration: 0.1s;
  min-width: 140px;
}

.catalogue-grid-red-button:hover {
  color: #fff;
  border: 2px solid #E03B36;
  background: linear-gradient(308deg, #AD2E2A 50%, #E67F7C 60%, #AD2E2A 70%);
}

.catalogue-grid-red-button:active {
  color: #fff;
  border: 2px solid #E03B36;
  background: linear-gradient(308deg, #AD2E2A 50%, #E67F7C 60%, #AD2E2A 70%);
}

.checkout-grid-cart-panel-heading {
  background-image: linear-gradient(to top, #3b2c67, #6252ce);
  color: white !important;
  border: 2px solid black !important;
}

.mobile-catalogue-week-display {
  font-family: Inter, sans-serif;
  font-size: 36px;
  font-style: normal;
  line-height: 36px;
}

.course-learn-scroll {
  height: calc(100vh - 50px);
  overflow-x: hidden;
  overflow-y: hidden;
  margin-left: -15px;
  margin-right: -15px;
  padding-bottom: 0;
}

.course-learn-scroll-actual {
  height: calc(100vh - 95px);
  overflow-x: hidden;
  overflow-y: auto;
  margin-left: -15px;
  margin-right: 0px;
  padding-bottom: 0;
}

#courses-learn-nav {
  display: flex;
  align-items: stretch;
  margin: 0;
  padding: 0;
}
#courses-learn-nav > li.navtab-list-item {
  list-style: none;
}
#courses-learn-nav > li.navtab-list-item > a {
  color: #FFFFFF;
  font-weight: 600;
  padding: 10px 15px;
  display: block;
  text-decoration: none;
  border-bottom: 3px solid transparent;
  transition: border-color 0.15s ease;
}
#courses-learn-nav > li.navtab-list-item > a:hover, #courses-learn-nav > li.navtab-list-item > a:focus {
  color: #FFFFFF;
  border-bottom-color: rgba(255, 255, 255, 0.6);
  background-color: transparent;
}
#courses-learn-nav > li.navtab-list-item.active > a, #courses-learn-nav > li.navtab-list-item.active > a:hover, #courses-learn-nav > li.navtab-list-item.active > a:focus {
  color: #FFFFFF;
  border-bottom-color: #FFFFFF;
  background-color: transparent;
}

.course-learn-iframe {
  height: calc(100vh - 100px);
  border: none;
}

.course-learn-iframe-shrank {
  height: calc(80vh - 100px);
  border: none;
}

.office-hour-vod-btn-wrapper {
  display: flex;
  justify-content: flex-end;
  padding: 12px 20px 0;
}

.office-hour-vod-btn {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  font-size: 14px;
  padding: 10px 18px;
}

.office-hour-vod-page {
  padding: 0;
}

.office-hour-vod-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  background: #fff;
  border-bottom: 1px solid #e0e0e0;
}
.office-hour-vod-header h3 {
  margin: 0;
  font-size: 18px;
  font-weight: 600;
}

.course-assessments-page {
  padding: 20px 24px;
  overflow: hidden;
  max-width: 100%;
  box-sizing: border-box;
  text-align: left;
}

.assessment-page-header {
  padding: 16px 16px 8px;
  border-bottom: none;
  margin-bottom: 0;
  background: #FFFFFF;
}

.assessment-page-title-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
}

.assessment-page-title {
  margin: 0;
  font-weight: 600;
  font-size: 18px;
  color: #000145;
}

.assessment-page-user {
  color: #9CA3AF;
  font-size: 13px;
  white-space: nowrap;
}
.assessment-page-user .fa {
  margin-right: 4px;
}

.assessment-panel {
  background: #FFFFFF;
  border: 1px solid #E8E8F2;
  border-top: none;
  border-radius: 8px;
  margin-bottom: 16px;
  overflow: hidden;
}

.course-assessments-page .h5p-stats-collapsible {
  margin-bottom: 0;
}
.course-assessments-page .h5p-stats-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 16px;
  background: #F9FAFB;
  border: 1px solid #E5E7EB;
  border-bottom: none;
  border-radius: 8px 8px 0 0;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.course-assessments-page .h5p-stats-toggle:hover {
  background: #F3F4F6;
}
.course-assessments-page .h5p-stats-toggle-label {
  font-size: 12px;
  font-weight: 600;
  color: #6B7280;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.course-assessments-page .h5p-stats-toggle-label i {
  margin-right: 6px;
  color: #9CA3AF;
}
.course-assessments-page .h5p-stats-toggle-icon {
  font-size: 11px;
  color: #9CA3AF;
  transition: transform 0.2s ease;
}
.course-assessments-page .h5p-stats-collapsible.collapsed .h5p-stats-toggle-icon {
  transform: rotate(-90deg);
}
.course-assessments-page .h5p-stats-collapsible.collapsed .h5p-stats-body {
  display: none;
}
.course-assessments-page .h5p-stats-collapsible.collapsed .h5p-stats-toggle {
  border-radius: 8px;
}
.course-assessments-page .h5p-stats-body {
  border-left: 1px solid #E5E7EB;
  border-right: 1px solid #E5E7EB;
  border-bottom: 1px solid #E5E7EB;
  border-radius: 0 0 8px 8px;
  padding: 0;
}
.course-assessments-page .h5p-stats-row {
  display: flex;
  flex-wrap: nowrap;
  gap: 0;
  margin-bottom: 0;
  overflow: hidden;
}
.course-assessments-page .h5p-stats-row.h5p-stats-compact > .beanstalk-stat-card-compact {
  flex: 1 1 0;
  min-width: 0;
  border-radius: 0;
  border: none;
  border-right: 1px solid #E5E7EB;
  max-width: none;
}
.course-assessments-page .h5p-stats-row.h5p-stats-compact > .beanstalk-stat-card-compact:last-child {
  border-right: none;
}

.assessment-table th {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}
.assessment-table td {
  vertical-align: middle;
}

.assessment-table .assessment-col-action {
  width: 140px;
  text-align: center;
}
.assessment-table .assessment-col-status {
  width: 160px;
  text-align: center;
  white-space: nowrap;
}
.assessment-table .assessment-col-score {
  width: 150px;
  text-align: center;
  white-space: nowrap;
}
.assessment-table .assessment-col-name {
  text-align: left;
}

.assessment-td-name {
  font-weight: 600;
  font-size: 13px;
  text-align: left;
}

.assessment-td-muted {
  color: #9CA3AF;
  font-size: 13px;
}

.assessment-row-completed td {
  color: #6B7280;
}

.assessment-row-cluster-header {
  background: #F3F4F6;
}
.assessment-row-cluster-header td {
  color: #000145;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.02em;
  padding: 8px 12px;
  text-transform: uppercase;
}
.assessment-row-cluster-header td .fa {
  color: #6B7280;
  margin-right: 6px;
}
.assessment-row-cluster-header:hover {
  background: #F3F4F6 !important;
}

.assessment-row-summative {
  background: #FEFCE8;
  box-shadow: inset 4px 0 0 #0096CB;
}
.assessment-row-summative:hover {
  background: #FEF9C3 !important;
}
.assessment-row-summative td {
  font-weight: 600;
  font-size: 14px;
}

.assessment-td-summative-label {
  color: #000145;
  font-size: 15px !important;
  letter-spacing: 0.3px;
}
.assessment-td-summative-label .fa-star {
  color: #F59E0B;
  margin-right: 6px;
  font-size: 13px;
}

.assessment-play-btn {
  font-size: 12px;
  padding: 5px 12px;
  border-radius: 8px;
  white-space: nowrap;
}
.assessment-play-btn .fa-play,
.assessment-play-btn .fa-refresh {
  margin-left: 4px;
  font-size: 10px;
}

.assessment-retake-btn {
  background: #DC2626;
  color: #FFFFFF;
  border: none;
}
.assessment-retake-btn:hover, .assessment-retake-btn:focus {
  background: #B91C1C;
  color: #FFFFFF;
}

@media (max-width: 767px) {
  .course-assessments-page {
    padding: 0 10px 30px;
  }
  .assessment-page-title-row {
    flex-direction: column;
    gap: 4px;
  }
  .assessment-page-title {
    font-size: 16px;
  }
  .h5p-stats-row {
    flex-wrap: wrap;
  }
  .h5p-stats-row.h5p-stats-compact > .beanstalk-stat-card-compact {
    flex: 1 1 30%;
    border-bottom: 1px solid #E5E7EB;
  }
  .assessment-col-action {
    width: 70px;
  }
  .assessment-col-status {
    width: 40px;
  }
  .assessment-col-status .beanstalk-status-badge {
    padding: 2px;
    font-size: 0;
  }
  .assessment-col-status .beanstalk-status-badge .fa {
    font-size: 16px;
  }
  .assessment-play-btn {
    padding: 4px 8px;
    font-size: 11px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .assessment-table tbody tr {
    transition: none;
  }
}
.my-courses-scroll {
  height: 90vh;
  overflow-x: hidden;
  overflow-y: auto;
}

.my-courses-card-col {
  padding-bottom: 16px;
}

.my-courses-card {
  border-radius: 24px;
  overflow: hidden;
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.my-courses-card:hover {
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12);
  transform: translateY(-2px);
}
.my-courses-card .beanstalk-panel {
  border-radius: 24px;
  overflow: hidden;
}

.course-card-image {
  display: inline-block;
  height: 200px;
  width: 100%;
  max-width: 300px;
  background-size: cover;
  background-clip: content-box;
  border-radius: 16px;
  background-position: center;
  background-repeat: no-repeat;
}

.course-card-no-image {
  display: inline-block;
  height: 200px;
  width: 100%;
  max-width: 300px;
  border-radius: 16px;
  background-color: #F0F0F5;
  line-height: 200px;
  color: #999;
  font-size: 13px;
}

.course-card-name {
  font-size: 15px;
  font-weight: 600;
  color: #000145;
  padding: 8px 12px 4px;
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.course-card-indicators {
  padding: 4px 12px 8px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}

.course-card-days {
  font-size: 12px;
  font-weight: 600;
  padding: 2px 10px;
  border-radius: 12px;
  display: inline-block;
}
.course-card-days.days-imminent {
  background-color: #FEE2E2;
  color: #DC2626;
}
.course-card-days.days-soon {
  background-color: #FEF3C7;
  color: #D97706;
}
.course-card-days.days-past {
  background-color: #E0F2FE;
  color: #0284C7;
}
.course-card-days.days-default {
  background-color: #F0F0F5;
  color: #64748B;
}

.course-card-assessments {
  font-size: 12px;
  color: #64748B;
}
.course-card-assessments .assessments-count {
  font-weight: 600;
}
.course-card-assessments.assessments-complete {
  color: #14A769;
}
.course-card-assessments.assessments-complete .assessments-count {
  color: #14A769;
}

.course-card-action {
  padding: 4px 12px 16px;
}

.my-courses-search-form .my-courses-search-input {
  border-radius: 20px 0 0 20px;
  border-right: none;
  height: 40px;
  font-size: 14px;
}
.my-courses-search-form .my-courses-search-input:focus {
  border-color: #0096CB;
  box-shadow: 0 0 0 2px rgba(0, 150, 203, 0.2);
}
.my-courses-search-form .my-courses-search-btn {
  border-radius: 0 20px 20px 0;
  height: 40px;
  min-width: 44px;
  border-color: #ccc;
}
.my-courses-search-form .my-courses-search-btn:hover {
  background-color: #0096CB;
  border-color: #0096CB;
  color: #fff;
}
.my-courses-search-form .input-group-btn .my-courses-search-btn + .my-courses-search-btn {
  border-radius: 0 20px 20px 0;
  margin-left: -1px;
}

.my-courses-pagination {
  display: flex;
  justify-content: center;
}
.my-courses-pagination .pagination {
  margin: 0;
}
.my-courses-pagination .pagination > li > a,
.my-courses-pagination .pagination > li > span {
  color: #0096CB;
  border-radius: 4px;
  margin: 0 2px;
  min-width: 36px;
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.my-courses-pagination .pagination > .active > a,
.my-courses-pagination .pagination > .active > span {
  background-color: #0096CB;
  border-color: #0096CB;
  color: #fff;
}
.my-courses-pagination .pagination > li > a:hover {
  background-color: #E0F2FE;
  border-color: #0096CB;
}

@media (max-width: 991px) {
  .my-courses-card-col {
    width: 50%;
  }
}
@media (max-width: 575px) {
  .my-courses-card-col {
    width: 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .my-courses-card {
    transition: none;
  }
  .my-courses-card:hover {
    transform: none;
  }
}
@keyframes progress-fill {
  from {
    width: 0%;
  }
}
@keyframes deadline-pulse-urgent {
  0%, 100% {
    box-shadow: 0 0 0 2px rgba(220, 38, 38, 0.3), 0 0 8px 0 rgba(220, 38, 38, 0.2);
    border-color: rgba(220, 38, 38, 0.6);
  }
  50% {
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.5), 0 0 12px 4px rgba(220, 38, 38, 0.4);
    border-color: rgb(220, 38, 38);
  }
}
@keyframes deadline-pulse-soon {
  0%, 100% {
    box-shadow: 0 0 0 2px rgba(245, 158, 11, 0.3), 0 0 6px 0 rgba(245, 158, 11, 0.2);
    border-color: rgba(245, 158, 11, 0.5);
  }
  50% {
    box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.5), 0 0 10px 2px rgba(245, 158, 11, 0.4);
    border-color: rgb(245, 158, 11);
  }
}
.progress-cell {
  display: flex;
  align-items: baseline;
  justify-content: center;
  overflow: visible;
  position: relative;
}

.progress-link {
  display: flex;
  align-items: baseline;
  text-decoration: none;
  cursor: pointer;
  padding: 4px 8px;
  border-radius: 4px;
  transition: background-color 0.2s ease;
}
.progress-link:hover {
  background-color: rgba(46, 64, 198, 0.08);
  text-decoration: none;
}
.progress-link:focus {
  outline: 2px solid #0096CB;
  outline-offset: 2px;
}

.progress-bar-container {
  width: 80px;
  height: 6px !important;
  min-height: 6px !important;
  max-height: 6px !important;
  background-color: #e6e6e6;
  border-radius: 3px;
  overflow: visible;
  flex-shrink: 0;
  position: relative;
  border: 2px solid transparent;
  box-sizing: content-box;
}
.progress-bar-container.deadline-urgent {
  animation: deadline-pulse-urgent 1s ease-in-out infinite;
  background-color: #fee2e2;
}
.progress-bar-container.deadline-soon {
  animation: deadline-pulse-soon 1.5s ease-in-out infinite;
  background-color: #fef3c7;
}

.progress-bar-fill {
  height: 100%;
  background-color: #2e40c6;
  border-radius: 3px;
  transition: width 0.3s ease;
  animation: progress-fill 0.8s ease-out;
}
.progress-bar-fill.progress-low {
  background-color: #F59E0B;
}
.progress-bar-fill.progress-none {
  background-color: #e6e6e6;
}
.progress-bar-fill.progress-complete {
  background-color: #14A769;
}

.progress-text {
  font-size: 14px;
  color: #000145;
  width: 40px;
  text-align: right;
  flex-shrink: 0;
  margin-left: 8px;
}
.progress-text.progress-complete {
  color: #14A769;
  font-weight: 600;
  width: auto;
}
.progress-text.progress-complete .fa-check {
  margin-right: 4px;
}

.progress-tooltip {
  position: relative;
}
.progress-tooltip::before {
  content: attr(data-tooltip);
  position: absolute;
  bottom: calc(100% + 6px);
  left: 50%;
  transform: translateX(-50%);
  padding: 6px 10px;
  background-color: #000145;
  color: white;
  font-size: 12px;
  white-space: nowrap;
  border-radius: 4px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
  z-index: 10000;
  pointer-events: none;
}
.progress-tooltip::after {
  content: "";
  position: absolute;
  bottom: calc(100% + 1px);
  left: 50%;
  transform: translateX(-50%);
  border: 5px solid transparent;
  border-top-color: #000145;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
  z-index: 10000;
}
.progress-tooltip:hover::before, .progress-tooltip:hover::after {
  opacity: 1;
  visibility: visible;
}

.progress-empty {
  font-size: 14px;
  color: #999;
  font-style: italic;
}

.course-progress-panel .course-progress-circle-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 12px 0 8px;
}
.course-progress-panel .course-progress-circle {
  position: relative;
  width: 100px;
  height: 100px;
}
.course-progress-panel .course-progress-circle svg {
  transform: rotate(-90deg);
  width: 100px;
  height: 100px;
}
.course-progress-panel .course-progress-circle .circle-bg {
  fill: none;
  stroke: #e6e6e6;
  stroke-width: 10;
}
.course-progress-panel .course-progress-circle .circle-progress {
  fill: none;
  stroke: #2e40c6;
  stroke-width: 10;
  stroke-linecap: round;
  transition: stroke-dashoffset 0.5s ease;
}
.course-progress-panel .course-progress-circle.progress-low .circle-progress {
  stroke: #F59E0B;
}
.course-progress-panel .course-progress-circle.progress-none .circle-progress {
  stroke: #e6e6e6;
}
.course-progress-panel .course-progress-circle.progress-complete .circle-progress {
  stroke: #14A769;
}
.course-progress-panel .course-progress-percentage {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 20px;
  font-weight: bold;
  color: #000145;
}
.course-progress-panel .course-progress-percentage.progress-complete {
  color: #14A769;
  font-size: 28px;
}
.course-progress-panel .course-progress-label {
  margin-top: 4px;
  font-size: 12px;
  color: #666;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.course-progress-panel .course-progress-table {
  width: 100%;
  margin-top: 8px;
  table-layout: fixed;
  font-family: Inter, sans-serif;
  font-size: 14px;
  font-weight: 450;
  line-height: 18px;
  color: #000145;
}
.course-progress-panel .course-progress-table th, .course-progress-panel .course-progress-table td {
  padding: 10px 8px;
  vertical-align: middle;
  text-align: center;
}
.course-progress-panel .course-progress-table th {
  font-weight: 600;
  color: #7F809D;
  background-color: #F8F8F9;
  border-bottom: 1px solid #E8E8F2;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}
.course-progress-panel .course-progress-table td {
  border-bottom: 1px solid #E8E8F2;
  font-size: 14px;
}
.course-progress-panel .course-progress-table th:nth-child(1), .course-progress-panel .course-progress-table td:nth-child(1) {
  width: 30%;
  text-align: left;
}
.course-progress-panel .course-progress-table th:nth-child(2), .course-progress-panel .course-progress-table td:nth-child(2) {
  width: 40%;
}
.course-progress-panel .course-progress-table th:nth-child(3), .course-progress-panel .course-progress-table td:nth-child(3) {
  width: 30%;
}
.course-progress-panel .course-progress-table tr:last-child td {
  border-bottom: none;
}
.course-progress-panel .course-progress-table .course-name {
  font-weight: 500;
  color: #000145;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.course-progress-panel .course-progress-table .days-until {
  font-size: 14px;
  color: #000145;
  white-space: nowrap;
}
.course-progress-panel .course-progress-table .days-until.days-soon {
  color: #F59E0B;
  font-weight: 600;
}
.course-progress-panel .course-progress-table .days-until.days-imminent {
  color: #dc3545;
  font-weight: 600;
}
.course-progress-panel .course-progress-table .days-until.days-past {
  color: #7F809D;
}
.course-progress-panel .no-courses-message {
  text-align: center;
  padding: 16px;
  color: #666;
  font-style: italic;
}

.course-badge-training {
  display: inline-block;
  font-size: 10px;
  font-weight: 600;
  color: #0096CB;
  background-color: rgba(0, 150, 203, 0.1);
  border-radius: 3px;
  padding: 1px 5px;
  margin-left: 4px;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  vertical-align: middle;
}

.days-ongoing {
  color: #0096CB;
  font-style: italic;
}

.non-curriculum-job-label {
  margin-right: 12px;
}

.beanstalk-panel:has(.dashboard-panel) .beanstalk-panel-heading,
.beanstalk-panel:has(.schedule-table) .beanstalk-panel-heading {
  padding-bottom: 8px;
}
.beanstalk-panel:has(.dashboard-panel) .beanstalk-panel-body,
.beanstalk-panel:has(.schedule-table) .beanstalk-panel-body {
  padding-top: 8px;
}
.beanstalk-panel:has(.dashboard-panel) .beanstalk-panel-body > .padding-top-sm,
.beanstalk-panel:has(.schedule-table) .beanstalk-panel-body > .padding-top-sm {
  padding-top: 0;
}

.dashboard-panel {
  overflow-y: auto;
  max-height: 256px;
  min-height: 256px;
}

.user-food-week-edit-text {
  font-size: 18px;
}

.user-food-week-edit-text ol {
  text-align: left;
  font-size: 18px;
}

.food-week ul {
  padding: 0;
  margin: 0;
  clear: both;
  display: table !important;
}

.food-week li {
  list-style-type: none;
  list-style-position: outside;
  float: left;
  display: table-cell;
  vertical-align: middle;
}

.food-week-mobile-ul {
  font-size: 9px !important;
}

.food-week-mobile-major-label {
  width: 15vw !important;
  font-size: 12px;
  font-weight: normal;
}

.food-week input[type=radio]:not(:checked),
.food-week input[type=radio]:checked {
  position: absolute;
  left: -9999%;
}

.food-week input[type=radio] + label {
  cursor: pointer;
  color: black;
  background-color: #f3f3f3;
  width: 100% !important;
  text-align: center;
  vertical-align: middle;
  border-radius: 8px;
  padding: 10px 12px 10px 12px;
  font-size: 10px;
  min-height: 54px;
}

.food-week input[type=radio]:checked + label {
  color: black;
  background-color: lightgreen;
}

span.beanstalk-required {
  color: red;
}

.beanstalk-required:after {
  content: "*";
}

.no-cursor-general {
  cursor: default;
}

.max-width-third {
  max-width: 33.33333333% !important;
}

.beanstalk-shepherd-step {
  z-index: 999;
}

.beanstalk-tooltip .beanstalk-tooltiptext {
  visibility: hidden;
  width: 200px;
  background-color: #000145;
  color: #F8F8F9;
  text-align: center;
  border-radius: 8px;
  padding: 12px 8px 12px 8px;
  font-family: Inter, sans-serif;
  font-weight: 450;
  font-size: 14px;
  line-height: 18px;
  /* Position the tooltip */
  position: absolute;
  margin-left: 8px;
  /* top: 0px; */
  /* left: -10px; */
  z-index: 1;
}

.beanstalk-tooltip:hover .beanstalk-tooltiptext {
  visibility: visible;
}

.beanstalk-tooltop-carrot {
  top: -30px !important;
  clip-path: polygon(50% 100%, 0 0, 100% 0) !important;
  width: 20px !important;
  height: 10px !important;
  left: 62px !important;
}

.beanstalk-user-icon {
  display: inline-block;
  margin-bottom: 0;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  touch-action: manipulation;
  background-image: none;
  border: 1px solid transparent;
  white-space: nowrap;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.428571429;
  border-radius: 4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.beanstalk-user-icon-success {
  color: #fff;
  background-color: #5cb85c;
}

.beanstalk-user-icon-danger {
  color: #fff;
  background-color: #d9534f;
}

.grid-left-menu-tab {
  background-color: #eee;
}

.grid-left-menu-tab:hover {
  background-color: #ddd;
}

.grid-left-menu-tab:first-child {
  /*border-left: 1px solid black;*/
}

.grid-left-menu-tab:last-child {
  border-right: 1px solid black;
}

.grid-left-menu-tab-active {
  background-color: #ccc;
}

.grid-left-menu-tab-active:hover {
  background-color: #bbb;
}

.grid-view-options {
  float: left;
  padding-right: 4px;
}

.grid-view-option {
  display: inline-block;
  padding-left: 2px;
}

.grid-view-name {
  display: block;
}

.grid-view {
  padding-bottom: 0;
  width: 100%;
}

.grid-view:first-child {
  padding-top: 12px;
}

.my-br-grid-table th {
  position: sticky;
  top: -1;
  background-color: #d9edf7;
  color: #31708f;
  outline: 1px solid #ddd;
  border: none;
  outline-offset: -1px;
  box-shadow: 0 2px 2px -1px rgba(0, 0, 0, 0.4);
}

.my-br-grid-table sort-icon {
  font-size: 16px;
  left-margin: 0px;
}

.sort-icon:hover {
  color: black !important;
}

/**
 * Update Badge Styles for H5P Libraries
 * 
 * Displays update availability indicators with animations.
 */
.h5p-badge-update-available {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 8px;
  background: linear-gradient(135deg, #EF4444 0%, #DC2626 100%);
  color: #FFFFFF;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 600;
  animation: pulseUpdate 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
  box-shadow: 0 2px 4px rgba(239, 68, 68, 0.2);
  transition: all 0.2s ease;
}
.h5p-badge-update-available i {
  font-size: 10px;
  animation: bounceUp 1.5s ease-in-out infinite;
}
.h5p-badge-update-available:hover {
  transform: scale(1.05);
  box-shadow: 0 3px 8px rgba(239, 68, 68, 0.3);
  animation: none;
}
.h5p-badge-update-available:hover i {
  animation: none;
}

@keyframes pulseUpdate {
  0%, 100% {
    opacity: 1;
    box-shadow: 0 2px 4px rgba(239, 68, 68, 0.2);
  }
  50% {
    opacity: 0.85;
    box-shadow: 0 2px 8px rgba(239, 68, 68, 0.4), 0 0 0 3px rgba(239, 68, 68, 0.1);
  }
}
@keyframes bounceUp {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-2px);
  }
}
.h5p-stat-card[data-color="#EF4444"] .h5p-stat-value {
  animation: pulseUpdateStat 2s ease-in-out infinite;
}

@keyframes pulseUpdateStat {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05);
  }
}
.beanstalk-h5p-panel-heading {
  background: transparent;
  border-radius: 8px 8px 0 0;
  padding: 14px 20px;
  border-bottom: 1px solid #e5e7eb;
}

.h5p-panel-heading-flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.h5p-breadcrumb-separator {
  margin: 0 10px;
}

.beanstalk-h5p-panel-heading-subtitle {
  color: #6b7280;
  margin: 4px 0 0 0;
  font-size: 13px;
  font-family: Inter, sans-serif;
}

.beanstalk-error-panel-heading {
  background: linear-gradient(180deg, #ef4444, #dc2626);
  border-radius: 0;
  padding: 25px 30px;
}

.beanstalk-error-panel-heading-text {
  color: white;
  margin: 0;
  font-size: 28px;
  font-family: Inter, sans-serif;
  font-weight: 600;
}

.beanstalk-error-panel-heading-subtitle {
  color: rgba(255, 255, 255, 0.95);
  margin: 0;
  font-size: 15px;
}

/**
 * Beanstalk Header Button
 * 
 * Translucent button/link for use in panel headers with gradient backgrounds.
 * Used with the <x-beanstalk-header-button> Blade component.
 */
.beanstalk-header-btn {
  padding: 8px 16px;
  border-radius: 6px;
  text-decoration: none;
  font-weight: 600;
  font-size: 13px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}
.beanstalk-header-btn:hover {
  text-decoration: none;
}
.beanstalk-header-btn--ghost {
  background: rgba(255, 255, 255, 0.2);
  border: 1px solid rgba(255, 255, 255, 0.5);
  color: white;
}
.beanstalk-header-btn--ghost:hover {
  background: rgba(255, 255, 255, 0.3);
  color: white;
}
.beanstalk-header-btn--ghost:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.4);
}
.beanstalk-header-btn--solid {
  background: white;
  border: 1px solid rgba(255, 255, 255, 0.8);
  color: #000145;
}
.beanstalk-header-btn--solid:hover {
  background: rgba(255, 255, 255, 0.9);
  color: #000145;
}

/**
 * Beanstalk Action Button
 * 
 * Outline-style button for use in tables and content areas.
 * Color variants for different semantic meanings.
 */
.beanstalk-action-btn {
  padding: 8px 16px;
  border-radius: 6px;
  text-decoration: none;
  font-size: 13px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: white;
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}
.beanstalk-action-btn:hover {
  text-decoration: none;
}
.beanstalk-action-btn--primary {
  border: 1px solid #0096CB;
  color: #0096CB;
}
.beanstalk-action-btn--primary:hover {
  background: #F0F9FC;
  color: #0096CB;
}
.beanstalk-action-btn--success {
  border: 1px solid #14A769;
  color: #14A769;
}
.beanstalk-action-btn--success:hover {
  background: #ECFDF5;
  color: #14A769;
}
.beanstalk-action-btn--neutral {
  border: 1px solid #E8E8F2;
  color: #000145;
}
.beanstalk-action-btn--neutral:hover {
  background: #F8F8F9;
  color: #000145;
}
.beanstalk-action-btn--warning {
  border: 1px solid #F59E0B;
  color: #D97706;
}
.beanstalk-action-btn--warning:hover {
  background: #FFFBEB;
  color: #D97706;
}
.beanstalk-action-btn--filled-warning {
  background: #F59E0B;
  border: 1px solid #F59E0B;
  color: white;
  font-weight: 600;
}
.beanstalk-action-btn--filled-warning i, .beanstalk-action-btn--filled-warning .fa {
  color: white;
}
.beanstalk-action-btn--filled-warning:hover {
  background: #D97706;
  border-color: #D97706;
  color: white;
}
.beanstalk-action-btn--danger {
  border: 1px solid #EF4444;
  color: #DC2626;
}
.beanstalk-action-btn--danger:hover {
  background: #FEF2F2;
  color: #DC2626;
}
.beanstalk-action-btn--purple {
  border: 1px solid #8B5CF6;
  color: #8B5CF6;
}
.beanstalk-action-btn--purple:hover {
  background: #F5F3FF;
  color: #8B5CF6;
}
.beanstalk-action-btn--filled-primary {
  background: #0096CB;
  border: 1px solid #0096CB;
  color: white;
  font-weight: 600;
}
.beanstalk-action-btn--filled-primary i, .beanstalk-action-btn--filled-primary .fa {
  color: white;
}
.beanstalk-action-btn--filled-primary:hover {
  background: #0087B6;
  border-color: #0087B6;
  color: white;
}
.beanstalk-action-btn--filled-danger {
  background: #DC2626;
  border: 1px solid #DC2626;
  color: white;
  font-weight: 600;
}
.beanstalk-action-btn--filled-danger i, .beanstalk-action-btn--filled-danger .fa {
  color: white;
}
.beanstalk-action-btn--filled-danger:hover {
  background: #B91C1C;
  border-color: #B91C1C;
  color: white;
}
.beanstalk-action-btn--filled-success {
  background: #14A769;
  border: 1px solid #14A769;
  color: white;
  font-weight: 600;
}
.beanstalk-action-btn--filled-success i, .beanstalk-action-btn--filled-success .fa {
  color: white;
}
.beanstalk-action-btn--filled-success:hover {
  background: #0F8F5A;
  border-color: #0F8F5A;
  color: white;
}
.beanstalk-action-btn--sm {
  padding: 4px 10px;
  font-size: 12px;
  gap: 4px;
}
.beanstalk-action-btn--lg {
  padding: 12px 20px;
  font-size: 14px;
  gap: 8px;
}

/**
 * Action button container for grouping buttons
 */
.beanstalk-action-buttons {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: center;
}

/**
 * Beanstalk Tag Link
 * 
 * Small clickable pill/tag for linking to related resources.
 * Used in content detail pages to show course/cluster/module associations.
 */
.beanstalk-tag-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  text-decoration: none;
  font-weight: 500;
  border-radius: 4px;
  transition: opacity 0.15s ease, transform 0.15s ease;
}
.beanstalk-tag-link:hover {
  text-decoration: none;
  opacity: 0.9;
  transform: translateY(-1px);
}
.beanstalk-tag-link:active {
  transform: translateY(0);
}
.beanstalk-tag-link--sm {
  padding: 4px 10px;
  font-size: 11px;
}
.beanstalk-tag-link--sm i {
  font-size: 10px;
}
.beanstalk-tag-link--md {
  padding: 6px 12px;
  font-size: 12px;
}
.beanstalk-tag-link--md i {
  font-size: 11px;
}
.beanstalk-tag-link--primary {
  background: #0096CB;
  color: white;
}
.beanstalk-tag-link--primary:hover {
  color: white;
}
.beanstalk-tag-link--success {
  background: #14A769;
  color: white;
}
.beanstalk-tag-link--success:hover {
  color: white;
}
.beanstalk-tag-link--info {
  background: #06B6D4;
  color: white;
}
.beanstalk-tag-link--info:hover {
  color: white;
}
.beanstalk-tag-link--warning {
  background: #F59E0B;
  color: white;
}
.beanstalk-tag-link--warning:hover {
  color: white;
}
.beanstalk-tag-link--purple {
  background: #8B5CF6;
  color: white;
}
.beanstalk-tag-link--purple:hover {
  color: white;
}
.beanstalk-tag-link--neutral {
  background: #6B7280;
  color: white;
}
.beanstalk-tag-link--neutral:hover {
  color: white;
}
.beanstalk-tag-link--outline-primary {
  background: white;
  border: 1px solid #0096CB;
  color: #0096CB;
}
.beanstalk-tag-link--outline-primary:hover {
  background: #F0F9FC;
  color: #0096CB;
}
.beanstalk-tag-link--outline-purple {
  background: white;
  border: 1px solid #6366F1;
  color: #6366F1;
}
.beanstalk-tag-link--outline-purple:hover {
  background: #F5F3FF;
  color: #6366F1;
}
.beanstalk-tag-link--outline-neutral {
  background: white;
  border: 1px solid #E8E8F2;
  color: #000145;
}
.beanstalk-tag-link--outline-neutral:hover {
  background: #F8F8F9;
  color: #000145;
}

/**
 * Tag container for grouping multiple tags
 */
.beanstalk-tag-container {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.h5p-loading-container {
  text-align: center;
  padding: 40px;
}

.h5p-loading-message {
  margin-top: 10px;
  color: #9CA3AF;
}

.h5p-content-creator {
  max-width: 100%;
  margin: 0 auto;
}
.h5p-content-creator .step-indicator {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 30px;
  padding: 20px;
  background: #F8F8F9;
  border-radius: 8px;
  border: 1px solid #E8E8F2;
}
.h5p-content-creator .step {
  display: flex;
  align-items: center;
  color: #9CA3AF;
  font-weight: 500;
  font-size: 14px;
}
.h5p-content-creator .step.active {
  color: #0096CB;
}
.h5p-content-creator .step.active .step-number {
  background: #0096CB;
  color: white;
  border-color: #0096CB;
  box-shadow: 0 0 0 4px rgba(0, 150, 203, 0.15);
}
.h5p-content-creator .step.completed {
  color: #14A769;
}
.h5p-content-creator .step.completed .step-number {
  background: #14A769;
  color: white;
  border-color: #14A769;
}
.h5p-content-creator .step-number {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #E8E8F2;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  margin-right: 10px;
  font-size: 14px;
  border: 2px solid transparent;
}
.h5p-content-creator .step-connector {
  width: 80px;
  height: 2px;
  background: #E8E8F2;
  margin: 0 16px;
}
.h5p-content-creator .beanstalk-panel {
  border-radius: 8px;
  border: 1px solid #E8E8F2;
  background: #FFFFFF;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}
.h5p-content-creator .beanstalk-panel-heading {
  background: #F8F8F9;
  color: #000145;
  border-radius: 8px 8px 0 0;
  border-bottom: 1px solid #E8E8F2;
  padding: 16px 24px;
}
.h5p-content-creator .beanstalk-panel-heading .panel-title {
  color: #000145;
  font-weight: 600;
  font-size: 16px;
  margin: 0;
}
.h5p-content-creator .beanstalk-panel-heading .panel-title i {
  color: #0096CB;
  margin-right: 8px;
}
.h5p-content-creator .panel-body {
  padding: 24px;
}
.h5p-content-creator .form-group {
  margin-bottom: 20px;
}
.h5p-content-creator .form-group label {
  color: #000145;
  font-weight: 600;
  margin-bottom: 8px;
  display: block;
  font-size: 14px;
}
.h5p-content-creator .form-control {
  height: 44px;
  border-radius: 8px;
  border: 1px solid #E8E8F2;
  padding: 10px 14px;
  font-size: 14px;
  color: #000145;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.h5p-content-creator .form-control:focus {
  border-color: #0096CB;
  box-shadow: 0 0 0 3px rgba(0, 150, 203, 0.1);
  outline: none;
}
.h5p-content-creator textarea.form-control {
  height: auto;
  min-height: 100px;
  resize: vertical;
}
.h5p-content-creator select.form-control {
  cursor: pointer;
  background: #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%239CA3AF' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e") right 12px center/16px 16px no-repeat;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding-right: 40px;
}
.h5p-content-creator .step-actions {
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid #E8E8F2;
}
.h5p-content-creator .step-actions-split {
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid #E8E8F2;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.h5p-content-creator .btn-large {
  padding: 14px 32px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
}
.h5p-content-creator .btn-back {
  padding: 12px 24px !important;
  background: #F8F8F9 !important;
  border: 1px solid #E8E8F2 !important;
  color: #000145 !important;
}
.h5p-content-creator .btn-back:hover {
  background: #E8E8F2 !important;
}
.h5p-content-creator .instruction-box {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 20px;
  background: linear-gradient(135deg, #E3F2FD 0%, #F3E5F5 100%);
  border-radius: 8px;
  border-left: 4px solid #0096CB;
  margin-bottom: 24px;
  color: #000145;
  font-weight: 500;
}
.h5p-content-creator .instruction-box i {
  font-size: 20px;
  color: #0096CB;
}
.h5p-content-creator .info-box {
  display: flex;
  gap: 16px;
  padding: 20px;
  background: linear-gradient(135deg, #E3F2FD 0%, #E8F5E9 100%);
  border-radius: 8px;
  border-left: 4px solid #14A769;
  margin-bottom: 24px;
}
.h5p-content-creator .info-box-icon {
  font-size: 24px;
  color: #14A769;
}
.h5p-content-creator .info-box-content {
  flex: 1;
}
.h5p-content-creator .info-box-content strong {
  color: #000145;
  display: block;
  margin-bottom: 6px;
}
.h5p-content-creator .info-box-content p {
  margin: 0;
  color: #6B7280;
  font-size: 14px;
  line-height: 1.5;
}
.h5p-content-creator .hint-box {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  background: #F8F8F9;
  border-radius: 6px;
  font-size: 13px;
  color: #6B7280;
  margin-top: 8px;
}
.h5p-content-creator .hint-box i {
  color: #0096CB;
}
.h5p-content-creator .instruction-text {
  margin-bottom: 20px;
}
.h5p-content-creator .content-type-cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 20px;
  margin-bottom: 30px;
}
.h5p-content-creator .content-type-card {
  border: 2px solid #E8E8F2;
  border-radius: 12px;
  padding: 24px;
  text-align: center;
  cursor: pointer;
  transition: all 0.2s ease;
  background: #fff;
}
.h5p-content-creator .content-type-card:hover:not(.coming-soon) {
  border-color: #0096CB;
  box-shadow: 0 4px 12px rgba(0, 150, 203, 0.15);
  transform: translateY(-2px);
}
.h5p-content-creator .content-type-card.selected {
  border-color: #0096CB;
  background: #f0f9fc;
}
.h5p-content-creator .content-type-card.coming-soon {
  opacity: 0.6;
  cursor: not-allowed;
}
.h5p-content-creator .content-type-card.coming-soon .content-type-icon {
  color: #9CA3AF;
}
.h5p-content-creator .content-type-card.upload-only {
  opacity: 0.85;
  cursor: pointer;
  border-color: #FDE68A;
  background: #FFFBEB;
}
.h5p-content-creator .content-type-card.upload-only:hover {
  border-color: #F59E0B;
  box-shadow: 0 4px 12px rgba(245, 158, 11, 0.15);
  transform: translateY(-2px);
}
.h5p-content-creator .content-type-card.upload-only .content-type-icon {
  color: #F59E0B;
}
.h5p-content-creator .content-type-icon {
  font-size: 48px;
  margin-bottom: 12px;
  color: #0096CB;
}
.h5p-content-creator .content-type-title {
  font-weight: 600;
  color: #000145;
  margin-bottom: 8px;
}
.h5p-content-creator .content-type-description {
  font-size: 13px;
  color: #6B7280;
}
.h5p-content-creator .coming-soon-badge {
  display: inline-block;
  background: #9CA3AF;
  color: white;
  font-size: 10px;
  padding: 2px 8px;
  border-radius: 10px;
  margin-top: 8px;
}
.h5p-content-creator .upload-only-badge {
  display: inline-block;
  background: #F59E0B;
  color: white;
  font-size: 10px;
  padding: 2px 8px;
  border-radius: 10px;
  margin-top: 8px;
}
.h5p-content-creator .upload-only-badge i {
  margin-right: 3px;
}
.h5p-content-creator .installed-badge {
  display: inline-block;
  background: #14A769;
  color: white;
  font-size: 10px;
  padding: 2px 8px;
  border-radius: 10px;
  margin-top: 8px;
  margin-right: 4px;
}
.h5p-content-creator .loading-state {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 40px;
  color: #6B7280;
  font-size: 14px;
}
.h5p-content-creator .loading-state .spinner {
  width: 24px;
  height: 24px;
  border: 3px solid #E8E8F2;
  border-top-color: #0096CB;
  border-radius: 50%;
  animation: spin 1s linear infinite;
  margin-right: 12px;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
.h5p-content-creator .question-card {
  border: 1px solid #E8E8F2;
  border-radius: 12px;
  padding: 24px;
  margin-bottom: 20px;
  background: #FFFFFF;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}
.h5p-content-creator .question-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid #E8E8F2;
}
.h5p-content-creator .question-header strong {
  color: #000145;
  font-size: 15px;
  font-weight: 600;
}
.h5p-content-creator .answer-options {
  margin-bottom: 12px;
}
.h5p-content-creator .answer-option {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
  padding: 8px 12px;
  background: #F8F8F9;
  border-radius: 8px;
}
.h5p-content-creator .answer-option input[type=radio] {
  width: 18px;
  height: 18px;
  accent-color: #14A769;
}
.h5p-content-creator .answer-option input[type=text] {
  flex: 1;
}
.h5p-content-creator .radio-group {
  display: flex;
  gap: 32px;
  padding: 12px 16px;
  background: #F8F8F9;
  border-radius: 8px;
}
.h5p-content-creator .radio-group label {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  font-weight: 500;
  color: #000145;
}
.h5p-content-creator .radio-group input[type=radio] {
  width: 18px;
  height: 18px;
  accent-color: #14A769;
}
.h5p-content-creator .btn-add-option {
  background: #FFFFFF;
  border: 2px dashed #0096CB;
  color: #0096CB;
  padding: 12px 20px;
  border-radius: 8px;
  cursor: pointer;
  font-weight: 600;
  transition: all 0.2s ease;
}
.h5p-content-creator .btn-add-option:hover {
  background: #f0f9fc;
  border-style: solid;
}
.h5p-content-creator .btn-add-option.full-width {
  width: 100%;
  padding: 18px;
  font-size: 15px;
}
.h5p-content-creator .btn-add-option.small {
  padding: 8px 16px;
  font-size: 13px;
}
.h5p-content-creator .btn-remove {
  background: none;
  border: 1px solid #EF4444;
  color: #EF4444;
  cursor: pointer;
  padding: 6px 12px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 500;
  transition: all 0.2s ease;
}
.h5p-content-creator .btn-remove:hover {
  background: #FEF2F2;
}
.h5p-content-creator .btn-remove.full-width {
  width: 100%;
  margin-top: 8px;
}
.h5p-content-creator .btn-remove-inline {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  background: #FEF2F2;
  border: 1px solid #FECACA;
  color: #EF4444;
  cursor: pointer;
  border-radius: 8px;
  font-size: 14px;
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.h5p-content-creator .btn-remove-inline:hover {
  background: #FEE2E2;
  border-color: #EF4444;
}
.h5p-content-creator .answer-input-correct {
  position: relative;
}
.h5p-content-creator .answer-input-correct input {
  border-left: 4px solid #14A769;
  background: #F0FDF4;
}
.h5p-content-creator .answer-input-correct input:focus {
  background: #fff;
}
.h5p-content-creator .answer-input-wrong {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}
.h5p-content-creator .answer-input-wrong input {
  flex: 1;
  border-left: 4px solid #EF4444;
  background: #FEF2F2;
}
.h5p-content-creator .answer-input-wrong input:focus {
  background: #fff;
}
.h5p-content-creator .text-success {
  color: #14A769;
}
.h5p-content-creator .text-danger {
  color: #EF4444;
}
.h5p-content-creator .hint-text {
  font-size: 12px;
}
.h5p-content-creator .flashcard-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 20px;
  margin-bottom: 20px;
}
.h5p-content-creator .flashcard-item {
  border: 1px solid #E8E8F2;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.h5p-content-creator .flashcard-front,
.h5p-content-creator .flashcard-back {
  padding: 20px;
}
.h5p-content-creator .flashcard-front {
  background: linear-gradient(135deg, #0096CB 0%, #0087B6 100%);
  color: white;
}
.h5p-content-creator .flashcard-front label {
  color: white;
  opacity: 0.9;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.h5p-content-creator .flashcard-front input,
.h5p-content-creator .flashcard-front textarea {
  background: rgba(255, 255, 255, 0.95);
  border: none;
}
.h5p-content-creator .flashcard-back {
  background: #F8F8F9;
}
.h5p-content-creator .flashcard-back label {
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #6B7280;
}
.h5p-content-creator .flashcard-back .form-group {
  margin-bottom: 12px;
}
.h5p-content-creator .flashcard-add-btn {
  margin-top: 20px;
}
.h5p-content-creator .visual-text-editor {
  border: 2px solid #E8E8F2;
  border-radius: 8px;
  overflow: hidden;
  transition: border-color 0.2s ease;
}
.h5p-content-creator .visual-text-editor:focus-within {
  border-color: #0096CB;
}
.h5p-content-creator .visual-text-editor .markable-textarea {
  border: none;
  border-radius: 0;
  resize: vertical;
  min-height: 80px;
}
.h5p-content-creator .visual-text-editor .markable-textarea:focus {
  box-shadow: none;
}
.h5p-content-creator .text-editor-toolbar {
  display: flex;
  gap: 8px;
  padding: 10px 12px;
  background: #F8F8F9;
  border-top: 1px solid #E8E8F2;
}
.h5p-content-creator .btn-mark-word {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  background: linear-gradient(135deg, #8B5CF6 0%, #7C3AED 100%);
  color: white;
  border: none;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.h5p-content-creator .btn-mark-word:hover:not(:disabled) {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(139, 92, 246, 0.3);
}
.h5p-content-creator .btn-mark-word:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  transform: none;
}
.h5p-content-creator .btn-mark-word i {
  font-size: 14px;
}
.h5p-content-creator .btn-mark-correct {
  background: linear-gradient(135deg, #14A769 0%, #059669 100%);
}
.h5p-content-creator .btn-mark-correct:hover:not(:disabled) {
  box-shadow: 0 4px 12px rgba(20, 167, 105, 0.3);
}
.h5p-content-creator .btn-mark-draggable {
  background: linear-gradient(135deg, #0096CB 0%, #0284C7 100%);
}
.h5p-content-creator .btn-mark-draggable:hover:not(:disabled) {
  box-shadow: 0 4px 12px rgba(0, 150, 203, 0.3);
}
.h5p-content-creator .btn-clear-marks {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  background: #fff;
  color: #6B7280;
  border: 1px solid #E8E8F2;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
}
.h5p-content-creator .btn-clear-marks:hover {
  background: #F8F8F9;
  color: #EF4444;
  border-color: #FCA5A5;
}
.h5p-content-creator .marked-preview {
  margin-top: 16px;
  padding: 16px;
  background: #FFFBEB;
  border: 1px solid #FDE68A;
  border-radius: 8px;
}
.h5p-content-creator .marked-preview label {
  display: flex;
  align-items: center;
  gap: 6px;
  color: #92400E;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 10px;
}
.h5p-content-creator .marked-preview label i {
  font-size: 14px;
}
.h5p-content-creator .marked-preview .preview-content {
  font-size: 15px;
  line-height: 1.8;
  color: #000145;
}
.h5p-content-creator .marked-preview .preview-blank {
  display: inline-block;
  padding: 2px 12px;
  background: #FEF3C7;
  border-bottom: 2px solid #F59E0B;
  color: #92400E;
  font-family: monospace;
  border-radius: 4px;
}
.h5p-content-creator .marked-preview .preview-marked-word {
  display: inline-block;
  padding: 2px 8px;
  background: #D1FAE5;
  color: #065F46;
  border-radius: 4px;
  font-weight: 600;
  border: 1px solid #6EE7B7;
}
.h5p-content-creator .marked-preview .preview-draggable {
  display: inline-block;
  padding: 4px 12px;
  background: #DBEAFE;
  color: #1E40AF;
  border-radius: 6px;
  border: 2px dashed #60A5FA;
  font-weight: 600;
  cursor: grab;
}
.h5p-content-creator .visual-helper-info {
  background: linear-gradient(135deg, #EDE9FE 0%, #FCE7F3 100%);
  border-left-color: #8B5CF6;
}
.h5p-content-creator .visual-helper-info .info-box-icon {
  color: #8B5CF6;
}
.h5p-content-creator .word-list-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 12px;
  margin-bottom: 20px;
}
.h5p-content-creator .word-item {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
}
.h5p-content-creator .word-item input {
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 600;
  text-align: center;
}
.h5p-content-creator .btn-remove-word {
  position: absolute;
  right: -8px;
  top: -8px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #EF4444;
  color: white;
  border: 2px solid white;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  transition: transform 0.2s ease;
}
.h5p-content-creator .btn-remove-word:hover {
  transform: scale(1.1);
}
.h5p-content-creator .word-count-info {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  background: #F0FDF4;
  border: 1px solid #BBF7D0;
  border-radius: 8px;
  color: #166534;
  font-size: 14px;
  font-weight: 500;
  margin-top: 16px;
  margin-bottom: 16px;
}
.h5p-content-creator .word-count-info i {
  color: #14A769;
}
.h5p-content-creator .accordion-panel-card {
  border-left: 4px solid #0096CB;
}
.h5p-content-creator .keyword-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
  padding: 12px;
  background: #F8F8F9;
  border-radius: 8px;
  border: 1px solid #E8E8F2;
}
.h5p-content-creator .keyword-row .keyword-inputs {
  display: flex;
  flex: 1;
  gap: 10px;
}
.h5p-content-creator .keyword-row .keyword-inputs .form-control {
  flex: 1;
}
.h5p-content-creator .keyword-row .keyword-inputs .form-control.points-input {
  max-width: 80px;
  flex: 0 0 auto;
}
.h5p-content-creator .help-text {
  font-size: 13px;
  color: #6B7280;
  margin-bottom: 12px;
}
.h5p-content-creator .paragraph-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 12px;
  padding: 12px;
  background: #F8F8F9;
  border-radius: 8px;
  border: 1px solid #E8E8F2;
}
.h5p-content-creator .paragraph-item .paragraph-number {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #0096CB;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  font-size: 14px;
  flex-shrink: 0;
}
.h5p-content-creator .paragraph-item textarea {
  flex: 1;
  resize: vertical;
}
.h5p-content-creator .sequence-item {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
  padding: 12px;
  background: #F8F8F9;
  border-radius: 8px;
  border: 1px solid #E8E8F2;
}
.h5p-content-creator .sequence-item .sequence-number {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #8B5CF6;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  font-size: 14px;
  flex-shrink: 0;
}
.h5p-content-creator .sequence-item .sequence-content {
  flex: 1;
}
.h5p-content-creator .beanstalk-button {
  padding: 12px 24px;
  border-radius: 8px;
  font-weight: 600;
  transition: all 0.2s ease;
}
.h5p-content-creator .beanstalk-button-blue {
  padding: 12px 24px;
  border-radius: 8px;
  font-weight: 600;
  transition: all 0.2s ease;
}
.h5p-content-creator .beanstalk-button-blue:hover:not(:disabled) {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 150, 203, 0.3);
}
.h5p-content-creator .beanstalk-button-blue:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}

.ccms-section {
  margin-bottom: 0;
}

.ccms-label {
  color: #000145;
  font-weight: 600;
  margin: 0;
  font-size: 13px;
  white-space: nowrap;
}

.ccms-sticky-header {
  position: sticky;
  top: 0;
  z-index: 10;
  background: #ffffff;
  padding: 6px 10px 0 10px;
}

.ccms-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 4px;
  padding: 2px 0;
}

.ccms-toolbar-summary {
  color: #9ca3af;
  font-size: 12px;
}

.ccms-toolbar-actions {
  display: flex;
  gap: 8px;
}

.ccms-toolbar-btn {
  background: none;
  border: 1px solid #e8e8f2;
  border-radius: 4px;
  padding: 3px 10px;
  font-size: 12px;
  color: #000145;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 5px;
}
.ccms-toolbar-btn:hover {
  background: #f8f8f9;
  border-color: #0096cb;
  color: #0096cb;
}

.ccms-selected-summary {
  background: linear-gradient(135deg, #e0f2fe 0%, #d1fae5 100%);
  border-radius: 4px;
  padding: 6px 10px;
  margin-bottom: 4px;
  border-left: 3px solid #0096cb;
}

.ccms-selected-row {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 3px 0;
}

.ccms-selected-arrow {
  color: #0096cb;
  font-size: 11px;
  flex-shrink: 0;
}

.ccms-selected-name {
  color: #000145;
  font-weight: 600;
  font-size: 13px;
  flex: 1;
}

.ccms-summative-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: #fef3c7;
  color: #92400e;
  font-size: 11px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 10px;
  border: 1px solid #f59e0b;
  white-space: nowrap;
}
.ccms-summative-badge .fa {
  font-size: 10px;
  color: #f59e0b;
}

.ccms-clear-btn {
  background: none;
  border: 1px solid #d1d5db;
  border-radius: 4px;
  padding: 2px 8px;
  cursor: pointer;
  color: #6b7280;
  font-size: 11px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
  margin-top: 4px;
}
.ccms-clear-btn:hover {
  color: #dc2626;
  border-color: #dc2626;
  background: rgba(220, 38, 38, 0.05);
}

.ccms-container {
  background: #f8f8f9;
  border-radius: 4px;
  padding: 10px 12px;
  border: 1px solid #e8e8f2;
  overflow: hidden;
}

.ccms-course-item {
  margin-bottom: 0;
  padding: 8px 0;
  border-bottom: 1px solid #e8e8f2;
}
.ccms-course-item:first-child {
  padding-top: 0;
}
.ccms-course-item:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.ccms-course-header {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 4px;
  flex-wrap: wrap;
}

.ccms-course-label {
  color: #000145;
  font-weight: 600;
  cursor: pointer;
  margin: 0;
  font-size: 13px;
  line-height: 18px;
}

.ccms-toggle-btn {
  background: none;
  border: none;
  padding: 2px 6px;
  cursor: pointer;
  color: #9ca3af;
  font-size: 12px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-left: 4px;
  border-radius: 4px;
}
.ccms-toggle-btn:hover {
  color: #0096cb;
  background: rgba(0, 150, 203, 0.08);
}
.ccms-toggle-btn .fa {
  font-size: 11px;
  transition: transform 0.15s ease;
}

.ccms-module-count {
  font-size: 11px;
  color: #9ca3af;
}

.ccms-summative-toggle {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin: 0;
  margin-left: auto;
  cursor: pointer;
  padding: 2px 8px;
  border-radius: 4px;
  border: 1px solid #e8e8f2;
  background: #fffbeb;
}
.ccms-summative-toggle:hover {
  border-color: #f59e0b;
  background: #fef3c7;
}

.ccms-summative-label {
  font-size: 11px;
  font-weight: 500;
  color: #92400e;
  white-space: nowrap;
}

.ccms-modules-container {
  padding-left: 20px;
}

.ccms-module-item {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 2px;
}

.ccms-module-label {
  color: #9ca3af;
  font-weight: 400;
  cursor: pointer;
  margin: 0;
  font-size: 12px;
  line-height: 14px;
}

.ccms-module-number {
  color: #6b7280;
  font-weight: 600;
}

.ccms-checkbox {
  cursor: pointer;
  flex-shrink: 0;
  margin: 0 !important;
  padding: 0;
  vertical-align: middle;
  position: relative;
  align-self: center;
}

.ccms-checkbox-lg {
  width: 18px;
  height: 18px;
  accent-color: #0096cb;
}

.ccms-checkbox-sm {
  width: 14px;
  height: 14px;
  accent-color: #14a769;
}

.ccms-empty-state {
  text-align: center;
  color: #9ca3af;
  padding: 12px;
}

.ccms-empty-icon {
  font-size: 24px;
  margin-bottom: 6px;
  display: block;
}

/* Contents Index Page */
.h5p-contents-action-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  margin-bottom: 20px;
}

.h5p-contents-filter {
  flex: 1;
  min-width: 250px;
}

.h5p-contents-filter form {
  display: flex;
  gap: 10px;
  align-items: flex-end;
}

.h5p-contents-filter .filter-select {
  flex: 1;
}

.h5p-contents-filter select {
  height: 40px;
  border-radius: 6px;
  border: 1px solid #E8E8F2;
  padding: 0 12px;
  width: 100%;
}

.h5p-contents-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: flex-end;
  justify-content: flex-end;
}

.h5p-contents-actions .beanstalk-button,
.h5p-contents-actions .beanstalk-button-blue {
  padding: 10px 16px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  text-decoration: none;
  white-space: nowrap;
}

/* Table wrapper */
.h5p-table-wrapper {
  border: none;
  border-radius: 0;
  overflow-x: auto;
  max-width: 100%;
}

.h5p-table-wrapper table {
  width: 100%;
  border-collapse: collapse;
  min-width: 600px;
}

.h5p-table-wrapper thead tr {
  background: #F8F8F9;
}

.h5p-table-wrapper th {
  padding: 14px 12px;
  border-bottom: 2px solid #E8E8F2;
  color: #000145;
  font-weight: 600;
  font-size: 13px;
  text-align: left;
}

.h5p-table-wrapper td {
  padding: 12px;
  border-bottom: 1px solid #E8E8F2;
  font-size: 13px;
  color: #000145;
}

.h5p-table-wrapper tbody tr:hover {
  background: #F8F8F9;
}

.h5p-table-wrapper .action-buttons {
  display: flex;
  gap: 4px;
  flex-wrap: nowrap;
  justify-content: center;
}

.h5p-table-wrapper .action-buttons .beanstalk-button,
.h5p-table-wrapper .action-buttons .beanstalk-button-blue {
  padding: 6px 10px;
  font-size: 11px;
  border-radius: 5px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

/* Contents Show Page */
.h5p-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: center;
  padding: 15px 0;
}

/* Compact table */
.h5p-compact-table th,
.h5p-compact-table td {
  padding: 10px 12px !important;
  font-size: 13px;
}

.h5p-compact-table th {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

/* Cluster scroll container - disabled, scrolling handled by .ccms-container */
.cluster-scroll-container {
  overflow: visible;
  max-height: none;
}

/* Responsive - Tablet */
@media (max-width: 991px) {
  .h5p-contents-page .panel {
    margin: 0 10px;
  }
  .h5p-contents-page .panel-body {
    padding: 16px;
  }
  .h5p-contents-action-bar {
    flex-direction: column;
    gap: 12px;
  }
  .h5p-contents-filter {
    min-width: 100%;
  }
  .h5p-contents-actions {
    width: 100%;
    justify-content: flex-start;
  }
}
/* Responsive - Mobile */
@media (max-width: 768px) {
  .h5p-stats-row {
    gap: 10px;
  }
  .h5p-actions {
    flex-direction: column;
    gap: 8px;
  }
  .h5p-actions a,
  .h5p-actions button,
  .h5p-actions form {
    width: 100%;
  }
  .h5p-actions a,
  .h5p-actions button {
    justify-content: center;
  }
}
@media (max-width: 767px) {
  .h5p-contents-page .panel {
    margin: 0 5px;
  }
  .h5p-contents-page .panel-body {
    padding: 12px;
  }
  .h5p-contents-filter form {
    flex-direction: column;
    gap: 8px;
  }
  .h5p-contents-filter select {
    height: 38px;
  }
  .h5p-contents-filter button {
    width: 100%;
  }
  .h5p-contents-actions {
    flex-wrap: wrap;
  }
  .h5p-contents-actions .beanstalk-button,
  .h5p-contents-actions .beanstalk-button-blue {
    padding: 8px 12px;
    font-size: 12px;
    flex: 1 1 auto;
    justify-content: center;
  }
  .h5p-contents-actions .beanstalk-button span.btn-text,
  .h5p-contents-actions .beanstalk-button-blue span.btn-text {
    display: none;
  }
  .h5p-table-wrapper th,
  .h5p-table-wrapper td {
    padding: 10px 8px !important;
    font-size: 12px;
  }
  .h5p-empty-state {
    padding: 30px 15px;
  }
  .h5p-empty-state i {
    font-size: 40px;
  }
}
/* Danger Zone Styles */
.h5p-danger-zone-initial {
  padding: 20px;
  background-color: #fff3cd;
  border: 2px solid #ffc107;
  border-radius: 8px;
  margin-bottom: 20px;
}

.h5p-danger-zone-reveal-label {
  display: flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  margin: 0;
  font-weight: 600;
  color: #856404;
  font-size: 15px;
}

.h5p-danger-zone-reveal-text {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.h5p-danger-zone-content {
  padding: 20px;
  background-color: #f8d7da;
  border: 2px solid #dc3545;
  border-radius: 8px;
}
.h5p-danger-zone-content.h5p-hidden {
  display: none;
}

.h5p-danger-zone-text .h5p-text-danger-emphasis {
  color: #dc3545;
}
.h5p-danger-zone-text ul {
  margin: 10px 0;
  padding-left: 20px;
}

.h5p-danger-zone-reveal {
  margin: 20px 0;
  padding: 15px;
  background-color: #fff3cd;
  border: 1px solid #ffc107;
  border-radius: 6px;
}

.h5p-danger-zone-checkbox-label {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  margin: 0;
  font-weight: 500;
  color: #000145;
}

.h5p-danger-zone-checkbox {
  width: 18px;
  height: 18px;
  cursor: pointer;
  margin: 0;
}

.h5p-danger-zone-checkbox-text {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  font-size: 14px;
}

.h5p-danger-zone-delete-form {
  display: inline;
}

.h5p-btn-danger {
  background-color: #dc3545;
  border-color: #dc3545;
  color: white;
}
.h5p-btn-danger:hover {
  background-color: #c82333;
  border-color: #bd2130;
  color: white;
}
.h5p-btn-danger:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

/* Confirmation Modal Styles - Modern H5P Design */
@keyframes h5p-confirm-modal-slide-up {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.h5p-confirm-modal {
  padding: 20px;
}
.h5p-confirm-modal.in {
  display: flex !important;
  align-items: center;
  justify-content: center;
}

.h5p-confirm-modal-dialog {
  display: block;
  width: auto;
  min-width: 400px;
  max-width: 90vw;
  margin: 0;
}

.h5p-confirm-modal-content {
  background: white;
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 20px 60px rgba(0, 1, 69, 0.15);
  border: none;
  min-height: 200px;
  min-width: 400px;
  max-height: 80vh;
  max-width: 90vw;
  overflow: hidden;
  resize: both;
}

.h5p-confirm-modal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 18px 24px;
  border-radius: 12px 12px 0 0;
  flex-shrink: 0;
}

.h5p-confirm-modal-title-wrapper {
  display: flex;
  align-items: center;
  gap: 12px;
}
.h5p-confirm-modal-title-wrapper i {
  font-size: 20px;
  opacity: 0.9;
}

.h5p-confirm-modal-title {
  margin: 0;
  font-size: 18px;
  font-weight: 600;
  color: white;
}

.h5p-confirm-modal-header-primary {
  background: linear-gradient(180deg, #0096CB, #0087B6);
  border-bottom: 2px solid rgba(0, 135, 182, 0.3);
  color: white;
}

.h5p-confirm-modal-header-success {
  background: linear-gradient(180deg, #14A769, #119b5e);
  border-bottom: 2px solid rgba(17, 155, 94, 0.3);
  color: white;
}

.h5p-confirm-modal-header-warning {
  background: linear-gradient(180deg, #F59E0B, #d97706);
  border-bottom: 2px solid rgba(217, 119, 6, 0.3);
  color: white;
}

.h5p-confirm-modal-header-danger {
  background: linear-gradient(180deg, #dc3545, #c82333);
  border-bottom: 2px solid rgba(200, 35, 51, 0.3);
  color: white;
}

.h5p-confirm-modal-close {
  background: none;
  border: none;
  color: white;
  opacity: 0.8;
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.2s;
  font-size: 18px;
}
.h5p-confirm-modal-close:hover {
  opacity: 1;
  background: rgba(255, 255, 255, 0.15);
}

.h5p-confirm-modal-body {
  padding: 24px 28px;
  flex: 1;
  overflow-y: auto;
  font-size: 15px;
  line-height: 1.6;
  color: #374151;
}
.h5p-confirm-modal-body p {
  margin: 0 0 16px;
}
.h5p-confirm-modal-body p:last-child {
  margin-bottom: 0;
}
.h5p-confirm-modal-body strong {
  color: #000145;
  font-weight: 600;
}

.h5p-confirm-modal-info {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  background: #e0f2fe;
  border-left: 4px solid #0096CB;
  border-radius: 6px;
  font-size: 14px;
  color: #0c4a6e;
  line-height: 1.5;
  margin-top: 16px;
}
.h5p-confirm-modal-info i {
  color: #0096CB;
  font-size: 16px;
  margin-top: 2px;
  flex-shrink: 0;
}

.h5p-confirm-modal-warning {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  background: #fffbeb;
  border-left: 4px solid #F59E0B;
  border-radius: 6px;
  font-size: 14px;
  color: #78350f;
  line-height: 1.5;
  margin-top: 16px;
}
.h5p-confirm-modal-warning i {
  color: #F59E0B;
  font-size: 16px;
  margin-top: 2px;
  flex-shrink: 0;
}

.h5p-confirm-modal-footer {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 12px;
  padding: 18px 24px;
  border-top: 1px solid #e9ecef;
  background: #f8f9fa;
  border-radius: 0 0 12px 12px;
  flex-shrink: 0;
}

.h5p-confirm-modal-form {
  display: inline-flex;
}

.h5p-modal-warning-title {
  margin-bottom: 20px;
  color: #dc3545;
  font-size: 16px;
}

.h5p-modal-content-box {
  background-color: #f8f9fa;
  padding: 15px;
  border-left: 4px solid #dc3545;
  margin: 15px 0;
}

.h5p-modal-alert-box {
  background-color: #fff3cd;
  padding: 15px;
  border-radius: 4px;
  margin-top: 15px;
}

.h5p-modal-alert-text {
  color: #856404;
}

.h5p-modal-delete-form {
  display: inline;
}

.h5p-publication-banner {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 20px;
  margin: 0;
  border-radius: 0;
  font-size: 14px;
  line-height: 1.5;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.h5p-publication-banner i {
  font-size: 18px;
  flex-shrink: 0;
  margin-top: 2px;
}
.h5p-publication-banner a {
  font-weight: 600;
  text-decoration: underline;
}
.h5p-publication-banner p {
  margin: 4px 0 0 0;
  font-size: 13px;
}

.h5p-publication-banner--published {
  background: linear-gradient(135deg, #e8f5e9 0%, #c8e6c9 100%);
  border-bottom: 2px solid #4caf50;
  color: #2e7d32;
}
.h5p-publication-banner--published i {
  color: #4caf50;
}
.h5p-publication-banner--published a {
  color: #1b5e20;
}

.h5p-publication-banner--archived {
  background: linear-gradient(135deg, #f5f5f5 0%, #e0e0e0 100%);
  border-bottom: 2px solid #9e9e9e;
  color: #616161;
}
.h5p-publication-banner--archived i {
  color: #9e9e9e;
}

.h5p-publication-banner--draft {
  background: linear-gradient(135deg, #EFF6FF 0%, #DBEAFE 100%);
  border-bottom: 2px solid #3B82F6;
  color: #1E40AF;
}
.h5p-publication-banner--draft i {
  color: #3B82F6;
}
.h5p-publication-banner--draft a {
  color: #1E3A8A;
}

.h5p-publication-workflow {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
  font-size: 12px;
  color: #666;
}
.h5p-publication-workflow .workflow-step {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 10px;
  border-radius: 12px;
  background: #f0f0f0;
  font-weight: 500;
}
.h5p-publication-workflow .workflow-step--active {
  background: #0096CB;
  color: white;
}
.h5p-publication-workflow .workflow-step--completed {
  background: #14A769;
  color: white;
}
.h5p-publication-workflow .workflow-arrow {
  color: #ccc;
}

/* Analytics Dashboard */
.stats-row {
  display: flex;
  gap: 12px;
  margin-bottom: 20px;
  flex-wrap: wrap;
}

.section-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-bottom: 20px;
  align-items: start;
}

.section-box {
  background: #f8f8f9;
  border: 1px solid #e8e8f2;
  border-radius: 0;
  padding: 20px;
}

.section-title {
  margin: 0 0 15px 0;
  color: #000145;
  font-weight: 600;
  font-size: 14px;
  font-family: Inter, sans-serif;
}

.section-title i {
  color: #0096cb;
  margin-right: 8px;
}

.h5p-completion-progress-bar {
  background: #e8e8f2 !important;
  border-radius: 0 !important;
  height: 36px !important;
  min-height: 36px !important;
  overflow: hidden !important;
  display: flex !important;
  margin-bottom: 15px;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
}

.h5p-completion-progress-bar .bar {
  height: 100% !important;
  min-height: 36px !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 13px;
  font-weight: 600;
  min-width: 40px;
}

.h5p-completion-progress-bar .bar.green {
  background: linear-gradient(90deg, #14a769, #10b981) !important;
}

.h5p-completion-progress-bar .bar.orange {
  background: linear-gradient(90deg, #f59e0b, #fbbf24) !important;
}

.legend {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.legend-item {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 13px;
  color: #000145;
  font-weight: 500;
  flex-wrap: wrap;
}

.legend-item .dot {
  width: 12px;
  height: 12px;
  border-radius: 3px;
  flex-shrink: 0;
  margin-top: 3px;
}

.legend-item .dot.green {
  background: #14a769;
}

.legend-item .dot.orange {
  background: #f59e0b;
}

.mini-stats {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}

.mini-stat {
  background: white;
  padding: 15px;
  border-radius: 0;
  text-align: center;
  border: 1px solid #e8e8f2;
}

.mini-stat .value {
  font-size: 22px;
  font-weight: 700;
  color: #000145;
  font-family: Inter, sans-serif;
}

.mini-stat .label {
  font-size: 11px;
  color: #6b7280;
  text-transform: uppercase;
  margin-top: 4px;
  font-weight: 600;
}

.table-section {
  margin-bottom: 20px;
}

.table-section-header {
  background: #f8f8f9;
  padding: 12px 15px;
  border: 1px solid #e8e8f2;
  border-radius: 0;
}

.table-section-header h4 {
  margin: 0;
  color: #000145;
  font-weight: 600;
  font-size: 14px;
  font-family: Inter, sans-serif;
}

.table-section-header h4 i {
  color: #0096cb;
  margin-right: 8px;
}

.table-section-body {
  border: 1px solid #e8e8f2;
  border-top: none;
  border-radius: 0;
  overflow: hidden;
}

.beanstalk-table {
  width: 100%;
  border-collapse: collapse;
}

.beanstalk-table th {
  background: #fafafa;
  padding: 12px 15px;
  text-align: left;
  font-size: 12px;
  font-weight: 600;
  color: #000145;
  text-transform: uppercase;
  border-bottom: 1px solid #e8e8f2;
  font-family: Inter, sans-serif;
}

.beanstalk-table td {
  padding: 12px 15px;
  border-bottom: 1px solid #e8e8f2;
  font-size: 13px;
  color: #000145;
  background: white;
}

.beanstalk-table tr:last-child td {
  border-bottom: none;
}

.beanstalk-table tr:hover td {
  background: #fafafa;
}

.beanstalk-table .user-name {
  font-weight: 600;
  color: #000145;
}

.beanstalk-table .user-email {
  font-size: 11px;
  color: #9ca3af;
}

.h5p-sortable-table th.h5p-sortable {
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  transition: background-color 0.15s ease;
}
.h5p-sortable-table th.h5p-sortable:hover {
  background-color: #ebedf0;
}
.h5p-sortable-table th.h5p-sortable i.fa {
  margin-left: 6px;
  font-size: 11px;
  color: #9ca3af;
}
.h5p-sortable-table th.h5p-sortable i.fa.fa-sort-asc, .h5p-sortable-table th.h5p-sortable i.fa.fa-sort-desc {
  color: #0096cb;
}

.table-scroll {
  max-height: 400px;
  overflow-y: auto;
}

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

.empty-state {
  padding: 50px;
  text-align: center;
  color: #9ca3af;
  background: white;
}

.empty-state i {
  font-size: 48px;
  margin-bottom: 15px;
  display: block;
}

/* Analytics Overview */
.h5p-analytics-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 20px;
}

.h5p-analytics-nav .beanstalk-button {
  padding: 10px 20px;
  border-radius: 0;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 600;
  background: white;
  border: 1px solid #e8e8f2;
  color: #000145;
}

/* Two column layout */
.h5p-two-col {
  display: grid;
  grid-template-columns: 1fr 280px;
  gap: 20px;
  flex: 1;
  min-height: 0;
}

/* Content Table Panel */
.h5p-table-panel {
  background: white;
  border-radius: 0;
  border: 1px solid #e8e8f2;
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
}

.h5p-table-panel-header {
  padding: 15px 20px;
  border-bottom: 1px solid #e8e8f2;
  background: #fafafa;
}

.h5p-table-panel-header h4 {
  margin: 0;
  color: #000145;
  font-weight: 600;
  font-size: 14px;
  font-family: Inter, sans-serif;
}

.h5p-table-panel-header h4 i {
  margin-right: 8px;
}

.h5p-table-scroll {
  flex: 1;
  overflow-y: auto;
  min-height: 0;
}

.h5p-activity-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

.h5p-activity-table th {
  position: sticky;
  top: 0;
  background: #f8f8f9;
  padding: 12px 15px;
  text-align: left;
  font-size: 11px;
  font-weight: 600;
  color: #6b7280;
  text-transform: uppercase;
  border-bottom: none;
  box-shadow: inset 0 -1px 0 #e8e8f2;
  z-index: 1;
}

.h5p-activity-table td {
  padding: 12px 15px;
  border-bottom: 1px solid #f3f4f6;
  font-size: 13px;
  color: #000145;
}

.h5p-activity-table tr:hover td {
  background: #fafafa;
}

.h5p-activity-table .content-title {
  font-weight: 600;
  color: #0096cb;
  text-decoration: none;
}

.h5p-activity-table .content-title:hover {
  text-decoration: underline;
}

.h5p-view-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 0;
  background: #0096cb;
  color: white;
  text-decoration: none;
  font-size: 12px;
  transition: background 0.15s;
}

.h5p-view-btn:hover {
  background: #0087b6;
  color: white;
}

.h5p-activity-table .content-type {
  font-size: 11px;
  color: #9ca3af;
  margin-top: 2px;
}

/* Sidebar */
.h5p-sidebar {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.h5p-sidebar-panel {
  background: white;
  border-radius: 0;
  border: 1px solid #e8e8f2;
  padding: 15px;
}

.h5p-sidebar-panel h5 {
  margin: 0 0 12px 0;
  color: #000145;
  font-weight: 600;
  font-size: 13px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.h5p-type-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.h5p-type-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 10px;
  background: #f8f8f9;
  border-radius: 0;
  font-size: 12px;
}

.h5p-type-item .type-name {
  color: #000145;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  flex: 1;
  margin-right: 10px;
}

.h5p-type-item .type-count {
  background: #0096cb;
  color: white;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 10px;
  font-size: 11px;
  min-width: 24px;
  text-align: center;
}

/* User Detail Analytics */
.h5p-question-stats-grid {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.h5p-question-stat {
  flex: 1;
  min-width: 80px;
  padding: 12px 16px;
  border-radius: 0;
  text-align: center;
  background: #f8f8f9;
  border: 1px solid #e8e8f2;
}

.h5p-question-stat .stat-value {
  font-weight: 700;
  font-size: 18px;
  font-family: Inter, sans-serif;
  margin-bottom: 2px;
}

.h5p-question-stat .stat-label {
  color: #6b7280;
  font-weight: 500;
  font-size: 11px;
  text-transform: uppercase;
}

.h5p-question-item {
  background: white;
  border: 1px solid #e8e8f2;
  border-radius: 0;
  padding: 16px;
  margin-bottom: 12px;
}

.h5p-question-item:last-child {
  margin-bottom: 0;
}

.h5p-question-text {
  color: #000145;
  font-weight: 600;
  margin-bottom: 12px;
  font-size: 14px;
  line-height: 1.4;
}

.h5p-attempts-list {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #e8e8f2;
}

.h5p-attempt-tag {
  padding: 4px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.h5p-attempt-tag.correct {
  background: #d1fae5;
  color: #065f46;
}

.h5p-attempt-tag.incorrect {
  background: #fee2e2;
  color: #991b1b;
}

.h5p-back-action {
  display: flex;
  justify-content: center;
  padding-top: 15px;
}

/* Responsive - Analytics */
@media (max-width: 1200px) {
  .h5p-stats-row > div {
    flex: 1 1 calc(33% - 12px);
  }
}
@media (max-width: 991px) {
  .h5p-two-col {
    grid-template-columns: 1fr;
  }
  .h5p-sidebar {
    flex-direction: row;
    flex-wrap: wrap;
  }
  .h5p-sidebar-panel {
    flex: 1;
    min-width: 200px;
  }
}
@media (max-width: 768px) {
  .stats-row {
    gap: 10px;
  }
  .section-grid {
    grid-template-columns: 1fr;
  }
  .h5p-stats-row {
    gap: 10px;
  }
  .h5p-stats-row > div {
    flex: 1 1 calc(50% - 12px);
  }
  .h5p-analytics-nav {
    flex-direction: column;
  }
  .h5p-analytics-nav .beanstalk-button {
    justify-content: center;
  }
  .h5p-sidebar {
    flex-direction: column;
  }
  .h5p-sidebar-panel {
    min-width: auto;
  }
  .h5p-page-container {
    padding: 10px;
  }
  .h5p-question-stats-grid {
    flex-wrap: wrap;
  }
  .h5p-question-stat {
    min-width: calc(50% - 8px);
  }
  .panel-body {
    padding: 15px !important;
  }
  .h5p-back-action a {
    width: 100%;
    justify-content: center;
  }
}
@media (max-width: 767px) {
  .h5p-stats-row {
    gap: 10px;
  }
}
@media (max-width: 480px) {
  .h5p-stats-row > div {
    flex: 1 1 100%;
  }
}
/* Training Report Filters */
.h5p-analytics-filters {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 12px;
  flex: 1;
}
.h5p-analytics-filters.h5p-analytics-filters-sidebar {
  flex-direction: column;
  align-items: stretch;
}

.h5p-filter-row {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  align-items: flex-end;
}

.h5p-filter-group {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 0 0 auto;
  min-width: 180px;
  max-width: 250px;
}

.h5p-filter-group label {
  font-size: 11px;
  font-weight: 600;
  color: #6b7280;
  text-transform: uppercase;
  margin: 0;
  white-space: nowrap;
}

.h5p-btn-filter {
  align-self: flex-end;
  padding: 8px 24px;
  height: 38px;
  white-space: nowrap;
}

@media (max-width: 991px) {
  .h5p-filter-row {
    flex-direction: column;
  }
  .h5p-filter-group {
    width: 100%;
    min-width: auto;
  }
  .h5p-btn-filter {
    width: 100%;
    margin-top: 8px;
  }
}
.h5p-analytics-layout {
  display: flex;
  gap: 0;
  width: 100%;
  flex: 1;
  min-height: 0;
  align-items: stretch;
  padding: 0;
}
.h5p-analytics-layout .h5p-analytics-sidebar {
  width: 300px;
  min-width: 300px;
  flex-shrink: 0;
  overflow-x: hidden;
  overflow-y: auto;
  border-right: 2px solid #d1d5db;
  border-radius: 0;
  background: #fff;
  margin: 0;
  box-shadow: none;
  align-self: stretch;
}
.h5p-analytics-layout .h5p-analytics-main {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  max-height: calc(100vh - 80px);
}
.h5p-analytics-layout .h5p-analytics-main > .panel {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
  border: none;
}
.h5p-analytics-layout .h5p-analytics-main > .panel > .panel-heading,
.h5p-analytics-layout .h5p-analytics-main > .panel > .beanstalk-h5p-panel-heading {
  flex-shrink: 0;
  position: sticky;
  top: 0;
  z-index: 100;
}
.h5p-analytics-layout .h5p-analytics-main > .panel > .panel-body {
  flex: 1;
  overflow-y: auto;
  min-height: 0;
}
.h5p-analytics-layout .h5p-analytics-main > .panel > .panel-footer {
  flex-shrink: 0;
  position: sticky;
  bottom: 0;
  z-index: 100;
  background: #fff;
  border-top: 1px solid #ddd;
}
.h5p-analytics-layout.filters-hidden {
  padding: 0;
  gap: 0;
}
.h5p-analytics-layout.filters-hidden .h5p-analytics-sidebar {
  display: none;
}
.h5p-analytics-layout.filters-hidden .h5p-analytics-main {
  width: 100%;
}

.h5p-panel {
  display: flex;
  flex-direction: column;
  height: calc(100vh - 80px);
}
.h5p-panel > .panel-heading,
.h5p-panel > .beanstalk-h5p-panel-heading {
  flex-shrink: 0;
  position: sticky;
  top: 0;
  z-index: 100;
}
.h5p-panel > .panel-body {
  flex: 1;
  overflow-y: auto;
  min-height: 0;
}
.h5p-panel > .panel-footer {
  flex-shrink: 0;
  position: sticky;
  bottom: 0;
  z-index: 100;
  background: #fff;
  border-top: 1px solid #ddd;
}

.h5p-page-container {
  max-width: none;
  width: 100%;
}

.h5p-hidden {
  display: none !important;
}

.h5p-top-action-bar-end {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px;
  background-color: #f8f9fa;
  border-bottom: 1px solid #eee;
  gap: 10px;
}
.h5p-top-action-bar-end:not(:has(.h5p-filter-toggle-btn)) {
  justify-content: flex-end;
}
.h5p-top-action-bar-end .h5p-action-buttons {
  display: flex;
  gap: 8px;
  align-items: center;
}

.h5p-user-info-card.collapsible .h5p-user-info-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.h5p-user-info-card.collapsible .h5p-user-info-header .h5p-collapse-icon {
  transition: transform 0.3s ease;
}
.h5p-user-info-card.collapsible .h5p-user-info-body,
.h5p-user-info-card.collapsible .h5p-user-info-footer {
  transition: all 0.3s ease;
  overflow: hidden;
}
.h5p-user-info-card.collapsible.collapsed .h5p-collapse-icon {
  transform: rotate(-90deg);
}
.h5p-user-info-card.collapsible.collapsed .h5p-user-info-body,
.h5p-user-info-card.collapsible.collapsed .h5p-user-info-footer {
  max-height: 0;
  padding: 0;
  border: none;
  opacity: 0;
}

@media (max-width: 992px) {
  .h5p-analytics-layout {
    flex-direction: column;
  }
  .h5p-analytics-layout .h5p-analytics-sidebar {
    width: 100%;
  }
}
.h5p-user-layout-page {
  padding-top: 0;
}
.h5p-user-layout-page .h5p-analytics-layout {
  gap: 0;
}
.h5p-user-layout-page .h5p-analytics-main {
  max-height: none;
}
.h5p-user-layout-page .h5p-analytics-sidebar {
  min-width: 200px;
  max-width: 220px;
}
.h5p-user-layout-page .h5p-analytics-sidebar .filter-panel {
  min-width: 200px;
  max-width: 220px;
}

.h5p-analytics-layout.filters-hidden {
  padding-left: 0;
}
.h5p-analytics-layout.filters-hidden .h5p-analytics-sidebar {
  display: none;
}
.h5p-analytics-layout.filters-hidden .h5p-analytics-main {
  max-width: 100%;
  width: 100%;
}

.h5p-filter-toggle-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  background: #f8f9fa;
  border: 1px solid #ddd;
  border-radius: 4px;
  font-size: 13px;
  font-weight: 500;
  color: #555;
  cursor: pointer;
  transition: all 0.2s ease;
}
.h5p-filter-toggle-btn:hover {
  background: #e9ecef;
  border-color: #0096cb;
  color: #0096cb;
}
.h5p-filter-toggle-btn.active {
  background: #0096cb;
  border-color: #0096cb;
  color: #fff;
}
.h5p-filter-toggle-btn.active:hover {
  background: #007ba3;
}
.h5p-filter-toggle-btn i {
  font-size: 12px;
}

.h5p-toggle-buttons {
  display: flex;
  gap: 8px;
  align-items: center;
}

/* Utility Classes */
.h5p-inline-form {
  display: inline;
}

.h5p-force-warning {
  margin: 0;
  border-radius: 0;
}

/* Player Wrapper — fullscreen fixed layout */
.h5p-player-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #F8F8F9;
  display: flex;
  flex-direction: column;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

/* Header — flat, matching beanstalk-h5p-panel-heading pattern */
.h5p-player-header {
  background: white;
  padding: 14px 20px;
  border-bottom: 1px solid #E5E7EB;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-shrink: 0;
  z-index: 100;
}

.h5p-header-left {
  flex: 1;
  min-width: 0;
}

.h5p-player-title {
  color: #000145;
  font-size: 20px;
  font-weight: 600;
  line-height: 24px;
  margin: 0 0 4px 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.h5p-player-subtitle {
  color: #6B7280;
  font-size: 13px;
  margin: 0;
  display: flex;
  align-items: center;
  gap: 5px;
}
.h5p-player-subtitle > i {
  font-size: 12px;
}

.h5p-header-right {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}

/* Player Badges — compact, flat, no gradients */
.h5p-player-badge {
  padding: 6px 12px;
  border-radius: 0;
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid;
  white-space: nowrap;
}

.h5p-player-badge-completed {
  background: #ECFDF5;
  color: #065F46;
  border-color: #A7F3D0;
}

.h5p-player-badge-attempted {
  background: #FEF3C7;
  color: #92400E;
  border-color: #FDE68A;
}

.h5p-player-badge-progress {
  background: #FFFBEB;
  color: #78350F;
  border-color: #FDE68A;
}

.h5p-player-badge-score {
  background: #F3E8FF;
  color: #6B21A8;
  border-color: #DDD6FE;
}

/* Attempt Badge — inline with subtitle */
.h5p-player-attempt-badge {
  background: #FEF3C7;
  color: #92400E;
  padding: 2px 8px;
  font-size: 11px;
  font-weight: 600;
  margin-left: 6px;
  border: 1px solid #FDE68A;
}

/* Player Buttons — flat, matching h5p-btn-header style */
.h5p-player-btn {
  background: white;
  border: 1px solid #D1D5DB;
  color: #374151;
  padding: 6px 14px;
  cursor: pointer;
  font-size: 13px;
  font-weight: 500;
  transition: all 0.15s ease;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}
.h5p-player-btn:hover {
  background: #F3F4F6;
  border-color: #9CA3AF;
  color: #111827;
  text-decoration: none;
}
.h5p-player-btn:focus-visible {
  outline: 2px solid #0096CB;
  outline-offset: 2px;
}

/* Content Area — fills remaining space, scrolls if content is taller */
.h5p-content-area {
  flex: 1;
  display: flex;
  padding: 16px;
  overflow: auto;
  align-items: flex-start;
  justify-content: center;
  background: #F8F8F9;
  min-height: 0;
}

.h5p-content-container {
  width: 100%;
  max-width: 1200px;
  background: white;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 0;
  border-radius: 8px;
}

#h5p-container {
  width: 100%;
  flex: 1;
  overflow: auto;
  padding: 16px;
  min-height: 0;
}

/* Loading State */
.h5p-loading {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  min-height: 400px;
  color: #000145;
}

.h5p-loading-spinner {
  width: 60px;
  height: 60px;
  border: 5px solid #E5E7EB;
  border-top: 5px solid #0096CB;
  border-radius: 50%;
  animation: spin 1s linear infinite;
  margin-bottom: 20px;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.h5p-loading-text {
  font-size: 18px;
  font-weight: 600;
  color: #000145;
}

/* Error State */
.h5p-error {
  padding: 60px 40px;
  text-align: center;
}

.h5p-error-icon {
  font-size: 48px;
  margin-bottom: 20px;
  color: #DC2626;
}

.h5p-error-title {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 10px;
  color: #000145;
}

.h5p-error-message {
  font-size: 14px;
  color: #9CA3AF;
  margin-bottom: 20px;
}

/* =========================================================================
   COMPLETION OVERLAY — Beanstalk Assessment Experience
   =========================================================================
   Full-screen overlay shown when an assessment completes.
   Renders in the parent page (outside iframe) for full styling control.

   Design tokens (shared with design system):
   - Primary:  #402B95 / #6090FB  (purple gradient)
   - Success:  #14A769
   - Warning:  #F59E0B
   - Error:    #EF4444
   - Text:     #000145
   - Muted:    #6B7280
   - Border:   #E5E7EB
   - Surface:  #FFFFFF

   Score-tier variants (auto-applied by JS based on percentage):
   - --perfect   (100%)  gold accent, star icon
   - --great     (≥80%)  green accent  (default)
   - --good      (≥60%)  blue accent
   - --improve   (<60%)  amber accent
   - --no-score  (null)  purple accent, checkmark icon
   ========================================================================= */
.br-completion-overlay {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  z-index: 9500;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-direction: row !important;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.35s ease, visibility 0.35s ease;
  background: rgba(0, 1, 69, 0.55);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.br-completion-overlay.show {
  opacity: 1;
  visibility: visible;
}

.br-completion-card {
  background: #FFFFFF !important;
  border: 2px solid #402B95;
  border-radius: 12px;
  width: 100%;
  max-width: 440px;
  margin: 24px;
  text-align: center;
  box-shadow: 0 20px 60px rgba(0, 1, 69, 0.2), 0 4px 16px rgba(0, 0, 0, 0.06);
  transform: translateY(24px) scale(0.96);
  transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  overflow: hidden;
}
.br-completion-overlay.show .br-completion-card {
  transform: translateY(0) scale(1);
}

.br-completion-accent {
  display: none;
}

.br-completion-inner {
  padding: 40px 36px 32px;
}

.br-completion-score-ring {
  position: relative;
  width: 130px;
  height: 130px;
  margin: 0 auto 28px;
}
.br-completion-score-ring svg {
  width: 100%;
  height: 100%;
  transform: rotate(-90deg);
}

.br-score-track {
  fill: none;
  stroke: #F3F4F6;
  stroke-width: 7;
}

.br-score-fill {
  fill: none;
  stroke: #14A769;
  stroke-width: 7;
  stroke-linecap: round;
  stroke-dasharray: 326.73;
  stroke-dashoffset: 326.73;
  transition: stroke-dashoffset 1.2s cubic-bezier(0.34, 1.56, 0.64, 1) 0.3s;
}
.br-completion-overlay--perfect .br-score-fill {
  stroke: #F59E0B;
}
.br-completion-overlay--good .br-score-fill {
  stroke: #6090FB;
}
.br-completion-overlay--improve .br-score-fill {
  stroke: #F59E0B;
}

.br-score-value {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.br-score-value .br-score-number {
  font-size: 34px;
  font-weight: 700;
  color: #000145;
  line-height: 1;
  letter-spacing: -0.5px;
}
.br-score-value .br-score-label {
  font-size: 11px;
  font-weight: 600;
  color: #9CA3AF;
  margin-top: 4px;
  text-transform: uppercase;
  letter-spacing: 1.5px;
}

.br-completion-icon {
  width: 96px;
  height: 96px;
  margin: 0 auto 28px;
  background: linear-gradient(180deg, #ECFDF5 0%, #D1FAE5 100%);
  border: 3px solid #A7F3D0;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 40px;
  color: #14A769;
  animation: br-icon-pop 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) 0.15s both;
}

@keyframes br-icon-pop {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  60% {
    transform: scale(1.15);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
.br-completion-heading {
  font-size: 22px;
  font-weight: 700;
  color: #000145;
  margin: 0 0 8px 0;
  line-height: 1.3;
}

.br-completion-message {
  font-size: 14px;
  color: #6B7280;
  margin: 0 0 32px 0;
  line-height: 1.5;
}

.br-completion-actions {
  display: flex;
  gap: 10px;
  justify-content: center;
  flex-wrap: wrap;
}

.br-completion-btn {
  padding: 10px 22px;
  font-size: 13px;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
  border: none;
  border-radius: 8px;
  transition: all 0.2s ease;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  text-decoration: none;
  white-space: nowrap;
}
.br-completion-btn:focus-visible {
  outline: 2px solid #6090FB;
  outline-offset: 2px;
}

.br-completion-btn--primary {
  background: #402B95;
  color: #FFFFFF !important;
}
.br-completion-btn--primary:hover, .br-completion-btn--primary:focus, .br-completion-btn--primary:visited, .br-completion-btn--primary:active {
  color: #FFFFFF !important;
  text-decoration: none;
}
.br-completion-btn--primary:hover {
  background: #331F7A;
}
.br-completion-btn--primary:active {
  background: #2A1866;
  transform: translateY(1px);
}

.br-completion-btn--secondary {
  background: #FFFFFF;
  color: #374151;
  border: 1px solid #D1D5DB;
}
.br-completion-btn--secondary:hover {
  background: #F9FAFB;
  border-color: #9CA3AF;
  color: #111827;
  text-decoration: none;
}
.br-completion-btn--secondary:active {
  background: #F3F4F6;
}

.br-completion-btn--review {
  flex-direction: column;
  gap: 2px;
}
.br-completion-btn--review span {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1px;
}

.br-completion-btn-hint {
  display: block;
  font-size: 10px;
  font-weight: 400;
  color: #9CA3AF;
  line-height: 1.2;
}

.br-question-results {
  margin: 0 0 24px;
  text-align: left;
}

.br-question-results-loading {
  text-align: center;
  color: #9CA3AF;
  font-size: 12px;
  padding: 12px 0;
}
.br-question-results-loading .fa-spinner {
  margin-right: 6px;
}

.br-question-results-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
  padding-bottom: 6px;
  border-bottom: 1px solid #E5E7EB;
}

.br-question-results-title {
  font-size: 12px;
  font-weight: 600;
  color: #374151;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.br-question-results-title .fa {
  margin-right: 4px;
  color: #6B7280;
}

.br-question-results-summary {
  font-size: 12px;
  font-weight: 600;
  color: #6B7280;
}

.br-question-list {
  list-style: none;
  margin: 0;
  padding: 0;
  max-height: 200px;
  overflow-y: auto;
}

.br-question-item {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 6px 0;
  font-size: 13px;
  color: #374151;
  line-height: 1.4;
}
.br-question-item + .br-question-item {
  border-top: 1px solid #F3F4F6;
}

.br-q-icon {
  flex-shrink: 0;
  font-size: 15px;
  margin-top: 1px;
}
.br-q-icon--correct {
  color: #14A769;
}
.br-q-icon--incorrect {
  color: #DC2626;
}

.br-question-text {
  flex: 1;
  min-width: 0;
  word-break: break-word;
}

.br-question-answer-hint {
  display: block;
  padding: 2px 0 6px 23px;
  font-size: 11px;
  color: #6B7280;
  font-style: italic;
  line-height: 1.4;
  list-style: none;
}
.br-question-answer-hint .fa {
  color: #F59E0B;
  margin-right: 3px;
}

.br-completion-footer {
  background: #F9FAFB;
  border-top: 1px solid #E5E7EB;
  padding: 10px 36px;
  font-size: 12px;
  font-weight: 500;
  color: #6B7280;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* =========================================================================
   ERROR TOAST — Lightweight notification for save errors only.
   ========================================================================= */
.h5p-toast {
  position: fixed;
  bottom: 30px;
  right: 30px;
  background: white;
  color: #000145;
  padding: 0;
  border-radius: 8px;
  border: 1px solid #E5E7EB;
  border-left: 4px solid #DC2626;
  min-width: 280px;
  max-width: 360px;
  font-family: Inter, sans-serif;
  z-index: 10000;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
  opacity: 0;
  transform: translateY(16px) scale(0.97);
  transition: opacity 0.25s ease, transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
  overflow: hidden;
}

.h5p-toast.show {
  opacity: 1;
  transform: translateY(0) scale(1);
}

.h5p-toast-body {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 18px;
}

.h5p-toast-icon {
  font-size: 22px;
  color: #DC2626;
  flex-shrink: 0;
}

.h5p-toast-text {
  flex: 1;
  min-width: 0;
}

.h5p-toast-message {
  font-size: 13px;
  font-weight: 600;
  color: #000145;
  line-height: 1.3;
}

.h5p-toast-timer {
  height: 3px;
  background: #DC2626;
  border-radius: 0 0 8px 8px;
  animation: toast-countdown 4.5s linear forwards;
}

@keyframes toast-countdown {
  from {
    width: 100%;
  }
  to {
    width: 0%;
  }
}
/* =========================================================================
   COMPLETION OVERLAY — Responsive
   ========================================================================= */
@media (max-width: 480px) {
  .br-completion-card {
    max-width: calc(100% - 32px);
    margin: 16px;
    border-radius: 10px;
  }
  .br-completion-inner {
    padding: 28px 20px 24px;
  }
  .br-completion-score-ring {
    width: 100px;
    height: 100px;
  }
  .br-score-value .br-score-number {
    font-size: 26px;
  }
  .br-completion-icon {
    width: 72px;
    height: 72px;
    font-size: 32px;
  }
  .br-completion-heading {
    font-size: 18px;
  }
  .br-completion-actions {
    flex-direction: column;
  }
  .br-completion-btn {
    width: 100%;
    justify-content: center;
  }
  .br-completion-footer {
    padding: 10px 20px;
  }
  .br-question-list {
    max-height: 150px;
  }
  .br-question-item {
    font-size: 12px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .br-completion-overlay,
  .br-completion-card,
  .br-score-fill {
    transition: none;
  }
  .br-completion-icon {
    animation: none;
  }
}
/* Player History */
.h5p-history-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 15px;
  margin-bottom: 25px;
}

.h5p-history-stat {
  background: white;
  border: 1px solid #E5E7EB;
  border-radius: 0;
  padding: 15px;
  text-align: center;
}

.h5p-history-stat h3 {
  color: #0096CB;
  font-weight: 700;
  font-size: 28px;
  margin: 0 0 5px 0;
}

.h5p-history-stat p {
  color: #9CA3AF;
  font-size: 13px;
  margin: 0;
}

.h5p-history-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 25px;
}

/* Player Not Ready - Error Page */
.h5p-error-panel {
  border: 2px solid #DC2626 !important;
}

.h5p-error-header {
  background: #DC2626 !important;
}

/* Player Not Ready - LGC (Locally Generated Content) */
.h5p-lgc-panel {
  border: 2px solid #0096CB !important;
}

.h5p-lgc-header {
  background: #0096CB !important;
}

/* Alert Box Styles for Not-Ready Page */
.h5p-alert-box {
  border-radius: 0;
  padding: 15px;
  margin-bottom: 20px;
}
.h5p-alert-box h4 {
  margin: 0 0 10px 0;
  font-size: 14px;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 8px;
}
.h5p-alert-box p {
  margin: 0 0 10px 0;
  line-height: 1.6;
}
.h5p-alert-box p:last-child {
  margin-bottom: 0;
}
.h5p-alert-box ul {
  margin: 0 0 10px 0;
  padding-left: 20px;
}
.h5p-alert-box .h5p-alert-hint {
  font-size: 13px;
  color: #6c757d;
  font-style: italic;
}
.h5p-alert-box .h5p-alert-actions {
  margin-top: 15px;
}

.h5p-alert-box--warning {
  background: #fff3cd;
  border-left: 4px solid #ff9800;
}
.h5p-alert-box--warning h4,
.h5p-alert-box--warning p,
.h5p-alert-box--warning li {
  color: #856404;
}

.h5p-alert-box--success {
  background: #d4edda;
  border-left: 4px solid #14A769;
}
.h5p-alert-box--success h4,
.h5p-alert-box--success p,
.h5p-alert-box--success li {
  color: #155724;
}

.h5p-alert-box--info {
  background: #e7f3ff;
  border-left: 4px solid #0096CB;
}
.h5p-alert-box--info h4,
.h5p-alert-box--info p,
.h5p-alert-box--info li {
  color: #0056b3;
}

.h5p-alert-box--danger {
  background: #f8d7da;
  border-left: 4px solid #dc3545;
}
.h5p-alert-box--danger h4,
.h5p-alert-box--danger p,
.h5p-alert-box--danger li {
  color: #721c24;
}

.h5p-content-meta {
  background: #F8F8F9;
  border: 1px solid #E5E7EB;
  border-radius: 0;
  padding: 16px 20px;
  margin-bottom: 20px;
}

.h5p-content-meta h3 {
  margin: 0 0 5px 0;
  font-size: 17px;
  font-weight: 600;
  color: #000145;
  font-family: Inter, sans-serif;
}

.h5p-content-meta p {
  margin: 0;
  font-size: 13px;
  color: #6B7280;
}

/* Error/Warning boxes match h5p-section style */
.h5p-error-box,
.h5p-warning-box,
.h5p-missing-box,
.h5p-lumi-box {
  margin-bottom: 18px;
}

.h5p-error-box {
  background: #FEF2F2;
  border: 2px solid #FCA5A5;
  border-radius: 0;
  padding: 18px 20px;
}

.h5p-error-box h4 {
  margin: 0 0 12px 0;
  font-size: 14px;
  font-weight: 600;
  color: #991B1B;
  font-family: Inter, sans-serif;
  display: flex;
  align-items: center;
  gap: 8px;
}

.h5p-error-box ul {
  margin: 0;
  padding-left: 20px;
  color: #7F1D1D;
  font-size: 13px;
  line-height: 1.7;
}

.h5p-error-box-compact {
  background: #FEF2F2;
  border-left: 4px solid #DC2626;
  border-radius: 0;
  padding: 12px 16px;
  margin-bottom: 12px;
  font-size: 13px;
}
.h5p-error-box-compact strong {
  color: #991B1B;
  display: block;
  margin-bottom: 6px;
}
.h5p-error-box-compact .h5p-compact-list {
  margin: 6px 0 0 0;
  padding-left: 20px;
  color: #7F1D1D;
  font-size: 12px;
  line-height: 1.5;
}
.h5p-error-box-compact .h5p-compact-list li {
  margin-bottom: 2px;
}

.h5p-warning-box-compact {
  background: #FFFBEB;
  border-left: 4px solid #F59E0B;
  border-radius: 0;
  padding: 10px 16px;
  margin-bottom: 12px;
  font-size: 13px;
  color: #92400E;
  display: flex;
  align-items: center;
  gap: 8px;
}
.h5p-warning-box-compact i {
  color: #F59E0B;
  flex-shrink: 0;
}
.h5p-warning-box-compact strong {
  color: #92400E;
}

.h5p-warning-box {
  background: #FFFBEB;
  border: 2px solid #FDE68A;
  border-radius: 0;
  padding: 18px 20px;
}

.h5p-warning-box h4 {
  margin: 0 0 12px 0;
  font-size: 14px;
  font-weight: 600;
  color: #92400E;
  font-family: Inter, sans-serif;
  display: flex;
  align-items: center;
  gap: 8px;
}

.h5p-warning-box h4 i {
  color: #F59E0B;
}

.h5p-warning-box ul {
  margin: 0;
  padding-left: 20px;
  color: #78350F;
  font-size: 13px;
  line-height: 1.7;
}

.h5p-missing-box {
  background: white;
  border: 2px solid #F59E0B;
  border-radius: 0;
  padding: 18px 20px;
}

.h5p-missing-box h4 {
  margin: 0 0 14px 0;
  font-size: 14px;
  font-weight: 600;
  color: #92400E;
  font-family: Inter, sans-serif;
  display: flex;
  align-items: center;
  gap: 8px;
}

.h5p-missing-box h4 i {
  color: #F59E0B;
}

.h5p-library-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 8px;
}

.h5p-library-badge {
  background: #FEF3C7;
  border: 1px solid #F59E0B;
  color: #92400E;
  padding: 8px 12px;
  border-radius: 0;
  font-size: 12px;
  font-weight: 500;
  font-family: "Courier New", monospace;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

.h5p-lumi-box {
  background: #E3F2FD;
  border: 2px solid #0096CB;
  border-radius: 0;
  padding: 20px 24px;
}

.h5p-lumi-box h4 {
  margin: 0 0 12px 0;
  font-size: 15px;
  font-weight: 600;
  color: #000145;
  font-family: Inter, sans-serif;
  display: flex;
  align-items: center;
  gap: 10px;
}

.h5p-lumi-box h4 i {
  color: #0096CB;
  font-size: 18px;
}

.h5p-lumi-box > p {
  margin: 0 0 16px 0;
  color: #1E40AF;
  font-size: 13px;
  line-height: 1.6;
}

.h5p-lumi-box a {
  color: #0096CB;
  font-weight: 600;
}

.h5p-lumi-steps {
  background: white;
  border-radius: 0;
  padding: 18px;
  border: 1px solid #E5E7EB;
}

.h5p-lumi-steps h5 {
  margin: 0 0 12px 0;
  font-size: 14px;
  font-weight: 600;
  color: #000145;
  font-family: Inter, sans-serif;
}

.h5p-lumi-steps ol {
  margin: 0;
  padding-left: 20px;
  color: #374151;
  font-size: 13px;
  line-height: 1.8;
}

.h5p-lumi-steps strong {
  color: #000145;
}

/* Responsive - Player */
@media (max-width: 768px) {
  .h5p-player-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 15px;
    padding: 15px 20px;
  }
  .h5p-header-right {
    width: 100%;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .h5p-player-title {
    font-size: 18px;
  }
  .h5p-content-area {
    padding: 6px;
  }
}
@media (max-width: 767px) {
  .h5p-history-container {
    padding: 15px 10px;
  }
  .h5p-history-container .panel-body {
    padding: 15px !important;
  }
  .h5p-history-stat h3 {
    font-size: 22px;
  }
  .h5p-history-actions {
    flex-direction: column;
  }
  .h5p-history-actions a {
    width: 100%;
    justify-content: center;
    text-align: center;
  }
}
.h5p-libraries-page .panel-body {
  padding: 15px;
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
}

/* Compact Stats Row */
.h5p-stats-row {
  display: flex;
  gap: 12px;
  margin-bottom: 15px;
  flex-wrap: wrap;
}

/* -------------------------------------------------------
   Tabbed layout styles in _library-columns.scss
   ------------------------------------------------------- */
/* Library List Item */
.h5p-library-item {
  background: white;
  border: 1px solid #E8E8F2;
  border-radius: 6px;
  padding: 10px 12px;
  margin-bottom: 6px;
  display: flex;
  align-items: center;
  gap: 10px;
  transition: all 0.2s ease;
}

.h5p-library-item:hover {
  box-shadow: 0 2px 8px rgba(0, 150, 203, 0.1);
  border-color: #0096CB;
}

.h5p-library-icon {
  width: 32px;
  height: 32px;
  border-radius: 6px;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.h5p-library-icon i {
  font-size: 16px;
}

.h5p-library-info {
  flex: 1;
  min-width: 0;
  overflow: hidden;
}

.h5p-library-name {
  font-weight: 600;
  color: #000145;
  font-size: 13px;
  margin-bottom: 2px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.h5p-library-machine {
  background: #F8F8F9;
  padding: 2px 6px;
  border-radius: 4px;
  font-size: 9px;
  color: #9CA3AF;
  display: inline-block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}

.h5p-library-version {
  flex-shrink: 0;
}

.h5p-library-version span {
  padding: 4px 10px;
  border-radius: 20px;
  font-size: 10px;
  font-weight: 600;
}

.h5p-library-actions {
  flex-shrink: 0;
}

.h5p-library-actions button {
  background: none;
  border: 1px solid #E8E8F2;
  padding: 6px 10px;
  border-radius: 6px;
  cursor: pointer;
  color: #6B7280;
  transition: all 0.2s;
}

.h5p-library-actions button:hover {
  border-color: #0096CB;
  color: #0096CB;
}

/* Content Type Cards */
.h5p-content-types-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

.h5p-content-type-card {
  background: white;
  border: 1px solid #E8E8F2;
  border-radius: 10px;
  padding: 16px 14px;
  text-align: center;
  transition: all 0.25s ease;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.03);
}

.h5p-content-type-card:hover {
  box-shadow: 0 6px 18px rgba(0, 150, 203, 0.1);
  border-color: #0096CB;
}

.h5p-content-type-card.not-installed {
  opacity: 0.75;
}

.h5p-ct-icon {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 10px auto;
}

.h5p-ct-icon i {
  font-size: 20px;
}

.h5p-ct-title {
  font-weight: 700;
  color: #000145;
  font-size: 14px;
  margin: 0 0 3px 0;
  line-height: 1.3;
}

.h5p-ct-machine {
  font-size: 9px;
  color: #9CA3AF;
  background: #F8F8F9;
  padding: 2px 6px;
  border-radius: 4px;
  display: inline-block;
  margin-bottom: 8px;
}

.h5p-ct-description {
  color: #6B7280;
  font-size: 11px;
  margin: 0 0 10px 0;
  line-height: 1.4;
  min-height: 32px;
}

.h5p-ct-badges {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 12px;
}

.h5p-ct-badges span {
  padding: 3px 8px;
  border-radius: 20px;
  font-size: 9px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 3px;
}

.h5p-ct-action .beanstalk-button-blue {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 8px 16px;
  border-radius: 6px;
  font-size: 11px;
  font-weight: 600;
  text-decoration: none;
}

/* Filter Buttons */
.content-filter-btn,
.editor-filter-btn {
  background: white;
  border: 1px solid #E8E8F2;
  color: #6B7280;
  font-size: 10px;
  font-weight: 500;
  padding: 4px 10px;
  transition: all 0.2s;
}

.content-filter-btn:hover,
.editor-filter-btn:hover {
  background: #F8F8F9;
  border-color: #0096CB;
  color: #0096CB;
}

.content-filter-btn.active {
  background: #14A769;
  border-color: #14A769;
  color: white;
}

.editor-filter-btn.active {
  background: #8B5CF6;
  border-color: #8B5CF6;
  color: white;
}

.content-filter-btn i,
.editor-filter-btn i {
  margin-right: 3px;
}

/* Smaller install buttons in library list */
.h5p-library-actions .h5p-install-btn {
  padding: 5px 10px !important;
  font-size: 10px !important;
  border-radius: 4px !important;
}

/* Responsive - Tablet: 768-991px */
@media (max-width: 991px) {
  .h5p-libraries-page .panel-body {
    padding: 16px;
  }
  .h5p-stats-row {
    flex-wrap: wrap;
  }
  .h5p-stats-row > div {
    flex: 1 1 calc(50% - 8px);
    min-width: 140px;
  }
  .h5p-content-types-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
  .h5p-library-machine {
    display: none;
  }
}
/* Responsive - Mobile: <768px */
@media (max-width: 767px) {
  .h5p-libraries-page .panel {
    margin: 0 10px !important;
  }
  .h5p-libraries-page .panel-body {
    padding: 12px;
  }
  .h5p-action-bar {
    flex-direction: column;
    gap: 10px;
  }
  .h5p-action-bar .action-left,
  .h5p-action-bar .action-right {
    width: 100%;
    justify-content: center;
  }
  .h5p-action-bar .btn-group {
    display: flex;
    width: 100%;
  }
  .h5p-action-bar .btn-group a {
    flex: 1;
    text-align: center;
    padding: 8px 12px !important;
    font-size: 12px;
  }
  .h5p-action-bar .beanstalk-button {
    padding: 8px 12px !important;
    font-size: 12px;
  }
  .h5p-stats-row {
    gap: 8px;
  }
  .h5p-stats-row > div {
    flex: 1 1 calc(50% - 4px);
  }
  .h5p-content-types-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .h5p-content-type-card {
    padding: 16px 14px;
  }
  .h5p-ct-icon {
    width: 48px;
    height: 48px;
    margin-bottom: 12px;
  }
  .h5p-ct-icon i {
    font-size: 20px;
  }
  .h5p-ct-title {
    font-size: 14px;
  }
  .h5p-ct-description {
    font-size: 11px;
    min-height: auto;
  }
  .h5p-library-item {
    padding: 10px 12px;
    gap: 10px;
  }
  .h5p-library-icon {
    width: 36px;
    height: 36px;
  }
  .h5p-library-icon i {
    font-size: 14px;
  }
  .h5p-library-name {
    font-size: 12px;
  }
  .h5p-library-version span {
    padding: 3px 8px;
    font-size: 9px;
  }
  .h5p-panel-header {
    padding: 12px 16px;
  }
  .h5p-panel-header-content {
    font-size: 13px;
  }
}
/* Responsive - Extra small: <480px */
@media (max-width: 479px) {
  .h5p-libraries-page .panel {
    margin: 0 5px !important;
  }
  .h5p-stats-row > div {
    flex: 1 1 calc(50% - 4px);
  }
  .h5p-ct-badges span {
    padding: 3px 8px;
    font-size: 9px;
  }
  .h5p-library-version {
    display: none;
  }
}
.h5p-section-libraries {
  border: 1px solid #D1FAE5;
  border-radius: 8px;
  overflow: hidden;
}

.h5p-lib-tabs-container {
  background: #fff;
}

.h5p-lib-tabs {
  display: flex;
  border-bottom: 2px solid #E8E8F2;
  background: #FAFBFC;
  padding: 0;
  gap: 0;
}

.h5p-lib-tab {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  font-size: 13px;
  font-weight: 600;
  color: #6B7280;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  border-bottom: 3px solid transparent;
  margin-bottom: -2px;
  transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
  white-space: nowrap;
}
.h5p-lib-tab i {
  font-size: 14px;
  opacity: 0.7;
}
.h5p-lib-tab:hover {
  color: #374151;
  background: #F3F4F6;
}
.h5p-lib-tab.active {
  background: #fff;
}
.h5p-lib-tab.active i {
  opacity: 1;
}

.h5p-lib-tab-success.active {
  color: #065F46;
  border-bottom-color: #14A769;
}
.h5p-lib-tab-success.active i {
  color: #14A769;
}

.h5p-lib-tab-purple.active {
  color: #5B21B6;
  border-bottom-color: #8B5CF6;
}
.h5p-lib-tab-purple.active i {
  color: #8B5CF6;
}

.h5p-lib-tab-gray.active {
  color: #374151;
  border-bottom-color: #6B7280;
}
.h5p-lib-tab-gray.active i {
  color: #6B7280;
}

.h5p-lib-tab-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  height: 20px;
  padding: 0 6px;
  font-size: 10px;
  font-weight: 700;
  border-radius: 10px;
  background: #E5E7EB;
  color: #6B7280;
}

.h5p-lib-tab-badge-purple {
  background: #EDE9FE;
  color: #7C3AED;
}

.h5p-lib-panel {
  padding: 0;
}

.h5p-lib-list {
  padding: 12px 16px;
  max-height: 520px;
  overflow-y: auto;
}

@media (max-width: 767px) {
  .h5p-lib-tabs {
    flex-wrap: wrap;
  }
  .h5p-lib-tab {
    flex: 1 1 auto;
    justify-content: center;
    padding: 10px 12px;
    font-size: 12px;
  }
  .h5p-lib-tab span {
    display: none;
  }
  .h5p-lib-list {
    padding: 10px 12px;
    max-height: 400px;
  }
}
/* Tests Index Page */
.h5p-tests-page .panel-body {
  padding: 20px;
}

.h5p-tests-page .alert {
  margin: 0 15px 15px;
}

/* Action Bar */
.h5p-tests-action-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  margin-bottom: 20px;
}

.h5p-tests-filter {
  flex: 1;
  min-width: 200px;
  max-width: 300px;
}

.h5p-tests-filter label {
  color: #000145;
  font-weight: 600;
  margin-bottom: 6px;
  display: block;
  font-size: 13px;
}

.h5p-tests-filter select {
  height: 40px;
  border-radius: 6px;
  border: 1px solid #E8E8F2;
  padding: 0 12px;
  width: 100%;
}

.h5p-tests-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: flex-end;
  justify-content: flex-end;
  flex: 1;
}

.h5p-tests-actions .beanstalk-button,
.h5p-tests-actions .beanstalk-button-blue {
  padding: 10px 16px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  text-decoration: none;
  white-space: nowrap;
}

/* Empty state */
.h5p-empty-state {
  background: linear-gradient(135deg, #E3F2FD 0%, #F3E5F5 100%);
  border: 2px dashed #0096CB;
  border-radius: 12px;
  padding: 50px 25px;
  text-align: center;
}

.h5p-empty-state i {
  font-size: 48px;
  color: #0096CB;
  margin-bottom: 15px;
}

.h5p-empty-state h3 {
  color: #000145;
  font-weight: 600;
  margin-bottom: 8px;
  font-size: 18px;
}

.h5p-empty-state p {
  color: #9CA3AF;
  font-size: 14px;
}

/* Test Take Page */
.h5p-info-table th,
.h5p-info-table td {
  padding: 12px;
}

/* Take Test - Status Banner */
.h5p-take-status-banner {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 20px;
  border-radius: 0;
  margin: 0;
  font-size: 14px;
}
.h5p-take-status-banner > i {
  font-size: 24px;
  flex-shrink: 0;
}
.h5p-take-status-banner .h5p-take-status-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.h5p-take-status-banner .h5p-take-status-text strong {
  font-size: 15px;
  letter-spacing: 0.2px;
}
.h5p-take-status-banner .h5p-take-status-text span {
  font-size: 13px;
  opacity: 0.85;
}

.h5p-take-status-passed {
  background: #D1FAE5;
  border-left: 4px solid #14A769;
  border-top: 1px solid #A7F3D0;
  border-right: 1px solid #A7F3D0;
  border-bottom: 1px solid #A7F3D0;
  color: #065F46;
}
.h5p-take-status-passed > i {
  color: #14A769;
}

.h5p-take-status-progress {
  background: #FEF3C7;
  border-left: 4px solid #F59E0B;
  border-top: 1px solid #FCD34D;
  border-right: 1px solid #FCD34D;
  border-bottom: 1px solid #FCD34D;
  color: #78350F;
}
.h5p-take-status-progress > i {
  color: #D97706;
}

/* Take Test - Stats inside collapsible */
.h5p-take-test-container .h5p-stats-collapsible {
  margin: 0;
}

/* Take Test - Start Action */
.h5p-take-test-container .h5p-start-action {
  margin: 0;
  padding: 24px 20px;
  border-top: 1px solid #E5E7EB;
}

/* Take Test - Attempts Section */
.h5p-take-attempts-wrapper {
  margin: 0;
}

/* Take Test - Attempt Number Circle */
.h5p-attempt-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #F3F4F6;
  color: #374151;
  font-weight: 700;
  font-size: 12px;
  font-family: Inter, sans-serif;
}

/* Take Test - Score Value */
.h5p-score-value {
  font-weight: 700;
  font-size: 14px;
  font-family: Inter, sans-serif;
}

.h5p-score-pass {
  color: #14A769;
}

.h5p-score-fail {
  color: #DC2626;
}

/* Test Edit Page */
.h5p-two-column-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  align-items: start;
}

.h5p-two-column-layout .h5p-section {
  margin-bottom: 0;
}

.h5p-left-column .h5p-section:first-child {
  margin-bottom: 20px;
}

.h5p-right-column {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

/* Test Reports - Common Styles */
.h5p-filter-section {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 25px;
  padding-bottom: 20px;
  border-bottom: 1px solid #E8E8F2;
  flex-wrap: wrap;
  gap: 15px;
}

.h5p-filter-form {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.h5p-filter-label {
  color: #000145;
  font-weight: 600;
  margin: 0;
}

.h5p-filter-select {
  height: 42px;
  border-radius: 6px;
  border: 1px solid #E8E8F2;
  padding: 0 12px;
  min-width: 200px;
}

.h5p-action-buttons {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.h5p-back-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 24px;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 600;
  background: white;
  border: 1px solid #E8E8F2;
  color: #000145;
}

/* Course Tests Report */
.h5p-course-tests-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 20px;
}

/* Season Report */
.h5p-season-report-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 20px;
}

.h5p-report-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 30px;
  padding-bottom: 20px;
  border-bottom: 1px solid #E8E8F2;
  flex-wrap: wrap;
  gap: 15px;
}

.h5p-stats-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-bottom: 30px;
}

.h5p-stat-card {
  background: white;
  border: 1px solid #E8E8F2;
  border-radius: 8px;
  padding: 20px;
  text-align: center;
}

.h5p-stat-card h3 {
  margin: 0;
  font-size: 32px;
  font-weight: 700;
}

.h5p-stat-card p {
  margin: 8px 0 0 0;
  color: #9CA3AF;
  font-size: 14px;
}

/* User Detail Report */
.h5p-user-report-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

.h5p-user-info-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-bottom: 30px;
}

.h5p-user-info-card {
  background: #F8F8F9;
  border-radius: 8px;
  padding: 20px;
}

.h5p-user-info-card .label {
  color: #9CA3AF;
  font-size: 13px;
  margin-bottom: 5px;
}

.h5p-user-info-card .label-mt {
  margin-top: 10px;
}

.h5p-user-info-card .value {
  color: #000145;
  font-weight: 600;
  font-size: 16px;
}

.h5p-user-info-card .value-sm {
  font-size: 14px;
}

.h5p-back-btn {
  margin-bottom: 25px;
}

/* User Tests Report */
.h5p-my-tests-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

.h5p-filter-section {
  justify-content: flex-start;
}

/* Responsive - Tablet */
@media (max-width: 1200px) {
  .h5p-two-column-layout {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 991px) {
  .h5p-tests-page .panel {
    margin: 0 10px;
  }
  .h5p-tests-page .panel-body {
    padding: 16px;
  }
  .h5p-tests-page .alert {
    margin: 0 10px 15px;
  }
  .h5p-tests-action-bar {
    flex-direction: column;
    gap: 12px;
  }
  .h5p-tests-filter {
    max-width: 100%;
    min-width: 100%;
  }
  .h5p-tests-actions {
    width: 100%;
    justify-content: flex-start;
  }
  .h5p-user-info-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
/* Responsive - Mobile */
@media (max-width: 767px) {
  .h5p-tests-page .panel {
    margin: 0 5px;
  }
  .h5p-tests-page .panel-body {
    padding: 12px;
  }
  .h5p-tests-page .alert {
    margin: 0 5px 12px;
  }
  .h5p-tests-filter select {
    height: 38px;
  }
  .h5p-tests-actions .beanstalk-button,
  .h5p-tests-actions .beanstalk-button-blue {
    padding: 8px 12px;
    font-size: 12px;
  }
  .h5p-tests-actions .beanstalk-button span.btn-text,
  .h5p-tests-actions .beanstalk-button-blue span.btn-text {
    display: none;
  }
  .h5p-table-wrapper th,
  .h5p-table-wrapper td {
    padding: 10px 8px;
    font-size: 12px;
  }
  .h5p-empty-state {
    padding: 30px 15px;
  }
  .h5p-empty-state i {
    font-size: 40px;
  }
  .h5p-info-table th,
  .h5p-info-table td {
    display: block;
    width: 100% !important;
  }
  .h5p-info-table th {
    border-bottom: none !important;
    background: #F8F8F9;
  }
  .h5p-take-status-banner {
    padding: 12px 16px;
    margin: 0;
  }
  .h5p-take-status-banner > i {
    font-size: 20px;
  }
  .h5p-take-test-container .h5p-stats-collapsible {
    margin: 0;
  }
  .h5p-take-test-container .h5p-start-action {
    margin: 0;
    padding: 20px 12px;
  }
  .h5p-take-attempts-wrapper {
    margin: 0;
  }
  .h5p-attempt-number {
    width: 24px;
    height: 24px;
    font-size: 11px;
  }
  .h5p-course-tests-container {
    padding: 0 10px;
  }
  .h5p-filter-section {
    flex-direction: column;
    align-items: stretch;
  }
  .h5p-filter-form {
    flex-direction: column;
    width: 100%;
  }
  .h5p-filter-form select {
    width: 100%;
  }
  .panel-body {
    padding: 20px !important;
  }
  .h5p-action-buttons {
    flex-direction: column;
  }
  .h5p-action-buttons a {
    width: 100%;
    text-align: center;
    justify-content: center;
  }
  .h5p-season-report-container {
    padding: 0 10px;
  }
  .h5p-report-header {
    flex-direction: column;
    align-items: stretch;
  }
  .h5p-stats-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }
  .h5p-stat-card {
    padding: 15px;
  }
  .h5p-stat-card h3 {
    font-size: 24px;
  }
  .h5p-user-report-container {
    padding: 0 10px;
  }
  .h5p-user-info-grid {
    grid-template-columns: 1fr;
  }
  .h5p-my-tests-container {
    padding: 0 10px;
  }
}
.h5p-settings-panel {
  background: white;
  border: 1px solid #e8e8f2;
  border-radius: 0;
  overflow: hidden;
}

.h5p-stats-collapsible + .h5p-settings-panel {
  border-top: none;
}

.h5p-settings-panel + .h5p-reports-link {
  border-top: none;
}

.h5p-settings-header {
  padding: 14px 20px;
  border-bottom: 1px solid #e8e8f2;
  display: flex;
  align-items: center;
  gap: 10px;
}
.h5p-settings-header.h5p-settings-header-gradient {
  background: linear-gradient(135deg, #f0f9ff 0%, #dbeafe 100%);
}
.h5p-settings-header h4 {
  margin: 0;
  font-size: 15px;
  font-weight: 600;
  color: #000145;
}
.h5p-settings-header i {
  color: #0096cb;
  font-size: 18px;
}
.h5p-settings-header.h5p-settings-header-muted i {
  color: #6b7280;
}

.h5p-settings-body {
  padding: 20px;
}

.h5p-settings-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

.h5p-setting-field {
  display: flex;
  flex-direction: column;
}
.h5p-setting-field label {
  font-size: 12px;
  font-weight: 600;
  color: #000145;
  margin-bottom: 6px;
  display: flex;
  align-items: center;
  gap: 4px;
}
.h5p-setting-field label .required {
  color: #dc2626;
}
.h5p-setting-field.h5p-setting-field-muted label {
  color: #6b7280;
}
.h5p-setting-field input,
.h5p-setting-field select {
  width: 100%;
  padding: 9px 12px;
  border: 1px solid #e8e8f2;
  border-radius: 0;
  font-size: 13px;
  background: white;
  transition: all 0.2s;
}
.h5p-setting-field input:focus,
.h5p-setting-field select:focus {
  outline: none;
  border-color: #0096cb;
  box-shadow: 0 0 0 3px rgba(0, 150, 203, 0.1);
}
.h5p-setting-field small {
  font-size: 11px;
  color: #6b7280;
  margin-top: 4px;
}

.h5p-checkboxes-section {
  grid-column: span 2;
  padding-top: 8px;
  border-top: 1px solid #e8e8f2;
}

.h5p-checkboxes-section-title {
  font-size: 12px;
  font-weight: 600;
  color: #000145;
  margin-bottom: 10px;
}

.h5p-checkboxes-row {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}
.h5p-checkboxes-row.h5p-checkboxes-row-span {
  grid-column: span 2;
  padding-top: 10px;
}

.h5p-checkbox-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: #374151;
  padding: 8px 12px;
  background: #f9fafb;
  border-radius: 0;
  cursor: pointer;
  transition: background 0.2s;
  flex: 1;
}
.h5p-checkbox-item:hover {
  background: #f0f9ff;
}
.h5p-checkbox-item input {
  width: 16px;
  height: 16px;
  accent-color: #0096cb;
  cursor: pointer;
}
.h5p-checkbox-item.h5p-checkbox-item-simple {
  background: transparent;
  padding: 0;
  color: #000145;
  flex: none;
}

.h5p-settings-footer {
  grid-column: span 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-top: 16px;
  border-top: 1px solid #e8e8f2;
  margin-top: 8px;
  flex-wrap: wrap;
}
.h5p-settings-footer .h5p-checkboxes-row {
  flex: 1;
  min-width: 0;
}
.h5p-settings-footer .h5p-settings-actions {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
  grid-column: initial;
  padding-top: 0;
  border-top: none;
  margin-top: 0;
}

.h5p-settings-actions {
  grid-column: span 2;
  display: flex;
  gap: 10px;
  padding-top: 16px;
  border-top: 1px solid #e8e8f2;
  margin-top: 8px;
  justify-content: flex-end;
}

.h5p-settings-panel-mb {
  margin-bottom: 0;
}

.h5p-test-edit-layout {
  display: flex;
  gap: 0;
  width: calc(100% + 30px);
  margin-left: -15px;
  margin-right: -15px;
  padding: 0;
  min-height: calc(100vh - 60px);
}
@media (max-width: 991px) {
  .h5p-test-edit-layout {
    flex-direction: column;
    padding: 0;
  }
}

.h5p-test-sidebar {
  flex-shrink: 0;
  width: 380px;
  align-self: flex-start;
  position: sticky;
  top: 20px;
  max-height: calc(100vh - 100px);
}
@media (max-width: 1200px) {
  .h5p-test-sidebar {
    width: 340px;
  }
}
@media (max-width: 991px) {
  .h5p-test-sidebar {
    width: 100%;
    position: static;
    max-height: none;
  }
}

.h5p-test-main {
  flex: 1;
  min-width: 0;
}
.h5p-test-main .panel {
  margin-bottom: 0;
}

.h5p-test-edit-body {
  padding: 0 !important;
}
.h5p-test-edit-body > .alert {
  margin: 12px 12px 0;
}
.h5p-test-edit-body .h5p-stats-collapsible,
.h5p-test-edit-body .h5p-settings-panel,
.h5p-test-edit-body .h5p-reports-link {
  border-left: none;
  border-right: none;
}
.h5p-test-edit-body .h5p-stats-toggle {
  border-left: none;
  border-right: none;
}
.h5p-test-edit-body .h5p-stats-body {
  border-left: none;
  border-right: none;
}

.h5p-assign-card {
  background: white;
  border: 2px solid #0096cb;
  border-radius: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  max-height: calc(100vh - 100px);
  box-shadow: 0 4px 12px rgba(0, 150, 203, 0.15);
}
@media (max-width: 991px) {
  .h5p-assign-card {
    max-height: 500px;
  }
}

.h5p-assign-card-header {
  background: linear-gradient(135deg, #0096cb 0%, #007ba3 100%);
  color: white;
  padding: 16px 20px;
  flex-shrink: 0;
}
.h5p-assign-card-header h3 {
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 10px;
}
.h5p-assign-card-header .badge {
  background: rgba(255, 255, 255, 0.2);
  padding: 4px 10px;
  border-radius: 0;
  font-size: 12px;
  font-weight: 600;
}

.h5p-assign-card-body {
  padding: 16px;
  overflow-y: auto;
  flex: 1;
  min-height: 0;
}

.h5p-add-assignment-form {
  background: #f0f9ff;
  border: 1px dashed #0096cb;
  border-radius: 0;
  padding: 16px;
  margin-bottom: 16px;
}
.h5p-add-assignment-form label {
  font-size: 12px;
  font-weight: 600;
  color: #000145;
  margin-bottom: 6px;
  display: block;
}

.h5p-user-search-container {
  position: relative;
  margin-bottom: 12px;
}

.h5p-user-search-input {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid #e8e8f2;
  border-radius: 0;
  font-size: 14px;
  background: white;
}
.h5p-user-search-input:focus {
  outline: none;
  border-color: #0096cb;
  box-shadow: 0 0 0 2px rgba(0, 150, 203, 0.1);
}

.h5p-user-dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: white;
  border: 1px solid #e8e8f2;
  border-radius: 0;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  z-index: 100;
  max-height: 250px;
  overflow-y: auto;
  display: none;
}
.h5p-user-dropdown.show {
  display: block;
}

.h5p-user-option {
  padding: 10px 14px;
  cursor: pointer;
  border-bottom: 1px solid #f3f4f6;
  display: flex;
  align-items: center;
  gap: 10px;
}
.h5p-user-option:last-child {
  border-bottom: none;
}
.h5p-user-option:hover {
  background: #f0f9ff;
}
.h5p-user-option.h5p-user-option-empty {
  color: #9ca3af;
  cursor: default;
}
.h5p-user-option .user-avatar {
  width: 32px;
  height: 32px;
  background: #0096cb;
  color: white;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 600;
}
.h5p-user-option .user-info {
  flex: 1;
}
.h5p-user-option .user-name {
  font-weight: 600;
  color: #000145;
  font-size: 13px;
}
.h5p-user-option .user-email {
  color: #6b7280;
  font-size: 11px;
}

.h5p-selected-user {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  background: white;
  border: 1px solid #14a769;
  border-radius: 0;
  margin-bottom: 12px;
}
.h5p-selected-user .user-avatar {
  width: 36px;
  height: 36px;
  background: #14a769;
  color: white;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 600;
}
.h5p-selected-user .user-info {
  flex: 1;
}
.h5p-selected-user .user-name {
  font-weight: 600;
  color: #000145;
  font-size: 14px;
}
.h5p-selected-user .user-email {
  color: #6b7280;
  font-size: 12px;
}
.h5p-selected-user .remove-btn {
  background: none;
  border: none;
  color: #dc2626;
  cursor: pointer;
  padding: 4px;
  font-size: 16px;
}
.h5p-selected-user .remove-btn:hover {
  color: #991b1b;
}

.h5p-assign-options {
  display: flex;
  gap: 12px;
  margin-bottom: 14px;
  flex-wrap: wrap;
}
.h5p-assign-options .option-group {
  flex: 1;
  min-width: 120px;
}
.h5p-assign-options label {
  font-size: 12px;
  color: #6b7280;
  font-weight: 500;
}
.h5p-assign-options input[type=date],
.h5p-assign-options select {
  width: 100%;
  padding: 8px 10px;
  border: 1px solid #e8e8f2;
  border-radius: 0;
  font-size: 13px;
}

.h5p-assign-btn {
  width: 100%;
  padding: 12px;
  background: #0096cb;
  color: white;
  border: none;
  border-radius: 0;
  font-weight: 600;
  font-size: 14px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  transition: background 0.2s;
}
.h5p-assign-btn:hover {
  background: #007ba3;
}
.h5p-assign-btn:disabled {
  background: #9ca3af;
  cursor: not-allowed;
}

.h5p-assignments-list {
  margin-top: 16px;
}

.h5p-assignments-list-header {
  font-size: 12px;
  text-transform: uppercase;
  color: #6b7280;
  font-weight: 600;
  margin-bottom: 10px;
  letter-spacing: 0.5px;
}

.h5p-assignment-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  background: #f9fafb;
  border-radius: 0;
  margin-bottom: 8px;
  border: 1px solid #e8e8f2;
}
.h5p-assignment-item .avatar {
  width: 36px;
  height: 36px;
  background: #e8e8f2;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 600;
  color: #6b7280;
  flex-shrink: 0;
}
.h5p-assignment-item .avatar.user {
  background: #dbeafe;
  color: #1d4ed8;
}
.h5p-assignment-item .avatar.course {
  background: #d1fae5;
  color: #065f46;
}
.h5p-assignment-item .info {
  flex: 1;
  min-width: 0;
}
.h5p-assignment-item .name {
  font-weight: 600;
  color: #000145;
  font-size: 13px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.h5p-assignment-item .meta {
  font-size: 11px;
  color: #6b7280;
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.h5p-assignment-item .badge-required {
  background: #fef3c7;
  color: #92400e;
  padding: 3px 8px;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 600;
  flex-shrink: 0;
}
.h5p-assignment-item .badge-optional {
  background: #e8e8f2;
  color: #6b7280;
  padding: 3px 8px;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 600;
  flex-shrink: 0;
}
.h5p-assignment-item .remove-btn {
  background: none;
  border: none;
  color: #9ca3af;
  cursor: pointer;
  padding: 6px;
  font-size: 14px;
  border-radius: 4px;
  transition: all 0.2s;
  flex-shrink: 0;
}
.h5p-assignment-item .remove-btn:hover {
  background: #fee2e2;
  color: #dc2626;
}

.h5p-no-assignments {
  text-align: center;
  padding: 24px 16px;
  color: #9ca3af;
}
.h5p-no-assignments i {
  font-size: 32px;
  margin-bottom: 10px;
  display: block;
}

.h5p-btn-primary {
  padding: 10px 20px;
  background: #0096cb;
  color: white;
  border: none;
  border-radius: 6px;
  font-weight: 600;
  font-size: 13px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.h5p-btn-primary:hover {
  background: #007ba3;
}

.h5p-btn-danger {
  padding: 10px 20px;
  background: white;
  color: #dc2626;
  border: 1px solid #dc2626;
  border-radius: 6px;
  font-weight: 600;
  font-size: 13px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.h5p-btn-danger:hover {
  background: #fee2e2;
}

.h5p-reports-link {
  background: #f8f9fa;
  color: #8b5cf6;
  border: 1px solid #e8e8f2;
  border-radius: 0;
  padding: 14px 18px;
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 12px;
  transition: all 0.2s;
}
.h5p-reports-link:hover {
  background: #8b5cf6;
  color: white;
  border-color: #8b5cf6;
  text-decoration: none;
}
.h5p-reports-link:hover i,
.h5p-reports-link:hover .arrow {
  color: white;
}
.h5p-reports-link i {
  font-size: 20px;
  color: #8b5cf6;
}
.h5p-reports-link .text {
  flex: 1;
}
.h5p-reports-link .title {
  font-weight: 600;
  font-size: 14px;
}
.h5p-reports-link .desc {
  font-size: 12px;
  color: #6b7280;
}
.h5p-reports-link:hover .desc {
  color: rgba(255, 255, 255, 0.8);
}
.h5p-reports-link .arrow {
  font-size: 16px;
  color: #8b5cf6;
}

.h5p-selected-users-container {
  margin-bottom: 12px;
}

.h5p-selected-users-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px;
}

.h5p-selected-user-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #dbeafe;
  border: 1px solid #93c5fd;
  border-radius: 20px;
  padding: 6px 10px 6px 6px;
  font-size: 13px;
  color: #1d4ed8;
}
.h5p-selected-user-chip .chip-avatar {
  width: 24px;
  height: 24px;
  background: #3b82f6;
  color: white;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  font-weight: 600;
}
.h5p-selected-user-chip .chip-name {
  font-weight: 500;
  max-width: 120px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.h5p-selected-user-chip .chip-remove {
  background: none;
  border: none;
  color: #3b82f6;
  cursor: pointer;
  padding: 2px;
  font-size: 12px;
  line-height: 1;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.h5p-selected-user-chip .chip-remove:hover {
  background: #1d4ed8;
  color: white;
}

.h5p-selected-count {
  font-size: 12px;
  color: #6b7280;
  margin-bottom: 8px;
}
.h5p-selected-count strong {
  color: #0096cb;
}

.h5p-hidden {
  display: none !important;
}

.h5p-flex {
  display: flex !important;
}

.h5p-position-relative {
  position: relative;
}

.h5p-mb-16 {
  margin-bottom: 16px;
}

.h5p-mt-15 {
  margin-top: 15px;
}

.h5p-alert-list {
  margin: 8px 0 0 0;
}

.h5p-form-inline {
  margin: 0;
}

/* Editor Container */
.h5p-editor-container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 20px 15px;
}

/* H5P Native Editor Iframe Container */
#h5p-editor {
  min-height: 300px;
  border: 1px solid #E8E8F2;
  padding: 15px;
  border-radius: 8px;
  background: #f9f9f9;
}

/* Responsive - Mobile */
@media (max-width: 767px) {
  .h5p-editor-container {
    padding: 15px 10px;
  }
}
.h5p-upload-form-full .h5p-form-group {
  margin-bottom: 10px;
}
.h5p-upload-form-full .h5p-form-group:last-child {
  margin-bottom: 0;
}
.h5p-upload-form-full .h5p-upload-zone {
  text-align: center;
  padding: 16px 16px;
  background: #f8f8f9;
  border: 2px dashed #d1d5db;
  border-radius: 0;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
.h5p-upload-form-full .h5p-upload-zone--dragover {
  border-color: #0096CB;
  background-color: rgba(0, 150, 203, 0.06);
}
.h5p-upload-form-full .h5p-upload-icon {
  font-size: 28px;
  color: #9ca3af;
  margin-bottom: 6px;
}
.h5p-upload-form-full .h5p-upload-hint {
  color: #6b7280;
  font-size: 13px;
}
.h5p-upload-form-full .h5p-file-preview {
  margin-bottom: 12px;
  padding: 12px 16px;
  background: white;
  border-radius: 0;
  border: 1px solid #e8e8f2;
  display: flex;
  align-items: center;
  gap: 12px;
}
.h5p-upload-form-full .h5p-file-icon {
  color: #0096cb;
  font-size: 20px;
}
.h5p-upload-form-full .h5p-file-info {
  flex: 1;
}
.h5p-upload-form-full .h5p-file-name {
  color: #000145;
  font-size: 14px;
  font-weight: 600;
}
.h5p-upload-form-full .h5p-file-size {
  color: #9ca3af;
  font-size: 12px;
  margin-top: 2px;
}
.h5p-upload-form-full .h5p-btn {
  padding: 10px 24px;
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 600;
  font-size: 14px;
  cursor: pointer;
}
.h5p-upload-form-full .h5p-btn--primary {
  border: none;
}
.h5p-upload-form-full .h5p-btn--secondary {
  background: white;
  border: 1px solid #e8e8f2;
  color: #000145;
  text-decoration: none;
}
.h5p-upload-form-full .h5p-btn--small {
  padding: 8px 16px;
  font-size: 13px;
  gap: 6px;
}
.h5p-upload-form-full .h5p-btn--choose-file {
  margin-bottom: 8px;
}
.h5p-upload-form-full .h5p-btn--disabled {
  pointer-events: none;
  opacity: 0.5;
}
.h5p-upload-form-full .h5p-file-input-hidden {
  display: none;
}
.h5p-upload-form-full .h5p-upload-actions {
  margin-top: 12px;
  padding-top: 0;
  border-top: none;
}
.h5p-upload-form-full .h5p-actions-row {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}
.h5p-upload-form-full .h5p-upload-notice {
  text-align: center;
  margin-top: 12px;
  color: #6b7280;
  font-size: 13px;
}

.h5p-filter-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  padding: 10px 15px;
  border-bottom: 1px solid #eee;
}

.h5p-bulk-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  padding: 8px 15px;
  background: #eff6ff;
  border-bottom: 2px solid #93c5fd;
  animation: h5p-bulk-bar-slide 0.15s ease-out;
}

@keyframes h5p-bulk-bar-slide {
  from {
    opacity: 0;
    transform: translateY(-4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.h5p-bulk-bar-left {
  display: flex;
  align-items: center;
  gap: 10px;
}

.h5p-bulk-bar-count {
  font-size: 13px;
  color: #1e40af;
}

.h5p-bulk-bar-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.h5p-bulk-checkbox-col {
  width: 36px;
  text-align: center;
  padding: 6px 4px !important;
}
.h5p-bulk-checkbox-col input[type=checkbox] {
  cursor: pointer;
  width: 16px;
  height: 16px;
  accent-color: #6366f1;
}

.h5p-btn-disabled {
  opacity: 0.65;
  cursor: not-allowed;
  pointer-events: none;
  background: #f3f4f6 !important;
  border-color: #d1d5db !important;
  color: #9ca3af !important;
}

.h5p-btn-sm {
  font-size: 12px !important;
  padding: 4px 10px !important;
}

.h5p-btn-outline-repair {
  background: white;
  border: 1px solid #3b82f6;
  color: #3b82f6;
}
.h5p-btn-outline-repair:hover {
  background: #eff6ff;
  border-color: #2563eb;
  color: #2563eb;
}

.h5p-diagnostics-table th,
.h5p-diagnostics-table td {
  text-align: center;
}
.h5p-diagnostics-table td:nth-child(3) {
  text-align: left;
}

.h5p-diagnostics-lgc-note {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 15px;
  border-top: 1px solid #eee;
  font-size: 12px;
}

.h5p-admin-guide {
  padding: 0;
}

.h5p-guide-banner {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  background: #f0f4ff;
  border-bottom: 1px solid #d4daf0;
  border-radius: 0;
  margin-bottom: 0;
  overflow: hidden;
}

.h5p-guide-banner-item {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 12px 16px;
  font-size: 12px;
  color: #444;
  line-height: 1.5;
  border-right: 1px solid #d4daf0;
}
.h5p-guide-banner-item:last-child {
  border-right: none;
}
.h5p-guide-banner-item .fa {
  color: #6366f1;
  margin-top: 2px;
  flex-shrink: 0;
}

.h5p-guide-section {
  padding: 16px 20px;
  border-bottom: 1px solid #e5e7eb;
}
.h5p-guide-section:last-child {
  border-bottom: none;
}

.h5p-guide-section-title {
  font-size: 14px;
  font-weight: 600;
  color: #1e1e2e;
  margin: 0 0 12px 0;
  padding-bottom: 0;
  border-bottom: none;
  letter-spacing: 0.01em;
}
.h5p-guide-section-title .fa {
  color: #6366f1;
  width: 18px;
  text-align: center;
  margin-right: 6px;
}

.h5p-guide-columns-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  align-items: start;
}
.h5p-guide-columns-2 > div {
  padding: 0 20px;
  border-right: 1px solid #e5e7eb;
}
.h5p-guide-columns-2 > div:first-child {
  padding-left: 0;
}
.h5p-guide-columns-2 > div:last-child {
  border-right: none;
  padding-right: 0;
}

.h5p-guide-desc {
  font-size: 13px;
  color: #555;
  line-height: 1.5;
  margin: 0 0 12px 0;
}

.h5p-guide-table {
  width: 100%;
  font-size: 12px;
  border-collapse: collapse;
}
.h5p-guide-table td {
  padding: 6px 10px;
  border-bottom: 1px solid #eee;
  color: #555;
}
.h5p-guide-table td:first-child {
  white-space: nowrap;
  font-weight: 500;
}
.h5p-guide-table tr:last-child td {
  border-bottom: none;
}
.h5p-guide-table code {
  background: #2d2d2d;
  color: #f8f8f2;
  padding: 2px 6px;
  border-radius: 3px;
  font-family: "Courier New", monospace;
  font-size: 11px;
}

.h5p-guide-cmd-table {
  width: calc(100% + 40px);
  margin-left: -20px;
  margin-right: -20px;
  border-collapse: collapse;
  font-size: 13px;
}
.h5p-guide-cmd-table thead th {
  text-align: left;
  font-size: 11px;
  font-weight: 600;
  color: #6B7280;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 8px 20px;
  border-bottom: 2px solid #e5e7eb;
  background: #fafafa;
}
.h5p-guide-cmd-table tbody td {
  padding: 8px 20px;
  border-bottom: 1px solid #f0f0f0;
  color: #444;
  vertical-align: middle;
}
.h5p-guide-cmd-table tbody tr:hover {
  background: #f8f9ff;
}
.h5p-guide-cmd-table code {
  background: #1e1e2e;
  color: #a5f3c4;
  padding: 3px 8px;
  border-radius: 4px;
  font-family: "Courier New", monospace;
  font-size: 12px;
  white-space: nowrap;
}

.h5p-guide-cmd-separator td {
  padding: 0 !important;
  border-bottom: 2px solid #e5e7eb !important;
  height: 4px;
}

.h5p-guide-tag {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 10px;
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.h5p-guide-tag-cleanup {
  background: #fef3c7;
  color: #92400e;
}

.h5p-guide-tag-library {
  background: #e0e7ff;
  color: #3730a3;
}

.h5p-guide-tag-content {
  background: #d1fae5;
  color: #065f46;
}

.h5p-guide-state-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.h5p-guide-state-item {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 13px;
  color: #444;
  line-height: 1.4;
}
.h5p-guide-state-item .beanstalk-status-badge {
  min-width: 110px;
  text-align: center;
}

.h5p-section-header-neutral {
  background-color: #f8f9fa;
  border: 1px solid #e0e0e0;
  border-radius: 6px 6px 0 0;
  color: #555;
}
.h5p-section-header-neutral .fa {
  color: #666;
}

.h5p-diagnostics-code-inline {
  background-color: #2d2d2d;
  color: #f8f8f2;
  padding: 3px 8px;
  border-radius: 4px;
  font-family: "Courier New", monospace;
  font-size: 12px;
  white-space: nowrap;
}

.h5p-compatibility-mismatches {
  display: inline-block;
  text-align: left;
  min-width: 200px;
  max-height: 300px;
  overflow-y: auto;
  overflow-x: hidden;
  padding-right: 4px;
}

.h5p-mismatch-item {
  margin-bottom: 12px;
  padding: 8px;
  background-color: #f8f9fa;
  border-radius: 6px;
}
.h5p-mismatch-item:last-child {
  margin-bottom: 0;
}
.h5p-mismatch-item .h5p-code-inline {
  display: block;
  margin-bottom: 8px;
  font-weight: 600;
  font-size: 13px;
}
.h5p-mismatch-item .h5p-flex {
  justify-content: flex-start;
  gap: 10px;
}
.h5p-mismatch-item .h5p-flex .h5p-badge {
  font-size: 12px;
  padding: 4px 8px;
  white-space: nowrap;
}
.h5p-mismatch-item .h5p-flex .fa-arrow-right {
  font-size: 12px;
  opacity: 0.5;
}

.h5p-version-history {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  padding: 0 20px;
}
.h5p-version-history * {
  text-decoration: none;
}

.h5p-flex {
  display: flex;
}

.h5p-items-center {
  align-items: center;
}

.h5p-justify-between {
  justify-content: space-between;
}

.h5p-gap-10 {
  gap: 10px;
}

.h5p-m-0 {
  margin: 0;
}

.h5p-mb-5 {
  margin-bottom: 5px;
}

.h5p-mb-20 {
  margin-bottom: 20px;
}

.h5p-mt-15 {
  margin-top: 15px;
}

.h5p-text-muted {
  color: #6c757d;
}

.h5p-p-20 {
  padding: 20px;
}

.h5p-text-center {
  text-align: center;
}

.h5p-icon-primary-lg {
  color: #0096CB;
  font-size: 20px;
}

.h5p-icon-primary {
  color: #0096CB;
}

.h5p-icon-warning-lg {
  color: #F59E0B;
  font-size: 20px;
}

.h5p-spinner-lg {
  font-size: 48px;
  color: #0096CB;
}

.h5p-loading-text {
  margin-top: 20px;
  color: #6c757d;
  font-size: 16px;
}

.h5p-badge {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  margin-left: 6px;
  flex-shrink: 0;
}

.h5p-badge-header {
  background: rgba(255, 255, 255, 0.18);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.3);
}

.h5p-badge-success {
  background: #D1FAE5;
  color: #14A769;
}

.h5p-badge-info {
  background: #E0F2FE;
  color: #0284C7;
}

.h5p-badge-default {
  background: #F3F4F6;
  color: #6B7280;
}

.h5p-version-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 20px;
  margin-bottom: 20px;
}

.h5p-version-card {
  background: #fff;
  border: 2px solid #e0e0e0;
  border-radius: 8px;
  transition: all 0.2s ease;
  display: flex;
  flex-direction: column;
  cursor: pointer;
}
.h5p-version-card:hover {
  border-color: #0096CB;
  box-shadow: 0 4px 12px rgba(0, 150, 203, 0.15);
  transform: translateY(-2px);
}
.h5p-version-card.h5p-version-latest {
  border-color: #14A769;
  background: linear-gradient(to bottom, #f8fdf9 0%, #fff 100%);
}
.h5p-version-card.h5p-version-latest .h5p-version-card-header {
  border-bottom-color: #14A769;
}
.h5p-version-card.h5p-version-selected {
  border-color: #0096CB;
  background: linear-gradient(to bottom, #f0f9ff 0%, #fff 100%);
}
.h5p-version-card.h5p-version-selected .h5p-version-card-header {
  border-bottom-color: #0096CB;
}

.h5p-version-card-header {
  padding: 15px;
  border-bottom: 2px solid #f0f0f0;
  background: #fafafa;
  border-radius: 6px 6px 0 0;
}
.h5p-version-card-header * {
  text-decoration: none !important;
}
.h5p-version-card-header .h5p-flex {
  gap: 12px;
  align-items: center;
}

.h5p-version-card-body {
  padding: 15px;
  flex: 1;
}

.h5p-version-card-footer {
  padding: 12px 15px;
  border-top: 1px solid #f0f0f0;
  background: #fafafa;
  display: flex;
  gap: 10px;
  align-items: center;
  border-radius: 0 0 6px 6px;
}

.h5p-version-number {
  font-weight: 600;
  font-size: 1.1em;
  color: #000145;
  text-decoration: none;
}

.h5p-version-meta {
  font-size: 0.9em;
  color: #666;
  text-decoration: none;
}
.h5p-version-meta i {
  margin-right: 5px;
  color: #999;
}

.h5p-version-notes {
  font-style: italic;
  color: #666;
  font-size: 0.9em;
  padding: 8px 10px;
  background: #f8f8f8;
  border-left: 3px solid #0096CB;
  border-radius: 4px;
}

.h5p-version-checkbox {
  width: 16px;
  height: 16px;
  cursor: pointer;
  margin: 0;
  flex-shrink: 0;
}

.h5p-ml-auto {
  margin-left: auto;
}

.h5p-compare-bar {
  padding: 10px 20px;
  background: #f0f9ff;
  border-top: 1px solid #bae6fd;
  border-bottom: 1px solid #bae6fd;
  margin-left: -20px;
  margin-right: -20px;
}

.h5p-compare-hint {
  font-size: 13px;
  color: #6c757d;
}
.h5p-compare-hint i.fa-check-circle {
  color: #14A769;
}

.h5p-compare-value-single {
  padding: 12px;
  border-radius: 8px;
}
.h5p-compare-value-single .h5p-label {
  font-weight: 600;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  display: block;
  margin-bottom: 8px;
}
.h5p-compare-value-single code {
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 13px;
  display: block;
  word-break: break-all;
}

.h5p-mb-10 {
  margin-bottom: 10px;
}

.h5p-modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}

.h5p-modal {
  background: #fff;
  border-radius: 8px;
  max-width: 600px;
  width: 90%;
  max-height: 80vh;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.h5p-modal.h5p-modal-lg {
  max-width: 800px;
}
.h5p-modal.h5p-modal-xl {
  max-width: 1000px;
}

.h5p-modal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px 20px;
  border-bottom: 1px solid #e0e0e0;
  background: #f8f8f9;
}

.h5p-modal-close {
  background: none;
  border: none;
  font-size: 20px;
  cursor: pointer;
  color: #6c757d;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  transition: all 0.2s;
}
.h5p-modal-close:hover {
  background: rgba(0, 0, 0, 0.05);
  color: #000145;
}

.h5p-modal-body {
  padding: 20px;
  overflow-y: auto;
  flex: 1;
}

.h5p-modal-footer {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  padding: 15px 20px;
  border-top: 1px solid #e0e0e0;
  background: #f8f8f9;
}

.h5p-json-preview {
  background: #282c34;
  color: #abb2bf;
  padding: 15px;
  border-radius: 6px;
  overflow-x: auto;
  font-family: "Courier New", monospace;
  font-size: 13px;
  line-height: 1.5;
  max-height: 400px;
  margin: 0;
  overflow-y: auto;
}
.h5p-json-preview + .h5p-show-more-btn {
  border-radius: 0 0 6px 6px;
}

.h5p-collapsible-body .h5p-json-preview:not(:last-child) {
  border-radius: 6px 6px 0 0;
}

.h5p-version-preview-modal {
  background: white;
  border-radius: 8px;
  width: 90%;
  max-width: 900px;
  max-height: 90vh;
  display: flex;
  flex-direction: column;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
  animation: slideUp 0.3s ease-out;
}

.h5p-version-preview-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 25px;
  border-bottom: 2px solid #e9ecef;
  background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);
  border-radius: 8px 8px 0 0;
}
.h5p-version-preview-header h3 {
  margin: 0;
  color: #000145;
  font-size: 20px;
  font-weight: 600;
}

.h5p-preview-close {
  background: none;
  border: none;
  font-size: 24px;
  color: #6c757d;
  cursor: pointer;
  padding: 5px 10px;
  transition: all 0.2s;
  border-radius: 4px;
}
.h5p-preview-close:hover {
  background: rgba(0, 0, 0, 0.05);
  color: #000145;
}

.h5p-version-preview-body {
  flex: 1;
  overflow-y: auto;
  padding: 25px;
}

.h5p-loading-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 60px 20px;
}

.h5p-preview-content {
  display: flex;
  flex-direction: column;
  gap: 25px;
}

.h5p-info-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 15px;
}

.h5p-info-card {
  background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);
  border: 1px solid #e9ecef;
  border-radius: 8px;
  padding: 15px;
  transition: all 0.2s;
}
.h5p-info-card:hover {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  transform: translateY(-2px);
}

.h5p-info-label {
  font-size: 12px;
  color: #6c757d;
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 0.5px;
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 6px;
}
.h5p-info-label i {
  color: #0096CB;
}

.h5p-info-value {
  font-size: 15px;
  color: #000145;
  font-weight: 500;
}

.h5p-section {
  background: #ffffff;
  border: 1px solid #e9ecef;
  border-radius: 8px;
  padding: 20px;
}

.h5p-section-title {
  margin: 0 0 15px 0;
  color: #000145;
  font-size: 16px;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 8px;
}
.h5p-section-title i {
  color: #0096CB;
}

.h5p-section-size-hint {
  font-size: 12px;
  font-weight: 400;
  color: #6c757d;
  margin-left: 2px;
}

.h5p-collapsible-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  padding: 2px 0;
  border-radius: 4px;
  transition: background 0.15s;
}
.h5p-collapsible-header:hover {
  background: #f8f9fa;
  margin: -2px -6px;
  padding: 4px 6px;
}

.h5p-collapsible-chevron {
  font-size: 14px;
  color: #6c757d;
  transition: transform 0.2s ease;
  flex-shrink: 0;
}

.h5p-collapsible-body {
  margin-top: 15px;
}

.h5p-show-more-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  padding: 8px 16px;
  margin-top: 0;
  background: #1e2127;
  color: #abb2bf;
  border: 1px solid #3e4451;
  border-top: 1px dashed #3e4451;
  border-radius: 0 0 6px 6px;
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
}
.h5p-show-more-btn:hover {
  background: #2c313a;
  color: #e5c07b;
}
.h5p-show-more-btn i {
  font-size: 11px;
}

.h5p-notes-box {
  background: #f8f9fa;
  border-left: 4px solid #0096CB;
  padding: 15px;
  border-radius: 4px;
  color: #495057;
  line-height: 1.6;
}

.h5p-diff-cards {
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
}

.h5p-diff-card {
  flex: 1;
  min-width: 120px;
  padding: 15px;
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  transition: all 0.2s;
}
.h5p-diff-card i {
  font-size: 24px;
}
.h5p-diff-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.h5p-diff-added {
  background: linear-gradient(135deg, #d4edda 0%, #c3e6cb 100%);
  border: 1px solid #28a745;
}
.h5p-diff-added i,
.h5p-diff-added .h5p-diff-count,
.h5p-diff-added .h5p-diff-label {
  color: #155724;
}

.h5p-diff-removed {
  background: linear-gradient(135deg, #f8d7da 0%, #f5c6cb 100%);
  border: 1px solid #dc3545;
}
.h5p-diff-removed i,
.h5p-diff-removed .h5p-diff-count,
.h5p-diff-removed .h5p-diff-label {
  color: #721c24;
}

.h5p-diff-changed {
  background: linear-gradient(135deg, #fff3cd 0%, #ffeaa7 100%);
  border: 1px solid #ffc107;
}
.h5p-diff-changed i,
.h5p-diff-changed .h5p-diff-count,
.h5p-diff-changed .h5p-diff-label {
  color: #856404;
}

.h5p-diff-count {
  font-size: 24px;
  font-weight: 700;
}

.h5p-diff-label {
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 0.5px;
}

.h5p-empty-state {
  text-align: center;
  padding: 40px 20px;
  color: #6c757d;
}
.h5p-empty-state i {
  font-size: 48px;
  margin-bottom: 15px;
  display: block;
}
.h5p-empty-state p {
  margin: 0;
  font-size: 14px;
}

.h5p-version-preview-footer {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  padding: 20px 25px;
  border-top: 1px solid #e9ecef;
  background: #f8f9fa;
  border-radius: 0 0 8px 8px;
}

@keyframes slideUp {
  from {
    opacity: 0;
    transform: translateY(50px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.h5p-compare-modal {
  background: white;
  border-radius: 12px;
  width: 90%;
  max-width: 1000px;
  max-height: 90vh;
  display: flex;
  flex-direction: column;
  box-shadow: 0 20px 60px rgba(0, 1, 69, 0.15);
  animation: slideUp 0.3s ease-out;
}

.h5p-compare-modal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px 30px;
  border-bottom: 2px solid #0096CB;
  background: linear-gradient(135deg, #f0f9ff 0%, #ffffff 100%);
  border-radius: 12px 12px 0 0;
}
.h5p-compare-modal-header h3 {
  margin: 0;
  color: #000145;
  font-size: 20px;
  font-weight: 600;
}

.h5p-compare-modal-body {
  flex: 1;
  overflow-y: auto;
  padding: 30px;
  background: #fafbfc;
}

.h5p-compare-summary-cards {
  display: flex;
  gap: 12px;
  margin-bottom: 20px;
}

.h5p-compare-summary-card {
  background: white;
  border-radius: 8px;
  padding: 10px 18px;
  display: flex;
  align-items: center;
  gap: 10px;
  border: 2px solid transparent;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);
}
.h5p-compare-summary-card i {
  font-size: 18px;
}
.h5p-compare-summary-card .h5p-card-content {
  display: flex;
  align-items: baseline;
  gap: 6px;
}
.h5p-compare-summary-card .h5p-card-value {
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
}
.h5p-compare-summary-card .h5p-card-label {
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 0.5px;
  opacity: 0.8;
}

.h5p-card-added {
  border-color: #14A769;
  background: linear-gradient(135deg, #f0fdf4 0%, #ffffff 100%);
}
.h5p-card-added i,
.h5p-card-added .h5p-card-value,
.h5p-card-added .h5p-card-label {
  color: #14A769;
}

.h5p-card-removed {
  border-color: #dc3545;
  background: linear-gradient(135deg, #fef2f2 0%, #ffffff 100%);
}
.h5p-card-removed i,
.h5p-card-removed .h5p-card-value,
.h5p-card-removed .h5p-card-label {
  color: #dc3545;
}

.h5p-card-changed {
  border-color: #F59E0B;
  background: linear-gradient(135deg, #fffbeb 0%, #ffffff 100%);
}
.h5p-card-changed i,
.h5p-card-changed .h5p-card-value,
.h5p-card-changed .h5p-card-label {
  color: #F59E0B;
}

.h5p-compare-section {
  background: white;
  border-radius: 10px;
  padding: 24px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
  margin-bottom: 20px;
}
.h5p-compare-section:last-child {
  margin-bottom: 0;
}

.h5p-compare-section-title {
  margin: 0 0 20px 0;
  color: #000145;
  font-size: 16px;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 10px;
  padding-bottom: 12px;
  border-bottom: 2px solid #f0f0f0;
}
.h5p-collapsible-header .h5p-compare-section-title {
  margin: 0;
  padding-bottom: 0;
  border-bottom: none;
}
.h5p-compare-section-title i {
  font-size: 18px;
}
.h5p-compare-section-title i.fa-pencil {
  color: #F59E0B;
}
.h5p-compare-section-title i.fa-plus-circle {
  color: #14A769;
}
.h5p-compare-section-title i.fa-minus-circle {
  color: #dc3545;
}

.h5p-compare-modal-footer {
  display: flex;
  justify-content: flex-end;
  padding: 20px 30px;
  border-top: 1px solid #e9ecef;
  background: #f8f9fa;
  border-radius: 0 0 12px 12px;
}

.h5p-rollback-modal {
  background: white;
  border-radius: 12px;
  width: 90%;
  max-width: 580px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 20px 60px rgba(0, 1, 69, 0.15);
  animation: slideUp 0.3s ease-out;
}

.h5p-rollback-modal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px 30px;
  border-bottom: 2px solid #F59E0B;
  background: linear-gradient(135deg, #fffbeb 0%, #ffffff 100%);
  border-radius: 12px 12px 0 0;
}
.h5p-rollback-modal-header h3 {
  margin: 0;
  color: #000145;
  font-size: 20px;
  font-weight: 600;
}

.h5p-rollback-modal-body {
  padding: 30px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.h5p-rollback-info-card {
  background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);
  border: 1px solid #e9ecef;
  border-radius: 10px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.h5p-rollback-question {
  font-size: 16px;
  color: #000145;
  line-height: 1.6;
}
.h5p-rollback-question strong {
  color: #F59E0B;
  font-weight: 600;
}

.h5p-rollback-warning {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 16px;
  background: #e0f2fe;
  border-left: 4px solid #0096CB;
  border-radius: 6px;
  font-size: 14px;
  color: #0c4a6e;
  line-height: 1.5;
}
.h5p-rollback-warning i {
  color: #0096CB;
  font-size: 18px;
  margin-top: 2px;
  flex-shrink: 0;
}

.h5p-form-group {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.h5p-form-label {
  font-size: 14px;
  font-weight: 600;
  color: #000145;
  display: flex;
  align-items: center;
  gap: 8px;
}
.h5p-form-label i {
  color: #0096CB;
}

.h5p-form-input {
  width: 100%;
  padding: 12px 16px;
  border: 2px solid #e9ecef;
  border-radius: 8px;
  font-size: 14px;
  transition: all 0.2s;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}
.h5p-form-input:focus {
  outline: none;
  border-color: #0096CB;
  box-shadow: 0 0 0 3px rgba(0, 150, 203, 0.1);
}
.h5p-form-input::-moz-placeholder {
  color: #9ca3af;
}
.h5p-form-input::placeholder {
  color: #9ca3af;
}

.h5p-rollback-modal-footer {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  padding: 20px 30px;
  border-top: 1px solid #e9ecef;
  background: #f8f9fa;
  border-radius: 0 0 12px 12px;
}

.h5p-compare-summary {
  background: #f8f8f9;
  padding: 15px;
  border-radius: 8px;
}

.h5p-compare-stat {
  text-align: center;
}

.h5p-stat-value {
  display: block;
  font-size: 2em;
  font-weight: bold;
}

.h5p-stat-label {
  font-size: 0.85em;
  color: #666;
}

.h5p-compare-section h5 {
  margin-bottom: 10px;
}

.h5p-compare-row {
  padding: 16px;
  border-bottom: 1px solid #e9ecef;
  transition: all 0.2s;
}
.h5p-compare-row:hover {
  background: #f8f9fa;
}
.h5p-compare-row:last-child {
  border-bottom: none;
}

.h5p-compare-path {
  font-family: "Courier New", monospace;
  font-weight: 600;
  color: #000145;
  margin-bottom: 12px;
  font-size: 13px;
  padding: 6px 10px;
  background: #f1f5f9;
  border-radius: 4px;
  display: inline-block;
}

.h5p-compare-values {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.h5p-compare-old,
.h5p-compare-new {
  padding: 12px;
  border-radius: 8px;
}

.h5p-compare-old {
  background: linear-gradient(135deg, #fef2f2 0%, #ffffff 100%);
  border: 1px solid #fecaca;
}
.h5p-compare-old .h5p-label {
  color: #dc2626;
  font-weight: 600;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  display: block;
  margin-bottom: 8px;
}
.h5p-compare-old code {
  background: #fee2e2;
  color: #991b1b;
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 13px;
  display: block;
  word-break: break-all;
}

.h5p-compare-new {
  background: linear-gradient(135deg, #f0fdf4 0%, #ffffff 100%);
  border: 1px solid #bbf7d0;
}
.h5p-compare-new .h5p-label {
  color: #16a34a;
  font-weight: 600;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  display: block;
  margin-bottom: 8px;
}
.h5p-compare-new code {
  background: #dcfce7;
  color: #166534;
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 13px;
  display: block;
  word-break: break-all;
}

.h5p-diff-summary {
  list-style: none;
  padding: 0;
  margin: 0;
}
.h5p-diff-summary li {
  padding: 5px 0;
}

.h5p-diff-added {
  color: #14A769;
}

.h5p-diff-removed {
  color: #dc3545;
}

.h5p-diff-changed {
  color: #F59E0B;
}

.h5p-library-locks-panel {
  border: 1px solid #E8E8F2;
  border-radius: 8px;
  background: #fff;
}
.h5p-library-locks-panel.h5p-library-locks-empty {
  background: #FAFAFA;
}

.h5p-lock-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 12px;
  margin-left: 10px;
  vertical-align: middle;
}
.h5p-lock-status-badge i {
  font-size: 11px;
}
.h5p-lock-status-badge.h5p-lock-status-ok {
  background: rgba(20, 167, 105, 0.1);
  color: #14A769;
}
.h5p-lock-status-badge.h5p-lock-status-warning {
  background: rgba(245, 158, 11, 0.1);
  color: #D97706;
}
.h5p-lock-status-badge.h5p-lock-status-error {
  background: rgba(220, 53, 69, 0.1);
  color: #DC3545;
}
.h5p-lock-status-badge.h5p-lock-status-none {
  background: rgba(107, 114, 128, 0.1);
  color: #6B7280;
}

.h5p-lock-group {
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #E8E8F2;
}
.h5p-lock-group:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}

.h5p-lock-group-title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 600;
  color: #000145;
  margin: 0 0 10px 0;
}
.h5p-lock-group-title i {
  color: #0096CB;
  width: 16px;
  text-align: center;
}

.h5p-lock-count {
  font-weight: 400;
  color: #6B7280;
  font-size: 12px;
}

.h5p-lock-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.h5p-lock-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  background: #F8F8F9;
  border-radius: 6px;
  flex-wrap: wrap;
}
.h5p-lock-item.h5p-lock-item-compact {
  padding: 6px 10px;
  background: #FAFAFA;
}

.h5p-lock-library-name {
  font-family: "SF Mono", Monaco, Consolas, monospace;
  font-size: 13px;
  font-weight: 500;
  color: #000145;
  flex: 1;
  min-width: 150px;
}

.h5p-lock-version {
  font-family: "SF Mono", Monaco, Consolas, monospace;
  font-size: 12px;
  color: #6B7280;
  background: #E8E8F2;
  padding: 2px 8px;
  border-radius: 4px;
}

.h5p-lock-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  font-weight: 600;
  padding: 3px 8px;
  border-radius: 10px;
  white-space: nowrap;
}
.h5p-lock-badge i {
  font-size: 10px;
}
.h5p-lock-badge.h5p-lock-badge-matched {
  background: rgba(20, 167, 105, 0.1);
  color: #14A769;
}
.h5p-lock-badge.h5p-lock-badge-newer {
  background: rgba(0, 150, 203, 0.1);
  color: #0096CB;
}
.h5p-lock-badge.h5p-lock-badge-older {
  background: rgba(245, 158, 11, 0.1);
  color: #D97706;
}
.h5p-lock-badge.h5p-lock-badge-missing {
  background: rgba(220, 53, 69, 0.1);
  color: #DC3545;
}
.h5p-lock-badge.h5p-lock-badge-unknown {
  background: rgba(107, 114, 128, 0.1);
  color: #6B7280;
}

.h5p-lock-mismatch-alert {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px;
  background: rgba(245, 158, 11, 0.08);
  border: 1px solid rgba(245, 158, 11, 0.2);
  border-radius: 6px;
  margin-top: 16px;
  font-size: 13px;
  color: #000145;
}
.h5p-lock-mismatch-alert > i {
  color: #D97706;
  font-size: 16px;
  margin-top: 2px;
}
.h5p-lock-mismatch-alert strong {
  font-weight: 600;
}
.h5p-lock-mismatch-alert .h5p-text-danger {
  color: #DC3545;
}
.h5p-lock-mismatch-alert .h5p-text-warning {
  color: #D97706;
}

#libraryDetailsModal .modal-dialog {
  width: 90%;
  max-width: 750px;
  min-width: 400px;
}
#libraryDetailsModal .modal-content {
  display: flex;
  flex-direction: column;
  max-height: 85vh;
  min-height: 250px;
  resize: both;
  overflow: hidden;
  border-radius: 12px;
  border: none;
}
#libraryDetailsModal .modal-header {
  flex-shrink: 0;
  background: linear-gradient(180deg, #0096CB, #0087B6);
  border-radius: 12px 12px 0 0;
  padding: 16px 20px;
  border-bottom: none;
}
#libraryDetailsModal .modal-header .modal-title {
  color: white;
  font-weight: 600;
  font-size: 17px;
}
#libraryDetailsModal .modal-header .modal-title i {
  color: white;
  opacity: 0.9;
  margin-right: 10px;
}
#libraryDetailsModal .modal-header .close {
  color: white;
  opacity: 0.8;
  font-size: 26px;
  text-shadow: none;
  margin-top: -2px;
}
#libraryDetailsModal .modal-header .close:hover {
  opacity: 1;
}
#libraryDetailsModal .modal-body {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  padding: 20px;
}
#libraryDetailsModal .modal-body > p {
  margin: 0 0 10px 0;
  font-size: 14px;
  color: #495057;
}
#libraryDetailsModal .modal-body > p strong {
  color: #000145;
}
#libraryDetailsModal .modal-body > p code {
  background: #e9ecef;
  padding: 2px 6px;
  border-radius: 4px;
  font-size: 13px;
}
#libraryDetailsModal .modal-body .table {
  margin-top: 15px;
  margin-bottom: 0;
}
#libraryDetailsModal .modal-body .table thead th {
  background: #f8f9fa;
  border-bottom: 2px solid #e9ecef;
  font-weight: 600;
  color: #000145;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
#libraryDetailsModal .modal-body .table tbody td {
  vertical-align: middle;
  font-size: 14px;
}
#libraryDetailsModal .modal-body .table tbody td code {
  background: #e9ecef;
  padding: 2px 6px;
  border-radius: 4px;
  font-size: 12px;
}
#libraryDetailsModal .modal-body .table.table-striped > tbody > tr:nth-of-type(odd) {
  background: #f8f9fa;
}
#libraryDetailsModal .modal-body .text-muted {
  color: #6c757d;
}
#libraryDetailsModal .modal-body .text-muted i {
  margin-right: 4px;
}
#libraryDetailsModal .modal-footer {
  flex-shrink: 0;
  background: #f8f9fa;
  border-top: 1px solid #e9ecef;
  padding: 12px 20px;
  border-radius: 0 0 12px 12px;
}

@media (max-width: 768px) {
  .h5p-lock-item {
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
  }
  .h5p-lock-library-name {
    min-width: 100%;
  }
  .h5p-lock-status-badge {
    margin-left: 0;
    margin-top: 8px;
  }
  #libraryDetailsModal .modal-dialog {
    width: 95%;
    margin: 10px auto;
  }
  #libraryDetailsModal .modal-body .table {
    font-size: 13px;
  }
}
.h5p-library-rollback {
  display: inline-block;
}

.h5p-library-rollback-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}

.h5p-library-rollback-modal {
  background: white;
  border-radius: 12px;
  width: 90%;
  max-width: 650px;
  min-width: 400px;
  min-height: 250px;
  max-height: 85vh;
  display: flex;
  flex-direction: column;
  box-shadow: 0 20px 60px rgba(0, 1, 69, 0.15);
  animation: h5p-modal-slide-up 0.3s ease-out;
  resize: both;
  overflow: hidden;
}

@keyframes h5p-modal-slide-up {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.h5p-library-rollback-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 20px;
  background: linear-gradient(180deg, #0096CB, #0087B6);
  border-radius: 12px 12px 0 0;
  flex-shrink: 0;
}
.h5p-library-rollback-header h4 {
  margin: 0;
  color: white;
  font-size: 17px;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 10px;
}
.h5p-library-rollback-header h4 i {
  color: white;
  opacity: 0.9;
}

.h5p-library-rollback-close {
  background: none;
  border: none;
  font-size: 24px;
  cursor: pointer;
  color: white;
  opacity: 0.8;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  transition: all 0.2s;
}
.h5p-library-rollback-close:hover {
  opacity: 1;
  background: rgba(255, 255, 255, 0.15);
}

.h5p-library-rollback-body {
  padding: 24px;
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
}

.h5p-library-rollback-loading {
  text-align: center;
  padding: 40px;
  color: #6c757d;
}
.h5p-library-rollback-loading i {
  display: block;
  margin-bottom: 12px;
  color: #0096CB;
}
.h5p-library-rollback-loading p {
  margin: 0;
  font-size: 14px;
}

.h5p-library-rollback-current {
  margin-bottom: 16px;
  padding: 12px 16px;
  background: #f8f9fa;
  border-radius: 8px;
  font-size: 14px;
  color: #495057;
  flex-shrink: 0;
}
.h5p-library-rollback-current strong {
  color: #000145;
}

.h5p-library-rollback-content {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  overflow: hidden;
}

.h5p-library-rollback-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  padding-right: 8px;
  margin-right: -8px;
}

.h5p-library-rollback-item {
  background: white;
  border: 1px solid #e9ecef;
  border-radius: 8px;
  padding: 12px 14px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  transition: all 0.2s;
  flex-shrink: 0;
}
.h5p-library-rollback-item:hover {
  border-color: #0096CB;
  box-shadow: 0 2px 8px rgba(0, 150, 203, 0.1);
}
.h5p-library-rollback-item.is-selected {
  background: #e0f7ff;
  border-color: #0096CB;
}

.h5p-library-rollback-item-info {
  flex: 1;
  min-width: 0;
  overflow: hidden;
}

.h5p-library-rollback-item-actions {
  flex-shrink: 0;
  white-space: nowrap;
}

.h5p-library-rollback-version {
  font-weight: 600;
  color: #000145;
  font-size: 14px;
}

.h5p-library-rollback-date {
  margin-left: 8px;
  font-size: 11px;
  color: #6c757d;
}

.h5p-library-rollback-meta {
  display: block;
  margin-top: 3px;
  font-size: 11px;
  color: #6c757d;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.h5p-library-rollback-empty {
  padding: 16px;
  background: #e0f2fe;
  border-left: 4px solid #0096CB;
  border-radius: 6px;
  color: #0c4a6e;
}
.h5p-library-rollback-empty i {
  margin-right: 8px;
}
.h5p-library-rollback-empty p {
  margin: 8px 0 0;
  font-size: 12px;
  opacity: 0.8;
}

.h5p-library-rollback-warning {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-top: 16px;
  padding: 14px 16px;
  background: #fffbeb;
  border-left: 4px solid #F59E0B;
  border-radius: 6px;
  font-size: 14px;
  color: #78350f;
  line-height: 1.5;
  flex-shrink: 0;
}
.h5p-library-rollback-warning i {
  color: #F59E0B;
  font-size: 16px;
  flex-shrink: 0;
  margin-top: 2px;
}

.h5p-library-rollback-footer {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  padding: 16px 24px;
  border-top: 1px solid #e9ecef;
  background: #f8f9fa;
  border-radius: 0 0 12px 12px;
}

.h5p-library-rollback-error {
  padding: 16px;
  background: #fef2f2;
  border-left: 4px solid #ef4444;
  border-radius: 6px;
  color: #7f1d1d;
}
.h5p-library-rollback-error i {
  margin-right: 8px;
}

.h5p-library-rollback-success {
  padding: 16px;
  background: #f0fdf4;
  border-left: 4px solid #14A769;
  border-radius: 6px;
  color: #14532d;
}
.h5p-library-rollback-success i {
  margin-right: 8px;
  color: #14A769;
}

.h5p-library-manager {
  font-family: Inter, sans-serif;
}

.status-alert {
  border-radius: 12px;
  padding: 20px;
  margin-bottom: 20px;
}
.status-alert.status-success {
  background: #ECFDF5;
  border: 1px solid #14A769;
  color: #065F46;
}
.status-alert.status-error {
  background: #FEF2F2;
  border: 1px solid #DC2626;
  color: #991B1B;
}
.status-alert.status-info {
  background: #F0F9FF;
  border: 1px solid #0096CB;
  color: #0C4A6E;
}
.status-alert.status-warning {
  background: #FEF3C7;
  border: 1px solid #F59E0B;
  color: #92400E;
}

.status-content {
  display: flex;
  align-items: center;
  gap: 12px;
}

.status-icon {
  font-size: 24px;
}
.status-success .status-icon {
  color: #14A769;
}
.status-error .status-icon {
  color: #DC2626;
}
.status-info .status-icon {
  color: #0096CB;
}

.status-title {
  display: block;
  font-size: 16px;
}

.status-message {
  font-size: 13px;
}

.action-buttons {
  display: flex;
  gap: 16px;
  justify-content: center;
  margin-top: 10px;
}

.btn-system-check {
  padding: 14px 32px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-weight: 600;
  font-size: 16px;
  background: linear-gradient(135deg, #0096CB 0%, #14A769 100%);
  color: white;
  border: none;
  cursor: pointer;
  transition: all 0.3s;
  box-shadow: 0 4px 12px rgba(0, 150, 203, 0.3);
}
.btn-system-check:hover:not(:disabled) {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0, 150, 203, 0.4);
}
.btn-system-check:disabled {
  opacity: 0.7;
  cursor: not-allowed;
  transform: none;
}

.btn-install-all,
.btn-scan,
.btn-verify {
  padding: 10px 20px;
  border-radius: 8px;
  display: none;
  align-items: center;
  gap: 8px;
  font-weight: 600;
  background: white;
  cursor: pointer;
  transition: all 0.2s;
}
.btn-install-all:disabled,
.btn-scan:disabled,
.btn-verify:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}

.btn-install-all {
  border: 1px solid #14A769;
  color: #14A769;
}
.btn-install-all:hover:not(:disabled) {
  background: #14A769;
  color: white;
}

.btn-scan {
  border: 1px solid #0096CB;
  color: #0096CB;
}
.btn-scan:hover:not(:disabled) {
  background: #0096CB;
  color: white;
}

.btn-verify {
  border: 1px solid #8B5CF6;
  color: #8B5CF6;
}
.btn-verify:hover:not(:disabled) {
  background: #8B5CF6;
  color: white;
}

.fade-enter-active,
.fade-leave-active {
  transition: opacity 0.3s;
}

.fade-enter,
.fade-leave-to {
  opacity: 0;
}

.sc-modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 9998;
  display: flex;
  align-items: center;
  justify-content: center;
}

.sc-modal-dialog {
  background: white;
  border-radius: 12px;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.15);
  max-width: 520px;
  width: 90%;
  z-index: 9999;
}

.sc-modal-header {
  background: linear-gradient(180deg, #0096CB, #0087B6);
  color: white;
  padding: 24px;
  border-radius: 12px 12px 0 0;
  border-bottom: none;
}

.sc-modal-title {
  margin: 0;
  font-size: 20px;
  font-weight: 600;
  font-family: Inter, sans-serif;
}

.sc-modal-body {
  padding: 24px;
  color: #000145;
}

.sc-modal-intro {
  margin: 0 0 16px 0;
  font-size: 15px;
  line-height: 1.6;
}

.sc-modal-checklist {
  list-style: none;
  padding: 0;
  margin: 0 0 16px 0;
}

.sc-modal-checklist-item {
  padding: 8px 0;
  font-size: 14px;
  display: flex;
  align-items: center;
}

.sc-modal-checklist-bullet {
  color: #0096CB;
  margin-right: 12px;
  font-size: 18px;
}

.sc-modal-tip {
  margin: 0;
  padding: 12px 16px;
  background: #E8F5E9;
  border-left: 3px solid #14A769;
  border-radius: 4px;
  font-size: 14px;
  color: #1B5E20;
}

.sc-modal-tip-icon {
  margin-right: 8px;
}

.sc-modal-footer {
  padding: 16px 24px 24px;
  display: flex;
  gap: 12px;
  justify-content: flex-end;
  border-top: 1px solid #E8E8F2;
}

.sc-btn-cancel {
  padding: 10px 24px;
  border: 1px solid #D1D5DB;
  background: white;
  color: #374151;
  border-radius: 6px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
}
.sc-btn-cancel:hover {
  background: #F3F4F6;
}

.sc-btn-run {
  padding: 10px 24px;
  border: none;
  background: linear-gradient(180deg, #0096CB, #0087B6);
  color: white;
  border-radius: 6px;
  font-weight: 600;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(0, 150, 203, 0.3);
  transition: all 0.2s;
}
.sc-btn-run:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 150, 203, 0.4);
}

.sc-status {
  font-weight: 600;
  font-size: 16px;
  margin-bottom: 18px;
}
.sc-status--success {
  color: #14A769;
}
.sc-status--warning {
  color: #F59E0B;
}
.sc-status--error {
  color: #DC2626;
}

.sc-report-card {
  margin-bottom: 18px;
  padding: 18px;
  background: white;
  border: 2px solid #E8E8F2;
  border-radius: 10px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.sc-report-card--summary {
  border-color: #0096CB;
}

.sc-report-title {
  font-weight: 700;
  margin-bottom: 14px;
  font-size: 16px;
  border-bottom: 2px solid #E8E8F2;
  padding-bottom: 10px;
  color: #000145;
}
.sc-report-title--summary {
  color: #0096CB;
  border-bottom-color: #E3F2FD;
}

.sc-step {
  padding: 12px;
  margin-bottom: 10px;
  border-radius: 6px;
  border-left: 4px solid #F59E0B;
  background: #FEF9C3;
}
.sc-step--success {
  border-left-color: #14A769;
  background: #F0FDF4;
}
.sc-step--error {
  border-left-color: #DC2626;
  background: #FEF2F2;
}
.sc-step--warning {
  border-left-color: #F59E0B;
  background: #FEF9C3;
}

.sc-step-name {
  font-size: 15px;
  font-weight: 600;
  margin-bottom: 4px;
}
.sc-step-name--success {
  color: #14A769;
}
.sc-step-name--error {
  color: #DC2626;
}
.sc-step-name--warning {
  color: #F59E0B;
}

.sc-step-detail {
  color: #4B5563;
  font-size: 13px;
  line-height: 1.6;
}

.sc-summary-row {
  font-size: 15px;
  color: #1F2937;
  margin-bottom: 10px;
  padding: 8px 12px;
  background: #F9FAFB;
  border-radius: 6px;
  display: flex;
  align-items: center;
}
.sc-summary-row--installed {
  background: #F0FDF4;
}

.sc-summary-icon {
  font-size: 20px;
  margin-right: 10px;
}

.sc-summary-value--primary {
  color: #0096CB;
}
.sc-summary-value--success {
  color: #14A769;
}
.sc-summary-value--dark {
  color: #000145;
}

.sc-summary-secondary {
  font-size: 14px;
  margin-bottom: 6px;
  line-height: 1.5;
}
.sc-summary-secondary--warning {
  color: #F59E0B;
}
.sc-summary-secondary--purple {
  color: #8B5CF6;
}
.sc-summary-secondary--success {
  color: #14A769;
}
.sc-summary-secondary--danger {
  color: #DC3545;
}
.sc-summary-secondary--muted {
  color: #9CA3AF;
}
.sc-summary-secondary--dark {
  color: #6B7280;
}

.sc-actions-section {
  margin-bottom: 14px;
}

.sc-actions-title {
  font-weight: 600;
  margin-bottom: 8px;
  color: #000145;
  font-size: 15px;
}

.sc-action-item {
  font-size: 13px;
  color: #6B7280;
  margin-bottom: 4px;
  line-height: 1.5;
}

.sc-action-overflow {
  font-size: 13px;
  color: #9CA3AF;
  font-style: italic;
}

.sc-issues-card {
  margin-bottom: 14px;
  padding: 14px;
  background: #FEF3C7;
  border-left: 4px solid #F59E0B;
  border-radius: 8px;
}

.sc-issues-title {
  font-weight: 600;
  margin-bottom: 8px;
  color: #92400E;
  font-size: 15px;
}

.sc-issue-item {
  font-size: 13px;
  color: #78350F;
  margin-bottom: 5px;
  line-height: 1.5;
}

.sc-refresh-prompt {
  margin-top: 14px;
  color: #6B7280;
  font-size: 14px;
}

.sc-msg-success {
  color: #14A769;
  font-weight: 600;
}

.sc-msg-error {
  color: #DC2626;
}

.sc-msg-warning {
  color: #F59E0B;
}

.sc-msg-muted {
  color: #6B7280;
}

.sc-msg-hint {
  margin-top: 12px;
  color: #6B7280;
  font-size: 13px;
}

.sc-msg-detail {
  margin-top: 8px;
}

.sc-msg-detail--error {
  margin-top: 8px;
  color: #DC2626;
}

.sc-msg-detail--muted {
  margin-top: 8px;
  color: #6B7280;
}

.sc-msg-detail--warning {
  color: #F59E0B;
  font-size: 12px;
}

.sc-msg-cancelled {
  color: #6B7280;
}

.sc-step-timeline {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 4px 0;
}

.sc-timeline-step {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 6px 10px;
  border-radius: 8px;
  font-size: 14px;
  line-height: 1.4;
  transition: background-color 0.2s ease;
}

.sc-timeline-icon {
  flex-shrink: 0;
  width: 18px;
  text-align: center;
  font-size: 15px;
}

.sc-timeline-label {
  font-weight: 600;
  white-space: nowrap;
}

.sc-timeline-desc {
  margin-left: auto;
  font-weight: 400;
  color: #6B7280;
  font-size: 13px;
  text-align: right;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 50%;
}

.sc-timeline-done {
  color: #14A769;
}
.sc-timeline-done .sc-timeline-icon {
  color: #14A769;
}
.sc-timeline-done .sc-timeline-label {
  color: #059669;
}

.sc-timeline-active {
  background: #EFF6FF;
  border: 1px solid #BFDBFE;
  color: #0096CB;
}
.sc-timeline-active .sc-timeline-icon {
  color: #0096CB;
}
.sc-timeline-active .sc-timeline-label {
  color: #000145;
}
.sc-timeline-active .sc-timeline-desc {
  color: #0096CB;
  font-weight: 500;
}

.sc-timeline-pending {
  color: #D1D5DB;
}
.sc-timeline-pending .sc-timeline-icon {
  color: #D1D5DB;
}
.sc-timeline-pending .sc-timeline-label {
  color: #9CA3AF;
  font-weight: 400;
}

.filter-panel {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
  min-width: 240px;
  max-width: 280px;
  overflow: visible;
}
.filter-panel .filter-panel-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 12px;
  border-bottom: 1px solid #eee;
  background: #f8f9fa;
  border-radius: 4px 4px 0 0;
}
.filter-panel .filter-panel-header .filter-panel-title {
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  color: #333;
  display: flex;
  align-items: center;
  gap: 6px;
}
.filter-panel .filter-panel-header .filter-panel-title i {
  color: #0096CB;
  font-size: 12px;
}
.filter-panel .filter-panel-header .filter-panel-collapse {
  background: none;
  border: none;
  padding: 4px 8px;
  cursor: pointer;
  color: #666;
  transition: color 0.2s;
}
.filter-panel .filter-panel-header .filter-panel-collapse:hover {
  color: #0096CB;
}
.filter-panel .filter-panel-body {
  padding: 10px 12px;
}
.filter-panel .filter-panel-body .filter-item {
  margin-bottom: 10px;
}
.filter-panel .filter-panel-body .filter-item:last-child {
  margin-bottom: 0;
}
.filter-panel .filter-panel-body .filter-item .filter-label {
  display: block;
  margin-bottom: 4px;
  font-size: 12px;
  font-weight: 500;
  color: #555;
}
.filter-panel .filter-panel-body .filter-item .filter-input,
.filter-panel .filter-panel-body .filter-item .filter-select {
  width: 100%;
  padding: 6px 10px;
  border: 1px solid #ddd;
  border-radius: 4px;
  font-size: 13px;
  transition: border-color 0.2s;
}
.filter-panel .filter-panel-body .filter-item .filter-input:focus,
.filter-panel .filter-panel-body .filter-item .filter-select:focus {
  outline: none;
  border-color: #0096CB;
  box-shadow: 0 0 0 2px rgba(0, 150, 203, 0.1);
}
.filter-panel .filter-panel-body .filter-item .filter-input:disabled,
.filter-panel .filter-panel-body .filter-item .filter-select:disabled {
  background-color: #f5f5f5;
  cursor: not-allowed;
  opacity: 0.6;
}
.filter-panel .filter-panel-body .filter-item .filter-input::-moz-placeholder, .filter-panel .filter-panel-body .filter-item .filter-select::-moz-placeholder {
  color: #999;
}
.filter-panel .filter-panel-body .filter-item .filter-input::placeholder,
.filter-panel .filter-panel-body .filter-item .filter-select::placeholder {
  color: #999;
}
.filter-panel .filter-panel-body .filter-item .filter-select {
  cursor: pointer;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23333' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 12px;
  padding-right: 32px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.filter-panel .filter-panel-body .filter-item .filter-hint {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  color: #777;
  font-style: italic;
}
.filter-panel .filter-panel-body .filter-multiselect {
  position: relative;
  width: 100%;
}
.filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-trigger {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  background-color: #fff;
  padding: 6px 10px;
  border: 1px solid #ddd;
  border-radius: 4px;
  font-size: 13px;
  transition: border-color 0.2s;
  min-height: 34px;
  width: 100%;
  box-sizing: border-box;
}
.filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-trigger:focus, .filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-trigger:hover {
  border-color: #0096CB;
  outline: none;
}
.filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-trigger .filter-multiselect-display {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #333;
}
.filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-trigger .filter-multiselect-arrow {
  font-size: 10px;
  color: #666;
  transition: transform 0.2s;
}
.filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-dropdown {
  position: fixed;
  z-index: 1050;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  display: none;
  min-width: 200px;
}
.filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-dropdown.open {
  display: block;
}
.filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-dropdown.dropdown-above {
  box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.15);
  overflow: hidden;
  flex-direction: column-reverse;
}
.filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-dropdown.dropdown-above.open {
  display: flex;
}
.filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-search {
  padding: 8px;
  border-bottom: 1px solid #eee;
}
.filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-search .filter-multiselect-search-input {
  width: 100%;
  padding: 6px 8px;
  font-size: 12px;
  border: 1px solid #ddd;
  border-radius: 4px;
}
.filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-search .filter-multiselect-search-input:focus {
  outline: none;
  border-color: #0096CB;
}
.filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-options {
  max-height: 200px;
  overflow-y: auto;
  padding: 4px 0;
}
.filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-option {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  cursor: pointer;
  font-size: 13px;
  transition: background-color 0.15s;
  margin: 0;
  font-weight: normal;
}
.filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-option:hover {
  background-color: #f5f5f5;
}
.filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-option input[type=checkbox] {
  margin: 0;
  cursor: pointer;
}
.filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-option span {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-actions {
  display: flex;
  justify-content: space-between;
  padding: 6px 8px;
  border-top: 1px solid #eee;
  background: #f8f9fa;
}
.filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-actions .btn-link {
  padding: 2px 6px;
  font-size: 11px;
  color: #666;
}
.filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-actions .btn-link:hover {
  color: #0096CB;
  text-decoration: none;
}
.filter-panel .filter-panel-body .filter-multiselect .filter-multiselect-hidden {
  display: none;
}
.filter-panel .filter-panel-body .filter-actions {
  margin-top: 12px;
  padding-top: 10px;
  border-top: 1px solid #eee;
}
.filter-panel .filter-panel-body .filter-actions .filter-apply-btn {
  background-color: #0096CB;
  border-color: #0096CB;
  font-weight: 500;
  padding: 6px 12px;
  font-size: 13px;
}
.filter-panel .filter-panel-body .filter-actions .filter-apply-btn:hover {
  background-color: #007ba3;
  border-color: #007ba3;
}
.filter-panel .filter-panel-body .filter-actions .filter-clear-btn {
  margin-top: 6px;
  font-size: 12px;
}
.filter-panel .filter-panel-body .filter-actions .filter-clear-btn:hover {
  background-color: #f5f5f5;
}

@media (max-width: 768px) {
  .filter-panel {
    max-width: 100%;
    min-width: 100%;
  }
}
.filter-panel-collapsible .filter-panel-header {
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.filter-panel-collapsible .filter-panel-header:hover {
  background: #f0f1f3;
}
.filter-panel-collapsible .filter-panel-collapse-btn {
  background: none;
  border: none;
  padding: 4px 8px;
  cursor: pointer;
  color: #666;
  transition: transform 0.2s ease;
}
.filter-panel-collapsible .filter-panel-collapse-btn:hover {
  color: #0096CB;
}
.filter-panel-collapsible .filter-panel-collapse-btn .filter-collapse-icon {
  transition: transform 0.2s ease;
}
.filter-panel-collapsible .filter-panel-body {
  transition: max-height 0.3s ease, padding 0.3s ease, opacity 0.2s ease;
  max-height: 1000px;
  overflow: hidden;
}
.filter-panel-collapsible.filter-panel-collapsed .filter-panel-header {
  border-bottom: none;
  border-radius: 4px;
}
.filter-panel-collapsible.filter-panel-collapsed .filter-panel-collapse-btn .filter-collapse-icon {
  transform: rotate(-90deg);
}
.filter-panel-collapsible.filter-panel-collapsed .filter-panel-body {
  max-height: 0;
  padding-top: 0;
  padding-bottom: 0;
  opacity: 0;
  pointer-events: none;
}

.important-document-links-wrapper {
  text-align: center;
}

.important-document-links {
  width: 40%;
  margin: 5px auto;
}

.important-document-links-cols {
  margin: 5px auto;
}

.list-group-item a {
  color: #333;
  text-decoration: none;
}
.list-group-item:hover {
  background-color: #f5f5f5;
  text-decoration: underline;
}

.moa-download-btn {
  position: absolute;
  top: 10px;
  left: 10px;
}

.navbar-fixed-side {
  padding-bottom: 60px;
}
.navbar-fixed-side .dropdown > a:first-child {
  cursor: pointer;
}
.navbar-fixed-side .dropdown > a:first-child:hover {
  background-color: #f0f0f0 !important;
}
.navbar-fixed-side .dropdown > a:first-child.no-cursor {
  cursor: default;
}
.navbar-fixed-side .dropdown > a:first-child.no-cursor:hover {
  background-color: transparent !important;
}
.navbar-fixed-side .dropdown > .dropdown-toggle {
  color: #444 !important;
  font-weight: bold;
}
.navbar-fixed-side .dropdown.active > a {
  background-color: #e7e7e7 !important;
}

.beanstalk-sidebar-list li.active {
  background-color: #efefef;
}

.beanstalk-left-nav-icon {
  margin-right: 5px;
  font-size: 20px;
  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(103deg) brightness(105%) contrast(105%);
}

.navbar-beanstalk {
  background-color: #FFFFFF;
  border-color: #E8E8F2;
}
.navbar-beanstalk .navbar-brand {
  color: #FFFFFF;
}
.navbar-beanstalk .navbar-brand:hover, .navbar-beanstalk .navbar-brand:focus {
  color: #fff;
  background-color: transparent !important;
}
.navbar-beanstalk .navbar-text {
  color: #9d9d9d;
}
@media (hover: hover) {
  .navbar-beanstalk .navbar-nav li.dropdown:hover .beanstalk-dropdown-menu {
    display: block;
  }
  .navbar-beanstalk .navbar-nav li.dropdown:hover .seasons-dropdown-menu {
    display: block;
  }
}
.navbar-beanstalk .navbar-nav > li > a {
  color: #FFFFFF;
}
.navbar-beanstalk .navbar-nav > li > a:hover, .navbar-beanstalk .navbar-nav > li > a:focus {
  color: #FFFFFF;
  background-color: transparent !important;
  font-weight: bold;
}
.navbar-beanstalk .navbar-nav > .active > a, .navbar-beanstalk .navbar-nav > .active > a:hover, .navbar-beanstalk .navbar-nav > .active > a:focus {
  color: #FFFFFF;
  background-color: #333 !important;
}
.navbar-beanstalk .navbar-nav > .disabled > a, .navbar-beanstalk .navbar-nav > .disabled > a:hover, .navbar-beanstalk .navbar-nav > .disabled > a:focus {
  color: #FFFFFF;
  background-color: transparent !important;
}
.navbar-beanstalk .navbar-toggle {
  border-color: #333;
}
.navbar-beanstalk .navbar-toggle:hover, .navbar-beanstalk .navbar-toggle:focus {
  background-color: #333 !important;
}
.navbar-beanstalk .navbar-toggle .icon-bar {
  background-color: #fff !important;
}
.navbar-beanstalk .navbar-collapse,
.navbar-beanstalk .navbar-form {
  border-color: #ededed;
}
.navbar-beanstalk .navbar-nav > .open > a, .navbar-beanstalk .navbar-nav > .open > a:hover, .navbar-beanstalk .navbar-nav > .open > a:focus {
  background-color: transparent !important;
  color: #FFFFFF;
}
@media (max-width: 1235px) {
  .navbar-beanstalk .navbar-nav .open .dropdown-menu > .dropdown-header {
    border-color: #E8E8F2;
  }
  .navbar-beanstalk .navbar-nav .open .dropdown-menu .divider {
    background-color: #E8E8F2 !important;
  }
  .navbar-beanstalk .navbar-nav .open .dropdown-menu > li > a {
    color: #FFFFFF;
  }
  .navbar-beanstalk .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-beanstalk .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #FFFFFF;
    background-color: transparent !important;
  }
  .navbar-beanstalk .navbar-nav .open .dropdown-menu > .active > a, .navbar-beanstalk .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-beanstalk .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #FFFFFF;
    background-color: #e6e6e6 !important;
  }
  .navbar-beanstalk .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-beanstalk .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-beanstalk .navbar-nav .open .dropdown-menu > .disabled > a:focus {
    color: #FFFFFF;
    background-color: transparent !important;
  }
}
.navbar-beanstalk .navbar-link {
  color: #FFFFFF;
}
.navbar-beanstalk .navbar-link:hover {
  color: #FFFFFF;
}
.navbar-beanstalk .btn-link {
  color: #FFFFFF;
}
.navbar-beanstalk .btn-link:hover, .navbar-beanstalk .btn-link:focus {
  color: #FFFFFF;
}
.navbar-beanstalk .btn-link[disabled]:hover, .navbar-beanstalk .btn-link[disabled]:focus, fieldset[disabled] .navbar-beanstalk .btn-link:hover, fieldset[disabled] .navbar-beanstalk .btn-link:focus {
  color: #FFFFFF;
}

.dropdown-submenu {
  position: relative;
}

.dropdown-submenu .dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: -1px;
}

.active-nav-tab {
  text-decoration: underline;
  -webkit-text-decoration-color: #FFFFFF;
          text-decoration-color: #FFFFFF;
}

.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover {
  cursor: pointer;
}
.nav-tabs > li.active:hover a {
  background-color: #eeeeee;
}

.orientation-basic-info {
  font-size: 15px;
  color: rgb(119, 119, 119);
}

.orientation-title {
  font-size: 16px;
  font-weight: bold;
}

.orientation-section-header {
  text-decoration: underline;
  font-weight: bold;
}

.task-list-item-normal {
  font-size: 15px;
}

.task-list-item-bold {
  font-size: 16px;
  font-weight: bold;
}

.panel-extra-dark {
  border-width: 2px;
}

.panel-heading-extra-dark {
  border-bottom-width: 2px;
}

.basic-model-wrapper {
  overflow: hidden;
  padding-top: 125px;
}

.basic-model-header {
  overflow: hidden;
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
}

.basic-model-content {
  overflow: auto;
}

.partner-wrapper {
  overflow: hidden;
  padding-top: 125px;
}

.partner-header {
  overflow: hidden;
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
}

.partner-content {
  overflow: auto;
}

.section-group-wrapper {
  overflow: hidden;
  padding-top: 105px;
}

.section-group-header {
  overflow: hidden;
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
}

.section-group-content {
  overflow: auto;
}

.program-note > label.control-label {
  text-align: center;
}

#progress-bar-container {
  position: relative;
}
#progress-bar-container .progressbar-text {
  font-family: Inter, sans-serif;
  text-align: center;
  font-size: 40px;
  font-weight: 600;
  color: #000145 !important;
}
#progress-bar-container .progressbar-subtext {
  font-size: 14px;
  font-weight: 450;
  color: #7F809D;
}

#map-container {
  height: 0;
  overflow: hidden;
  position: relative;
  padding-bottom: 50%;
}

#map-container > div {
  position: absolute;
}

.beanstalk-partner-info-frame-edit-link {
  display: block;
  font-family: Inter, sans-serif;
  font-size: 14px;
  font-weight: 450;
  line-height: 20px;
  text-align: right;
}

.beanstalk-partner-info-frame-body-content {
  border-left: 2px solid #E8E8F2;
  color: #7F809D;
  padding-left: 36px;
  margin-left: 24px;
}

.beanstalk-partner-header-text {
  font-family: "Inter", sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 20px;
  text-align: center;
  display: inline-block;
  color: #FFFFFF;
}

.beanstalk-partner-header-subtext {
  font-family: "Inter", sans-serif;
  font-weight: 600;
  line-height: 20px;
  text-align: left;
  display: inline-block;
  font-size: 12px;
  color: #a2a2a9;
}

.active-report {
  font-weight: bold;
  text-decoration: underline;
}

.report-week {
  text-align: center;
}

.report-user {
  text-align: center;
}

.saving-feedback-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 30%;
  margin: 0 auto;
  z-index: 2000;
  text-align: center;
}

.feedback-div {
  display: inline-block;
  padding: 5px 10px;
}
.feedback-div.alert-warning {
  position: fixed;
  top: 0;
  left: 50%;
  margin-left: -62px;
  z-index: 9999;
}
.feedback-div.alert-success {
  position: fixed;
  top: 0;
  left: 50%;
  margin-left: -56px;
  z-index: 9999;
}
.feedback-div.alert-danger {
  position: fixed;
  top: 0;
  left: 50%;
  margin-left: -44px;
  z-index: 9999;
}

.signup-body {
  font-size: 18px;
  overflow: overlay;
  overflow-x: hidden;
  background: url("/img/signup/blue-motherboard-bg.png") no-repeat center center fixed;
  background-size: cover;
  font-family: "Helvetica", sans-serif;
  font-family: "Lato", sans-serif;
}

.signup-mobile {
  font-size: 16px;
}

.signup-header {
  background-image: url("/img/signup/login_header_bg.png");
  height: 10vh;
  width: 100%;
}

.signup-header::before {
  content: "";
  display: block;
  width: 100%;
  height: 9px;
  position: absolute;
  top: 62px;
  left: 0;
  background: linear-gradient(to right, rgb(21, 77, 132) 0%, rgb(56, 153, 213) 21%, rgb(56, 153, 213) 78%, rgb(21, 77, 132) 100%);
}

.signup-header::after {
  content: "";
  display: block;
  position: absolute;
  top: 60px;
  left: 50%;
  transform: translateX(-50%);
  background: url("/img/signup/login_header_after.png") no-repeat;
  width: 100%;
  height: 50px;
  background-position: center bottom;
}

.signup-instruction-text {
  font-size: 18px;
}

.signup-instruction-text ol {
  text-align: left;
  font-size: 18px;
}

.signup-instruction-text-mobile {
  font-size: 16px;
}

.signup-instruction-text-mobile ol {
  text-align: left;
  font-size: 16px;
}

.signup-footer-content {
  max-height: 100%;
  height: 100%;
  padding: 45px 0 10px;
  color: #ececec;
}

.signup-footer {
  height: 220px;
  margin: 0;
  margin-left: 0 !important;
  background: #151515;
  padding-top: 8px;
  border: none;
  font-size: 16px;
  box-shadow: 0 50vh 0 50vh #151515;
}

.signup-footer-content li {
  display: inline-block;
  vertical-align: top;
  margin: 0 5px;
}

.signup-footer-content ul {
  list-style-type: disc;
}

.signup-footer-social {
  margin-top: 45px;
  color: #ececec;
}

.signup-footer-social li a {
  display: block;
  width: 30px;
  height: 30px;
  border-radius: 5px;
  background: #ececec;
  text-decoration: none;
  line-height: 30px;
  font-size: 20px;
}

.signup-footer-social li a i {
  color: #151515;
}

.signup-footer::before {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 8px;
  top: 0;
  left: 0;
  background: linear-gradient(to right, rgb(21, 77, 132) 0%, rgb(56, 153, 213) 21%, rgb(56, 153, 213) 78%, rgb(21, 77, 132) 100%);
}

.beanstalk-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-weight: 600;
  font-family: Inter, sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  white-space: nowrap;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}
.beanstalk-status-badge--sm {
  padding: 3px 8px;
  font-size: 10px;
  border-radius: 4px;
}
.beanstalk-status-badge--sm .beanstalk-status-badge__icon {
  font-size: 9px;
}
.beanstalk-status-badge--md {
  padding: 5px 12px;
  font-size: 11px;
  border-radius: 5px;
}
.beanstalk-status-badge--md .beanstalk-status-badge__icon {
  font-size: 10px;
}
.beanstalk-status-badge--lg {
  padding: 7px 14px;
  font-size: 12px;
  border-radius: 6px;
}
.beanstalk-status-badge--lg .beanstalk-status-badge__icon {
  font-size: 11px;
}
.beanstalk-status-badge--active, .beanstalk-status-badge--success, .beanstalk-status-badge--installed {
  background: #14A769;
  color: #FFFFFF;
}
.beanstalk-status-badge--inactive, .beanstalk-status-badge--error {
  background: #DC2626;
  color: #FFFFFF;
}
.beanstalk-status-badge--warning, .beanstalk-status-badge--pending {
  background: #F59E0B;
  color: #FFFFFF;
}
.beanstalk-status-badge--info {
  background: #0096CB;
  color: #FFFFFF;
}
.beanstalk-status-badge--test {
  background: #8B5CF6;
  color: #FFFFFF;
}
.beanstalk-status-badge--default {
  background: #6B7280;
  color: #FFFFFF;
}
.beanstalk-status-badge--version {
  background: #E5E7EB;
  color: #374151;
}
.beanstalk-status-badge--editor {
  background: #8B5CF6;
  color: #FFFFFF;
}
.beanstalk-status-badge--player-only {
  background: #F59E0B;
  color: #FFFFFF;
}
.beanstalk-status-badge--presentation {
  background: #0096CB;
  color: #FFFFFF;
}
.beanstalk-status-badge--quiz {
  background: #EC4899;
  color: #FFFFFF;
}
.beanstalk-status-badge--learning {
  background: #14A769;
  color: #FFFFFF;
}
.beanstalk-status-badge--game {
  background: #F97316;
  color: #FFFFFF;
}
.beanstalk-status-badge--multimedia {
  background: #06B6D4;
  color: #FFFFFF;
}
.beanstalk-status-badge--question {
  background: #EC4899;
  color: #FFFFFF;
}
.class-details-font {
  font-size: 16px;
}

.user-timesheets-action-button {
  font-size: 14px;
  width: 26px;
  height: 26px;
  padding: 2px;
  margin: 2px;
  color: white;
  float: left;
  border-radius: 2px !important;
}

.user-wrapper {
  overflow: hidden;
  padding-top: 105px;
}

.user-header {
  overflow: hidden;
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  background: white;
}

.user-content {
  overflow: auto;
}
.user-content .email .email-header span {
  display: block;
}
.user-content .email .email-header .email-campaign-title {
  font-weight: bold;
}
.user-content .email .email-header .email-sent-at {
  font-style: italic;
  font-size: 11px;
}

.vendor-thead > th {
  position: sticky;
  top: 0;
  background-color: white;
}

.vendor-table {
  border-collapse: separate;
  white-space: nowrap;
}

.vendor-wrapper {
  overflow: hidden;
  padding-top: 125px;
}

.vendor-header {
  overflow: hidden;
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
}

.vendor-content {
  overflow: auto;
}

.vendor-note {
  text-align: right;
}

.beanstalk-button:focus-visible,
.beanstalk-button-blue:focus-visible,
.beanstalk-action-btn:focus-visible,
.remove-btn:focus-visible,
[data-a11y-toggle]:focus-visible,
[data-a11y-tab]:focus-visible,
[data-a11y-expand-btn]:focus-visible,
[role=button][aria-expanded]:focus-visible,
.filter-multiselect-trigger:focus-visible,
.quick-filter-chip:focus-visible,
.filter-multiselect-actions .btn:focus-visible {
  outline: 2px solid #0096CB;
  outline-offset: 2px;
  box-shadow: 0 0 0 4px rgba(0, 150, 203, 0.15);
}

[data-a11y-expandable-row]:focus-visible {
  outline: 2px solid #0096CB;
  outline-offset: -2px;
  box-shadow: 0 0 0 4px rgba(0, 150, 203, 0.15);
}

.a11y-collapsed {
  display: none !important;
}

.a11y-skip-link {
  position: absolute;
  left: -9999px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
  z-index: 10000;
  padding: 12px 24px;
  background: #0096CB;
  color: #fff;
  font-weight: 600;
  font-size: 14px;
  text-decoration: none;
  border-radius: 0 0 6px 0;
}
.a11y-skip-link:focus {
  position: fixed;
  left: 0;
  top: 0;
  width: auto;
  height: auto;
  overflow: visible;
}

.a11y-sr-only, .a11y-sr-only-focusable {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.a11y-sr-only-focusable:focus, .a11y-sr-only-focusable:active {
  position: static !important;
  width: auto !important;
  height: auto !important;
  padding: inherit !important;
  margin: inherit !important;
  overflow: visible !important;
  clip: auto !important;
  white-space: normal !important;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
@media (forced-colors: active) {
  [data-a11y-toggle]:focus-visible,
  [data-a11y-tab]:focus-visible,
  [data-a11y-expand-btn]:focus-visible,
  [role=button][aria-expanded]:focus-visible,
  .filter-multiselect-trigger:focus-visible,
  .quick-filter-chip:focus-visible,
  .filter-multiselect-actions .btn:focus-visible {
    outline: 2px solid Highlight;
  }
  .a11y-skip-link:focus {
    background: Highlight;
    color: HighlightText;
  }
  .form-control,
  .filter-multiselect-trigger {
    border-color: ButtonText;
  }
}
