/* Light page background */
.login-page{
  background: #f5f7fb;
}

/* Centering shell */
.login-shell{
  min-height: 100vh;
  padding: 24px 12px;
}

/* Logo */
.brand-logo{
  width: 80%;
  max-width: 360px;
  height: auto;
}

/* Card styling */
.login-card{
  border: 0;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.12);
}
/* ===== Brand color (Crystal Diamonds pink) ===== */
:root{
  --brand: #DA2C72;
  --brand-hover: #c62566;
  --brand-soft: rgba(218,44,114,.15);
}

/* Bootstrap-like primary override */
.btn-primary{
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
}
.btn-primary:hover,
.btn-primary:focus{
  background-color: var(--brand-hover) !important;
  border-color: var(--brand-hover) !important;
}
.btn-primary:focus{
  box-shadow: 0 0 0 .2rem var(--brand-soft) !important;
}

/* Links accent */
a{
  color: var(--brand);
}
a:hover{
  color: var(--brand-hover);
}

/* ===== Simple inputs (no fancy merge styling) ===== */
.input-group-text{
  background: #fff;          /* plain */
}

.form-control{
  border-radius: .375rem;    /* Bootstrap default */
}

/* keep a subtle brand focus (optional) */
.form-control:focus{
  border-color: rgba(218, 44, 114, 0.45);
  box-shadow: 0 0 0 .2rem var(--brand-soft);
}

/* Optional: nicer checkbox accent */
.form-check-input:checked{
  background-color: var(--brand);
  border-color: var(--brand);
}
.form-check-input:focus{
  box-shadow: 0 0 0 .2rem var(--brand-soft);
}


  .kpi-card {
	border: 0;
	border-radius: 1rem;
	color: #fff;
	position: relative;
	overflow: hidden;
  }
  .kpi-1 { background: linear-gradient(135deg, #2e7d32, #43a047); }
  .kpi-2 { background: linear-gradient(135deg, #1976d2, #42a5f5); }
  .kpi-3 { background: linear-gradient(135deg, #6a1b9a, #ab47bc); }
  .kpi-4 { background: linear-gradient(135deg, #ef6c00, #ffa726); }
  .kpi-icon {
	width: 3rem; height: 3rem; border-radius: 50%;
	display:flex; align-items:center; justify-content:center;
	background: rgba(255,255,255,.2);
  }
:root { --brand: #1976d2; }

.glass-card {
  background: color-mix(in srgb, var(--brand) 6%, #ffffff); /* fallback below for older browsers */
  background: rgba(25,118,210,0.06);
  border: 1px solid rgba(25,118,210,0.18);
  border-radius: 14px;
  box-shadow: 0 8px 22px rgba(25,118,210,0.12);
}
.glass-card .card-header{
  background: rgba(255,255,255,0.6);
  border-bottom: 1px solid rgba(25,118,210,0.18);
}

  .table-sticky thead th {
	position: sticky; top: 0; z-index: 1; background: #fff;
  }
  .fab {
	position: fixed; right: 24px; bottom: 24px;
	width: 56px; height: 56px; border-radius: 50%;
	box-shadow: 0 10px 20px rgba(0,0,0,.15);
  }
  .metric-label { opacity: .9; font-weight: 600; }
  .small-muted { font-size: .9rem; opacity: .75; }
  .week-chip {
	border-radius: .75rem;
	border: 1px solid rgba(0,0,0,.08);
	padding: .75rem;
	transition: transform .12s ease, box-shadow .12s ease;
	background: #fff;
  }
  .week-chip:hover { transform: translateY(-2px); box-shadow: 0 6px 18px rgba(0,0,0,.08); }
  .week-chip.active {
	background: linear-gradient(135deg, #1976d2, #42a5f5);
	color: #fff;
	border-color: transparent;
  }
  .week-chip .muted { opacity: .75; }
  .week-chip.active .muted { opacity: .95; }
  .next-visit-icon {
	width: 36px; height: 36px; border-radius: 50%;
	display:flex; align-items:center; justify-content:center;
	background: rgba(25,118,210,.1);
  }
  .week-row { display: flex; gap: .1rem .15rem; flex-wrap: nowrap; }
  .week-col { flex: 0 0 calc(100% / 7); }          /* exactly 7 across */
  .week-chip { height: 100%; }                      /* make the chip fill the cell */
  /* On small screens, keep one row with horizontal scroll */
  @media (max-width: 992px) {
	.week-row { overflow-x: auto; padding-bottom: .25rem; }
	.week-col { flex: 0 0 180px; }                  /* readable width for scrolling */
  }

.order-card {
    color: #fff;
}

.bg-c-blue {
    background: linear-gradient(45deg,#4099ff,#73b4ff);
}

.bg-c-green {
    background: linear-gradient(45deg,#2ed8b6,#59e0c5);
}

.bg-c-grey {
    background: linear-gradient(8deg,#F8F9FA,#F0F0F1);
}

.card {
    border-radius: 5px;
    -webkit-box-shadow: 0 1px 2.94px 0.06px rgba(4,26,55,0.16);
    box-shadow: 0 1px 2.94px 0.06px rgba(4,26,55,0.16);
    border: none;
    margin-bottom: 30px;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.card .card-block {
    padding: 25px;
}

.f-left {
    float: left;
}

.f-right {
    float: right;
    margin-right: 40px; /* Adjust this value to your preference */
}

.avatar-sm {
    height: 2.5rem;
    width: 2.5rem;
}

.avatar-md {
    height: 5rem;
    width: 5rem;
}

@media print {
  body * { visibility: hidden !important; }
   .print-area, .print-area * { visibility: visible !important; }
   .print-area { position: absolute; left: 0; top: 0; width: 100%; }
   .no-print { display: none !important; }
}