/* Design v3 for the Portal (Home layout, guidelines 3): every tile shows the
   app's own icon from its public folder; the inline glyph stays as fallback.
   Loaded after the page's inline styles and /_v3/v3.css. */
.icon[class*=' '] {
  border-radius: 22.5%;
}
.icon.graph { background: url('/graph-plot/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.graph svg { visibility: hidden; }
.icon.dc { background: url('/chem-bond/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.dc svg { visibility: hidden; }
.icon.cd { background: url('/chem-draw/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.cd svg { visibility: hidden; }
.icon.cm { background: url('/lab-mix/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.cm svg { visibility: hidden; }
.icon.ib { background: url('/item-bank/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.ib svg { visibility: hidden; }
.icon.cmap { background: url('/concept-map/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.cmap svg { visibility: hidden; }
.icon.sp { background: url('/seat-plan/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.sp svg { visibility: hidden; }
.icon.sl { background: url('/student-log/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.sl svg { visibility: hidden; }
.icon.eb { background: url('/error-bank/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.eb svg { visibility: hidden; }
.icon.er { background: url('/exam-roster/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.er svg { visibility: hidden; }
.icon.st { background: url('/star-track/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.st svg { visibility: hidden; }
.icon.cl { background: url('/card-learn/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.cl svg { visibility: hidden; }
.icon.ct { background: url('/class-tools/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.ct svg { visibility: hidden; }
.icon.et { background: url('/exit-ticket/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.et svg { visibility: hidden; }
.icon.mb { background: url('/meeting-book/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.mb svg { visibility: hidden; }
.icon.tm { background: url('/timetable-match/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.tm svg { visibility: hidden; }
.icon.fr { background: url('/flash-recall/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.fr svg { visibility: hidden; }
.icon.wa { background: url('/wa-scheduler/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.wa svg { visibility: hidden; }
.icon.chub { background: url('/class-hub/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.chub svg { visibility: hidden; }
.icon.sx { background: url('/syllabus-explorer/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.sx svg { visibility: hidden; }
.icon.ud { background: url('/unit-deploy/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.ud svg { visibility: hidden; }
.icon.af { background: url('/award-find/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.af svg { visibility: hidden; }
.icon.cu { background: url('/claude-use/app-icon.png') center / cover no-repeat !important; color: transparent !important; }
.icon.cu svg { visibility: hidden; }

body {
  background: var(--nb-bg);
}
