/* line 3, app/assets/stylesheets/metrics.scss */
.metrics .simple-calendar-year-for-day .start-date {
  background-color: white !important;
}

/* line 6, app/assets/stylesheets/metrics.scss */
.metrics .simple-calendar-year-for-day .today.next-month {
  background-color: #eee;
}

/* line 9, app/assets/stylesheets/metrics.scss */
.metrics .simple-calendar-year-for-day .today.current-month {
  background-color: lightyellow !important;
}

/* line 16, app/assets/stylesheets/metrics.scss */
input[id="metric_data_point_string_value"]:focus,
textarea[id="metric_data_point_notes"]:focus {
  border: 3px turquoise solid !important;
  background-color: lightyellow !important;
}

/* line 23, app/assets/stylesheets/metrics.scss */
.value-input-long {
  width: 100%;
  margin-bottom: 10px;
  padding: 10px;
  border-radius: 6px;
  font-size: 120%;
  font-weight: 600;
}

/* line 32, app/assets/stylesheets/metrics.scss */
.value-input-inline {
  width: 150px;
  padding: 10px;
}

/* line 37, app/assets/stylesheets/metrics.scss */
.value-input-long, .notes-input {
  border: 2px gray solid;
}

/* line 41, app/assets/stylesheets/metrics.scss */
.value-input-long:focus, .value-input-inline:focus, .notes-input:focus, .metric-save-btn:focus, .metric-save-btn:hover {
  border: 3px turquoise solid !important;
}

/* line 45, app/assets/stylesheets/metrics.scss */
.notes-input {
  width: 100%;
  height: 333px;
  padding: 10px;
  border-radius: 6px;
}

/* line 52, app/assets/stylesheets/metrics.scss */
.metric-save-btn {
  font-weight: 500;
  padding: 8px;
  background-color: white;
  border: 1px gray solid;
  border-radius: 6px;
  color: #3d3d3d !important;
}

/* line 61, app/assets/stylesheets/metrics.scss */
.metric-save-btn:focus, .metric-save-btn:hover {
  background-color: #e0f2f0;
}

/* line 66, app/assets/stylesheets/metrics.scss */
.heatmap-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 2px;
}

/* line 72, app/assets/stylesheets/metrics.scss */
.heatmap-cell {
  display: block;
  width: 14px;
  height: 14px;
  border-radius: 2px;
}

/* line 79, app/assets/stylesheets/metrics.scss */
.heatmap-cell--completed {
  background-color: #4ade80;
}

/* line 80, app/assets/stylesheets/metrics.scss */
.heatmap-cell--missed {
  background-color: #fecaca;
}
/* line 9, app/assets/stylesheets/mobile.scss */
:root {
  --mobile-primary-header-height: 48px;
  --mobile-subheader-height: 60px;
  --safe-area-inset-top: env(safe-area-inset-top);
  --safe-area-inset-bottom: env(safe-area-inset-bottom);
}

/* line 24, app/assets/stylesheets/mobile.scss */
body:has(.mobile-primary-header) {
  background-color: white;
}

/* line 32, app/assets/stylesheets/mobile.scss */
.mobile-container {
  max-width: 100%;
  padding: 0 7px 7px 7px;
}

/* line 39, app/assets/stylesheets/mobile.scss */
.mobile-primary-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9000;
  padding: 10px;
  padding-top: calc(10px + var(--safe-area-inset-top));
  border-bottom: 1px solid gray;
}

/* line 51, app/assets/stylesheets/mobile.scss */
.mobile-subheader {
  position: fixed;
  left: 0;
  right: 0;
  background: white;
  z-index: 8000;
  padding: 8px 7px;
  border-bottom: 1px solid #ddd;
}

/* line 61, app/assets/stylesheets/mobile.scss */
.mobile-subheader h4 {
  margin: 5px 0 0 0;
}

/* line 67, app/assets/stylesheets/mobile.scss */
.mobile-header {
  position: sticky;
  top: 0;
  background: white;
  z-index: 100;
  padding: 5px 0;
  border-bottom: 1px solid #ddd;
  margin-bottom: 10px;
  margin: 0 -7px 10px -7px;
  padding-left: 7px;
  padding-right: 7px;
}

/* line 79, app/assets/stylesheets/mobile.scss */
.mobile-header h4 {
  margin: 10px 0 0 0;
  padding-left: 7px;
}

/* line 89, app/assets/stylesheets/mobile.scss */
.text-muted-gray {
  color: #999;
}

/* line 93, app/assets/stylesheets/mobile.scss */
.text-dark-gray {
  color: #666;
}

/* line 97, app/assets/stylesheets/mobile.scss */
.text-medium-gray {
  color: #333;
}

/* line 101, app/assets/stylesheets/mobile.scss */
.breadcrumb-separator {
  color: #999;
}

/* line 105, app/assets/stylesheets/mobile.scss */
.empty-state {
  color: #999;
  text-align: center;
  padding: 40px 20px;
}

/* line 119, app/assets/stylesheets/mobile.scss */
.category-section {
  margin-bottom: 8px;
}

/* line 123, app/assets/stylesheets/mobile.scss */
.category-header-link {
  text-decoration: none;
  color: inherit;
  display: block;
}

/* line 128, app/assets/stylesheets/mobile.scss */
.category-header-link:hover {
  opacity: 0.8;
}

/* line 133, app/assets/stylesheets/mobile.scss */
.category-header {
  background: #f9f9f9;
  padding: 10px 15px;
  border-radius: 8px;
  margin-bottom: 10px;
  font-weight: 600;
  font-size: 16px;
  color: #333;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  user-select: none;
}

/* line 147, app/assets/stylesheets/mobile.scss */
.category-header.compact {
  background: #f5f5f5;
  padding: 8px 12px;
  border-radius: 6px;
}

/* line 153, app/assets/stylesheets/mobile.scss */
.category-header strong {
  font-weight: 600;
  font-size: 16px;
  color: #333;
}

/* line 159, app/assets/stylesheets/mobile.scss */
.category-header .caret-icon {
  font-size: 12px;
  color: #666;
  margin-left: 8px;
  transition: transform 0.2s ease;
}

/* line 171, app/assets/stylesheets/mobile.scss */
.metric-item {
  padding: 15px;
  border-bottom: 1px solid #eee;
  background: white;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/* line 184, app/assets/stylesheets/mobile.scss */
.metric-name {
  font-size: 16px;
  font-weight: 500;
  color: #333;
}

/* line 190, app/assets/stylesheets/mobile.scss */
.metric-meta {
  font-size: 12px;
  color: #999;
  margin-top: 3px;
}

/* line 195, app/assets/stylesheets/mobile.scss */
.metric-meta span + span {
  margin-left: 8px;
}

/* line 200, app/assets/stylesheets/mobile.scss */
.metric-arrow {
  color: #ccc;
  font-size: 18px;
}

/* line 213, app/assets/stylesheets/mobile.scss */
.metric-row {
  display: flex;
  align-items: center;
  padding: 12px 8px;
  border-bottom: 1px solid #eee;
  min-height: 44px;
}

/* line 221, app/assets/stylesheets/mobile.scss */
.metric-row:last-child {
  border-bottom: none;
}

/* line 225, app/assets/stylesheets/mobile.scss */
.metric-row .metric-name {
  flex: 1;
}

/* line 229, app/assets/stylesheets/mobile.scss */
.metric-row .metric-value {
  width: 80px;
  text-align: right;
}

/* line 239, app/assets/stylesheets/mobile.scss */
.view-tabs {
  display: flex;
  gap: 5px;
  margin-bottom: 15px;
  border-bottom: 2px solid #eee;
}

/* line 245, app/assets/stylesheets/mobile.scss */
.view-tabs a {
  flex: 1;
  border-radius: 4px 4px 0 0;
}

/* line 249, app/assets/stylesheets/mobile.scss */
.view-tabs a.active-tab {
  border-bottom: 2px solid #007bff;
  color: white !important;
}

/* line 254, app/assets/stylesheets/mobile.scss */
.view-tabs a.inactive-tab {
  border-bottom: none;
}

/* line 268, app/assets/stylesheets/mobile.scss */
.history-item {
  padding: 15px;
  border-bottom: 1px solid #eee;
  background: white;
}

/* line 274, app/assets/stylesheets/mobile.scss */
.history-date {
  color: #666;
  font-size: 14px;
}

/* line 279, app/assets/stylesheets/mobile.scss */
.history-value {
  font-weight: 500;
  font-size: 16px;
}

/* line 283, app/assets/stylesheets/mobile.scss */
.history-value .value-yes {
  color: #28a745;
}

/* line 287, app/assets/stylesheets/mobile.scss */
.history-value .value-no {
  color: #dc3545;
}

/* line 291, app/assets/stylesheets/mobile.scss */
.history-value .value-empty {
  color: #ccc;
}

/* line 296, app/assets/stylesheets/mobile.scss */
.history-notes {
  color: #666;
  font-size: 14px;
  margin-top: 8px;
}

/* line 302, app/assets/stylesheets/mobile.scss */
.history-photos {
  margin-top: 10px;
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
}

/* line 308, app/assets/stylesheets/mobile.scss */
.history-photos img {
  border-radius: 4px;
  object-fit: cover;
  width: 80px;
  height: 80px;
}

/* line 315, app/assets/stylesheets/mobile.scss */
.history-photos .more-photos {
  color: #999;
  font-size: 12px;
}

/* line 329, app/assets/stylesheets/mobile.scss */
.calendar-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px;
  background: #f9f9f9;
  border-radius: 8px;
  margin-bottom: 15px;
}

/* line 338, app/assets/stylesheets/mobile.scss */
.calendar-header h5 {
  margin: 0;
}

/* line 343, app/assets/stylesheets/mobile.scss */
.calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 5px;
}

/* line 349, app/assets/stylesheets/mobile.scss */
.weekday-headers {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 5px;
  margin-bottom: 10px;
  font-weight: bold;
  text-align: center;
  font-size: 14px;
}

/* line 359, app/assets/stylesheets/mobile.scss */
.day-header {
  text-align: center;
  font-weight: bold;
  font-size: 12px;
  color: #666;
  padding: 5px;
}

/* line 367, app/assets/stylesheets/mobile.scss */
.days-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 5px;
}

/* line 373, app/assets/stylesheets/mobile.scss */
.empty-day {
  aspect-ratio: 1;
  background: #f5f5f5;
  border-radius: 4px;
}

/* line 379, app/assets/stylesheets/mobile.scss */
.day-cell {
  aspect-ratio: 1;
  border: 1px solid #ddd;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
}

/* line 388, app/assets/stylesheets/mobile.scss */
.day-cell.empty {
  background: transparent;
  border: none;
}

/* line 393, app/assets/stylesheets/mobile.scss */
.day-cell.filled {
  background: white;
}

/* line 397, app/assets/stylesheets/mobile.scss */
.day-cell.unset {
  background: #f5f5f5;
}

/* line 401, app/assets/stylesheets/mobile.scss */
.day-cell.today {
  background: #007bff;
  color: white;
  font-weight: 500;
}

/* line 408, app/assets/stylesheets/mobile.scss */
.day-cell.boolean-true {
  background: #28a745;
  color: white;
}

/* line 413, app/assets/stylesheets/mobile.scss */
.day-cell.boolean-false {
  background: #dc3545;
  color: white;
}

/* line 418, app/assets/stylesheets/mobile.scss */
.day-cell.boolean-unset {
  background: #ccc;
}

/* line 423, app/assets/stylesheets/mobile.scss */
.day-cell span.day-number {
  font-size: 10px;
}

/* line 427, app/assets/stylesheets/mobile.scss */
.day-cell span.day-number-white {
  font-size: 10px;
  color: white;
}

/* line 432, app/assets/stylesheets/mobile.scss */
.day-cell span.day-number-gray {
  font-size: 10px;
  color: #999;
}

/* line 437, app/assets/stylesheets/mobile.scss */
.day-cell span.day-value {
  font-size: 9px;
  font-weight: bold;
}

/* line 444, app/assets/stylesheets/mobile.scss */
.day-cell.two-line {
  flex-direction: column;
  padding: 2px;
}

/* line 458, app/assets/stylesheets/mobile.scss */
.chain-header {
  background: #f9f9f9;
  padding: 15px;
  border-radius: 8px;
  margin-bottom: 15px;
}

/* line 464, app/assets/stylesheets/mobile.scss */
.chain-header h5 {
  margin: 0 0 5px 0;
}

/* line 468, app/assets/stylesheets/mobile.scss */
.chain-header p {
  margin: 0;
  font-size: 14px;
  color: #666;
}

/* line 473, app/assets/stylesheets/mobile.scss */
.chain-header p span {
  margin-left: 10px;
}

/* line 479, app/assets/stylesheets/mobile.scss */
.chain-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(30px, 1fr));
  gap: 6px;
}

/* line 485, app/assets/stylesheets/mobile.scss */
.chain-cell {
  aspect-ratio: 1;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 9px;
  font-weight: bold;
  min-height: 30px;
}

/* line 495, app/assets/stylesheets/mobile.scss */
.chain-cell.boolean-true {
  background: #28a745;
}

/* line 499, app/assets/stylesheets/mobile.scss */
.chain-cell.boolean-false {
  background: #dc3545;
}

/* line 503, app/assets/stylesheets/mobile.scss */
.chain-cell.boolean-unset {
  background: #ccc;
}

/* line 507, app/assets/stylesheets/mobile.scss */
.chain-cell.value-filled {
  background: white;
  border: 1px solid #ddd;
}

/* line 512, app/assets/stylesheets/mobile.scss */
.chain-cell.value-empty {
  background: #f5f5f5;
  border: 1px solid #ddd;
}

/* line 522, app/assets/stylesheets/mobile.scss */
.current-entry {
  background: #f9f9f9;
  padding: 15px;
  border-radius: 8px;
  margin-bottom: 20px;
}

/* line 528, app/assets/stylesheets/mobile.scss */
.current-entry .value-input-large {
  font-size: 18px;
}

/* line 533, app/assets/stylesheets/mobile.scss */
.current-entry details summary,
.current-entry details .notes-summary,
.current-entry details .photo-summary {
  cursor: pointer;
  color: #666;
  font-size: 14px;
  margin-bottom: 10px;
}

/* line 548, app/assets/stylesheets/mobile.scss */
.boolean-value-yes {
  background-color: #28a745;
  color: white;
  font-weight: 500;
  padding: 4px 10px;
  border-radius: 4px;
  display: inline-block;
}

/* line 557, app/assets/stylesheets/mobile.scss */
.boolean-value-no {
  background-color: #dc3545;
  color: white;
  font-weight: 500;
  padding: 4px 10px;
  border-radius: 4px;
  display: inline-block;
}

/* line 566, app/assets/stylesheets/mobile.scss */
.boolean-value-empty {
  background-color: #f5f5f5;
  border: 1px solid #ddd;
  padding: 4px 10px;
  border-radius: 4px;
  display: inline-block;
  min-width: 50px;
}

/* line 575, app/assets/stylesheets/mobile.scss */
.value-filled {
  color: #666;
  font-weight: 500;
}

/* line 580, app/assets/stylesheets/mobile.scss */
.value-empty {
  color: #ccc;
}

/* line 588, app/assets/stylesheets/mobile.scss */
.mobile-link-plain {
  text-decoration: none;
  color: inherit;
  display: block;
}

/* line 594, app/assets/stylesheets/mobile.scss */
.mobile-link-subtle {
  text-decoration: none;
  color: #333;
  padding: 8px;
  margin: -8px;
}

/* line 601, app/assets/stylesheets/mobile.scss */
.mobile-link-value {
  text-decoration: none;
  padding: 8px;
  margin: -8px;
}

/* line 607, app/assets/stylesheets/mobile.scss */
.mobile-link-unstyled {
  text-decoration: none;
}

/* line 611, app/assets/stylesheets/mobile.scss */
.mobile-link-header {
  color: inherit;
  text-decoration: none;
}

/* line 620, app/assets/stylesheets/mobile.scss */
.day-name {
  font-size: 14px;
  color: #999;
  margin-bottom: 0;
}

/* line 626, app/assets/stylesheets/mobile.scss */
.margin-top-20 {
  margin-top: 20px;
}

/* line 630, app/assets/stylesheets/mobile.scss */
.hidden-file-input {
  display: none;
}

/* line 638, app/assets/stylesheets/mobile.scss */
.metric-month-table-container {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin-bottom: 20px;
  padding-top: 15px;
  margin-top: -15px;
}

/* line 646, app/assets/stylesheets/mobile.scss */
.metric-month-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 11px;
  min-width: 100%;
}

/* line 652, app/assets/stylesheets/mobile.scss */
.metric-month-table thead {
  position: sticky;
  top: 0;
  background: white;
  z-index: 10;
}

/* line 658, app/assets/stylesheets/mobile.scss */
.metric-month-table thead th {
  border: 1px solid #ddd;
  padding: 4px 2px;
  text-align: center;
  font-weight: 600;
  background: #f9f9f9;
}

/* line 665, app/assets/stylesheets/mobile.scss */
.metric-month-table thead th.metric-name-col {
  text-align: left;
  padding-left: 8px;
  min-width: 100px;
  max-width: 120px;
  position: sticky;
  left: 0;
  z-index: 11;
  background: #f9f9f9;
}

/* line 676, app/assets/stylesheets/mobile.scss */
.metric-month-table thead th.day-col {
  min-width: 32px;
  width: 32px;
  position: relative;
}

/* line 681, app/assets/stylesheets/mobile.scss */
.metric-month-table thead th.day-col .today-indicator {
  position: absolute;
  top: -15px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 12px;
  color: #007bff;
  line-height: 1;
}

/* line 691, app/assets/stylesheets/mobile.scss */
.metric-month-table thead th.day-col .day-header-link {
  color: inherit;
  text-decoration: none;
  display: block;
  padding: 4px 2px;
}

/* line 697, app/assets/stylesheets/mobile.scss */
.metric-month-table thead th.day-col .day-header-link:hover {
  opacity: 0.7;
  text-decoration: underline;
}

/* line 708, app/assets/stylesheets/mobile.scss */
.metric-month-table tbody tr:nth-child(even) {
  background: #fafafa;
}

/* line 712, app/assets/stylesheets/mobile.scss */
.metric-month-table tbody tr.category-row {
  background: #f0f0f0;
}

/* line 715, app/assets/stylesheets/mobile.scss */
.metric-month-table tbody tr.category-row td.category-header-cell {
  border: none;
  padding: 4px 8px;
  font-weight: 600;
  font-size: 10px;
  text-transform: uppercase;
  text-align: left;
  color: #333;
  background: #f0f0f0;
  position: sticky;
  left: 0;
  z-index: 6;
  line-height: 1.2;
  height: auto;
  min-width: 100px;
  max-width: 120px;
}

/* line 733, app/assets/stylesheets/mobile.scss */
.metric-month-table tbody tr.category-row td.category-spacer-cell {
  border: none;
  background: #f0f0f0;
  min-width: 32px;
  width: 32px;
}

/* line 741, app/assets/stylesheets/mobile.scss */
.metric-month-table tbody tr td {
  border: 1px solid #ddd;
  padding: 4px 2px;
  text-align: center;
}

/* line 746, app/assets/stylesheets/mobile.scss */
.metric-month-table tbody tr td.metric-name-col {
  text-align: left;
  padding-left: 8px;
  font-weight: 500;
  position: sticky;
  left: 0;
  background: white;
  z-index: 5;
  min-width: 100px;
  max-width: 120px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* line 760, app/assets/stylesheets/mobile.scss */
.metric-month-table tbody tr td.metric-name-col .metric-name-link {
  color: #333;
  text-decoration: none;
  display: block;
}

/* line 765, app/assets/stylesheets/mobile.scss */
.metric-month-table tbody tr td.metric-name-col .metric-name-link:hover {
  color: #007bff;
  text-decoration: underline;
}

/* line 772, app/assets/stylesheets/mobile.scss */
.metric-month-table tbody tr td.value-cell {
  min-width: 32px;
  width: 32px;
  font-size: 10px;
  padding: 0;
}

/* line 778, app/assets/stylesheets/mobile.scss */
.metric-month-table tbody tr td.value-cell .cell-link {
  display: block;
  width: 100%;
  height: 100%;
  padding: 4px 2px;
  text-decoration: none;
  color: inherit;
  cursor: pointer;
}

/* line 787, app/assets/stylesheets/mobile.scss */
.metric-month-table tbody tr td.value-cell .cell-link:hover {
  opacity: 0.8;
}

/* line 792, app/assets/stylesheets/mobile.scss */
.metric-month-table tbody tr td.value-cell.boolean-true {
  background: #28a745;
  color: white;
  font-weight: bold;
}

/* line 798, app/assets/stylesheets/mobile.scss */
.metric-month-table tbody tr td.value-cell.boolean-false {
  background: #dc3545;
  color: white;
  font-weight: bold;
}

/* line 804, app/assets/stylesheets/mobile.scss */
.metric-month-table tbody tr td.value-cell.boolean-unset {
  background: #e9ecef;
}

/* line 808, app/assets/stylesheets/mobile.scss */
.metric-month-table tbody tr td.value-cell.has-value {
  background: white;
  font-weight: 500;
  color: #333;
}

/* line 814, app/assets/stylesheets/mobile.scss */
.metric-month-table tbody tr td.value-cell.no-value {
  background: #f5f5f5;
}
@charset "UTF-8";
/* Mobile boolean metric toggle styles */
/* line 3, app/assets/stylesheets/mobile_boolean.scss */
.boolean-toggle {
  border: none;
  border-radius: 6px;
  font-size: 13px;
  min-width: 60px;
  transition: all 0.2s ease;
  touch-action: manipulation;
}

/* line 12, app/assets/stylesheets/mobile_boolean.scss */
.boolean-toggle:active {
  transform: scale(0.95);
}

/* Success state (YES) */
/* line 17, app/assets/stylesheets/mobile_boolean.scss */
.btn-success.boolean-toggle {
  background-color: #28a745;
  color: white;
}

/* line 22, app/assets/stylesheets/mobile_boolean.scss */
.btn-success.boolean-toggle:hover {
  background-color: #218838;
}

/* Danger state (NO) */
/* line 27, app/assets/stylesheets/mobile_boolean.scss */
.btn-danger.boolean-toggle {
  background-color: #dc3545;
  color: white;
}

/* line 32, app/assets/stylesheets/mobile_boolean.scss */
.btn-danger.boolean-toggle:hover {
  background-color: #c82333;
}

/* Undefined state (—) */
/* line 37, app/assets/stylesheets/mobile_boolean.scss */
.btn-outline-secondary.boolean-toggle {
  background-color: transparent;
  border: 1px solid #ddd;
  color: #ccc;
}

/* line 43, app/assets/stylesheets/mobile_boolean.scss */
.btn-outline-secondary.boolean-toggle:hover {
  background-color: #f8f9fa;
  border-color: #adb5bd;
  color: #6c757d;
}

/* Boolean choice buttons - for metric edit screen */
/* line 50, app/assets/stylesheets/mobile_boolean.scss */
.boolean-choice-btn {
  border: 2px solid transparent;
  transition: all 0.3s ease;
  touch-action: manipulation;
}

/* line 56, app/assets/stylesheets/mobile_boolean.scss */
.boolean-choice-btn:active {
  transform: scale(0.95);
}

/* Bright selected states */
/* line 61, app/assets/stylesheets/mobile_boolean.scss */
.boolean-choice-btn.selected {
  opacity: 1;
  border-color: currentColor;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* line 67, app/assets/stylesheets/mobile_boolean.scss */
.boolean-choice-btn.selected.boolean-yes {
  background-color: #28a745;
  color: white;
  border-color: #28a745;
}

/* line 73, app/assets/stylesheets/mobile_boolean.scss */
.boolean-choice-btn.selected.boolean-no {
  background-color: #dc3545;
  color: white;
  border-color: #dc3545;
}

/* line 79, app/assets/stylesheets/mobile_boolean.scss */
.boolean-choice-btn.selected:not(.boolean-yes):not(.boolean-no) {
  background-color: #6c757d;
  color: white;
  border-color: #6c757d;
}

/* Faded unselected states */
/* line 86, app/assets/stylesheets/mobile_boolean.scss */
.boolean-choice-btn.unselected {
  opacity: 0.3;
  background-color: #f8f9fa;
  color: #6c757d;
  border-color: #dee2e6;
}

/* line 93, app/assets/stylesheets/mobile_boolean.scss */
.boolean-choice-btn.unselected.boolean-yes {
  color: #28a745;
}

/* line 97, app/assets/stylesheets/mobile_boolean.scss */
.boolean-choice-btn.unselected.boolean-no {
  color: #dc3545;
}

/* line 101, app/assets/stylesheets/mobile_boolean.scss */
.boolean-choice-btn.unselected:hover {
  opacity: 0.6;
  background-color: #e9ecef;
}

/* Details/summary disclosure triangle positioning */
/* line 107, app/assets/stylesheets/mobile_boolean.scss */
details summary {
  list-style: none;
}

/* line 111, app/assets/stylesheets/mobile_boolean.scss */
details summary::marker,
details summary::-webkit-details-marker {
  display: none;
}

/* line 116, app/assets/stylesheets/mobile_boolean.scss */
details summary::after {
  content: '▶';
  float: right;
  transition: transform 0.2s;
}

/* line 122, app/assets/stylesheets/mobile_boolean.scss */
details[open] summary::after {
  transform: rotate(90deg);
}
/* Mobile photo upload styles */
/* Photo preview container */
/* line 4, app/assets/stylesheets/mobile_photos.scss */
.photo-preview-area {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* Individual thumbnail */
/* line 11, app/assets/stylesheets/mobile_photos.scss */
.photo-thumbnail {
  position: relative;
  width: 100%;
  background: #f5f5f5;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* line 20, app/assets/stylesheets/mobile_photos.scss */
.photo-thumbnail.uploading {
  opacity: 0.7;
}

/* Thumbnail image */
/* line 25, app/assets/stylesheets/mobile_photos.scss */
.thumbnail-image {
  display: block !important;
  width: 150px !important;
  max-width: 150px !important;
  height: auto !important;
  cursor: pointer;
}

/* Remove button */
/* line 34, app/assets/stylesheets/mobile_photos.scss */
.photo-thumbnail .remove-photo {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 32px;
  height: 32px;
  padding: 0;
  border-radius: 50%;
  background: rgba(220, 53, 69, 0.9);
  color: white;
  border: 2px solid white;
  font-size: 20px;
  line-height: 32px;
  font-weight: bold;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
  cursor: pointer;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* line 56, app/assets/stylesheets/mobile_photos.scss */
.photo-thumbnail .remove-photo:hover {
  background: #dc3545;
  transform: scale(1.1);
}

/* Upload progress bar */
/* line 62, app/assets/stylesheets/mobile_photos.scss */
.upload-progress-bar {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 150px;
  height: 4px;
  background: rgba(0, 0, 0, 0.1);
}

/* line 71, app/assets/stylesheets/mobile_photos.scss */
.upload-progress {
  height: 100%;
  width: 0%;
  background: #28a745;
  transition: width 0.3s ease;
}

/* Loading state indicator */
/* line 79, app/assets/stylesheets/mobile_photos.scss */
.photo-thumbnail.uploading::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 40px;
  height: 40px;
  border: 3px solid rgba(255, 255, 255, 0.3);
  border-top-color: white;
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
}

@keyframes spin {
  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}

/* Add Photo button */
/* line 100, app/assets/stylesheets/mobile_photos.scss */
button[data-photo-upload-target="uploadButton"] {
  font-size: 16px;
  padding: 12px;
  touch-action: manipulation;
}
/* line 1, app/assets/stylesheets/scaffolds.scss */
body {
  background-color: #fff;
  color: #212529;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1rem;
  line-height: 1.5;
  margin: 33px;
}

/* line 14, app/assets/stylesheets/scaffolds.scss */
p,
ol,
ul,
td {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

/* line 23, app/assets/stylesheets/scaffolds.scss */
pre {
  background-color: #eee;
  padding: 10px;
  font-size: 11px;
}

/* line 29, app/assets/stylesheets/scaffolds.scss */
a {
  color: #000;
}

/* line 33, app/assets/stylesheets/scaffolds.scss */
a:visited {
  color: #666;
}

/* line 37, app/assets/stylesheets/scaffolds.scss */
a:hover {
  color: #33b3a6;
}

/* line 41, app/assets/stylesheets/scaffolds.scss */
th {
  padding-bottom: 5px;
}

/* line 45, app/assets/stylesheets/scaffolds.scss */
td {
  padding: 0 5px 7px;
}

/* line 49, app/assets/stylesheets/scaffolds.scss */
div.field,
div.actions {
  margin-bottom: 10px;
}

/* line 54, app/assets/stylesheets/scaffolds.scss */
#notice {
  color: green;
}

/* line 58, app/assets/stylesheets/scaffolds.scss */
.field_with_errors {
  padding: 2px;
  background-color: red;
  display: table;
}

/* line 64, app/assets/stylesheets/scaffolds.scss */
#error_explanation {
  width: 450px;
  border: 2px solid red;
  padding: 7px 7px 0;
  margin-bottom: 20px;
  background-color: #f0f0f0;
}

/* line 72, app/assets/stylesheets/scaffolds.scss */
#error_explanation h2 {
  text-align: left;
  font-weight: bold;
  padding: 5px 5px 5px 15px;
  font-size: 12px;
  margin: -7px -7px 0;
  background-color: #c00;
  color: #fff;
}

/* line 82, app/assets/stylesheets/scaffolds.scss */
#error_explanation ul li {
  font-size: 12px;
  list-style: square;
}

/* line 87, app/assets/stylesheets/scaffolds.scss */
label {
  display: block;
}
/* line 1, app/assets/stylesheets/tasks.scss */
.task {
  margin-top: 2px;
  margin-bottom: 2px;
}

/* line 6, app/assets/stylesheets/tasks.scss */
.task-selected {
  border: 2px turquoise solid !important;
  background-color: #b4ebe3;
}
/*
 * This is a manifest file that'll be compiled into application.css, which will include all the files
 * listed below.
 *
 * Any CSS and SCSS file within this directory, lib/assets/stylesheets, or any plugin's
 * vendor/assets/stylesheets directory can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the bottom of the
 * compiled file so the styles you add here take precedence over styles defined in any other CSS/SCSS
 * files in this directory. Styles in this file should be added after the last require_* statement.
 * It is generally better to create a new file per style scope.
 *


 */
/* line 2, ../usr/local/bundle/ruby/3.3.0/gems/simple_calendar-2.4.3/app/assets/stylesheets/simple_calendar.scss */
.simple-calendar table {
  -webkit-border-horizontal-spacing: 0px;
  -webkit-border-vertical-spacing: 0px;
  background-color: rgba(0, 0, 0, 0);
  border: 1px solid #dddddd;
  border-collapse: collapse;
  box-sizing: border-box;
  max-width: 100%;
  width: 100%;
}

/* line 13, ../usr/local/bundle/ruby/3.3.0/gems/simple_calendar-2.4.3/app/assets/stylesheets/simple_calendar.scss */
.simple-calendar tr {
  border-collapse: collapse;
}

/* line 17, ../usr/local/bundle/ruby/3.3.0/gems/simple_calendar-2.4.3/app/assets/stylesheets/simple_calendar.scss */
.simple-calendar th {
  padding: 6px;
  border-bottom: 2px solid #dddddd;
  border-collapse: collapse;
  border-left: 1px solid #dddddd;
  border-right: 1px solid #dddddd;
  border-top: 0px none #333333;
  box-sizing: border-box;
  text-align: left;
}

/* line 28, ../usr/local/bundle/ruby/3.3.0/gems/simple_calendar-2.4.3/app/assets/stylesheets/simple_calendar.scss */
.simple-calendar td {
  padding: 6px;
  vertical-align: top;
  width: 14%;
  border: 1px solid #ddd;
  border-top-color: #dddddd;
  border-top-style: solid;
  border-top-width: 1px;
  border-right-color: #dddddd;
  border-right-style: solid;
  border-right-width: 1px;
  border-bottom-color: #dddddd;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-left-color: #dddddd;
  border-left-style: solid;
  border-left-width: 1px;
}

/* line 48, ../usr/local/bundle/ruby/3.3.0/gems/simple_calendar-2.4.3/app/assets/stylesheets/simple_calendar.scss */
.simple-calendar .day {
  height: 80px;
}

/* line 60, ../usr/local/bundle/ruby/3.3.0/gems/simple_calendar-2.4.3/app/assets/stylesheets/simple_calendar.scss */
.simple-calendar .today {
  background: #FFFFC0;
}

/* line 69, ../usr/local/bundle/ruby/3.3.0/gems/simple_calendar-2.4.3/app/assets/stylesheets/simple_calendar.scss */
.simple-calendar .prev-month {
  background: #DDD;
}

/* line 72, ../usr/local/bundle/ruby/3.3.0/gems/simple_calendar-2.4.3/app/assets/stylesheets/simple_calendar.scss */
.simple-calendar .next-month {
  background: #DDD;
}

/* line 20, app/assets/stylesheets/application.scss */
.nav-link-optimized {
  cursor: pointer;
  text-decoration: none;
  font-size: 16px !important;
  padding: 1px 6px;
  margin: 0 2px;
  border-radius: 8px;
  background-color: #f8f9fa;
  border: 1px solid #dee2e6;
  transition: all 0.15s ease-in-out;
}

/* line 31, app/assets/stylesheets/application.scss */
.nav-link-optimized:hover {
  background-color: #e9ecef;
  transform: translateY(-1px);
}

/* line 36, app/assets/stylesheets/application.scss */
.nav-link-optimized:active {
  transform: translateY(0);
  background-color: #dee2e6;
}

/* line 43, app/assets/stylesheets/application.scss */
[data-turbo-permanent] {
  opacity: 1 !important;
}

/* line 47, app/assets/stylesheets/application.scss */
.day_nav_links {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 1rem;
}

/* line 54, app/assets/stylesheets/application.scss */
.overflowy {
  -ms-overflow-style: none;
  /* Internet Explorer 10+ */
  scrollbar-width: none;
  /* Firefox */
}

/* line 59, app/assets/stylesheets/application.scss */
.overflowy::-webkit-scrollbar {
  display: none;
}

/* line 63, app/assets/stylesheets/application.scss */
h4 a {
  text-decoration: none;
}

/* line 67, app/assets/stylesheets/application.scss */
.contentEditable:read-write:focus {
  outline: 0px solid transparent !important;
}

/* line 71, app/assets/stylesheets/application.scss */
[contenteditable]:focus {
  outline: 0px solid transparent;
}

/* line 75, app/assets/stylesheets/application.scss */
input:focus,
textarea:focus,
select:focus {
  outline: none;
}

/* line 82, app/assets/stylesheets/application.scss */
.simple-calendar-year .day {
  height: 40px;
  position: relative;
  padding: 2px 4px;
  font-size: 12px;
  line-height: 1.2;
}

/* line 90, app/assets/stylesheets/application.scss */
.simple-calendar-year .day a:first-child {
  display: block;
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 2px;
}

/* line 98, app/assets/stylesheets/application.scss */
.simple-calendar-year .day > div {
  display: flex;
  flex-wrap: wrap;
  gap: 1px;
  justify-content: center;
}

/* line 104, app/assets/stylesheets/application.scss */
.simple-calendar-year .day > div span {
  font-size: 10px;
  line-height: 1;
}

/* line 110, app/assets/stylesheets/application.scss */
.simple-calendar-year .prev-month {
  background-color: #eee;
}

/* line 113, app/assets/stylesheets/application.scss */
.simple-calendar-year .next-month {
  background-color: #eee;
}

/* line 116, app/assets/stylesheets/application.scss */
.simple-calendar-year .today {
  background-color: green;
}

/* line 122, app/assets/stylesheets/application.scss */
.simple-calendar-year-for-day th {
  background-color: #f6f6f6;
}

/* line 125, app/assets/stylesheets/application.scss */
.simple-calendar-year-for-day .day {
  background-color: white;
  height: 40px;
  position: relative;
  overflow: hidden;
}

/* line 130, app/assets/stylesheets/application.scss */
.simple-calendar-year-for-day .day a:link,
.simple-calendar-year-for-day .day a:visited {
  color: #666;
}

/* line 135, app/assets/stylesheets/application.scss */
.simple-calendar-year-for-day .day a:hover {
  background-color: transparent;
  color: #aaa;
  font-weight: bold;
  text-decoration: none;
}

/* line 142, app/assets/stylesheets/application.scss */
.simple-calendar-year-for-day .prev-month,
.simple-calendar-year-for-day .next-month {
  background: #eee;
}

/* line 145, app/assets/stylesheets/application.scss */
.simple-calendar-year-for-day .prev-month a:link,
.simple-calendar-year-for-day .prev-month a:visited,
.simple-calendar-year-for-day .next-month a:link,
.simple-calendar-year-for-day .next-month a:visited {
  color: #c0c0c0;
}

/* line 151, app/assets/stylesheets/application.scss */
.simple-calendar-year-for-day .today {
  background-color: lightyellow;
}

/* line 154, app/assets/stylesheets/application.scss */
.simple-calendar-year-for-day .start-date {
  background-color: #b2f2ec;
}

/* line 159, app/assets/stylesheets/application.scss */
.simple-calendar-year-for-day thead.header th {
  background-color: white;
  border: 0px;
  border-bottom: 1px #ccc solid;
}

/* line 164, app/assets/stylesheets/application.scss */
.simple-calendar-year-for-day thead.header th[colspan="5"] {
  text-align: center;
}

/* line 167, app/assets/stylesheets/application.scss */
.simple-calendar-year-for-day thead.header th:last-child {
  text-align: right;
}

/* line 174, app/assets/stylesheets/application.scss */
.day_nav_links a:link,
.day_nav_links a:visited,
.day_nav_links a:hover {
  font-size: 40px;
  font-weight: 200;
  color: #ccc;
  text-decoration: none;
}

/* line 184, app/assets/stylesheets/application.scss */
a {
  text-decoration: none;
}

/* line 188, app/assets/stylesheets/application.scss */
.day_metrics a:link,
.day_metrics a:visited,
.day_metrics a:hover {
  font-size: 13px;
  font-weight: 200;
  color: #666;
  text-decoration: none;
}

/* line 198, app/assets/stylesheets/application.scss */
.task_body a:link,
.task_body a:visited,
.task_body a:hover {
  font-size: 13px;
  font-weight: 200;
  color: #bbb;
  text-decoration: none;
}

/* line 207, app/assets/stylesheets/application.scss */
.task_body p {
  margin: 0;
}

/* line 212, app/assets/stylesheets/application.scss */
a:link,
a:visited,
a:hover {
  color: gray;
}

/* line 218, app/assets/stylesheets/application.scss */
tr.selected_week {
  border: 5px #40e0d0 solid;
}

/* line 220, app/assets/stylesheets/application.scss */
tr.selected_week td {
  background-color: lightyellow;
}

/* line 226, app/assets/stylesheets/application.scss */
.weekly_row table {
  table-layout: fixed;
}

/* line 229, app/assets/stylesheets/application.scss */
.weekly_row table,
.weekly_row th,
.weekly_row td {
  border: 1px gray solid;
}

/* line 234, app/assets/stylesheets/application.scss */
.weekly_row th {
  border-bottom: 2px gray solid;
  height: 50px;
  text-align: center;
  background-color: #bbb;
}

/* line 241, app/assets/stylesheets/application.scss */
.weekly_row tbody td {
  vertical-align: top;
  height: 130px;
  padding: 5px;
}

/* line 249, app/assets/stylesheets/application.scss */
.weekly_metrics_for_week th {
  padding: 6px;
}

/* line 252, app/assets/stylesheets/application.scss */
.weekly_metrics_for_week td {
  padding: 6px;
  vertical-align: top;
}

/* line 258, app/assets/stylesheets/application.scss */
.push_count {
  background-color: #50d050;
  border: 1px #50d050 solid;
  padding: 3px;
  border-radius: 12px;
  text-align: center;
  font-size: 12px;
  align-items: center;
  color: white;
}

/* line 269, app/assets/stylesheets/application.scss */
.push_count_warning {
  background-color: #ff6700;
  border: 1px #ff6700 solid;
  color: white;
}

/* line 275, app/assets/stylesheets/application.scss */
.push_count_danger {
  background-color: red;
  border: 1px red solid;
  color: white;
}

/* line 283, app/assets/stylesheets/application.scss */
.task {
  padding: 3px;
  border: 1px transparent solid;
  font-size: 16px;
  border-radius: 9px;
}

/* line 289, app/assets/stylesheets/application.scss */
.task:hover {
  background-color: #f5f5f5;
  cursor: pointer;
  border: 1px #ccc solid;
  border-top-right-radius: 9px;
  border-bottom-right-radius: 9px;
  padding-top: 15px;
  padding-bottom: 15px;
}

/* line 299, app/assets/stylesheets/application.scss */
.task .sidebar {
  display: none;
  width: auto;
  position: absolute;
  right: 19px;
  padding: 3px;
  padding-left: 6px;
  padding-right: 6px;
  top: -7px;
  z-index: 5000;
}

/* line 311, app/assets/stylesheets/application.scss */
.task:hover .sidebar {
  display: block;
}

/* line 316, app/assets/stylesheets/application.scss */
body.shift-held .task:hover {
  background-color: rgba(135, 206, 250, 0.2);
  border: 1px solid rgba(135, 206, 250, 0.5);
  cursor: pointer;
  padding-top: 3px;
  padding-bottom: 3px;
}

/* line 324, app/assets/stylesheets/application.scss */
body.shift-held .task:hover .sidebar {
  display: none;
}

/* line 328, app/assets/stylesheets/application.scss */
body.shift-held .task {
  cursor: pointer;
  user-select: none;
}

/* line 333, app/assets/stylesheets/application.scss */
body.shift-held .task .task_name,
body.shift-held .task .task_body,
body.shift-held .task .task_time,
body.shift-held .task .task_mdp,
body.shift-held .task .cb,
body.shift-held .task .sidebar,
body.shift-held .task .handle {
  pointer-events: none;
}

/* line 344, app/assets/stylesheets/application.scss */
.task.dragging {
  opacity: 0.4;
}

/* line 348, app/assets/stylesheets/application.scss */
.drag-over {
  background-color: rgba(64, 224, 208, 0.15);
  border-radius: 6px;
  outline: 2px dashed #40e0d0;
  outline-offset: -2px;
}

/* line 355, app/assets/stylesheets/application.scss */
.task_action {
  color: #CCC;
}

/* line 359, app/assets/stylesheets/application.scss */
.task_action:hover {
  color: #40e0d0;
}

/* line 363, app/assets/stylesheets/application.scss */
.sidebar a i {
  color: #ccc;
  font-size: 18px;
}

/* line 367, app/assets/stylesheets/application.scss */
.sidebar a:hover i {
  color: #40e0d0;
}

/* line 371, app/assets/stylesheets/application.scss */
.task-header:hover .new-task {
  visibility: visible;
}

/* line 375, app/assets/stylesheets/application.scss */
.task-header .new-task a i {
  font-size: 24px;
  color: #eee;
}

/* line 380, app/assets/stylesheets/application.scss */
.task-header .new-task a:hover i {
  color: #40e0d0;
  xvisibility: hidden;
}

/* line 385, app/assets/stylesheets/application.scss */
.cb {
  padding-left: 5px;
}

/* line 391, app/assets/stylesheets/application.scss */
[contenteditable="true"]:empty:before {
  content: attr(placeholder);
  pointer-events: none;
  color: #d0d0d0;
}

/* line 399, app/assets/stylesheets/application.scss */
#flash_msg {
  margin-bottom: 10px;
}

/* line 403, app/assets/stylesheets/application.scss */
.simple-calendar td {
  padding: 0px;
}

/* line 407, app/assets/stylesheets/application.scss */
.simple-calendar .day_div {
  padding: 6px;
  height: 100%;
}

/* line 412, app/assets/stylesheets/application.scss */
.modal {
  z-index: 10000000 !important;
}

/* line 422, app/assets/stylesheets/application.scss */
.day-layout__metrics-link {
  position: absolute;
  left: 10px;
  top: 70px;
}

/* line 429, app/assets/stylesheets/application.scss */
.day-layout__left-sidebar {
  margin-left: 10px;
  position: fixed;
  left: 0;
  top: 110px;
  overflow-y: auto;
  bottom: 0;
  width: 25%;
}

/* line 440, app/assets/stylesheets/application.scss */
.day-layout__header {
  position: absolute;
  left: calc(25% + 20px);
  right: calc(25% + 40px);
  top: 80px;
}

/* line 448, app/assets/stylesheets/application.scss */
.day-layout__right-sidebar {
  position: absolute;
  right: 0;
  width: 25%;
  top: 80px;
  padding-right: 20px;
}

/* line 457, app/assets/stylesheets/application.scss */
.day-layout__center-content {
  position: fixed;
  left: 25%;
  right: calc(25% + 40px);
  top: 125px;
  overflow-y: auto;
  height: 100%;
  padding-bottom: 100px;
}

/* line 468, app/assets/stylesheets/application.scss */
.day-layout__timeline-sidebar {
  margin-right: 10px;
  position: fixed;
  right: 0;
  top: 420px;
  overflow-y: auto;
  bottom: 0;
  width: 25%;
  padding-bottom: 0;
}

/* line 480, app/assets/stylesheets/application.scss */
.timeline-table tr:last-child td {
  border-bottom: none !important;
}

/* line 487, app/assets/stylesheets/application.scss */
.app-header {
  z-index: 9000;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  padding: 10px;
  background-color: var(--header-bg-color, #f8f9fa);
  border-bottom: 1px solid gray;
  margin-bottom: 10px;
}

/* line 498, app/assets/stylesheets/application.scss */
.app-header__link {
  color: var(--header-link-color, inherit);
}

/* line 502, app/assets/stylesheets/application.scss */
.app-header__title {
  color: var(--header-text-color, #000000);
}

/* line 510, app/assets/stylesheets/application.scss */
input.metric-input {
  text-align: center;
  padding: 5px;
  border-radius: 12px;
  width: 55px;
  max-width: 55px;
}

/* line 517, app/assets/stylesheets/application.scss */
input.metric-input--filled {
  color: #666;
  border: 1px #CCC solid;
  background-color: white;
}

/* line 523, app/assets/stylesheets/application.scss */
input.metric-input--empty {
  color: #666;
  border: 1px #99D9D2 solid;
  background-color: #E5FBF9;
}

/* line 529, app/assets/stylesheets/application.scss */
input.metric-input--pending {
  border: 1px #ffc48f solid;
  background-color: #fff3d6;
}

/* line 538, app/assets/stylesheets/application.scss */
.dynamic-progress-bar {
  width: var(--progress-width, 0%);
  height: 100%;
  background-color: var(--progress-color, #4CAF50);
}

/* line 547, app/assets/stylesheets/application.scss */
.metric-badge {
  background-color: var(--badge-color, #666);
  margin-right: 5px;
  font-size: 16px;
  color: white;
  padding: 5px;
  border-radius: 8px;
}

/* line 561, app/assets/stylesheets/application.scss */
.goal-cell--success {
  background-color: var(--goal-color) !important;
}

/* line 565, app/assets/stylesheets/application.scss */
.goal-cell--future-end {
  border: 3px solid var(--goal-color) !important;
  box-shadow: 0 0 8px var(--goal-color);
}

/* line 570, app/assets/stylesheets/application.scss */
.goal-cell--future-end-chain {
  border: 2px solid var(--goal-color) !important;
  box-shadow: 0 0 3px var(--goal-color);
}

/* line 580, app/assets/stylesheets/application.scss */
.goal-highlight {
  background-color: rgba(135, 206, 250, 0.2);
  border: 2px solid #87CEEB;
  border-radius: 4px;
}

/* line 590, app/assets/stylesheets/application.scss */
.range-10-value {
  font-size: 11px;
  border: 1px #CCC solid;
  padding: 2px 4px;
  border-radius: 4px;
  position: absolute;
  right: -2px;
  bottom: -30px;
}

/* line 599, app/assets/stylesheets/application.scss */
.range-10-value--level-0 {
  background-color: lightgreen;
}

/* line 603, app/assets/stylesheets/application.scss */
.range-10-value--level-1 {
  background-color: #fdd890;
}

/* line 607, app/assets/stylesheets/application.scss */
.range-10-value--level-2 {
  background-color: #fc971d;
}

/* line 611, app/assets/stylesheets/application.scss */
.range-10-value--level-3 {
  background-color: #fd6868;
}

/* line 615, app/assets/stylesheets/application.scss */
.range-10-value--default {
  background-color: lightyellow;
}

/* line 620, app/assets/stylesheets/application.scss */
.metric-indicator {
  background-color: var(--indicator-color, #666);
  margin: 1px;
  border-radius: 8px;
  border: 1px solid gray;
  padding: 0 2px;
}

/* line 629, app/assets/stylesheets/application.scss */
.metric-swatch {
  background-color: var(--swatch-color, #666);
  display: inline-block;
}

/* line 635, app/assets/stylesheets/application.scss */
.dynamic-text {
  color: var(--text-color, inherit);
  font-weight: 700;
}

/* line 643, app/assets/stylesheets/application.scss */
.mdp-badge {
  margin-left: 10px;
  display: inline-block;
  padding: 3px;
  font-size: 75%;
  border-radius: 4px;
  border: 1px #CCC solid;
}

/* line 651, app/assets/stylesheets/application.scss */
.mdp-badge--with-value {
  background-color: #EEE;
}

/* line 655, app/assets/stylesheets/application.scss */
.mdp-badge--empty {
  background-color: pink;
}

/* line 662, app/assets/stylesheets/application.scss */
.simple-calendar-year table {
  font-size: 12px;
}

/* line 666, app/assets/stylesheets/application.scss */
.simple-calendar-year td {
  vertical-align: top;
  padding: 2px !important;
  height: 50px;
  overflow: hidden;
}

/* line 672, app/assets/stylesheets/application.scss */
.simple-calendar-year td .day-number {
  display: block;
  font-weight: bold;
  font-size: 13px;
  margin-bottom: 2px;
}

/* line 679, app/assets/stylesheets/application.scss */
.simple-calendar-year td .metric-indicators {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1px;
}

/* line 685, app/assets/stylesheets/application.scss */
.simple-calendar-year td .metric-indicators span {
  font-size: 10px;
  line-height: 1;
  display: inline-block;
}
