html {
  height: 100%;
}

body {
  min-height: 100%;
  /*overflow: hidden;*/
}

a {
  cursor: pointer;
}

.hide-sweetalert .sweet-alert {
  display: none !important;
}

.dropdown-submenu {
  position: relative;
}

.dropdown-submenu>.dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: -6px;
  margin-left: -1px;
  -webkit-border-radius: 0 6px 6px 6px;
  -moz-border-radius: 0 6px 6px;
  border-radius: 0 6px 6px 6px;
}

.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 5px 5px 5px;
  border-top-color: black;
  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;
  -webkit-border-radius: 6px 0 6px 6px;
  -moz-border-radius: 6px 0 6px 6px;
  border-radius: 6px 0 6px 6px;
}

.deck-wrapper .dropdown-menu {
  margin-left: -60px;
}

.deck-wrapper .dropdown-submenu .dropdown-menu {
  margin-left: -160px;
  margin-top: 20px;
}

.camp-wrapper {
  height: 100%;
}

.dashboard-mobile-switch {
  display: none;
}

.dashboard-mobile-tab {
  appearance: none;
  background: #ffffff;
  border: 1px solid #d7dee8;
  border-radius: 999px;
  color: #425466;
  cursor: pointer;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  min-width: 0;
  padding: 9px 14px;
  transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, color 0.15s ease;
}

.dashboard-mobile-tab span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dashboard-mobile-tab.is-active {
  background: #00a0a0;
  border-color: #00a0a0;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
  color: #ffffff;
}

.dashboard-mobile-tab:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(0, 160, 160, 0.2);
}

/*.camp-deck-font {
  font-family: 'Helvetica Neue', sans-serif;
  font-style: normal;
}

.camp-deck-font-black {
  color: black;
  font-family: 'Helvetica Neue', sans-serif;
  font-style: normal;
}*/

.deck-subheader {
  font-size: 1.5em;
}

.deck-item-title {
  /* font-size: 1.2em;
  display: block; */
  font-size: 1.2em;
  display: block;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.deck-item-desc {
  font-size: 0.9em;
}

.camp-deck-font-style {
  /*font-family: 'Helvetica Neue', sans-serif;*/
  /*font-style: normal;*/
  color: white;
  /*text-shadow: 3px 3px 0 #000,
  -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;*/
}

.class-limit a,
.deck-limit a {
  color: black;
}

#deck-limit-bonus {
  color: green;
  font-weight: bold;
}

/*.camp-normal-font {
  font-family: Helvetica;
  font-style: normal;
}*/

#classrooms-panel {
  position: fixed;
  top: 50px;
  bottom: 0;
  left: 0px;
  width: 300px;
  height: auto;
  overflow-y: auto;
  overflow-x: hidden;
  padding-bottom: 40px;
  -webkit-overflow-scrolling: touch;
}

#classrooms-panel.guide-mode {
  -webkit-overflow-scrolling: auto;
}

.decksLayout-wrapper {
  overflow: visible;
}

#decks-panel {
  height: auto;
  position: fixed;
  top: 50px;
  bottom: 0;
  left: 305px;
  right: 0;
  -webkit-overflow-scrolling: touch;
  margin-left: 0;
  overflow-y: auto;
  overflow-x: hidden;
  padding-bottom: 50px;
  width: auto;
  background-color: #fafafa;
  border-left: 1px solid lightgray;
}

#decks-panel.guide-mode {
  -webkit-overflow-scrolling: auto;
}

#classrooms-container {
  /*padding-top: 10px;*/
  padding-bottom: 100px;
}

.classrooms-header {
  text-align: center;
  background-color: #424242;
  /*padding-top: 15px;*/
  /*padding-right: 15px;*/
  font-size: 24px;
  height: 40px;
  line-height: 40px;
  position: sticky;
  top: 0;
  z-index: 6;
}



.classrooms-fixed-header {
  position: sticky;
  top: 0;
  z-index: 5;
  /*box-shadow: 0px 4px 10px -5px black;*/
  /* width: 300px; */
  left: 0px;
  width: 100%;
}

.decks-header-wrapper {
  position: sticky;
  top: 0;
  z-index: 5;
  width: 100%;
}

.decks-header {
  /* text-align: center; */
  text-align: left;
  /* padding-left: 60px; */
  background-color: #00a0a0;
  /*background-color: #1565c0;*/
  /*padding: 15px;*/
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
  font-size: 24px;
  height: 40px;
  line-height: 40px;
  position: sticky;
  top: 0;
  z-index: 6;
}

.decks-header-inner {
  position: relative;
}

.dashboard-floating-create-button {
  display: none;
  position: absolute;
  top: 100%;
  transform: translateY(-50%);
  z-index: 7;
}

.classrooms-header-create {
  left: 22px;
  border: 4px solid #fafafa;
}

.decks-header-create {
  left: 22px;
  border: 4px solid #fafafa;
}

.decks-header-create-actions {
  display: none;
  left: 22px;
  margin-left: 0;
  position: absolute;
  top: 100%;
  transform: translateY(-50%);
}

.classroomsLayout-wrapper.is-floating-create-visible .classrooms-header-create,
.decksLayout-wrapper.is-floating-create-visible .decks-header-create,
.decksLayout-wrapper.is-floating-create-visible .decks-header-create-actions {
  align-items: center;
  display: inline-flex;
  justify-content: center;
  line-height: 1;
  padding: 0;
}

.btn-teams-library-mobile-only {
  display: none;
}

.dashboard-header-teams-button {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 7;
}

@media (min-width: 768px) {
  .classrooms-fixed-header,
  .decks-header-wrapper {
    z-index: 30;
  }

  .classrooms-header,
  .decks-header {
    z-index: 31;
  }

  .dashboard-floating-create-button,
  .dashboard-header-teams-button {
    z-index: 32;
  }

  #classrooms-panel .tooltip,
  #decks-panel .tooltip,
  #classrooms-panel .dropdown-menu,
  #decks-panel .dropdown-menu {
    z-index: 29;
  }

  .decks-header-wrapper .dashboard-header-teams-button {
    right: max(10px, calc(100% - 1210px));
  }
}

#highlights-decks {
  margin: 10px 0 20px;
  padding-left: 15px;
  padding-right: 15px;
}

/*.classrooms-title{
  font-size: 2em;
}

.decks-title{
  font-size: 2em;
}*/

.classrooms-toolbar {
  padding-top: 15px;
  padding-bottom: 15px;
  padding-left: 15px;
  padding-right: 15px;
}

.decks-toolbar {
  padding: 15px;
}

.decks-toolbar-main,
.decks-tree-toolbar {
  width: 100%;
  max-width: 1200px;
}

.decks-toolbar-main {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
}

.decks-tree-toolbar {
  display: flex;
  align-items: flex-start;
}

.decks-toolbar-actions {
  align-items: center;
  display: inline-flex;
  flex: 0 0 auto;
  gap: 6px;
  margin-left: auto;
}

.deck-search-panel {
  background: #ffffff;
  border: 1px solid #d9e2ec;
  border-radius: 12px;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
  display: none;
  margin: 12px auto 0;
  max-width: 860px;
  padding: 12px;
  width: calc(100% - 30px);
}

.deck-search-panel.is-open {
  display: block;
}

.deck-search-panel-row {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.deck-search-panel-row + .deck-search-panel-row {
  margin-top: 10px;
}

.deck-search-input {
  display: block;
  flex: 1 1 280px;
  margin: 0;
  position: relative;
}

.deck-search-input .fa-search {
  color: #7c8a9a;
  left: 12px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.deck-search-input .form-control {
  width: 100% !important;
  padding-left: 34px;
}

.deck-search-select {
  flex: 1 1 180px;
  min-width: 0;
}

.deck-search-clear {
  color: #4f5d6f;
  flex: 0 0 auto;
  padding-left: 0;
  padding-right: 0;
}

.deck-search-empty {
  color: #6b7280;
  display: none;
  font-size: 13px;
  line-height: 1.4;
  margin-top: 10px;
}

.deck-search-empty.is-visible {
  display: block;
}

.camp-name {}

.classroom-icon {
  width: 50px;
  height: auto;
  opacity: 1.0;
}

.classroom-map {
  position: absolute;
  /* z-index: 1; */
  pointer-events: none;
}

.classroom-thumbtack {
  position: absolute;
  margin-left: 40px;
  z-index: 2;
}

.classroom-area {
  position: relative;
  /*  border: 3px solid #DBDBDB;
    box-shadow: 1px 1px 5px 2px rgba(0,0,0,0.5);
    background: #333333;*/
  /*  background-image: url('/media/icons/corkboard.png');*/
  /* padding: 15px 20px; */
  padding: 15px 5px;
}

.classroom-area:hover {
  /*  box-shadow: -3px 3px 5px 5px rgba(0,0,0,0.5);
    border: 3px solid #FC7400;
    background: #000000;
    opacity:1.0;*/
  /*  border: 1px solid #FFFFFF;*/
}

/*.classroom-selected{
  box-shadow: -1px 1px 5px 4px rgba(0,0,0,0.5);
  border: 3px solid #FCBA00;
  opacity:1.0;
  background: #000000;
}*/

.address-link {
  color: white;
  max-width: 240px;
  word-wrap: break-word;
  /* text-decoration: underline; */
  -webkit-user-select: all;
  -moz-user-select: all;
  -ms-user-select: all;
  user-select: all;
  font-family: Courier, monospace;
  font-size: 1.1em;
}

.address-link span {
  border-bottom: dashed 1px #ccc5;
  padding-bottom: 1px;
  display: inline-block;
}

.address-link-path {
  letter-spacing: 1px;
}

.address-link-prompt {
  -webkit-user-select: all;
  -moz-user-select: all;
  -ms-user-select: all;
  user-select: all;
  font-family: Courier,
    monospace;
}

.chardinjs-show-element .address-link {
  color: yellow;
  text-decoration: underline;
}

.chardinjs-show-element {
  pointer-events: none;
}

.chardinjs-show-element.no-hide {
  pointer-events: auto !important;
}

.chardinjs-helper-layer:hover .chardinjs-tooltip {
  color: #ff7000;
}

.tooltip-inner {
  white-space: pre-line;
}

.classroom-name {
  font-size: 1.2em;
  width: 100%;
  color: white;
  margin-top: 10px;
}

.classroom-address {
  margin-top: 10px;
  margin-bottom: 20px;
  color: white;
}

.classroom-address .qr-code {
  right: 5px;
  position: absolute;
  font-size: 25px;
  cursor: pointer;
  /* margin-top: -25px; */
}

.classroom-address>span>a.address-link {
  color: white;
}

.address-link:hover {
  color: lightblue;
}

.classroom-wrapper {
  /*  background-color: lightseagreen;*/
  max-width: 260px;
  margin-left: 30px;
  padding-top: 0px;
  padding-bottom: 0px;
}

.classroom-wrapper .dropdown-menu {
  margin-left: -50px;
}

.deck-actions {
  margin-top: -20px;
  width: 100%;
  max-width: 200px;
}

.deck-actions .dropdown-menu-top {
  margin-left: 0;
}

.deck-actions-bottom>*>i {
  opacity: 0.8;
}

.deck-wrapper {
  padding-top: 10px;
  /*padding-bottom: 30px;*/
}

.deck-wrapper:hover {
  opacity: 1;
}

.classroom-actions {}

.chardinjs-show-element .classroom-actions {
  opacity: 0.3;
}

.dropdown-menu>li>a.js-google2 {
  padding: 8px 16px;
  display: flex;
  align-items: center;
}

.js-google2 span {
  padding-left: 16px;
}

.classroom-map-wrapper {
  margin-top: -30px;
}

.classroom-map-holder {
  width: 100px;
  height: 91px;
  /* overflow: hidden; */
  position: relative;
  box-shadow: 0 0 5px 2px rgba(0, 0, 0, 0.3);
  left: 50%;
  margin-left: -50px;
  margin-bottom: 5px;
  margin-top: 10px;
  cursor: pointer;
}

.is-deleted {
  pointer-events: none;
  opacity: 0.5;
}

.assigned-classroom-map-holder {
  display: inline-block;
  /* width: 100px;
  height: 91px; */
  width: 66px;
  height: 60px;
  /* overflow: hidden; */
  /* overflow: hidden; */
  position: relative;
  box-shadow: 0 0 5px 2px rgba(0, 0, 0, 0.3);
  margin-left: 3px;
  margin-right: 0px;
  margin-bottom: 5px;
  margin-top: 10px;
  cursor: pointer;
}

.btn-deck-unassign {
  position: absolute;
  margin-top: 0px;
  right: 5px;
  top: 0px;
  z-index: 1;
  color: darkgray;
  text-shadow: -1px -1px 0 white, 1px -1px 0 white, -1px 1px 0 white, 1px 1px 0 white;
  pointer-events: auto;
}

.view-report-area {
  position: absolute;
  top: 0px;
  left: 0px;
  margin-top: -30px;
  width: 120px;
  margin-left: -13px;
  display: none;
}

.assigned-classroom-map-holder:hover .view-report-area {
  display: inline-block;
}

.view-report-area-main {
  position: absolute;
  top: 0px;
  left: 0px;
  margin-top: 30px;
  /* width: 120px; */
  margin-left: -70px;
  display: none;
  z-index: 5;
}

.classroom-map-holder:hover .view-report-area-main {
  display: inline-block;
}

.btn-deck-view-report {
  font-size: 12px;
}

/*.is-highlight-area {
  background-color: rgba(203, 198, 246, 0.3);
}*/

.is-highlight .fa-lock,
.is-highlight .deck-actions,
.is-highlight .poster-wrapper {
  display: none !important;
}

.is-highlight .deck-name {
  height: auto;
}

.deck-map-holder {
  width: 200px;
  height: 182px;
  overflow: hidden;
  position: relative;
  /*z-index: 2;*/
  box-shadow: -3px 0 10px 0 rgba(0, 0, 0, 0.4);
  left: 50%;
  margin-left: -100px;
  background-color: white;
  cursor: pointer;
}

.deck-map {
  pointer-events: none;
}

.deck-map-holder:hover {
  opacity: 0.8;
  /*box-shadow: -3px 0 10px 0 rgba(0,0,0,0.4);*/
  /*background: #5ce5e8;*/
  background: lightgray;
  /*background: -moz-radial-gradient(center, ellipse cover, #5ce5e8 1%, #408ba0 100%);
  background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(1%, #5ce5e8), color-stop(100%, #408ba0));
  background: -webkit-radial-gradient(center, ellipse cover, #5ce5e8 1%, #408ba0 100%);
  background: -o-radial-gradient(center, ellipse cover, #5ce5e8 1%, #408ba0 100%);
  background: -ms-radial-gradient(center, ellipse cover, #5ce5e8 1%, #408ba0 100%);
  background: radial-gradient(ellipse at center, #5ce5e8 1%, #408ba0 100%);
  filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#5ce5e8', endColorstr='#408ba0', GradientType=1);*/
}

/*.deck-selected {
  box-shadow: -1px 1px 5px 4px rgba(0, 0, 0, 0.5);
  border: 3px solid #FCBA00;
  opacity: 1.0;
  background: #000000;
}*/

.deck-map-empty {
  border: 3px lightgray dashed;
}

.deck-icon-empty {
  left: 50%;
  position: absolute;
  top: 50%;
  margin-left: -10px;
  margin-top: 20px;
  color: lightgray;
  font-size: 3em;
}

.deck-text-empty {
  margin-top: 70px;
  text-align: center;
  color: lightgray;
  font-size: 1.2em;
}

.deck-suggestion {
  display: block;
  color: inherit;
  text-decoration: none;
}

.deck-suggestion .deck-map-holder {
  border: 2px dashed #6ea6a6;
  background-color: #f2f8f8;
}

.deck-suggestion .deck-map-holder:hover {
  background-color: #e7f3f3;
  opacity: 1;
}

.deck-suggestion-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.35;
}

.deck-suggestion-overlay {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 10px;
  color: #006d6b;
}

.deck-suggestion-title {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.deck-suggestion-title i {
  margin-right: 6px;
}

.deck-suggestion-subtitle {
  margin-top: 6px;
  font-size: 12px;
  font-weight: 600;
  color: #3a3a3a;
  text-transform: none;
}

.hold_it {
  padding: 0;
  background: #fff;
  display: inline-block;
  box-shadow: 0 0 5px 2px rgba(0, 0, 0, 0.3);
  position: relative;
  width: 420px;
  margin: 0 auto;
  left: 200px;
}

.shadow1 {
  z-index: 3;
  position: absolute;
  background: url(data: image/svg+xml;
 base64, PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMTAwJSI+CiAgICA8c3RvcCBvZmZzZXQ9IjAlIiBzdG9wLWNvbG9yPSIjMDAwMDAwIiBzdG9wLW9wYWNpdHk9IjAiLz4KICAgIDxzdG9wIG9mZnNldD0iOTklIiBzdG9wLWNvbG9yPSIjMDAwMDAwIiBzdG9wLW9wYWNpdHk9IjAuMiIvPgogICAgPHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjMDAwMDAwIiBzdG9wLW9wYWNpdHk9IjAuMiIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -webkit-linear-gradient(-45deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.2) 100%);
  background: -moz-linear-gradient(-45deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.2) 100%);
  background: -o-linear-gradient(-45deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.2) 100%);
  background: -ms-linear-gradient(-45deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.2) 100%);
  background: linear-gradient(-45deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.2) 100%);
  filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#33000000', GradientType=1);
  width: 50%;
  height: 50%;
  pointer-events: none;
}

.shadow2 {
  z-index: 3;
  position: absolute;
  background: url(data: image/svg+xml;
 base64, PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMTAwJSI+CiAgICA8c3RvcCBvZmZzZXQ9IjAlIiBzdG9wLWNvbG9yPSIjMDAwMDAwIiBzdG9wLW9wYWNpdHk9IjAiLz4KICAgIDxzdG9wIG9mZnNldD0iOTklIiBzdG9wLWNvbG9yPSIjMDAwMDAwIiBzdG9wLW9wYWNpdHk9IjAuMiIvPgogICAgPHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjMDAwMDAwIiBzdG9wLW9wYWNpdHk9IjAuMiIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -webkit-linear-gradient(-45deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.2) 100%);
  background: -moz-linear-gradient(-45deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.2) 100%);
  background: -o-linear-gradient(-45deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.2) 100%);
  background: -ms-linear-gradient(-45deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.2) 100%);
  background: linear-gradient(-45deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.2) 100%);
  filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#33000000', GradientType=1);
  width: 50%;
  height: 50%;
  left: 50%;
  pointer-events: none;
}

.shadow3 {
  z-index: 3;
  position: absolute;
  background: url(data: image/svg+xml;
 base64, PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMTAwJSI+CiAgICA8c3RvcCBvZmZzZXQ9IjAlIiBzdG9wLWNvbG9yPSIjMDAwMDAwIiBzdG9wLW9wYWNpdHk9IjAiLz4KICAgIDxzdG9wIG9mZnNldD0iOTklIiBzdG9wLWNvbG9yPSIjMDAwMDAwIiBzdG9wLW9wYWNpdHk9IjAuMiIvPgogICAgPHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjMDAwMDAwIiBzdG9wLW9wYWNpdHk9IjAuMiIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -webkit-linear-gradient(-45deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.2) 100%);
  background: -moz-linear-gradient(-45deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.2) 100%);
  background: -o-linear-gradient(-45deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.2) 100%);
  background: -ms-linear-gradient(-45deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.2) 100%);
  background: linear-gradient(-45deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.2) 100%);
  filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#33000000', GradientType=1);
  width: 50%;
  height: 50%;
  top: 50%;
  pointer-events: none;
}

.shadow4 {
  z-index: 3;
  position: absolute;
  background: url(data: image/svg+xml;
 base64, PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMTAwJSI+CiAgICA8c3RvcCBvZmZzZXQ9IjAlIiBzdG9wLWNvbG9yPSIjMDAwMDAwIiBzdG9wLW9wYWNpdHk9IjAiLz4KICAgIDxzdG9wIG9mZnNldD0iOTklIiBzdG9wLWNvbG9yPSIjMDAwMDAwIiBzdG9wLW9wYWNpdHk9IjAuMiIvPgogICAgPHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjMDAwMDAwIiBzdG9wLW9wYWNpdHk9IjAuMiIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -webkit-linear-gradient(-45deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.2) 100%);
  background: -moz-linear-gradient(-45deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.2) 100%);
  background: -o-linear-gradient(-45deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.2) 100%);
  background: -ms-linear-gradient(-45deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.2) 100%);
  background: linear-gradient(-45deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 99%, rgba(0, 0, 0, 0.2) 100%);
  filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#33000000', GradientType=1);
  width: 50%;
  height: 50%;
  top: 50%;
  left: 50%;
  pointer-events: none;
}

.decks-wrapper {}

#decks-container {
  margin-left: 0px;
  padding-bottom: 200px;
  max-width: 1200px;
  min-width: 200px;
  /*  padding:20px 5px;
    padding-bottom:20px;
  */
}

#main-region {
  min-height: 100%;
}

.deck-blue-glow {
  background: white;
  /*background: #5692a3;*/
  /*background: rgb(143, 231, 234);*/
}

.classroom-map-panel {
  display: inline-block;
  width: 50%;
  position: absolute;
}

.action-panel {
  margin-top: 10px;
  position: relative;
  width: 100%;
  height: 34px;
}

.action-wrapper {
  height: 100px;
  width: 100%;
  position: relative;
}

.deck-name {
  margin: 0 auto;
  /* height: 48px; */
  height: 96px;
  /*max-width: 250px;*/
  line-height: 24px;
  display: block;
  /* Fallback for non-webkit */
  display: -webkit-box;
  -webkit-line-clamp: 2;
  text-overflow: -o-ellipsis-lastline;
  margin-top: 5px;
  /* margin-bottom: 10px; */
  margin-bottom: 30px;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -moz-box-orient: vertical;
  -ms-flexbox-orient: vertical;
  overflow: hidden;
}

.is-profile .author {
  display: none;
}

.btn-new-deck {
  margin-left: 0;
  color: white;
  /*background-color: #1565c0;*/
  background-color: #00a0a0;
  width: 56px;
  height: 56px;
  /*box-shadow: 0px 2px 10px 2px gray;*/
  border-radius: 56px;
  line-height: 52px;
  transition: background-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.btn-new-deck:active {
  background-color: #007c7c;
  box-shadow: 0px 2px 10px 4px gray;
}

.btn-new-deck:hover,
.btn-new-deck:focus {
  background-color: #008989;
  color: white;
  box-shadow: 0px 2px 10px 4px gray;
  transform: translateY(-1px);
}

.new-deck-actions {
  position: relative;
  display: inline-flex;
  align-items: flex-start;
  gap: 0;
  flex: 0 0 auto;
  margin-left: 40px;
  vertical-align: top;
}

.dashboard-floating-create-button.decks-header-create-actions {
  display: none;
  left: 22px;
  margin-left: 0;
  position: absolute;
  top: 100%;
  transform: translateY(-50%);
}

.decksLayout-wrapper.is-floating-create-visible .dashboard-floating-create-button.decks-header-create-actions {
  display: inline-flex;
}

.dashboard-floating-create-button.decks-header-create-actions .dashboard-ai-mini-panel {
  background: transparent;
  border: 4px solid #fafafa;
  min-height: 0;
  padding: 0;
}

.new-deck-hover-actions {
  position: absolute;
  top: 50%;
  left: calc(100% + 14px);
  display: inline-flex;
  max-width: none;
  opacity: 0;
  overflow: visible;
  pointer-events: none;
  z-index: 24;
  transform: translate(8px, -50%) scale(0.98);
  transform-origin: left center;
  transition: opacity 0.16s ease, transform 0.16s ease;
}

.dashboard-ai-launcher-inline-slot {
  display: none;
  flex: 1 1 0;
  width: auto;
  max-width: none;
  min-width: 640px;
  margin-left: 16px;
  vertical-align: top;
}

.dashboard-ai-launcher-inline-slot.is-active {
  display: block;
  margin-top: -10px;
}

.dashboard-ai-launcher-inline-slot.is-minimized {
  width: auto;
  max-width: none;
  min-width: 640px;
}

.dashboard-ai-launcher-expanded-region.is-hidden {
  display: none;
}

.dashboard-ai-mini-panel {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 56px;
  min-width: 0;
  padding: 8px 12px;
  border: 1px solid #d7dee8;
  border-radius: 16px;
  background: linear-gradient(180deg, #ffffff 0%, #f5fbfc 100%);
  box-shadow: 0 8px 24px rgba(25, 40, 55, 0.12);
}

.btn-new-deck-manual {
  align-items: center;
  border-radius: 13px;
  color: #ffffff;
  display: inline-flex;
  font-size: 14px;
  font-weight: 700;
  gap: 8px;
  justify-content: center;
  min-height: 40px;
  min-width: 228px;
  padding: 8px 18px;
  line-height: 1.2;
  white-space: nowrap;
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.14);
}

.btn-new-deck-manual i {
  font-size: 16px;
}

.btn-new-empty-deck {
  background-color: #00a0a0;
}

.btn-new-wizard-alt {
  background-color: #00a0a0;
}

.new-deck-actions:hover .new-deck-hover-actions,
.new-deck-actions.is-revealed .new-deck-hover-actions {
  opacity: 1;
  pointer-events: auto;
  transform: translate(0, -50%) scale(1);
}

.decks-toolbar-material-launcher {
  padding-top: 0;
}

.decks-grid-width {
  width: 100%;
  max-width: 1200px;
}

/* Experimental wide-screen scene behind the material launcher. */
.dashboard-ai-launcher-stage {
  position: relative;
  isolation: isolate;
}

.dashboard-ai-launcher-backdrop {
  display: none;
}

.dashboard-ai-launcher {
  position: relative;
  z-index: 2;
  margin: 0 auto;
  width: calc(100% - 30px);
  max-width: 600px;
  min-height: 272px;
  container-type: inline-size;
  container-name: dashboard-ai-launcher-card;
  background: #ffffff;
  border: 1px solid #d7dee8;
  border-radius: 16px;
  box-shadow: 0 8px 24px rgba(25, 40, 55, 0.08);
  padding: 16px 18px;
}

body.dashboard-ai-help-open {
  overflow: hidden;
}

body.dashboard-ai-wizard-open-narrow #intercom-container,
body.dashboard-ai-wizard-open-narrow .intercom-lightweight-app,
body.dashboard-ai-wizard-open-narrow .intercom-launcher-frame,
body.dashboard-ai-wizard-open-narrow .intercom-messenger-frame,
body.dashboard-ai-wizard-open-narrow iframe[name^="intercom"] {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

.dashboard-ai-launcher:focus {
  outline: none;
}

.dashboard-ai-launcher-header {
  position: relative;
  padding-right: 48px;
  margin-bottom: 12px;
}

.dashboard-ai-help-button {
  position: absolute;
  top: 0;
  right: 0;
  width: 30px;
  height: 30px;
  padding: 0;
  border: 1px solid #c6d4df;
  border-radius: 999px;
  background: #ffffff;
  color: #2f4253;
  font-size: 17px;
  font-weight: 700;
  line-height: 28px;
  text-align: center;
  box-shadow: 0 6px 14px rgba(31, 41, 55, 0.12);
  cursor: pointer;
  transition: background-color 0.16s ease, border-color 0.16s ease, color 0.16s ease, transform 0.16s ease, box-shadow 0.16s ease;
}

.dashboard-ai-help-button:hover,
.dashboard-ai-help-button:focus {
  outline: none;
  background: #00a0a0;
  border-color: #008989;
  color: #ffffff;
  transform: translateY(-1px);
  box-shadow: 0 10px 18px rgba(0, 160, 160, 0.2);
}

.dashboard-ai-help-button-mini {
  top: 10px;
  right: 10px;
  width: 26px;
  height: 26px;
  font-size: 15px;
  line-height: 24px;
}

.dashboard-ai-launcher-title {
  font-size: 20px;
  font-weight: 700;
  color: #1f2937;
  line-height: 1.2;
}

.dashboard-ai-launcher-helper {
  margin-top: 4px;
  font-size: 13px;
  line-height: 1.45;
  color: #5f6c7b;
  white-space: pre-line;
}

.dashboard-ai-launcher-dropzone {
  min-height: 132px;
  padding: 14px;
  border: 2px dashed #c8d3df;
  border-radius: 12px;
  background: #f9fbfc;
  transition: border-color 0.16s ease, background-color 0.16s ease, box-shadow 0.16s ease;
}

.dashboard-ai-launcher-dropzone.is-dragging {
  border-color: #00a0a0;
  background: #eefafa;
  box-shadow: inset 0 0 0 1px rgba(0, 160, 160, 0.12);
}

.dashboard-ai-launcher-drop-intro {
  margin-bottom: 10px;
}

.dashboard-ai-launcher-dropzone.has-content .dashboard-ai-launcher-drop-intro {
  display: none;
}

.dashboard-ai-launcher-drop-title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  font-weight: 700;
  color: #25313d;
  line-height: 1.3;
}

.dashboard-ai-launcher-drop-title i {
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: #e7f7f7;
  color: #008989;
  font-size: 12px;
}

.dashboard-ai-launcher-drop-subtitle {
  margin-top: 4px;
  padding-left: 36px;
  font-size: 13px;
  line-height: 1.45;
  color: #708090;
}

.dashboard-ai-launcher-textarea {
  width: 100%;
  min-height: 62px;
  resize: vertical;
  border: 1px solid #dde5ed;
  border-radius: 10px;
  background: #ffffff;
  color: #25313d;
  font-size: 14px;
  line-height: 1.45;
  padding: 12px 14px;
  outline: none;
}

.dashboard-ai-launcher-textarea:focus {
  border-color: #96b9cb;
  box-shadow: 0 0 0 3px rgba(0, 160, 160, 0.08);
}

.dashboard-ai-launcher-textarea::placeholder {
  color: #8a98a9;
}

.dashboard-ai-launcher-file {
  margin-top: 10px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 10px;
  background: #eef4f8;
  color: #304250;
  font-size: 13px;
  line-height: 1.35;
}

.dashboard-ai-launcher-file-preview {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  color: inherit;
  text-decoration: none;
}

.dashboard-ai-launcher-file-preview:hover .dashboard-ai-launcher-file-name,
.dashboard-ai-launcher-file-preview:focus .dashboard-ai-launcher-file-name {
  text-decoration: underline;
}

.dashboard-ai-launcher-file-thumbnail {
  width: 44px;
  height: 44px;
  border-radius: 8px;
  border: 1px solid #d3dde7;
  object-fit: cover;
  background: #ffffff;
  flex: 0 0 auto;
}

.dashboard-ai-launcher-file-name {
  max-width: 480px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dashboard-ai-launcher-file-clear {
  color: #576574;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  cursor: pointer;
}

.dashboard-ai-launcher-error {
  margin-top: 10px;
  color: #b42318;
  font-size: 12px;
  line-height: 1.45;
}

.dashboard-ai-launcher-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-auto-rows: minmax(44px, auto);
  gap: 10px;
  margin-top: 12px;
  container-type: inline-size;
}

.dashboard-ai-launcher-action,
.dashboard-ai-launcher-primary,
.dashboard-ai-launcher-secondary {
  min-height: 40px;
  border-radius: 10px;
  font-weight: 600;
  box-shadow: none;
  transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

/* Keep launcher action spacing aligned with both:
 * - public/wwlist/js/apps/decks/list/templates/decks_layout.html
 * - public/wwlist/js/apps/camp/show/templates/camp_layout.html
 * The early dashboard launcher can render before the decks launcher replaces it,
 * so mismatched action markup here will show up as a first-paint reflow.
 */
.dashboard-ai-launcher-action {
  display: inline-flex;
  align-items: center;
  gap: 0;
  border-color: #d0d9e2;
  color: #314252;
  background: #ffffff;
}

.dashboard-ai-launcher-actions .dashboard-ai-launcher-action {
  width: 100%;
  min-width: 0;
  height: 100%;
  justify-content: flex-start;
  padding: 7px 10px;
  line-height: 1.2;
  text-align: left;
  white-space: normal;
}

.dashboard-ai-launcher-action-icon {
  flex: 0 0 40px;
  width: 40px;
  min-width: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 7px 0 4px;
}

.dashboard-ai-launcher-actions .dashboard-ai-launcher-action-icon i,
.dashboard-ai-launcher-inline-actions-menu .dashboard-ai-launcher-action-icon i {
  flex: 0 0 auto;
  font-size: 15px;
  line-height: 1;
}

.dashboard-ai-launcher-action-text,
.dashboard-ai-launcher-actions .dashboard-ai-launcher-action-copy {
  min-width: 0;
}

.dashboard-ai-launcher-actions .dashboard-ai-launcher-action-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  min-width: 0;
}

.dashboard-ai-launcher-actions .dashboard-ai-launcher-action-label {
  min-width: 0;
}

.dashboard-ai-launcher-actions .dashboard-ai-launcher-action-meta {
  min-width: 0;
  color: #6b7b8b;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 1.25;
}

.dashboard-ai-launcher-actions .dashboard-ai-launcher-action-upload {
  grid-row: span 2;
}

.dashboard-ai-launcher-action:hover,
.dashboard-ai-launcher-action:focus {
  border-color: #9eb7c4;
  background: #f6f9fb;
  color: #1f2937;
}

.dashboard-ai-launcher-action-primary {
  border-color: #009292;
  background: #00a0a0;
  color: #ffffff;
  box-shadow: 0 8px 18px rgba(0, 160, 160, 0.18);
}

.dashboard-ai-launcher-action-primary:hover,
.dashboard-ai-launcher-action-primary:focus {
  border-color: #007c7c;
  background: #008989;
  color: #ffffff;
}

.dashboard-ai-launcher-action-primary.is-secondary {
  border-color: #d0d9e2;
  background: #ffffff;
  color: #314252;
  box-shadow: none;
}

.dashboard-ai-launcher-action-primary.is-secondary:hover,
.dashboard-ai-launcher-action-primary.is-secondary:focus {
  border-color: #9eb7c4;
  background: #f6f9fb;
  color: #1f2937;
}

.dashboard-ai-launcher-primary {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #00a0a0;
  border-color: #009292;
  color: #ffffff;
  box-shadow: 0 10px 22px rgba(0, 160, 160, 0.2);
}

.dashboard-ai-launcher-primary:hover,
.dashboard-ai-launcher-primary:focus {
  background: #008989;
  border-color: #007c7c;
  color: #ffffff;
  box-shadow: 0 12px 26px rgba(0, 137, 137, 0.24);
  transform: translateY(-1px);
}

.dashboard-ai-launcher-secondary {
  border-color: #d0d9e2;
  color: #314252;
  background: #ffffff;
}

.dashboard-ai-launcher-footer {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 10px;
  padding-top: 6px;
  align-items: center;
  justify-content: space-between;
}

.dashboard-ai-launcher-toggle {
  -webkit-appearance: none;
  appearance: none;
  box-sizing: border-box;
  display: inline-flex;
  flex: 0 0 40px;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  width: 40px;
  min-height: 40px;
  height: 40px;
  margin: 0;
  padding: 0;
  border: 1px solid #d0d9e2;
  border-radius: 10px;
  background: #ffffff;
  color: #425466;
  font-size: 16px;
  line-height: 1;
  cursor: pointer;
}

.dashboard-ai-launcher-toggle:hover,
.dashboard-ai-launcher-toggle:focus {
  background: #f6f9fb;
  border-color: #9eb7c4;
  color: #1f2937;
}

.dashboard-ai-launcher-inline {
  margin: 0;
  width: 100%;
  max-width: none;
  min-height: 0;
  padding: 10px 14px;
  container-type: inline-size;
  container-name: dashboard-ai-launcher-card dashboard-ai-launcher-inline;
}

.dashboard-ai-launcher-inline.is-dragging {
  border-color: #00a0a0;
  background: #eefafa;
  box-shadow: 0 8px 24px rgba(0, 160, 160, 0.14);
}

.dashboard-ai-launcher-inline .dashboard-ai-launcher-body {
  display: grid;
  grid-template-columns: auto auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 10px;
}

.dashboard-ai-launcher-inline-actions-shell {
  position: relative;
  grid-column: 1;
}

.dashboard-ai-launcher-inline-actions-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  min-width: 40px;
  height: 40px;
  min-height: 40px;
  padding: 0;
  border: 1px solid #c8d3df;
  border-radius: 999px;
  background: #f4f7f9;
  color: #66788a;
  box-shadow: 0 8px 18px rgba(25, 40, 55, 0.08);
  transition: background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.dashboard-ai-launcher-inline-actions-toggle:hover,
.dashboard-ai-launcher-inline-actions-toggle:focus,
.dashboard-ai-launcher-inline-actions-toggle.is-active {
  border-color: #aeb9c5;
  background: #e8edf2;
  color: #4f6070;
}

.dashboard-ai-launcher-inline-actions-toggle:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgba(160, 174, 192, 0.22), 0 8px 18px rgba(25, 40, 55, 0.08);
}

.dashboard-ai-launcher-inline-actions-toggle i {
  font-size: 16px;
}

.dashboard-ai-launcher-inline-actions-menu {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  z-index: 12;
  display: none;
  flex-direction: column;
  gap: 8px;
  width: 220px;
  max-width: calc(100vw - 40px);
  box-sizing: border-box;
  padding: 10px;
  border: 1px solid #d7dee8;
  border-radius: 16px;
  background: linear-gradient(180deg, #ffffff 0%, #f5fbfc 100%);
  box-shadow: 0 16px 32px rgba(25, 40, 55, 0.18);
}

.dashboard-ai-launcher-inline-actions-menu .dashboard-ai-launcher-action {
  width: 100%;
  justify-content: flex-start;
  margin: 0;
  padding: 7px 10px;
  text-align: left;
}

.dashboard-ai-launcher-inline .dashboard-ai-launcher-dropzone {
  grid-column: 2;
  min-height: 0;
  padding: 0;
  border: 0;
  background: transparent;
  text-align: left;
}

.dashboard-ai-launcher-inline .dashboard-ai-launcher-dropzone:focus {
  outline: none;
}

.dashboard-ai-launcher-inline .dashboard-ai-launcher-dropzone:hover .dashboard-ai-launcher-drop-title,
.dashboard-ai-launcher-inline .dashboard-ai-launcher-dropzone:focus .dashboard-ai-launcher-drop-title,
.dashboard-ai-launcher-inline .dashboard-ai-launcher-dropzone.is-dragging .dashboard-ai-launcher-drop-title,
.dashboard-ai-launcher-inline.is-dragging .dashboard-ai-launcher-drop-title {
  border-color: #00a0a0;
  background: #eefafa;
  color: #0f172a;
  box-shadow: inset 0 0 0 1px rgba(0, 160, 160, 0.12);
}

.dashboard-ai-launcher-inline .dashboard-ai-launcher-drop-title {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  min-height: 40px;
  min-width: 0;
  padding: 0 12px;
  border: 1px dashed #c8d3df;
  border-radius: 12px;
  background: #f9fbfc;
  font-size: 14px;
  font-weight: 700;
  color: #25313d;
  line-height: 1.2;
  text-align: left;
  white-space: nowrap;
}

.dashboard-ai-launcher-inline .dashboard-ai-launcher-drop-title i {
  display: none;
}

.dashboard-ai-launcher-inline .dashboard-ai-launcher-textarea {
  min-height: 50px;
  height: 50px;
  max-height: 132px;
}

.dashboard-ai-launcher-inline .dashboard-ai-launcher-textarea::placeholder {
  color: transparent;
}

.dashboard-ai-launcher-inline .dashboard-ai-launcher-textarea-shell {
  grid-column: 3;
  min-width: 0;
  width: 100%;
}

.dashboard-ai-launcher-inline .dashboard-ai-launcher-inline-placeholder {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  padding: 0 34px 0 14px;
  color: #8a98a9;
  font-size: 14px;
  line-height: 1.45;
  pointer-events: none;
  white-space: normal;
  overflow: hidden;
  transition: opacity 0.12s ease;
}

.dashboard-ai-launcher-inline .dashboard-ai-launcher-textarea:focus ~ .dashboard-ai-launcher-inline-placeholder,
.dashboard-ai-launcher-inline .dashboard-ai-launcher-textarea:not(:placeholder-shown) ~ .dashboard-ai-launcher-inline-placeholder {
  opacity: 0;
}

.dashboard-ai-launcher-inline-divider {
  display: none;
  color: #708090;
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
}

.dashboard-ai-launcher-inline .dashboard-ai-launcher-primary,
.dashboard-ai-launcher-inline .dashboard-ai-launcher-toggle {
  white-space: nowrap;
}

.dashboard-ai-launcher-inline .dashboard-ai-launcher-primary {
  grid-column: 4;
  min-width: 0;
  padding: 0 14px;
  border-color: #009292;
  background: #00a0a0;
  color: #ffffff;
  box-shadow: 0 8px 18px rgba(0, 160, 160, 0.18);
}

.dashboard-ai-launcher-inline .dashboard-ai-launcher-primary:hover,
.dashboard-ai-launcher-inline .dashboard-ai-launcher-primary:focus {
  border-color: #007c7c;
  background: #008989;
  color: #ffffff;
}

.dashboard-ai-launcher-inline .dashboard-ai-launcher-primary.is-ready {
  animation: none;
  will-change: auto;
}

.dashboard-ai-launcher-inline .dashboard-ai-launcher-toggle {
  grid-column: 5;
}

.dashboard-ai-launcher-inline-feedback {
  display: none;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 6px;
}

.dashboard-ai-launcher-inline-feedback.is-active {
  display: flex;
}

.dashboard-ai-launcher-inline .dashboard-ai-launcher-file {
  margin-top: 0;
  gap: 8px;
  padding: 7px 10px;
  border-radius: 999px;
  font-size: 12px;
  line-height: 1.2;
}

.dashboard-ai-launcher-inline .dashboard-ai-launcher-file-name {
  max-width: 190px;
}

.dashboard-ai-launcher-inline .dashboard-ai-launcher-file,
.dashboard-ai-launcher-inline .dashboard-ai-launcher-error {
  flex: 1 1 100%;
}

@media (max-width: 1180px) {
  .dashboard-ai-launcher-inline-slot,
  .dashboard-ai-launcher-inline-slot.is-minimized {
    min-width: 0;
    width: 100%;
    max-width: none;
  }

  .dashboard-ai-launcher-inline .dashboard-ai-launcher-body {
    grid-template-columns: auto auto minmax(0, 1fr) auto auto;
  }

  .dashboard-ai-launcher-inline .dashboard-ai-launcher-textarea-shell {
    min-width: 0;
  }
}

.dashboard-ai-launcher-inline .dashboard-ai-launcher-error {
  margin-top: 0;
}

.dashboard-ai-launcher.is-minimized .dashboard-ai-launcher-toggle {
  flex-basis: 36px;
  min-width: 36px;
  width: 36px;
  min-height: 36px;
  height: 36px;
  border-radius: 999px;
}

@keyframes dashboardLauncherPulse {
  0% {
    transform: scale(1);
    box-shadow: 0 10px 22px rgba(0, 160, 160, 0.22), 0 0 0 0 rgba(0, 160, 160, 0.28);
  }

  70% {
    transform: scale(1.025);
    box-shadow: 0 14px 28px rgba(0, 160, 160, 0.28), 0 0 0 12px rgba(0, 160, 160, 0);
  }

  100% {
    transform: scale(1);
    box-shadow: 0 10px 22px rgba(0, 160, 160, 0.22), 0 0 0 0 rgba(0, 160, 160, 0);
  }
}

.dashboard-ai-launcher-primary.is-ready {
  background: #00a0a0;
  border-color: #009292;
  color: #ffffff;
  box-shadow: 0 10px 22px rgba(0, 160, 160, 0.22);
  animation: dashboardLauncherPulse 1.35s ease-out infinite;
  will-change: transform, box-shadow;
}

.dashboard-ai-launcher-primary.is-ready:hover,
.dashboard-ai-launcher-primary.is-ready:focus {
  background: #008989;
  border-color: #007c7c;
  color: #ffffff;
}

.dashboard-ai-help-panel {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2100;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(15, 23, 42, 0.62);
}

.dashboard-ai-help-panel.is-open {
  display: flex;
}

.dashboard-ai-help-content {
  width: 100%;
  max-width: 1080px;
  max-height: calc(100vh - 40px);
  overflow-y: auto;
  padding: 20px 22px 18px;
  border-radius: 24px;
  background: #ffffff;
  box-shadow: 0 32px 64px rgba(15, 23, 42, 0.3);
}

.dashboard-ai-help-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}

.dashboard-ai-help-copy h4 {
  margin: 0;
  font-size: 24px;
  font-weight: 700;
  color: #132033;
}

.dashboard-ai-help-close {
  width: 34px;
  height: 34px;
  flex: 0 0 auto;
  padding: 0;
  border: 1px solid #d0d9e2;
  border-radius: 999px;
  background: #ffffff;
  color: #425466;
  font-size: 18px;
  font-weight: 700;
  line-height: 32px;
  text-align: center;
  box-shadow: none;
}

.dashboard-ai-help-close:hover,
.dashboard-ai-help-close:focus {
  outline: none;
  border-color: #9eb7c4;
  background: #f5f9fb;
  color: #1f2937;
}

.dashboard-ai-help-visual {
  padding: 8px;
  border: 1px solid #d7dee8;
  border-radius: 20px;
  background: linear-gradient(180deg, #f7fbfd 0%, #eef7f9 100%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.dashboard-ai-help-visual-asset {
  display: block;
  width: 100%;
  height: 470px;
  border: 0;
  background: transparent;
  object-fit: contain;
}

.dashboard-ai-help-supported {
  margin-top: 14px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.dashboard-ai-help-supported-label {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #607486;
}

.dashboard-ai-help-supported-chip {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 28px;
  padding: 4px 12px;
  border: 1px solid #d4e2eb;
  border-radius: 999px;
  background: #f8fbfd;
  color: #214057;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
  box-shadow: 0 6px 14px rgba(31, 41, 55, 0.06);
}

.dashboard-ai-help-supported-chip i {
  font-size: 13px;
}

.dashboard-ai-help-supported-chip-worksheet {
  background: #fff6df;
  border-color: #ecd39a;
  color: #8e6111;
}

.dashboard-ai-help-supported-chip-slides {
  background: #eaf5ff;
  border-color: #c5ddf6;
  color: #2f6aa8;
}

.dashboard-ai-help-supported-chip-docs {
  background: #f4f7fb;
  border-color: #d6dee8;
  color: #4a6077;
}

.dashboard-ai-help-supported-chip-pdf {
  background: #fff0ef;
  border-color: #f1c9c4;
  color: #ba4b3f;
}

.dashboard-ai-help-supported-chip-images {
  background: #edf9f4;
  border-color: #cbe8d8;
  color: #26795b;
}

.dashboard-ai-help-supported-chip-sheets {
  background: #edf9ef;
  border-color: #c6e5cb;
  color: #2c8550;
}

.dashboard-ai-help-supported-chip-video {
  background: #fff3f0;
  border-color: #f3cfc7;
  color: #c0553f;
}

.dashboard-ai-help-supported-chip-notes {
  background: #f5f1ff;
  border-color: #dcccfa;
  color: #6e56c7;
}

@media (min-width: 1200px) {
  .decks-header-wrapper + .decks-toolbar {
    position: relative;
    z-index: 4;
  }

  .decks-toolbar-material-launcher {
    margin-top: -28px;
  }

  .dashboard-ai-launcher-stage {
    min-height: 582px;
    padding: 80px 0 24px;
    overflow: hidden;
    margin-top: -55px;
  }

  .dashboard-ai-launcher-stage::after {
    display: none;
  }

  .dashboard-ai-launcher-backdrop {
    display: block;
    position: absolute;
    top: -64px;
    left: 50%;
    width: min(1080px, calc(100% - 30px));
    max-width: none;
    transform: translateX(-50%) scale(1.04);
    opacity: 0.5;
    filter: saturate(0.92);
    pointer-events: none;
    user-select: none;
    z-index: 0;
  }

  .dashboard-ai-launcher-inline-slot {
    max-width: 940px;
  }

  .dashboard-ai-launcher {
    box-shadow: 0 14px 30px rgba(25, 40, 55, 0.12);
  }
}

@media (min-width: 1280px) {
  .dashboard-ai-help-content {
    max-width: 1160px;
    max-height: calc(100vh - 28px);
    padding: 22px 24px 20px;
  }

  .dashboard-ai-help-visual {
    padding: 10px;
  }

  .dashboard-ai-help-visual-asset {
    height: 560px;
  }

  .dashboard-ai-help-supported-chip {
    min-height: 34px;
    padding: 6px 14px;
  }
}

.btn-new-deck-manual:hover,
.btn-new-deck-manual:focus {
  color: #000000;
  opacity: 0.95;
  box-shadow: 0px 2px 10px 2px gray;
}

.btn-new-deck-manual i {
  font-size: 9px;
}

.btn-new-classrooms {
  color: white;
  background-color: #424242;
  width: 56px;
  height: 56px;
  /*box-shadow: 0px 2px 10px 2px gray;*/
  border-radius: 56px;
  line-height: 52px;
}

.btn-new-classrooms:active {
  box-shadow: 0px 2px 10px 4px gray;
}

.btn-new-classrooms:hover {
  color: white;
  box-shadow: 0px 2px 10px 4px gray;
}

.btn-classroom-options {
  border-radius: 34px;
  color: whitesmoke;
  background-image: -webkit-linear-gradient(top, #CEDCE7 0, #596A72 100%);
  background-image: linear-gradient(to bottom, #CEDCE7 0, #596A72 100%);
  filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);
  filter: progid: DXImageTransform.Microsoft.gradient(enabled=false);
  border-color: #596a72;
}

.current-deck {
  color: black;
  margin-bottom: 5px;
}

.classroom-title-wrapper {
  width: 100%;
  position: relative;
  /*border: 3px solid #DBDBDB;*/
  box-shadow: -3px 0 10px 0 rgba(0, 0, 0, 0.4);
  background: #333333;
  /* background-image: url('/media/icons/corkboard.png'); */
  padding: 20px;
  padding-top: 5px;
  /* padding-left: 20px;
  padding-right: 20px; */
  padding-left: 5px;
  padding-right: 5px;
  padding-bottom: 35px;
}

.class-full-banner {
  display: none;
  margin: -5px -5px 10px;
  padding: 8px 10px;
  background: #d9534f;
  color: #fff;
  text-align: center;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
}

.class-full-banner:hover,
.class-full-banner:focus,
.class-full-banner:visited {
  color: #fff;
  text-decoration: none;
}

.class-full-banner .fa {
  margin-right: 6px;
}

.classroom-area.class-full .class-full-banner {
  display: block;
}

.app-active .classroom-title-wrapper {
  background-color: #4db53c;
  outline: 5px solid red;
  outline-offset: -3px;
  /* line-height: 40px; */
  /* border-bottom: 6px #4db53c solid; */
  -moz-animation: blink normal 1.5s infinite ease-in-out;
  -webkit-animation: blink normal 1.5s infinite ease-in-out;
  -ms-animation: blink normal 1.5s infinite ease-in-out;
  animation: blink normal 1.5s infinite ease-in-out;
}

.app-active:hover::before {
  content: '';
  position: absolute;
  margin-top: -20px;
  width: 220px;
  text-align: center;
  background-color: green;
  color: white;
}

.app-active-app:hover::before {
  content: 'Classroom App running';
}

.app-active-sync:hover::before {
  content: 'Classroom in Sync Mode';
}

@keyframes blink {
  0% {
    background-color: rgba(51, 51, 51, 1)
  }

  50% {
    background-color: rgba(51, 140, 51, 1)
  }

  100% {
    background-color: rgba(51, 51, 51, 1)
  }
}

@-webkit-keyframes blink {
  0% {
    background-color: rgba(51, 51, 51, 1)
  }

  50% {
    background-color: rgba(51, 150, 51, 1)
  }

  100% {
    background-color: rgba(51, 51, 51, 1)
  }
}

.is-test .classroom-title-wrapper {
  background-color: rgba(51, 51, 51, 0.74)
}

.poster-wrapper {
  position: absolute;
  top: 42%;
  left: 15px;
  width: 170px;
  text-align: center;
  font-size: 20px;
  display: none;
  border: 2px solid gray;
  opacity: 0.7;
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 5px;
}

.deck-map-holder:hover .poster-wrapper {
  display: block;
}

.poster-wrapper:hover {
  border: 2px solid black;
  opacity: 1;
  color: black;
  background-color: white;
}

.favourite-wrapper {
  width: 32px;
  height: 32px;
  color: lightgray;
  position: absolute;
  /* top: 5px; */
  bottom: 10px;
  /* left: 5px; */
  left: 2px;
  opacity: 0.5;
}

.is-admin .favourite-wrapper {
  opacity: 1;
}

.deck-map-holder:hover .favourite-wrapper {
  opacity: 0.4;
  color: red;
}

.deck-map-holder .favourite-wrapper:hover {
  opacity: 0.8;
  color: red;
}

.favourite-wrapper .fa-heart:first-child {
  color: red !important;
  opacity: 1 !important;
}

.favourite-wrapper .fa-heart:nth-child(2) {
  /* color: black !important;
  opacity: 1 !important; */
  font-size: 1.5em;
}

.favourite-wrapper.liked {
  color: red !important;
  opacity: 1 !important;
}

.classroom-area .ribbon-wrapper {
  display: none;
}

.classroom-area.over-limit .ribbon-wrapper {
  display: block;
}

.is-test.classroom-area .ribbon-wrapper {
  display: block;
}

.classroom-area.over-limit .classroom-map-wrapper {
  opacity: 0.5;
}

.classroom-area.over-limit .classroom-title-wrapper {
  background-color: rgba(51, 51, 51, 0.54);
}

.classroom-area.over-limit li a:not(.js-edit),
.classroom-area.over-limit .js-launch {
  opacity: 0.5;
  pointer-events: none;
}

.classroom-area.over-limit {
  /* background-color: lightgray; */
  /* opacity: 0.4; */
}

.classroom-area.over-limit .js-google {
  display: none;
}

.classroom-area.over-limit .address-link {
  pointer-events: none;
  opacity: 0.1;
}

/* Keep recovery actions available for decks over the plan limit. */
.deck-area.over-limit li a:not(.js-delete):not(.js-change-owner):not(.js-deck-document-export-menu),
.deck-area.over-limit .js-edit,
.deck-area.over-limit .js-assign {
  /* opacity: 0.5; */
  display: none;
  pointer-events: none;
}

.deck-area.over-limit li a.js-deck-document-export-menu:not(.js-delete):not(.js-change-owner) {
  display: block;
  pointer-events: auto;
}

.deck-area.over-limit .deck-actions-bottom {
  opacity: 0.5;
  /* display:none; */
  pointer-events: none;
}

.deck-area.over-limit .deck-map-holder {
  opacity: 0.5;
  pointer-events: none;
}

.deck-area.over-limit::after {
  content: "⚠️ Deck over plan limit";
  display: block;
  position: absolute;
  top: 10px;
  background: lightgray;
}

.grey-plain {
  background-color: #eee;
}

.home-tips {
  text-align: center;
  position: fixed;
  top: 70px;
  right: 40px;
  border-radius: 25px;
  width: 30px;
  height: 30px;
  color: black;
  background-color: #cccccc;
  box-shadow: 0px 2px 10px 2px black;
  cursor: pointer;
}

.home-tips:hover {
  background-color: #FFFFFF;
  color: white;
}

.home-tips:active {
  box-shadow: 0px 2px 10px 4px black;
}

.home-guide-introduction {
  position: fixed;
  margin: 0 auto;
  left: 357px;
  z-index: -10;
  margin-top: 100px;
}

.home-guide-exit {
  position: fixed;
  margin: 0 auto;
  left: 600px;
  z-index: -10;
  margin-top: 100px;
}

.chardinjs-show-element {
  z-index: 9999999 !important;
}

.sweet-alert-lock {
  top: 0px;
  margin-top: 30px !important;
  width: 600px;
  margin-left: -300px;
}

.sweet-alert.sweet-alert-lock p {
  max-height: calc(90vh - 150px);
}

.jstree-default .jstree-clicked {
  background: rgb(215, 215, 215);
  border: 1px gray;
  font-weight: bold;
}

.sweet-alert .jstree {
  text-align: left;
}

.sweet-alert .sa-input-error {
  top: 24px;
}

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

.tag-selected {
  /*border: black solid 1px;*/
  background: rgb(241, 241, 241);
}

.well {
  padding: 5px;
  background-color: inherit;
  border: none;
  box-shadow: none;
}

.well-category {
  margin-bottom: 0px;
  padding-bottom: 0px;
}

#filter-menu .checkbox {
  margin-top: 0px;
  margin-bottom: 0px;
  min-width: 80px;
}

#filter-menu .list-group {
  margin-bottom: 5px;
}

#filter-menu .list-group-item {
  border: none;
  padding-bottom: 0px;
  padding-left: 5px;
}

#filter-menu input[type='checkbox'] {
  display: none;
}

.list-group-item .list-group .checkbox {
  display: inline-block;
  margin-left: 10px;
}

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

#filter-menu h4 {
  margin-bottom: 0px;
}

#filter-menu label {
  width: 100%;
  padding-left: 5px;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

#filter-menu span {
  color: #888888;
}

#filter-menu :checked+span {
  font-weight: bold;
  /* color: black; */
  color: rgb(0, 124, 121);
}

#filter-menu :checked+span:before {
  content: '✓ ';
  margin-left: -15px;
  color: red;
}

#filter-menu .check-fav i {
  color: #cccccc;
}

#filter-menu :checked+span i {
  color: red;
}

@media (max-width: 767px) {

  #filter-menu .list-group-item,
  #filter-menu .checkbox {
    display: inline-block;
  }
}

.well-tags {
  margin-bottom: 0px;
  padding-bottom: 0px;
}

#tags-menu {
  border: 2px solid rgba(0, 0, 0, 0);
  transition: border 0.5s ease;
}

#tags-menu .checkbox {
  margin-top: 0px;
  margin-bottom: 0px;
  min-width: 80px;
}

#tags-menu .list-group {
  margin-top: 0px;
  margin-bottom: 5px;
}

#tags-menu .list-group-item {
  border: none;
  padding-bottom: 0px;
  padding-left: 5px;
  display: inline-block;
}

.blocked #tags-menu {
  /* border: 2px solid red; */
  outline: 2px solid red;
  outline-offset: 2px;
  transition: border 0.5s ease;
}

/* #tags-menu input[type='checkbox'] {
  display: none;
} */

#tags-menu h4 {
  margin-top: 0px;
  margin-bottom: 0px;
}

#tags-menu label {
  width: 100%;
  padding-left: 15px;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

#tags-menu label span {
  color: #888888;
}

#tags-menu :checked+span {
  /* font-weight: bolder; */
  color: black;
}

#paging-pages,
#paging-decks {
  background: transparent;
  border: 0px;
}

.modal.fade .modal-dialog {
  -moz-transition: none !important;
  -o-transition: none !important;
  -webkit-transition: none !important;
  transition: none !important;
  -moz-transform: none !important;
  -ms-transform: none !important;
  -o-transform: none !important;
  -webkit-transform: none !important;
  transform: none !important;
}

#previewModel.modal .modal-body {
  padding: 0px;
  /*background-color: #4A96AD;*/
  background-color: white;
  /*background-image: url('about:blank');*/
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 2px 46px;
  height: 604px;
}

#previewModel .modal-header {
  display: flex;
  align-items: center;
  gap: 8px;
}

#previewModel .modal-header .close {
  order: 3;
  float: none;
  margin-left: 6px;
}

#previewModel #previewDeckTest,
#previewModel #previewDeckEdit {
  order: 2;
  float: none;
  margin-left: 6px;
  margin-right: 0;
}

#previewModel .modal-title {
  display: flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
  overflow: hidden;
  padding-right: 90px;
  order: 1;
  margin: 0;
  margin-right: auto;
}

#previewModel #previewDeckTitle {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#previewModel .modal-dialog {
  width: 614px;
}

#previewFrame {
  display: block;
  width: 612px;
  height: 606px;
}

/* @media (max-device-width: 640px) {
  #previewModel .modal-dialog {
    width: 100vw !important;
  }
  #previewFrame {
    width: 100vw !important;
  }
} */

#previewModel.modal .modal-body-inner {
  padding: 0px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 2px 46px;
  height: 604px;
}

#previewModel.modal .modal-body-image {
  padding: 0px;
  position: absolute;
  bottom: 0px;
}

#previewModel.modal .modal-body-image svg {
  position: absolute;
  bottom: 0px;
  z-index: 0;
  height: 558px !important;
  width: 612px !important;
  border-left: 2px solid black;
}

#previewModel.is-dashboard-mobile-preview.modal .modal-body,
#previewModel.is-dashboard-mobile-preview.modal .modal-body-inner,
#previewModel.is-dashboard-mobile-preview #previewFrame {
  background-color: #333333;
}

#previewModel.is-dashboard-mobile-preview.modal .modal-body-image {
  display: none !important;
}

#previewModel.is-dashboard-mobile-preview .preview-loading {
  color: #ffffff;
}

/*.modal.fade {
  overflow-y: hidden;
}
*/

body.modal-open .page {
  /* overflow-y: scroll; */
}

body {
  padding-right: 0 !important;
}

.preview-loading {
  position: absolute;
  left: 48%;
  left: calc(50% - 25px);
  top: calc(50% - 20px);
  width: 50px;
  height: 40px;
  text-align: center;
  font-size: 1.5em;
  text-decoration: none !important;
}

#filepicker {
  position: fixed;
  /* could also be absolute */
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 99999999;
  background-color: rgba(0, 0, 0, 0.8);
  text-align: center;
}

img.btn-start-guide {
  cursor: pointer;
}

img.btn-start-guide:hover {
  opacity: 0.7;
  border: 2px solid lightgray;
}

@media (max-width: 767px) {
  html,
  body {
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  html.dashboard-preview-modal-open,
  body.dashboard-preview-modal-open {
    overflow: hidden !important;
    overscroll-behavior: none;
  }

  body.dashboard-preview-modal-open {
    left: 0;
    position: fixed;
    right: 0;
    width: 100%;
  }

  .camp-wrapper.is-mobile-dashboard {
    height: auto;
    margin-left: 0;
    margin-right: 0;
    padding-top: 56px;
  }

  .camp-wrapper.is-mobile-dashboard .dashboard-mobile-switch {
    align-items: center;
    background: #ffffff;
    border-bottom: 1px solid #d6dde5;
    display: flex;
    gap: 8px;
    height: 56px;
    padding: 8px 12px;
    position: fixed;
    top: 50px;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 20;
  }

  .camp-wrapper.is-mobile-dashboard .dashboard-mobile-tab {
    flex: 1 1 0;
  }

  .camp-wrapper.is-mobile-dashboard #classrooms-panel,
  .camp-wrapper.is-mobile-dashboard #decks-panel {
    height: auto;
    float: none;
    left: auto;
    margin-left: 0;
    overflow-y: visible;
    overflow-x: hidden;
    padding-bottom: 24px;
    position: static;
    right: auto;
    top: auto;
    width: 100%;
  }

  .camp-wrapper.is-mobile-dashboard #decks-panel {
    border-left: none;
  }

  .camp-wrapper.is-mobile-dashboard[data-mobile-panel="decks"] #classrooms-panel,
  .camp-wrapper.is-mobile-dashboard[data-mobile-panel="classrooms"] #decks-panel {
    display: none;
  }

  .camp-wrapper.is-mobile-dashboard .classrooms-header,
  .camp-wrapper.is-mobile-dashboard .decks-header {
    font-size: 22px;
  }

  .camp-wrapper.is-mobile-dashboard .dashboard-floating-create-button {
    left: 12px;
    position: fixed;
    top: 112px;
    transform: none;
    z-index: 32;
  }

  .camp-wrapper.is-mobile-dashboard .dashboard-floating-create-button.decks-header-create-actions {
    left: 12px;
    position: fixed;
    top: 112px;
    transform: none;
  }

  .camp-wrapper.is-mobile-dashboard .classroom-wrapper {
    margin-left: auto;
    margin-right: auto;
    max-width: calc(100vw - 24px);
    padding: 10px 0 0;
    width: 260px;
  }

  .camp-wrapper.is-mobile-dashboard .classroom-title-wrapper {
    margin: 0 auto;
    max-width: none;
  }

  .camp-wrapper.is-mobile-dashboard .class-limits,
  .camp-wrapper.is-mobile-dashboard .deck-limits {
    margin-left: 0 !important;
    padding: 0 15px 12px;
    text-align: center;
  }

  .camp-wrapper.is-mobile-dashboard .classrooms-toolbar,
  .camp-wrapper.is-mobile-dashboard .decks-toolbar {
    margin-left: 0;
    margin-right: 0;
    padding: 12px 15px;
  }

  .camp-wrapper.is-mobile-dashboard .decks-toolbar-main,
  .camp-wrapper.is-mobile-dashboard .decks-tree-toolbar {
    max-width: none;
  }

  .camp-wrapper.is-mobile-dashboard .decks-toolbar-main {
    justify-content: center;
  }

  .camp-wrapper.is-mobile-dashboard .decks-tree-toolbar {
    display: block;
  }

  .camp-wrapper.is-mobile-dashboard #tree-container {
    max-width: none;
    min-width: 0;
    width: 100% !important;
  }

  .camp-wrapper.is-mobile-dashboard .decks-toolbar-actions {
    display: inline-flex;
    margin-left: 0;
    margin-top: 10px;
  }

  .camp-wrapper.is-mobile-dashboard .deck-search-input,
  .camp-wrapper.is-mobile-dashboard .deck-search-select {
    flex-basis: 100%;
    width: 100%;
  }

  .camp-wrapper.is-mobile-dashboard .toolbar-button,
  .camp-wrapper.is-mobile-dashboard .toolbar-button-inline {
    display: inline-flex;
    margin-top: 10px;
  }

  .camp-wrapper.is-mobile-dashboard .new-deck-actions {
    margin-left: 0;
  }

  .camp-wrapper.is-mobile-dashboard .new-deck-hover-actions {
    left: 0;
    max-width: calc(100vw - 30px);
    top: calc(100% + 8px);
    transform: translateY(-6px) scale(0.98);
  }

  .camp-wrapper.is-mobile-dashboard .dashboard-ai-mini-panel {
    max-width: 100%;
    min-width: 0;
  }

  .camp-wrapper.is-mobile-dashboard .btn-new-deck-manual {
    min-width: 0;
    width: 100%;
  }

  .camp-wrapper.is-mobile-dashboard .dashboard-header-teams-button {
    margin-top: 0;
    position: absolute !important;
    right: 15px !important;
    top: 50%;
    transform: translateY(-50%) !important;
  }

  .camp-wrapper.is-mobile-dashboard .btn-teams-library-mobile-only {
    display: inline-block;
  }

  .camp-wrapper.is-mobile-dashboard .dashboard-ai-launcher-inline-slot,
  .camp-wrapper.is-mobile-dashboard .dashboard-ai-launcher-inline-slot.is-minimized {
    margin-left: 0;
    max-width: none;
    min-width: 0;
    width: 100%;
  }

  .camp-wrapper.is-mobile-dashboard .dashboard-ai-launcher {
    box-sizing: border-box;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
  }

  .camp-wrapper.is-mobile-dashboard #decks-container {
    min-width: 0;
    padding-bottom: 120px;
  }

  #previewModel {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  #previewModel .modal-dialog {
    height: 100%;
    margin: 0;
    width: auto;
  }

  #previewModel .modal-content {
    border-radius: 0;
    height: 100%;
  }

  #previewModel .modal-header {
    gap: 6px;
    padding: 12px;
  }

  #previewModel .modal-title {
    padding-right: 0;
  }

  #previewModel #previewDeckEdit {
    font-size: 12px;
    margin-left: 0;
    padding: 6px 10px;
  }

  #previewModel.modal .modal-body,
  #previewModel.modal .modal-body-inner {
    height: calc(100vh - 64px);
  }

  #previewModel.modal .modal-body-image {
    left: 0;
    max-width: 100%;
    right: 0;
    width: 100%;
  }

  #previewModel.modal .modal-body-image svg {
    border-left: none;
    height: auto !important;
    max-height: calc(100vh - 110px);
    width: 100% !important;
  }

  #previewFrame {
    height: calc(100vh - 64px);
    width: 100%;
  }
}

@media (max-width: 640px) {
  .dashboard-ai-launcher {
    box-sizing: border-box;
    margin: 0 auto;
    width: 100%;
    min-height: 0;
    padding: 14px;
  }

  .dashboard-ai-launcher-title {
    font-size: 18px;
  }

  .dashboard-ai-launcher-dropzone {
    min-height: 124px;
  }

  .dashboard-ai-launcher-drop-subtitle {
    padding-left: 0;
  }

  .dashboard-ai-launcher-file-name {
    max-width: 210px;
  }

  .new-deck-hover-actions {
    top: calc(100% + 8px);
    left: 0;
    transform: translateY(-6px) scale(0.98);
  }

  .dashboard-ai-mini-panel {
    min-height: 48px;
    padding: 8px 10px;
  }

  .btn-new-deck-manual {
    font-size: 12px;
    min-height: 36px;
    min-width: 190px;
    padding: 6px 12px;
  }

  .new-deck-actions:hover .new-deck-hover-actions,
  .new-deck-actions.is-revealed .new-deck-hover-actions {
    transform: translateY(0) scale(1);
  }

  .dashboard-ai-launcher-inline-slot {
    margin-left: 0;
    min-width: 0;
    width: 100%;
    max-width: none;
  }

  .dashboard-ai-launcher-inline-slot.is-minimized {
    min-width: 0;
    width: 100%;
    max-width: none;
  }

  .dashboard-ai-launcher-inline-slot.is-active {
    margin-top: 0;
  }

  .dashboard-ai-launcher-inline {
    width: 100%;
    max-width: none;
    margin: 0;
  }

  .dashboard-ai-launcher-inline .dashboard-ai-launcher-body,
  .dashboard-ai-launcher-inline .dashboard-ai-launcher-dropzone,
  .dashboard-ai-launcher-inline .dashboard-ai-launcher-drop-title,
  .dashboard-ai-launcher-inline .dashboard-ai-launcher-textarea-shell,
  .dashboard-ai-launcher-inline .dashboard-ai-launcher-primary,
  .dashboard-ai-launcher-inline .dashboard-ai-launcher-toggle,
  .dashboard-ai-launcher-inline .dashboard-ai-launcher-file,
  .dashboard-ai-launcher-inline .dashboard-ai-launcher-error {
    min-width: 0;
  }

  .new-deck-actions {
    margin-left: 0;
  }

  .dashboard-ai-launcher-inline .dashboard-ai-launcher-inline-divider {
    width: 100%;
    text-align: center;
  }

  .dashboard-ai-help-panel {
    padding: 12px;
  }

  .dashboard-ai-help-content {
    max-height: calc(100vh - 24px);
    padding: 16px;
    border-radius: 20px;
  }

  .dashboard-ai-help-header {
    gap: 12px;
  }

  .dashboard-ai-help-copy h4 {
    font-size: 20px;
  }

  .dashboard-ai-help-visual {
    padding: 8px;
  }

  .dashboard-ai-help-visual-asset {
    height: 280px;
  }

  .dashboard-ai-help-supported {
    gap: 6px;
  }

  .dashboard-ai-help-supported-chip {
    font-size: 12px;
    padding: 4px 10px;
  }
}

@container dashboard-ai-launcher-card (max-width: 520px) {
  .dashboard-ai-launcher-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: minmax(40px, auto);
    gap: 8px;
  }

  .dashboard-ai-launcher-actions .dashboard-ai-launcher-action {
    gap: 0;
    padding: 7px 8px;
    font-size: 13px;
  }

  .dashboard-ai-launcher-actions .dashboard-ai-launcher-action-icon {
    flex-basis: 36px;
    width: 36px;
    min-width: 36px;
    padding: 0 6px 0 3px;
  }

  .dashboard-ai-launcher-actions .dashboard-ai-launcher-action-upload {
    grid-column: 1 / -1;
    grid-row: auto;
  }

  .dashboard-ai-launcher-actions .dashboard-ai-launcher-action:not(.dashboard-ai-launcher-action-upload) {
    grid-column: auto;
  }
}

@container dashboard-ai-launcher-inline (max-width: 860px) {
  .dashboard-ai-launcher-inline .dashboard-ai-launcher-body {
    grid-template-columns: auto minmax(0, 1fr) auto auto;
  }

  .dashboard-ai-launcher-inline .dashboard-ai-launcher-dropzone {
    display: none;
  }

  .dashboard-ai-launcher-inline .dashboard-ai-launcher-textarea-shell {
    grid-column: 2;
  }

  .dashboard-ai-launcher-inline .dashboard-ai-launcher-primary {
    grid-column: 3;
  }

  .dashboard-ai-launcher-inline .dashboard-ai-launcher-toggle {
    grid-column: 4;
  }
}

@container dashboard-ai-launcher-inline (max-width: 560px) {
  .dashboard-ai-launcher-inline .dashboard-ai-launcher-body {
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    align-items: start;
    column-gap: 10px;
    row-gap: 10px;
  }

  .dashboard-ai-launcher-inline-actions-shell {
    grid-column: 1;
    grid-row: 1;
    align-self: start;
  }

  .dashboard-ai-launcher-inline .dashboard-ai-launcher-dropzone {
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
  }

  .dashboard-ai-launcher-inline .dashboard-ai-launcher-drop-title {
    min-width: 0;
    white-space: normal;
  }

  .dashboard-ai-launcher-inline .dashboard-ai-launcher-textarea-shell {
    grid-column: 1 / -1;
    grid-row: 2;
    min-width: 0;
  }

  .dashboard-ai-launcher-inline .dashboard-ai-launcher-primary {
    grid-column: 3;
    grid-row: 1;
    align-self: start;
    justify-self: end;
  }

  .dashboard-ai-launcher-inline .dashboard-ai-launcher-toggle {
    grid-column: 4;
    grid-row: 1;
    align-self: start;
    justify-self: end;
  }
}

@container dashboard-ai-launcher-inline (max-width: 340px) {
  .dashboard-ai-launcher-inline .dashboard-ai-launcher-body {
    grid-template-columns: auto auto auto;
    justify-content: end;
    align-items: center;
  }

  .dashboard-ai-launcher-inline .dashboard-ai-launcher-dropzone,
  .dashboard-ai-launcher-inline .dashboard-ai-launcher-textarea-shell,
  .dashboard-ai-launcher-inline .dashboard-ai-launcher-inline-divider,
  .dashboard-ai-launcher-inline .dashboard-ai-launcher-file,
  .dashboard-ai-launcher-inline .dashboard-ai-launcher-error,
  .dashboard-ai-launcher-inline .dashboard-ai-launcher-inline-feedback {
    display: none !important;
  }

  .dashboard-ai-launcher-inline .dashboard-ai-launcher-primary {
    grid-column: 2;
    grid-row: 1;
    justify-self: end;
  }

  .dashboard-ai-launcher-inline .dashboard-ai-launcher-toggle {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
  }

  .dashboard-ai-launcher-inline-actions-shell {
    grid-column: 1;
    grid-row: 1;
    justify-self: end;
  }

  .dashboard-ai-launcher-inline-actions-menu {
    left: 0;
    right: auto;
  }

  .dashboard-ai-launcher-inline .dashboard-ai-launcher-primary,
  .dashboard-ai-launcher-inline .dashboard-ai-launcher-toggle {
    width: auto;
    min-width: 0;
  }
}

/*js-tree*/

.vakata-context,
.vakata-context ul {
  background-color: white;
}

/*js-tree end*/

.sweet-alert p {
  /*max-height: calc(90vh - 300px);*/
  max-height: calc(50vh - 200px);
  /*min-height: 80px;  */
  overflow-y: auto;
  overflow-x: hidden;
}

svg .fillColor {
  fill: #DCA05F;
}

.markerBlue .fillColor {
  fill: #556F94;
}

.markerBlack .fillColor {
  fill: black;
}

.markerBrown .fillColor {
  fill: #DCA05F;
}

.markerPurple .fillColor {
  fill: #4a148c;
}

.markerDBrown .fillColor {
  fill: #6d4c41;
}

.markerGreen .fillColor {
  fill: #70B780;
}

.markerPink .fillColor {
  fill: #E592B2;
}

.markerRed .fillColor {
  fill: #D86160;
}

.markerYellow .fillColor {
  fill: #E5D156;
}

.swal-wide {
  width: 600px !important;
  margin-left: -300px !important;
}

.swal-tall {
  height: auto !important;
  max-height: 80vh !important;
  overflow-y: auto;
}

.swal-tall p {
  max-height: none;
  overflow: visible;
}

.no-sweet input {
  width: inherit;
  box-sizing: inherit;
  border-radius: inherit;
  border: inherit;
  height: inherit;
  margin-top: inherit;
  margin-bottom: inherit;
  font-size: inherit;
  box-shadow: inherit;
  padding: inherit;
  /* display: inherit; */
  -webkit-transition: inherit;
  transition: inherits;
}

.no-sweet p {
  max-height: inherit;
}

.no-sweet .radio,
.no-sweet .checkbox {
  text-align: left;
}

.no-sweet img {
  /* width: 100px; */
  width: 110px;
  height: 100px;
  webkit-filter: grayscale(1);
  filter: grayscale(1);
  pointer-events: none;
  margin: 4px;
}

.no-sweet input:checked+img {
  outline: 4px solid #009fa0;
  /* outline-offset: -6px; */
  webkit-filter: none;
  filter: none;
}

.no-sweet .radio label {
  padding-left: 0;
}

.onboard-subtitle {
  display: block;
  margin-top: 10px;
  text-align: center;
}

.no-sweet input:checked+img+.onboard-subtitle {
  font-weight: bold;
  color: black;
  padding-bottom: 3px;
  border-bottom: 4px solid #009fa0;
}

.is-onboard .deck-limits,
.is-onboard .class-limits {
  visibility: hidden;
}

.is-onboard #tree-container,
.is-onboard .upgrade-link {
  display: none;
}

.two-and-below #tree-container {
  display: none;
}

.two-and-below .list-item-tree {
  pointer-events: none;
  opacity: 0.5;
}

.wobble {
  animation-iteration-count: 2;
}

/* .context-help {
  font-size: 20px;
  left: 5px;
  border: 1px solid darkgray;
  border-radius: 100px;
  background-color: white;
  background-color: rgba(255, 255, 255, 0.5);
  color: black;
  line-height: 1.2em;
  position: absolute;
} */
.context-help {
  /* position: absolute; */
  font-size: 0.8em;
  font-weight: bold;
  border: 1px solid darkgray;
  /* border-radius: 5px; */
  border-radius: 100px;
  background-color: white;
  background-color: rgba(255, 255, 255, 0.5);
  color: black;
  line-height: 1.2em;
  position: absolute;
  margin-top: 0.15em;
  margin-left: 0.3em;
}

.context-help:before {
  content: '\00a0?\00a0';
}

.context-help:hover,
.context-help:active,
.context-help:focus {
  border: 1px solid black;
  text-decoration: none !important;
  background-color: white;
  color: black;
}

.toolbar-button {
  align-items: center;
  appearance: none;
  background: transparent;
  border: 0;
  display: inline-flex;
  position: absolute;
  right: 10px;
  color: lightgray;
  font-size: 15px;
  justify-content: center;
  line-height: 1;
  top: 85px;
  padding: 5px;
  cursor: pointer;
}

.toolbar-button-inline {
  display: inline-flex;
  position: static;
  right: auto;
  top: auto;
  margin-left: auto;
  padding: 0 4px;
}

.toolbar-button:hover {
  color: black;
  opacity: 0.8;
}

.toolbar-button.active {
  opacity: 1.0;
  color: black
}

.fav-toggles {
  text-align: center;
  display: inline-block;
  margin-top: 6px;
}

.fav-toggles a {
  margin: 0 8px 0 8px;
  color: gray;
}

.fav-toggles a.active {
  /* font-weight: bold; */
  text-shadow: 0px 0px 1px black;
  text-shadow: -0.06ex 0 black,
    0.06ex 0 black;
  color: rgb(0, 124, 121);
}

#results-paging2 .fav-toggles {
  display: none;
}


.deck-name:hover a {
  opacity: 1;
  color: #337ab7;
}

.deck-name a {
  font-size: 1em;
  /* opacity: 0.5; */
  /* color: lightgray; */
  color: gray;
  display: block;

  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.provider-google-only,
.provider-google-only-inline {
  /* visibility: hidden; */
  display: none;
}

.provider-google .provider-google-only {
  /* visibility: visible; */
  display: block;
}

.provider-google .provider-google-only-inline {
  /* visibility: visible; */
  display: inline-block;
}

.provider-microsoft-only,
.provider-microsoft-only-inline {
  /* visibility: hidden; */
  display: none;
}

.provider-microsoft .provider-microsoft-only {
  /* visibility: visible; */
  display: block;
}

.provider-microsoft .provider-microsoft-only-inline {
  /* visibility: visible; */
  display: inline-block;
}
