/* Dashboard visual system, department cards, icons, counts, and drawers. */

/* =========================================================
   Bleep polish pass: cleaner department cards + icons
   Keeps existing fonts and palette.
   ========================================================= */

:root{
  --icon-tint:#F8F5F6;
  --icon-border:rgba(36,35,49,.08);
  --card-shadow:0 4px 14px rgba(36,35,49,.055);
  --card-shadow-open:0 10px 24px rgba(36,35,49,.09);
}

/* Remove the heavy left strip so the dashboard feels calmer. */
.dept-row::before{
  display:none!important;
}

.dept-section{
  margin-bottom:.72rem!important;
}

.dept-row{
  padding:1rem 1.05rem!important;
  border-radius:20px!important;
  border:1px solid rgba(36,35,49,.10)!important;
  background:#fff!important;
  box-shadow:var(--card-shadow)!important;
  gap:.82rem!important;
}

.dept-row.open{
  background:#fff!important;
  border-color:rgba(170,68,101,.20)!important;
  box-shadow:var(--card-shadow-open)!important;
}

.dept-row-left{
  gap:.82rem!important;
}

.dept-name{
  font-family:var(--serif)!important;
  font-weight:400!important;
  font-size:1.22rem!important;
  line-height:1.05!important;
  letter-spacing:-.015em!important;
  color:var(--ink)!important;
}

.dept-subtitle{
  margin-top:.18rem!important;
  font-family:var(--sans)!important;
  font-size:.68rem!important;
  color:rgba(36,35,49,.62)!important;
}

/* Cleaner icon treatment: soft tint + Berry Crush icon.
   External black SVG files are recoloured with the filter below. */
.dept-count{
  min-width:30px!important;
  height:30px!important;
  padding:0 .55rem!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(36,35,49,.06)!important;
  color:var(--ink)!important;
  border:1px solid rgba(36,35,49,.08)!important;
  font-family:var(--sans)!important;
  font-size:.72rem!important;
  font-weight:700!important;
  border-radius:999px!important;
}

.dept-icon svg,
.dept-icon img{
  width:24px!important;
  height:24px!important;
  max-width:24px!important;
  max-height:24px!important;
  object-fit:contain!important;
  display:block!important;
}

.dept-icon svg{
  stroke:currentColor!important;
}

/* Approximate #AA4465 for black external SVGs. */
.dept-icon img{
  filter:brightness(0) saturate(100%) invert(37%) sepia(19%) saturate(1822%) hue-rotate(293deg) brightness(92%) contrast(89%)!important;
  opacity:.96!important;
}

/* Subtle department-specific background tints.
   The icon color stays Berry Crush for consistency. */


.dept-row.ref .dept-icon{
  color:var(--accent)!important;
  border-color:var(--icon-border)!important;
}

.dept-count{
  min-width:30px!important;
  height:30px!important;
  padding:0 .55rem!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(36,35,49,.06)!important;
  color:var(--ink)!important;
  border:1px solid rgba(36,35,49,.08)!important;
  font-family:var(--sans)!important;
  font-size:.72rem!important;
  font-weight:700!important;
  border-radius:999px!important;
}

.dept-row.ref .dept-count,
.dept-row.no-number .dept-count{
  background:rgba(36,35,49,.06)!important;
  color:var(--ink)!important;
  border:1px solid rgba(36,35,49,.08)!important;
}

.chevron{
  stroke:rgba(36,35,49,.55)!important;
}

.student-drawer{
  border:1px solid rgba(36,35,49,.09)!important;
  border-top:none!important;
  box-shadow:0 8px 18px rgba(36,35,49,.055)!important;
}

.student-item{
  padding:.86rem 1.05rem!important;
}

/* Slightly warmer page body without changing the established palette. */
.app-body{
  background:linear-gradient(180deg,#fff 0%,#FCFBFA 100%)!important;
}

/* === Dashboard final cleanup === */

/* softer header/search */
.app-header{
  border-bottom:none!important;
  box-shadow:0 1px 0 rgba(36,35,49,.06)!important;
}

.search-input{
  border:1px solid rgba(36,35,49,.10)!important;
  box-shadow:0 3px 12px rgba(36,35,49,.05)!important;
}

.search-wrap{
  margin-bottom:0.35rem!important;
}

/* less cramped body */
.app-body{
  padding-top:0.35rem!important;
}

/* cleaner cards */
.dept-section{
  margin-bottom:.82rem!important;
}

.dept-row{
  padding:1.1rem 1.15rem!important;
  border-radius:22px!important;
  border:1px solid rgba(36,35,49,.09)!important;
  box-shadow:0 3px 10px rgba(36,35,49,.045)!important;
}

.dept-row::before{
  display:none!important;
}

.dept-row.open{
  background:#fff!important;
  border-color:rgba(170,68,101,.18)!important;
  box-shadow:0 8px 20px rgba(36,35,49,.07)!important;
}

/* consistent, smaller icon */
.dept-icon{
  width:40px!important;
  height:40px!important;
  padding:8px!important;
  border-radius:14px!important;
  background:rgba(170,68,101,.08)!important;
  border:1px solid rgba(170,68,101,.14)!important;
  color:var(--accent)!important;
}

.dept-icon img,
.dept-icon svg{
  width:22px!important;
  height:22px!important;
  max-width:22px!important;
  max-height:22px!important;
}

/* better text hierarchy */
.dept-name{
  font-size:1.18rem!important;
  line-height:1.05!important;
}

.dept-subtitle{
  color:#7B7A82!important;
  font-size:.67rem!important;
  margin-top:.22rem!important;
}

/* quieter count and chevron */
.dept-count{
  min-width:30px!important;
  height:30px!important;
  padding:0 .55rem!important;
  background:rgba(36,35,49,.06)!important;
  color:var(--ink)!important;
  border:1px solid rgba(36,35,49,.08)!important;
  box-shadow:none!important;
}

.chevron{
  opacity:.45!important;
}

/* drawer matches card */
.student-drawer{
  border-color:rgba(36,35,49,.08)!important;
  box-shadow:0 6px 14px rgba(36,35,49,.045)!important;
}

