

/* ---------------------- NEW */
.navbottom {
	position: fixed;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	background-color: #fff;
	border-top: 1px solid #ccc;
	width: 100%;
	max-width: 600px;
	margin: 0 auto;
	z-index: 10;
  }
    
  .navbottom ul li {
	  display: inline-block;
  }
  
  .footer-nav ul {
	display: flex;
	padding: 0;
	margin: 0;
	list-style: none;
	align-items: flex-end;
  }
  
  .footer-nav li {
	flex: 1;
	text-align: center; /* Optional: centers the content inside each li */
  }
  
  .footer-nav li a {
	  color: #000;
  }
  
  .footer-nav li a span {
	  font-size: 1.5rem;
  }

  .footer-nav li {
	padding-top: .7rem;
	padding-bottom: .2rem;
}

.footer-nav li.active {
	background: #000;
}

.footer-nav li.active a {
	color: #fff;
}

  select.form-select {
	border: 0;
	border-radius: 0;
	border-bottom: 1px solid #ced4da;
	padding: .375rem 1rem;
}

.health-activity .health-activity-wrapper {
	display: flex;
    padding: 0;
    margin: 0 0 2rem 0;
    list-style: none;
}

.health-activity .activity {
    flex: 1;
    text-align: center;
}

.health-activity .activity span {
	border: 0px solid #000;
	width: 50px;
	height: 50px;
	border-radius: .2rem;
	font-size: 2rem;
	line-height: 1.45;
	transition: .3s;
}

.health-activity .activity span:hover {
	cursor: pointer;
	/* opacity: .7; */
}

.health-activity .activity.selected-activity span {
	background: #000;
	color: #fff;
}

.finance-activity {
	margin-bottom: 2rem;
}

.finance-element {
	padding: .2rem .5rem;
	border: 1px solid #000;
	display: inline-block;
	margin: 0 .5rem .5rem 0;
	transition: .3s;
}

.finance-element.selected-activity {
	background: #000;
	color: #fff;
}

.flex-container {
	display: flex;
	justify-content: space-between;
  }
  
  .flex-container .form-element,
  .flex-container .form-group {
	flex: 1;
	margin-right: 10px; /* Optional: adds space between the elements */
  }
  
  .flex-container .form-group:last-child {
	margin-right: 0; /* Removes the margin from the last element */
  }

  .button-wide {
	margin-top: 2rem;
	width: 100%;
	padding: .5rem;
	background: #000;
	color: #fff;
	text-transform: uppercase;
	border: 0;
}

.activity-block {
	background: #f7f7f7;
	padding: 2rem 1rem 1rem 1rem;
	margin-bottom: 1rem;
	border: 1px solid #ddd;
	border-radius: .225rem;
}

.activity-block-left * {
	vertical-align: top;
}

.activity-block-left span {
	font-size: 1.65rem;
}

.activity-block-left,
.activity-block-right {
	display: inline-block;
	width: 49%;
	vertical-align: top;
}

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

.timeline-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 10px;
	margin-top: 1rem;
  box-sizing: border-box;
}

.bullet {
  width: 3px;
  height: 3px;
  background-color: #999;
  border-radius: 50%;
}

.bullet.active {
  width: 8px;
  height: 8px;
  background-color: black;
}

html,
body {
	background: #f7f8f7;
}

.dh-row {
	display: flex;
	justify-content: space-between;
}
.dashboard-highlights  .dh-item {
	border: 1px solid #eee;
	border-radius: .225rem;
	flex-grow: 1;
    flex-basis: 0;
	margin: .25rem;
	padding: .5rem;
	min-height: 5rem;
	background: #fff;
}

.col-spendings.dh-item {
	min-height: 10rem;
}

.bg-white {
	background: #fff;
	border-radius: .225rem;
	border: 1px solid #eee;
}

.p1 {
	padding: 1rem;
}

.p2 {
	padding: 2rem;
}

.status-alert-wrapper {
	width: 100%;
	height: 100vh;
	background: transparent;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 99;
	text-align: center;
}

.status-alert-wrapper {
	background: #fff;
	display: flex;
  	align-items: center;
  	justify-content: center;
}

.status-alert-wrapper .status-message {
  font-size: 14px;
  color: #0c5460;
  max-width: 300px;
	border-radius: 2px;
  	margin: 20px auto 0 auto;
  	padding: 10px 20px;
	background: #00acb2;
	color: #fff;
	font-size: 12px;
}

/* ---------------------- start of hp calendar  */
.calendar {
	width: 100%;
	max-width: 600px;
	margin: 0 auto;
	text-align: center;
  }
  
  .calendar-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 10px;
  }
  
  .calendar-header button {
	border: 0;
	background: transparent;
	font-size: .875rem;
	transition: .3s;
}

.calendar-header button:hover {
	color: #999;
}

  .calendar-grid {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 0px;
  }
  
  .calendar-day {
	font-weight: 100;
	padding: 5px 0;
  }
  
  .calendar-cell {
    padding: 5px 0;
    border: 0;
	background: transparent;
	color: #ccc;
    border-radius: 0px;
	font-size: .875rem;
}
  
  .calendar-cell.active {
	background-color: #4caf50;
	color: white;
  }
  
  .calendar-cell.empty {
	background-color: transparent;
  }
/* ---------------------- end of hp calendar */



.header-inner {
	display: block;
}

.header-inner .app-logo {
	width: 29%;
	display: inline-block;
	text-align: left;
}

.header-inner .app-logo img {
	max-width: 50px;
}

.header-inner ul {
	width: 69%;
	display: inline-block;
}

/* .navbottom a span{
	color: #e40d22;
} */
.dashboard-highlights .dh-item {
	border-radius: .3rem;
}

.calendar-cell.active,
.button-wide {
    background-color: #e40d22;
    color: white;
}

.health-activity .activity.selected-activity span {
    background: #e40d22;
    color: #fff;
	border-color: #e40d22;
}

.header {
	background: #e40d22;
	color: #fff;
}

.header a {
	color: #fff;
}

.header {
	background: #f7f8f7;
	color: #000;
	border: 0;
}

.header-inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 0.5rem;
}

.header-inner-left {
	display: flex;
	align-items: center;
}

.app-logo {
	background: #e40d22;
}

.app-logo img {
	height: 40px;
	width: 40px;
	margin-right: 1rem;
}

.header-inner-hello p {
	margin: 0 0 0 1rem;
	line-height: 1.2;
	text-align: left;
	color: #666;
}

.header-inner-hello b {
	color: #000;
	font-weight: bold;
}

.header-inner-hello span {
	display: block;
	font-weight: bold;
}

.header-inner-right {
	display: flex;
	align-items: center;
}

.header a {
	color: #000;
}

.navbottom {
    position: fixed;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    background-color: #fff;
    border-top: 0px solid #ccc;
    width: 100%;
    max-width: 600px;
    margin: 0 auto 0 auto;
    z-index: 10;
	padding-bottom: 1rem;
}

/* .footer-nav ul {
	align-items: baseline;
} */

.footer-nav li.active {
    background: #fff;
}

.add-health a span {
	display: inline-block;
	background: rgb(0,108,255);
	width: 4rem;
	height: 4rem;
	border-radius: 50%;
	line-height: 4rem;
	color: #fff;
}

.footer-nav li.active {
    background: #fff;
}

.footer-nav li.active a {
    color: #000;
}

.calendar-header {
	justify-content: center;
}

.calendar-header span {
	font-size: 1rem;
	margin: 0 1rem;
	font-weight: 200;
}

.calendar-header button {
	color: rgb(0,108,255);
}

.footer-nav .icon-on {
	display: none;
}

.footer-nav .active .icon-on {
	display: inline-block;
}

.footer-nav .active .icon-off {
	display: none;
}

.footer-nav a {
	text-decoration: none;
}

.footer-nav a p {
	font-weight: 200;
	font-size: .775rem;
	margin-bottom: 0;;
}

.footer-nav .icon-off,
.footer-nav .icon-on {
	width: 1.8rem;
	height: 1.8rem;
}

.material-symbols-outlined.activity-type {
	border-right: 1px solid #000;
	padding-right: .5rem;
	margin-right: .5rem;
}

.activity-name {
	font-size: .8rem;
}

/* --------------------- colors */
.color-red {background: #ff5730;}
.color-yellow {background: #ffac00;}
.color-green {background: #37b37d;}
.color-blue {background: #07b8d9;}
.color-purple {background: #6654c0;}

/* --------------------- colors */

.button-wide {
    background-color: #6654c0;
	border-radius: .4rem;
    color: white;
}

.health-activity .activity.selected-activity span {
    background: #07b8d9;
    color: #fff;
    border-color: #07b8d9;
}

.bar-color-1 {
	background: #07b8d9;
}

/* color levels for weekly donuts */
.weekly-donut.level-1 svg .circle { stroke: #ff5730; } /* very light */
.weekly-donut.level-2 svg .circle { stroke: #60a5fa; } /* light blue */
.weekly-donut.level-3 svg .circle { stroke: #3b82f6; } /* primary */
.weekly-donut.level-4 svg .circle { stroke: #f59e0b; } /* amber */
.weekly-donut.level-5 svg .circle { stroke: #10b981; } /* green */

/* If you keep inline stroke in path, override fill color directly on the svg path */
.weekly-donut.level-1 path[stroke="#3b82f6"] { stroke: #ff5730 !important; }
.weekly-donut.level-2 path[stroke="#3b82f6"] { stroke: #60a5fa !important; }
.weekly-donut.level-3 path[stroke="#3b82f6"] { stroke: #3b82f6 !important; }
.weekly-donut.level-4 path[stroke="#3b82f6"] { stroke: #f59e0b !important; }
.weekly-donut.level-5 path[stroke="#3b82f6"] { stroke: #10b981 !important; }

/* basic layout */
.weekly-donuts { display:grid; gap:16px; grid-template-columns: repeat(auto-fit, minmax(80px, 1fr)); }
.weekly-donut { text-align:center; }


.weekly-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
	box-sizing: border-box; 
}

.weekly-activities, .weekly-spent-time {
    display: flex;
    align-items: center;
}

.weekly-content {
	color: #666;
}

.weekly-content b {
	display: block;
	margin-right: 4px;
	font-size: 1.2rem;
	color: #000;
}

.calendar-cell.active {
	background-color: #37b37d!important;
	border-radius: 0!important;
}

.calendar-cell.active {
    background-color: transparent!important;
    border-radius: 0 !important;
}

.calendar-cell.active span {
    background-color: #37b37d !important;
    border-radius: 50%!important;
	width: 2rem;
	height: 2rem;
	display: inline-block;
	line-height: 2rem;
	color: #fff!important;
}

.calendar-cell.day-today span  {
	border-radius: 50%!important;
	width: 2rem;
	height: 2rem;
	display: inline-block;
	line-height: 2rem;
	background: #ccc;
	color: #999;
}

.activity-detail-link {
	width: 2rem;
	height: 2rem;
	color: rgb(0,108,255);
	line-height: 2rem;
	font-size: 2rem;
}

/* Weekly highlights - three blocks side by side */
.weekly-top-highlights {
  display: flex;
  gap: 8px;
  flex-wrap: nowrap;
	padding: 5px;
}

.weekly-top-highlights .weekly-content {
	justify-content: space-around;
}

.weekly-top-highlights .weekly-title {
	margin-bottom: 1rem;
}

.highlight-left,
.highlight-mid,
.highlight-right {
	width: 33%;
  flex: 1;
  background: #fff;
  padding: .5rem .5rem 0 .5rem;
  box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

.weekly-activities,
.weekly-spent-time {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 12px;
}

.weekly-activities .value,
.weekly-spent-time .value {
  font-size: 1rem;
  font-weight: 700;
  color: #111;
}

.weekly-activities .label,
.weekly-spent-time .label {
  font-size: .5rem;
  color: #666;
  margin-top: 2px;
}

/* Months summary */
.section-title {
	font-size: 1.5rem;
	font-weight: 100;
	margin-bottom: 2rem;
}

.months-summary {
  padding: 12px;
}

.month-row {
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid #eee;
}

.month-row:last-child {
  border-bottom: none;
}

.month-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
  flex-wrap: wrap;
  gap: 8px;
}

.month-label {
  font-size: 15px;
  font-weight: 600;
  color: #111;
}

.month-stats {
  font-size: 13px;
  color: #666;
}

.month-stats strong {
  color: #111;
}

.month-dots {
  display: flex;
  gap: 3px;
  flex-wrap: wrap;
}

.day-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #ddd;
  display: inline-block;
  transition: background 0.2s;
}

.day-dot.activity-detected {
  background: #10b981; /* green */
}

@media (max-width: 480px) {
  .month-header {
    flex-direction: column;
    align-items: flex-start;
  }
  
  .day-dot {
    width: 6px;
    height: 6px;
    gap: 2px;
  }
}

.settings-item {
	border-bottom: 1px solid #ccc
}

.settings-item a {
	color:#000;
	text-decoration: none;
	display: block;
	padding: 1rem 0;
}

.settings-item:last-of-type  {
	border: none;
	margin-bottom: 0rem;
	padding-bottom: 0rem;
}

.settings-item a {
  display: flex;
  align-items: center;
  gap: 8px; /* spacing between icon and text */
}

.settings-item .material-symbols-outlined {
  font-size: 20px; /* adjust icon size if needed */
}

.food-option {
    display: flex;
    gap: 8px;
    flex-wrap: nowrap;
    padding: 5px;
}

.food-left, .food-right {
    width: 33%;
	text-align: center;
    flex: 1;
    background: #fff;
    padding: 1rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
	font-size: .8rem;
	font-weight: 200;
	transition: .3s;
}

.food-left span, .food-right span {
	font-size: 2rem;
}

.food-option-selected {
	background: #333;
	color: #fff;
}

.bar-item {
	display:flex;
	flex-direction:column;
	align-items:center;
	flex:1;
	min-width:0;
}

.bar-item .bar {
	width:100%;
	background:#07b8d9;
	border-radius:6px 6px 0 0;
}

.bar-item .bar-date {
	font-size: .5rem;
	margin-top: 1rem;
	color:#999;
}

.bar-item .bar-value {
	font-size: .7rem;	
	margin-top: .5rem;
	color:#111;
}

.bar-item .bar-day {
	font-size: .5rem;
	color:#666;
	margin-top: .5rem;
}

.bar-item-empty .bar-placeholder {
	height: 1rem;
	opacity: 0.3;
	background: #ccc;
	width: 100%;
	border-radius:6px 6px 0 0;
}

.bar-item-empty .bar-date {
	margin-top: 1rem;
	color:#ccc;
}

.bar-item-empty .bar-value {
	margin-top: .5rem;
	font-size: 1rem;
	color:#ccc;
}

.bar-item-empty .bar-day {
	font-size: .5rem;
	color:#ccc;
	margin-top: .1rem;
}