/*
 *= require jquery-ui/sortable
 */

/*
 * color: #A35C07; // TCI Gold
 * color: #0F469C; // TCI Blue
*/

:root {
  --standard-blue: #0F469C;
  --standard-blue-light: #527AB8;
  --standard-blue-lighter: #87A3CE;
  --standard-blue-lightest: #B0C2DE;
  --standard-blue-lightest2: #BECDE4;
  --standard-purple: #391872;
  --standard-gold: #A35C07;
}

/* application specific customizations to the default stylesheet */

/* Turbo Stream animations for smooth element removal */
[id^="member_"] {
  transition: opacity 0.5s ease-out, transform 0.5s ease-out;
}

[id^="member_"][data-turbo-removing] {
  opacity: 0;
  transform: translateX(-20px);
}
a:link {
  color: var(--standard-blue);
  text-decoration: none; }

a:visited {
  color: var(--standard-blue);
  text-decoration: none; }

a:hover {
  color: var(--standard-purple);
  text-decoration: none; }

a:active {
  color: var(--standard-purple);
  text-decoration: none; }

select.fixWidth {
  width: 140px; }

img {
  border-style: none; }

h1.spaced {
  line-height: 90%; }

/* login */
#login form .field {
  margin-top: 3px; }

#login form .field input {
  margin-bottom: 3px; }

#login form label, #login .field label {
  color: var(--standard-blue);
  float: left;
  width: 188px;
  clear: both;
  text-align: right;
  padding: 1px 19px 0 0;
  font-size: 0.9em; }

#login .buttons {
  text-align: center; }

/* table styles */
table.listing {
  font-size: 0.9em;
  border-collapse: collapse;
  width: 100%; }

table.listing thead tr th {
  border-bottom: 2px solid var(--standard-purple);
  margin: 0;
  font-weight: bold;
  font-size: 1.1em;
  color: var(--standard-blue);

  text-align: left; }

table.listing thead tr th {
  text-transform: uppercase;
  text-decoration: none; }

table.listing thead tr th a {
  color: var(--standard-blue);
  text-transform: uppercase;
  text-decoration: none;
  font-size: 12px; }

table.listing td {
  vertical-align: top; }

table.listing td.team_name {
  width: 140px; }

table.listing td.team_actions {
  width: 120px;
  text-align: right; }

table.listing thead tr th.team_member_actions,
table.listing tbody tr td.team_member_actions,
table.listing thead tr th.order_actions,
table.listing tbody tr td.order_actions {
  text-align: right; }

table.listing thead tr th.team_member_actions a {
  text-transform: none;
  text-decoration: none;
  font-weight: normal; }

table.listing tbody tr td.team_member_header {
  font-weight: bold;
  color: #666; }

table#team_activity_list td.activity_date {
  width: 150px; }

table.letters_help td {
  vertical-align: top;
  width: 50%;
  padding-left: 10px; }

h3.current_team_members,
h3.add_edit_team_members {
  text-transform: uppercase; }

/* table filter */
div.list_filter, div.list_search {
  padding-bottom: 10px;
  font-size: 0.9em; }

/* listing div */
div.listing {
  width: 100%;
  border-collapse: collapse; }

/* example text */
span.example {
  color: #808285;
  font-size: 0.9em; }

span.padded-left {
  margin-left: 207px;
  display: block;
  line-height: 1.2em; }

/* help dialog box */
div.help_box {
  background-color: #ccc;
  padding: 3px 10px;
  font-size: 11px; }

div.help_box p {
  line-height: 1.2em; }

/* footer */
#footer {
  font-size: 0.8em; }

/* Team Admin */
#team_timeline {
  padding: 0px 0px 0px 160px; }

span#cover_letter_help {
  font-size: 11px; }

/* Team Summary */
#team_summary {
  width: 100%;
  border-collapse: collapse; }

#team_summary th, #team_summary td {
  background: #efefef;
  padding: 10px; }

#team_summary th {
  text-align: center; }

.big_number {
  width: 25%;
  text-transform: uppercase; }

#data_row td h1 {
  font-weight: normal;
  font-size: 40px;
  color: #272F44;
  text-align: center;
  margin: 0px 0px 0px 3px; }

#data_row td h4 {
  color: #272F44;
  text-align: center;
}

#caption_row td {
  text-align: center; }

div#next_action {
  float: left;
  width: 440px;
  padding: 10px 10px 10px 0;
  font-size: 14px; }

div#team_actions {
  float: left;
  padding: 10px; }

div#team_actions span.action {
  display: block;
  padding-bottom: 10px; }

div#team_actions span.action img,
img.image_logo {
  vertical-align: middle; }

#team_activity_list {
  width: 100%; }

#team_activity_list td {
  padding-right: 20px; }

/* Diagnostic - Intro */
.intro_table {
  width: 100%; }

.caption {
  width: 20%;
  font-weight: bold; }

#diagnostic_team_members div {
  width: 45%;
  float: left;
  padding-right: 10px; }

#welcome_text {
  font-family: Georgia;
  font-size: 17px;
  margin: 30px 0px; }

#start_diagnostic {
  text-align: center; }

/* Answers */
/* Edit */
#question_number {
  font-size: 20px;
  font-weight: bold;
  width: 30px; }

#question_text {
  font-size: 17px;
  margin: 30px 0px;
  height: 60px; }

#possible_answers, #answer_legend {
  margin: 0 auto; }

#possible_answers td {
  padding: 5px; }

#answer_legend td {
  width: 215px; }

#right_legend {
  text-align: right; }

#answer_buttons, #questions_count {
  text-align: center;
  padding: 30px 0px; }

#answer_buttons_table {
  margin: 0 auto; }

#answer_buttons a {
  margin-right: 20px; }

#question_category_and_factor td {
  width: 215px; }

#questions_count {
  text-align: right;
  font-size: 12px; }

/* Answers - Edit Open Question */
#open_answer {
  margin: 0 auto;
  width: 50%; }

#status_indicator {
  text-align: center; }

/* Admin Open Ended Questions */
span.question-actions {
  padding-left: 10px;
  float: right; }

span.question-actions a {
  text-decoration: none;
  font-size: 11px; }

/* Report */
div#process {
  padding: 10px;
  text-align: center; }

tbody#report_pages_included tr,
tbody#report_pages_available tr {
  cursor: pointer; }

/* Menu */
div#menu {
  padding-top: 10px;
  /*float: right;*/
  font-weight: bold;
  width: 550px;
  margin: 0px auto;
  font-size: 14px; }

div#menu a {
  padding: 5px;
  /*color: #fff;*/
  text-transform: capitalize;
  border-left: 1px solid #fff;
  text-decoration: underline;
}

div#menu a:hover {
  color: #362c66; }

/* orders / receipts */
div#receipt_address {
  padding: 10px 10px 10px 200px; }

p.note {
  border: 1px solid var(--standard-blue-lighter);
  padding: 10px; }

/*********************************
 * Pagination
 */
.pagination {
  font-size: 0.7em;
  padding: 3px;
  margin: 3px;
  text-align: right; }

.pagination a {
  padding: 2px 5px 2px 5px;
  margin: 2px;
  border: 1px solid var(--standard-blue);
  text-decoration: none;
  color: var(--standard-blue);
}

.pagination a:hover, .pagination a:active {
  border: 1px solid #000099;
  color: #000; }

.pagination span.current {
  padding: 2px 5px 2px 5px;
  margin: 2px;
  /*border: 1px solid #362c66;*/
  border: 1px solid var(--standard-blue);
  font-weight: bold;
  /*background-color: #362c66;*/
  background-color: var(--standard-blue);
  color: #FFF; }

.pagination span.disabled {
  padding: 2px 5px 2px 5px;
  margin: 2px;
  border: 1px solid #eee;
  color: #ddd; }

/* Admin - Diagnostic / Translation */
#question_form .full_width {
  width: 100%; }

/* Admin - Translation */
#translate_field_label {
  font-family: Georgia;
  font-size: 18px;
  font-weight: bold;
  margin: 5px; }

#translate_field_label a {
  font-family: Georgia;
  font-size: 14px;
  font-weight: normal; }

#translate_field_text {
  font-family: Georgia;
  font-size: 16px;
  padding: 5px;
  margin: 0 0 20px 0; }

/*********************************
 * Generated Styles
 */
.fieldWithErrors > input, .fieldWithErrors > textarea, .fieldWithErrors > select {
  border: 1px solid #bf1e2d; }

#errorExplanation {
  border: 2px solid #bf1e2d;
  margin-bottom: 20px; }

#errorExplanation h2 {
  text-align: center;
  font-weight: bold;
  font-size: 14px;
  color: #bf1e2d; }

#errorExplanation p {
  margin-bottom: 0;
  padding: 5px; }

#errorExplanation ul li {
  list-style: square; }

div#flash {
  left: 0;
  margin: 0 auto;
  position: absolute;
  text-align: center;
  top: 0;
  width: 100%;
  z-index: 1000; }

div#notice {
  text-align: center;
  padding: 10px;
  background: #00cc00; }

div#notice span {
  font-weight: bold;
  color: #fff; }

div#warning {
  text-align: center;
  padding: 10px;
  background: #cc0000; }

div#warning span {
  font-weight: bold;
  color: #fff; }

/* Order notes styling */
ol#order_notes_list {
  list-style-type: none;
  padding-left: 0; }

#submit_disabled_comment {
  color: red;
}

.current-user-email {
  color: var(--standard-blue);
}

.save-and-exit a {
  color: var(--standard-blue-lighter) !important;
  border: 1px solid var(--standard-blue-lighter);
  padding: 0.6em;
  margin-left: 0.6em;
}

.save-and-exit a:hover {
  color: white !important;
  background-color: var(--standard-blue) !important;
}

input.question_button {
  background: var(--standard-blue);
  border: 2px solid var(--standard-blue-lightest);
  padding: 0.5em 0.8em;
  color: white;
}

h1.control_panel_welcome {
  color: var(--standard-blue);
  font-size: 1.7em;
}

/* Enabled Languages Grid */
.enabled-languages-grid {
  margin-top: 20px; /* Add padding above the header */
}

.enabled-languages-grid table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 20px;
}

.enabled-languages-grid th, .enabled-languages-grid td {
  border: 1px solid #ddd;
  padding: 8px;
  text-align: left;
}

.enabled-languages-grid th {
  background-color: #f2f2f2;
  font-weight: bold;
  text-align: center; /* Center the header text */
}

.enabled-languages-grid td.checkbox-cell {
  text-align: center;
}

.enabled-languages-grid tbody tr:nth-child(even) {
  background-color: #f9f9f9;
}

.enabled-languages-grid tbody tr:hover {
  background-color: #f1f1f1;
}

.enabled-languages-grid .submit-container {
  margin-top: 20px; /* Add padding between grid and button */
  text-align: right; /* Move button to the right */
}

/* TomSelect cursor fix */
.ts-control > input {
  flex-grow: 1;
}

/* Answer highlight effect */
@keyframes highlight {
  0% { background-color: #ffff99; }
  100% { background-color: transparent; }
}
.highlight-effect {
  animation: highlight 1s ease-out;
}
