/**
 * Intranet Core — Dashboard styles.
 * Ported from the original intranet theme and scoped under
 * .ic-dash so the look is faithful on any host theme without leaking styles.
 */
@import url('https://fonts.googleapis.com/css2?family=Raleway:wght@600;700;800&family=Source+Sans+3:wght@400;500;600;700&display=swap');

.ic-dash {
  --ic-c-primary:    #003366;
  --ic-c-primary-2:    #0066CC;
  --ic-c-accent:    #00A8B5;
  --ic-c-warn:  #E8470A;
  --ic-c-secondary:   #1B4F8A;
  --ic-c-secondary-2:  #29ABE2;
  --ic-c-secondary-3:         #87CEEB;
  --color-bg:              #F4F7FA;
  --color-surface:         #FFFFFF;
  --color-surface-alt:     #EEF3F8;
  --color-border:          #D0DCE8;
  --color-text-primary:    #1A2433;
  --color-text-secondary:  #4A5E73;
  --color-text-muted:      #7E94A8;
  --color-success:         #1D9A6C;
  --color-warning:         #E8940A;
  --color-danger:          #D63B3B;
  --color-info:            #29ABE2;
  --space-xs:4px; --space-sm:8px; --space-md:16px; --space-lg:24px; --space-xl:32px; --space-2xl:48px;
  --radius-sm:6px; --radius-md:10px; --radius-lg:16px; --radius-full:9999px;
  --shadow-sm:0 1px 3px rgba(0,51,102,0.08),0 1px 2px rgba(0,51,102,0.06);
  --shadow-md:0 4px 12px rgba(0,51,102,0.10),0 2px 6px rgba(0,51,102,0.06);
  --shadow-lg:0 10px 30px rgba(0,51,102,0.14),0 4px 10px rgba(0,51,102,0.08);
  --font-display:'Raleway','Segoe UI',sans-serif;
  --font-body:'Source Sans 3','Segoe UI',Arial,sans-serif;
  font-family: var(--font-body);
  color: var(--color-text-primary);
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
}
.ic-dash *{box-sizing:border-box}
.ic-dash a{text-decoration:none}
.ic-dash .page-content{display:block}
/* Admin manage link (added by plugin, not in original theme) */
.ic-dash .ic-dash-admin-bar{display:flex;justify-content:flex-end;margin-bottom:12px}
.ic-dash .ic-dash-admin-bar a{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:7px 13px;font-size:13px;font-weight:600;color:var(--ic-c-primary);box-shadow:var(--shadow-sm)}
.ic-dash .ic-dash-admin-bar a:hover{border-color:var(--ic-c-accent)}
.ic-dash--guest{display:flex;justify-content:center;padding:48px 16px;font-family:var(--font-body)}
.ic-dash--guest .ic-dash-card{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:32px;text-align:center;max-width:380px}
.ic-dash--guest .ic-dash-btn{display:inline-block;background:var(--ic-c-primary);color:#fff;padding:10px 22px;border-radius:var(--radius-md);font-weight:700;margin-top:8px}
.ic-dash .welcome-banner {
  background: linear-gradient(125deg, var(--ic-c-primary) 0%, var(--ic-c-primary-2) 42%, var(--ic-c-accent) 68%, var(--ic-c-secondary-2) 88%, var(--ic-c-secondary) 100%);
  border-radius: var(--radius-lg);
  padding: var(--space-2xl) var(--space-2xl);
  min-height: 260px;
  color: white;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--space-xl);
  overflow: hidden;
  position: relative;
}
.ic-dash .welcome-banner-overlay {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
}
.ic-dash .welcome-banner::before {
  content: '';
  position: absolute;
  right: -40px; top: -40px;
  width: 200px; height: 200px;
  background: rgba(255,255,255,0.05);
  border-radius: 50%;
}
.ic-dash .welcome-banner::after {
  content: '';
  position: absolute;
  right: 60px; bottom: -60px;
  width: 160px; height: 160px;
  background: rgba(255,255,255,0.04);
  border-radius: 50%;
}
.ic-dash .welcome-text h2 {
  font-family: var(--font-display);
  font-size: 32px;
  font-weight: 800;
  margin-bottom: 10px;
  line-height: 1.15;
}
.ic-dash .welcome-text p { font-size: 16px; opacity: 0.85; line-height: 1.6; max-width: 560px; }
.ic-dash .welcome-date {
  text-align: right;
  opacity: 0.85;
  flex-shrink: 0;
}
.ic-dash .welcome-date .date-big {
  font-family: var(--font-display);
  font-size: 64px;
  font-weight: 800;
  line-height: 1;
}
.ic-dash .welcome-date .date-label { font-size: 14px; opacity: 0.7; margin-top: 6px; }
.ic-dash .stats-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: var(--space-md);
  margin-bottom: var(--space-xl);
}
.ic-dash .stat-card {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  padding: var(--space-lg);
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--color-border);
  display: flex;
  align-items: center;
  gap: var(--space-md);
  transition: box-shadow 0.2s, transform 0.2s;
}
.ic-dash .stat-card:hover { box-shadow: var(--shadow-md); transform: translateY(-1px); }
.ic-dash .stat-icon {
  width: 48px; height: 48px;
  border-radius: var(--radius-md);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.ic-dash .stat-icon svg { width: 24px; height: 24px; }
.ic-dash .stat-icon.blue { background: rgba(0,102,204,0.10); color: var(--ic-c-primary-2); }
.ic-dash .stat-icon.teal { background: rgba(0,168,181,0.10); color: var(--ic-c-accent); }
.ic-dash .stat-icon.orange { background: rgba(232,71,10,0.10); color: var(--ic-c-warn); }
.ic-dash .stat-icon.green { background: rgba(29,154,108,0.10); color: var(--color-success); }
.ic-dash .stat-info .stat-number {
  font-family: var(--font-display);
  font-size: 26px;
  font-weight: 700;
  color: var(--ic-c-primary);
  line-height: 1;
}
.ic-dash .stat-info .stat-label { font-size: 12px; color: var(--color-text-muted); margin-top: 3px; }
.ic-dash .dashboard-grid {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: var(--space-xl);
  margin-bottom: var(--space-xl);
}
.ic-dash .dashboard-grid-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-xl);
  margin-bottom: var(--space-xl);
}
.ic-dash .card {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow-sm);
  overflow: hidden;
}
.ic-dash .card-header {
  padding: var(--space-lg) var(--space-lg) var(--space-md);
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--color-border);
}
.ic-dash .card-title {
  font-family: var(--font-display);
  font-size: 15px;
  font-weight: 700;
  color: var(--ic-c-primary);
  display: flex;
  align-items: center;
  gap: var(--space-sm);
}
.ic-dash .card-title-icon {
  width: 20px; height: 20px;
  color: var(--ic-c-accent);
}
.ic-dash .card-action-link {
  font-size: 12px;
  font-weight: 600;
  color: var(--ic-c-primary-2);
}
.ic-dash .card-body { padding: var(--space-lg); }
.ic-dash .news-item {
  display: flex;
  gap: var(--space-md);
  padding: var(--space-md) 0;
  border-bottom: 1px solid var(--color-border);
}
.ic-dash .news-item:last-child { border-bottom: none; }
.ic-dash .news-thumb {
  width: 72px; height: 56px;
  border-radius: var(--radius-sm);
  background: linear-gradient(135deg, var(--ic-c-primary-2), var(--ic-c-accent));
  flex-shrink: 0;
  object-fit: cover;
}
.ic-dash .news-content { flex: 1; min-width: 0; }
.ic-dash .news-category {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--ic-c-accent);
  margin-bottom: 3px;
}
.ic-dash .news-headline {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text-primary);
  line-height: 1.4;
  margin-bottom: 4px;
}
.ic-dash .news-meta { font-size: 11px; color: var(--color-text-muted); }
.ic-dash .announcement-item {
  display: flex;
  gap: var(--space-sm);
  padding: 10px 0;
  border-bottom: 1px solid var(--color-border);
}
.ic-dash .announcement-item:last-child { border-bottom: none; }
.ic-dash .announce-dot {
  width: 8px; height: 8px;
  border-radius: 50%;
  margin-top: 6px;
  flex-shrink: 0;
}
.ic-dash .announce-dot.urgent { background: var(--color-danger); }
.ic-dash .announce-dot.info { background: var(--ic-c-secondary-2); }
.ic-dash .announce-dot.general { background: var(--ic-c-accent); }
.ic-dash .announce-text { flex: 1; min-width: 0; }
.ic-dash .announce-title { font-size: 13px; font-weight: 600; color: var(--color-text-primary); line-height: 1.4; }
.ic-dash .announce-date { font-size: 11px; color: var(--color-text-muted); margin-top: 2px; }
.ic-dash .quick-links-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-sm);
}
.ic-dash .quick-link-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: var(--space-md) var(--space-sm);
  background: var(--color-bg);
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: all 0.2s;
  text-align: center;
}
.ic-dash .quick-link-btn:hover {
  background: rgba(0,102,204,0.05);
  border-color: var(--ic-c-primary-2);
  transform: translateY(-1px);
  box-shadow: var(--shadow-sm);
}
.ic-dash .quick-link-btn svg { width: 22px; height: 22px; color: var(--ic-c-primary-2); }
.ic-dash .quick-link-btn span { font-size: 11px; font-weight: 600; color: var(--color-text-secondary); line-height: 1.2; }
.ic-dash .event-item {
  display: flex;
  gap: var(--space-md);
  padding: 10px 0;
  border-bottom: 1px solid var(--color-border);
  align-items: flex-start;
}
.ic-dash .event-item:last-child { border-bottom: none; }
.ic-dash .event-date-badge {
  width: 42px;
  text-align: center;
  background: var(--ic-c-primary);
  color: white;
  border-radius: var(--radius-sm);
  padding: 4px;
  flex-shrink: 0;
}
.ic-dash .event-date-badge .day {
  font-family: var(--font-display);
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}
.ic-dash .event-date-badge .month {
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  opacity: 0.75;
}
.ic-dash .event-info { flex: 1; min-width: 0; }
.ic-dash .event-name { font-size: 13px; font-weight: 600; color: var(--color-text-primary); }
.ic-dash .event-detail { font-size: 11px; color: var(--color-text-muted); margin-top: 2px; }
.ic-dash .staff-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: var(--space-md);
}
.ic-dash .staff-card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  padding: var(--space-lg) var(--space-md);
  text-align: center;
  transition: box-shadow 0.2s, transform 0.2s;
}
.ic-dash .staff-card:hover { box-shadow: var(--shadow-md); transform: translateY(-2px); }
.ic-dash .staff-avatar {
  width: 60px; height: 60px;
  border-radius: 50%;
  margin: 0 auto var(--space-sm);
  display: flex; align-items: center; justify-content: center;
  font-weight: 700; font-size: 20px; color: white;
}
.ic-dash .staff-name { font-size: 13px; font-weight: 600; color: var(--ic-c-primary); }
.ic-dash .staff-role { font-size: 11px; color: var(--color-text-muted); margin-top: 2px; }
.ic-dash .staff-dept { font-size: 10px; font-weight: 600; color: var(--ic-c-accent); text-transform: uppercase; letter-spacing: 0.06em; margin-top: 6px; }
.ic-dash .image-library-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: var(--space-md);
}
.ic-dash .image-library-item {
  border-radius: var(--radius-md);
  overflow: hidden;
  border: 1.5px solid var(--color-border);
  background: var(--color-bg);
  cursor: pointer;
  transition: box-shadow 0.2s, transform 0.2s;
}
.ic-dash .image-library-item:hover { box-shadow: var(--shadow-md); transform: translateY(-2px); }
.ic-dash .image-thumb {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  background: linear-gradient(135deg, var(--ic-c-primary-2), var(--ic-c-accent));
  display: flex; align-items: center; justify-content: center;
  color: rgba(255,255,255,0.4);
  font-size: 30px;
}
.ic-dash .image-meta { padding: 10px 12px 12px; }
.ic-dash .image-name { font-size: 12px; font-weight: 600; color: var(--color-text-primary); white-space: normal; word-break: break-word; }
.ic-dash .image-category { font-size: 10px; color: var(--color-text-muted); margin-top: 3px; }
.ic-dash .document-item {
  display: flex;
  align-items: center;
  gap: var(--space-md);
  padding: 10px 0;
  border-bottom: 1px solid var(--color-border);
  cursor: pointer;
  transition: background 0.15s;
}
.ic-dash .document-item:last-child { border-bottom: none; }
.ic-dash .document-item:hover .doc-name { color: var(--ic-c-primary-2); }
.ic-dash .doc-icon {
  width: 36px; height: 36px;
  border-radius: var(--radius-sm);
  display: flex; align-items: center; justify-content: center;
  font-size: 11px;
  font-weight: 800;
  flex-shrink: 0;
}
.ic-dash .doc-icon.pdf { background: rgba(214,59,59,0.1); color: var(--color-danger); }
.ic-dash .doc-icon.word { background: rgba(0,102,204,0.1); color: var(--ic-c-primary-2); }
.ic-dash .doc-icon.xls { background: rgba(29,154,108,0.1); color: var(--color-success); }
.ic-dash .doc-icon.ppt { background: rgba(232,148,10,0.1); color: var(--color-warning); }
.ic-dash .doc-info { flex: 1; min-width: 0; }
.ic-dash .doc-name { font-size: 13px; font-weight: 600; color: var(--color-text-primary); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: color 0.15s; }
.ic-dash .doc-meta { font-size: 11px; color: var(--color-text-muted); margin-top: 2px; }
.ic-dash .alert-banner {
  display: flex;
  align-items: center;
  gap: var(--space-md);
  padding: 12px var(--space-lg);
  border-radius: var(--radius-md);
  margin-bottom: var(--space-lg);
  font-size: 13px;
  font-weight: 500;
}
.ic-dash .alert-banner.urgent {
  background: rgba(214,59,59,0.08);
  border: 1.5px solid rgba(214,59,59,0.25);
  color: var(--color-danger);
}
.ic-dash .alert-banner.info {
  background: rgba(41,171,226,0.08);
  border: 1.5px solid rgba(41,171,226,0.25);
  color: var(--ic-c-secondary);
}
.ic-dash .alert-banner svg { width: 18px; height: 18px; flex-shrink: 0; }
.ic-dash .poll-option {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  margin-bottom: var(--space-sm);
}
.ic-dash .poll-bar-wrap {
  flex: 1;
  height: 28px;
  background: var(--color-bg);
  border-radius: var(--radius-full);
  overflow: hidden;
  border: 1px solid var(--color-border);
  position: relative;
}
.ic-dash .poll-bar {
  height: 100%;
  border-radius: var(--radius-full);
  background: linear-gradient(90deg, var(--ic-c-primary-2), var(--ic-c-accent));
  transition: width 0.8s ease;
}
.ic-dash .poll-label { font-size: 12px; font-weight: 600; color: var(--color-text-secondary); width: 110px; flex-shrink: 0; }
.ic-dash .poll-pct { font-size: 12px; font-weight: 700; color: var(--ic-c-primary); width: 36px; text-align: right; flex-shrink: 0; }
.ic-dash .tag {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: var(--radius-full);
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.ic-dash .tag.new { background: rgba(29,154,108,0.12); color: var(--color-success); }
.ic-dash .tag.urgent { background: rgba(214,59,59,0.12); color: var(--color-danger); }
.ic-dash .tag.updated { background: rgba(0,102,204,0.12); color: var(--ic-c-primary-2); }
.ic-dash .tag.event { background: rgba(0,168,181,0.12); color: var(--ic-c-accent); }

.ic-dash .dashboard-grid-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-md);
}
.ic-dash .fc-staff-spotlight-card {
  display: flex;
  flex-direction: column;
  align-self: stretch;
  height: 100%;
}
.ic-dash .fc-staff-spotlight-card .card-body {
  flex: 1;
  overflow-y: auto;
  max-height: none !important; 
}
@media (max-width: 1100px){
.ic-dash .fc-dashboard-main-layout { grid-template-columns: 1fr; }
.ic-dash .fc-staff-spotlight-card { height: auto; }
}
@media (max-width: 700px){
.ic-dash .dashboard-grid-2 { grid-template-columns: 1fr; }
}
.ic-dash .fc-cal-nav-btn {
  background: var(--color-surface);
  border: 1.5px solid var(--color-border);
  border-radius: 6px;
  width: 28px; height: 28px;
  font-size: 16px; font-weight: 700;
  color: var(--ic-c-primary);
  cursor: pointer;
  transition: all .15s ease;
  display: inline-flex; align-items: center; justify-content: center;
  line-height: 1;
}
.ic-dash .fc-cal-nav-btn:hover {
  background: var(--color-surface-alt);
  border-color: var(--ic-c-primary-2);
  color: var(--ic-c-primary-2);
}
.ic-dash .fc-cal-weekday-row {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  background: var(--color-surface-alt);
  border-bottom: 1px solid var(--color-border);
}
.ic-dash .fc-cal-weekday {
  padding: 10px 8px;
  font-size: 11px;
  font-weight: 700;
  color: var(--color-text-muted);
  text-transform: uppercase;
  letter-spacing: .06em;
  text-align: center;
}
.ic-dash .fc-cal-days-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  grid-auto-rows: minmax(96px, auto);
}
.ic-dash .fc-cal-day {
  border-right: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
  padding: 6px 6px 6px 8px;
  min-height: 96px;
  display: flex; flex-direction: column; gap: 4px;
  background: #fff;
  transition: background .12s ease;
  cursor: default;
}
.ic-dash .fc-cal-day:nth-child(7n) { border-right: none; }
.ic-dash .fc-cal-day.has-events { cursor: pointer; }
.ic-dash .fc-cal-day.has-events:hover { background: #f8fafc; }
.ic-dash .fc-cal-day.is-out { background: #fafbfc; }
.ic-dash .fc-cal-day.is-out .fc-cal-day-num { color: #cbd5e1; }
.ic-dash .fc-cal-day.is-past { opacity: .85; }
.ic-dash .fc-cal-day.is-today { background: #eff6ff; box-shadow: inset 0 0 0 2px var(--ic-c-primary-2); }
.ic-dash .fc-cal-day.is-selected { background: #fef9c3; box-shadow: inset 0 0 0 2px #f59e0b; }
.ic-dash .fc-cal-day.is-today.is-selected { background: #eff6ff; box-shadow: inset 0 0 0 2px var(--ic-c-primary-2), inset 0 0 0 4px #f59e0b; }
.ic-dash .fc-cal-day-num {
  font-size: 13px;
  font-weight: 700;
  color: var(--color-text-secondary);
  line-height: 1;
}
.ic-dash .fc-cal-day.is-today .fc-cal-day-num {
  color: var(--ic-c-primary-2);
  background: var(--ic-c-primary-2);
  color: #fff;
  width: 22px; height: 22px;
  border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center;
  font-size: 12px;
}
.ic-dash .fc-cal-day-events {
  display: flex; flex-direction: column; gap: 3px;
  flex: 1;
  overflow: hidden;
}
.ic-dash .fc-cal-event-chip {
  display: block;
  background: linear-gradient(135deg, #1B4F8A, #003366);
  color: #fff;
  font-size: 11px;
  font-weight: 600;
  padding: 3px 7px;
  border-radius: 4px;
  text-decoration: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.4;
  transition: opacity .15s;
}
.ic-dash .fc-cal-event-chip:hover {
  opacity: .85;
  color: #fff;
}
.ic-dash .fc-cal-event-more {
  font-size: 10.5px;
  font-weight: 600;
  color: var(--ic-c-primary-2);
  cursor: pointer;
  padding: 1px 6px;
}
.ic-dash .fc-cal-event-more:hover { text-decoration: underline; }
.ic-dash .fc-cal-detail-event {
  display: block;
  padding: 8px 12px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 6px;
  margin-bottom: 6px;
  text-decoration: none;
  transition: border-color .15s;
}
.ic-dash .fc-cal-detail-event:hover {
  border-color: var(--ic-c-primary-2);
  background: #fafcff;
}
.ic-dash .fc-cal-detail-event:last-child { margin-bottom: 0; }
.ic-dash .fc-socials-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 12px;
}
.ic-dash .fc-social-card {
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 13px 14px;
  background: var(--color-surface);
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-md);
  text-decoration: none;
  transition: border-color .18s, box-shadow .18s, transform .18s;
  position: relative;
  overflow: hidden;
}
.ic-dash .fc-social-card::before {
  content: '';
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 3px;
  background: var(--sc, #0066CC);
  border-radius: 2px 0 0 2px;
}
.ic-dash .fc-social-card:hover {
  border-color: var(--sc, #0066CC);
  box-shadow: 0 3px 12px rgba(0,0,0,.08);
  transform: translateY(-1px);
}
.ic-dash .fc-social-icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: #fff;
}
.ic-dash .fc-social-info {
  flex: 1;
  min-width: 0;
}
.ic-dash .fc-social-label {
  font-size: 13px;
  font-weight: 700;
  color: var(--color-text-primary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ic-dash .fc-social-handle {
  font-size: 11.5px;
  color: var(--color-text-muted);
  margin-top: 2px;
  display: flex;
  align-items: center;
  gap: 6px;
}
.ic-dash .fc-social-brand {
  font-size: 9.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: 1px 6px;
  border-radius: 99px;
}
.ic-dash .brand-1 { background: rgba(0,51,102,.1);   color: #003366; }
.ic-dash .brand-2 { background: rgba(41,171,226,.12); color: #1B4F8A; }
.ic-dash .fc-social-arrow {
  width: 14px;
  height: 14px;
  color: var(--color-text-muted);
  flex-shrink: 0;
  opacity: .5;
  transition: opacity .15s;
}
.ic-dash .fc-social-card:hover .fc-social-arrow { opacity: 1; }

/* =========================================================
   FULL-SCREEN APP SHELL (sidebar + topbar) — ported from fw121
   ========================================================= */
body.ic-dash-fullscreen{
  --ic-c-primary:#003366;--ic-c-primary-2:#0066CC;--ic-c-accent:#00A8B5;--ic-c-warn:#E8470A;
  --ic-c-secondary:#1B4F8A;--ic-c-secondary-2:#29ABE2;
  --color-bg:#F4F7FA;--color-surface:#FFFFFF;--color-surface-alt:#EEF3F8;--color-border:#D0DCE8;
  --color-text-primary:#1A2433;--color-text-secondary:#4A5E73;--color-text-muted:#7E94A8;
  --sidebar-width:260px;--topbar-height:64px;
  --space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;
  --radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-full:9999px;
  --shadow-sm:0 1px 3px rgba(0,51,102,0.08),0 1px 2px rgba(0,51,102,0.06);
  --shadow-md:0 4px 12px rgba(0,51,102,0.10),0 2px 6px rgba(0,51,102,0.06);
  --font-display:'Raleway','Segoe UI',sans-serif;--font-body:'Source Sans 3','Segoe UI',Arial,sans-serif;
  margin:0;background:var(--color-bg);font-family:var(--font-body);color:var(--color-text-primary);
}
.ic-dash-fullscreen .main-wrapper .ic-dash{max-width:none;margin:0}
.ic-dash-fullscreen .page-content{padding:var(--space-xl) var(--space-xl) var(--space-2xl)}
/* push shell below the WP admin bar when present */
.admin-bar .ic-dash-fullscreen .sidebar,.ic-dash-fullscreen.admin-bar .sidebar{top:32px;height:calc(100vh - 32px)!important}
.admin-bar .ic-dash-fullscreen .topbar,.ic-dash-fullscreen.admin-bar .topbar{top:32px}
.ic-dash-fullscreen .intranet-layout {
  display: flex;
  min-height: 100vh;
}
.ic-dash-fullscreen .sidebar {
  width: var(--sidebar-width);
  height: 100vh !important;
  max-height: 100vh !important;
  background: linear-gradient(180deg, #001F4D 0%, var(--ic-c-primary) 45%, #0A3D7A 100%);
  position: fixed;
  top: 0; left: 0;
  display: flex;
  flex-direction: column;
  z-index: 200;
  transition: transform 0.3s ease;
  overflow: hidden;
}
.ic-dash-fullscreen .sidebar > .sidebar-logo, .ic-dash-fullscreen .sidebar > .sidebar-footer {
  flex: 0 0 auto;
}
.ic-dash-fullscreen .sidebar > .sidebar-nav {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow-y: auto !important;
  overflow-x: hidden;
}
.ic-dash-fullscreen .sidebar-logo {
  padding: var(--space-lg) var(--space-lg) var(--space-md);
  border-bottom: 1px solid rgba(255,255,255,0.1);
}
.ic-dash-fullscreen .sidebar-site-name {
  font-family: var(--font-display);
  font-size: 19px;
  font-weight: 800;
  color: #fff;
  letter-spacing: -0.02em;
  line-height: 1.1;
}
.ic-dash-fullscreen .sidebar-brand-logos {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 2px 0 4px;
}
.ic-dash-fullscreen .sidebar-brand-logo {
  display: block;
  height: 26px;        
  width: auto;
  max-width: 100%;
  object-fit: contain;
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.25));
}
.ic-dash-fullscreen .sidebar-brand-logo--alt {
  
  border-radius: 3px;
}
.ic-dash-fullscreen .sidebar-brand-divider {
  width: 1px;
  height: 22px;
  background: rgba(255, 255, 255, 0.18);
  flex: 0 0 auto;
}
.ic-dash-fullscreen .sidebar-welcome {
  font-size: 12.5px;
  font-weight: 600;
  color: #fff;
  margin-top: 4px;
  line-height: 1;
}
.ic-dash-fullscreen .sidebar-brand-tag {
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.35);
  margin-top: 6px;
  font-family: var(--font-display);
}
.ic-dash-fullscreen .sidebar-nav {
  flex: 1 1 auto;
  min-height: 0;
  padding: var(--space-md) 0;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: thin;
  scrollbar-color: rgba(255,255,255,0.25) rgba(255,255,255,0.05);
}
.ic-dash-fullscreen .sidebar-nav::-webkit-scrollbar { width: 6px; }
.ic-dash-fullscreen .sidebar-nav::-webkit-scrollbar-track { background: rgba(255,255,255,0.05); }
.ic-dash-fullscreen .sidebar-nav::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.25); border-radius: 3px; }
.ic-dash-fullscreen .sidebar-nav::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,0.4); }
.ic-dash-fullscreen .nav-section-label {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.35);
  padding: var(--space-md) var(--space-lg) var(--space-xs);
  font-family: var(--font-display);
}
.ic-dash-fullscreen .nav-item {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding: 10px var(--space-lg);
  color: rgba(255,255,255,0.75);
  font-size: 14px;
  font-weight: 500;
  transition: all 0.2s;
  cursor: pointer;
  border-left: 3px solid transparent;
  position: relative;
}
.ic-dash-fullscreen .nav-item:hover {
  background: rgba(255,255,255,0.07);
  color: #fff;
  border-left-color: var(--ic-c-accent);
}
.ic-dash-fullscreen .nav-item.active {
  background: rgba(255,255,255,0.10);
  color: #fff;
  border-left-color: var(--ic-c-accent);
}

/* WHS & Compliance — collapsible nav group */
.ic-dash-fullscreen .nav-group { border: 0; margin: 0; }
.ic-dash-fullscreen .nav-group > summary.nav-group-summary {
  list-style: none;
  -webkit-user-select: none;
  user-select: none;
}
.ic-dash-fullscreen .nav-group > summary.nav-group-summary::-webkit-details-marker { display: none; }
.ic-dash-fullscreen .nav-group-summary .nav-group-label { flex: 1 1 auto; }
.ic-dash-fullscreen .nav-group-summary .nav-chevron {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  opacity: 0.55;
  transition: transform 0.2s ease;
}
.ic-dash-fullscreen .nav-group[open] > summary .nav-chevron { transform: rotate(180deg); }
.ic-dash-fullscreen .nav-group-items .nav-item {
  padding-left: calc(var(--space-lg) + 26px);
  font-size: 13px;
}
.ic-dash-fullscreen .nav-group-items .nav-item .nav-icon {
  width: 16px;
  height: 16px;
  opacity: 0.8;
}
.ic-dash-fullscreen .nav-item .nav-icon {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  opacity: 0.8;
}
.ic-dash-fullscreen .nav-badge {
  margin-left: auto;
  background: var(--ic-c-warn);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: var(--radius-full);
  min-width: 20px;
  text-align: center;
}

/* "My Dashboard" — standout pill (first nav item) */
.ic-dash-fullscreen .nav-item--pill {
  margin: 6px var(--space-md) 12px;
  padding: 11px 14px;
  border-left: 0;
  border-radius: var(--radius-md);
  background: linear-gradient(135deg, var(--ic-c-primary-2), var(--ic-c-accent));
  color: #fff;
  font-weight: 700;
  box-shadow: 0 4px 14px rgba(0,0,0,0.28);
}
.ic-dash-fullscreen .nav-item--pill .nav-icon { opacity: 1; }
.ic-dash-fullscreen .nav-item--pill:hover {
  background: linear-gradient(135deg, var(--ic-c-primary-2), var(--ic-c-accent));
  border-left: 0;
  color: #fff;
  filter: brightness(1.08);
  transform: translateY(-1px);
  box-shadow: 0 6px 18px rgba(0,0,0,0.34);
}
.ic-dash-fullscreen .nav-item--pill.active {
  background: linear-gradient(135deg, var(--ic-c-primary-2), var(--ic-c-accent));
  border-left: 0;
  color: #fff;
  box-shadow: 0 0 0 2px rgba(255,255,255,0.40), 0 4px 14px rgba(0,0,0,0.28);
}
.ic-dash-fullscreen .sidebar-footer {
  padding: var(--space-md) var(--space-lg);
  border-top: 1px solid rgba(255,255,255,0.1);
}
.ic-dash-fullscreen .user-profile-mini {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
}
.ic-dash-fullscreen .user-avatar {
  width: 36px; height: 36px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--ic-c-accent), var(--ic-c-secondary-2));
  display: flex; align-items: center; justify-content: center;
  font-weight: 700; font-size: 13px; color: #fff;
  flex-shrink: 0;
}
.ic-dash-fullscreen .user-info-mini { flex: 1; min-width: 0; }
.ic-dash-fullscreen .user-name-mini { font-size: 13px; font-weight: 600; color: #fff; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ic-dash-fullscreen .user-role-mini { font-size: 11px; color: rgba(255,255,255,0.45); }
.ic-dash-fullscreen .main-wrapper {
  margin-left: var(--sidebar-width);
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
.ic-dash-fullscreen .topbar {
  height: var(--topbar-height);
  background: var(--color-surface);
  border-bottom: 1px solid var(--color-border);
  display: flex;
  align-items: center;
  padding: 0 var(--space-xl);
  gap: var(--space-md);
  position: sticky;
  top: 0;
  z-index: 100;
  box-shadow: var(--shadow-sm);
}
.ic-dash-fullscreen .topbar-search {
  flex: 1;
  max-width: 480px;
  position: relative;
}
.ic-dash-fullscreen .topbar-search input {
  width: 100%;
  padding: 9px 16px 9px 40px;
  background: var(--color-bg);
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-full);
  font-size: 14px;
  font-family: var(--font-body);
  color: var(--color-text-primary);
  transition: border-color 0.2s, box-shadow 0.2s;
}
.ic-dash-fullscreen .topbar-search input:focus {
  outline: none;
  border-color: var(--ic-c-primary-2);
  box-shadow: 0 0 0 3px rgba(0,102,204,0.12);
}
.ic-dash-fullscreen .topbar-search .search-icon {
  position: absolute;
  left: 14px; top: 50%;
  transform: translateY(-50%);
  color: var(--color-text-muted);
  width: 16px; height: 16px;
}
.ic-dash-fullscreen .topbar-actions {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  margin-left: auto;
}
.ic-dash-fullscreen .topbar-btn {
  width: 38px; height: 38px;
  border-radius: var(--radius-md);
  border: 1.5px solid var(--color-border);
  background: var(--color-surface);
  display: flex; align-items: center; justify-content: center;
  cursor: pointer;
  color: var(--color-text-secondary);
  position: relative;
  transition: all 0.2s;
}
.ic-dash-fullscreen .topbar-btn:hover {
  background: var(--color-bg);
  color: var(--ic-c-primary-2);
  border-color: var(--ic-c-primary-2);
}
.ic-dash-fullscreen .topbar-btn .dot-badge {
  position: absolute;
  top: 6px; right: 6px;
  width: 8px; height: 8px;
  background: var(--ic-c-warn);
  border-radius: 50%;
  border: 2px solid white;
}
.ic-dash-fullscreen .topbar-logos {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 6px;
}
.ic-dash-fullscreen .topbar-logo {
  height: 28px;
  width: auto;
  max-width: 110px;
  object-fit: contain;
  opacity: 0.82;
  transition: opacity 0.2s;
  flex-shrink: 0;
  background: transparent;
}
.ic-dash-fullscreen .topbar-logo:hover { opacity: 1; }
.ic-dash-fullscreen .topbar-logo-2 { max-width: 130px; }
.ic-dash-fullscreen .topbar-logo-1 {
  max-width: 80px;
  mix-blend-mode: multiply; 
}
.ic-dash-fullscreen .topbar-logos { display: none; }
.ic-dash-fullscreen .topbar-logo-divider {
  width: 1px;
  height: 24px;
  background: var(--color-border);
  flex-shrink: 0;
}
.ic-dash-fullscreen .topbar-user {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
  padding-left: 10px;
  border-left: 1.5px solid var(--color-border);
  min-width: 120px;
}
.ic-dash-fullscreen .topbar-welcome {
  font-size: 13px;
  font-weight: 700;
  color: var(--ic-c-primary);
  white-space: nowrap;
  line-height: 1;
}
.ic-dash-fullscreen .topbar-signout {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  font-weight: 600;
  color: var(--color-text-secondary);
  text-decoration: none;
  transition: color 0.15s;
  line-height: 1;
}
.ic-dash-fullscreen .topbar-signout:hover { color: #DC2626; }
.ic-dash-fullscreen .topbar-signout svg { flex-shrink: 0; opacity: 0.7; }

/* Responsive: collapse sidebar to off-canvas */
@media (max-width:900px){
  .ic-dash-fullscreen{--sidebar-width:0px}
  .ic-dash-fullscreen .sidebar{transform:translateX(-260px);width:260px}
  .ic-dash-fullscreen .sidebar.open{transform:translateX(0)}
  .ic-dash-fullscreen .main-wrapper{margin-left:0}
  .ic-dash-fullscreen .page-content{padding:var(--space-md)}
  .ic-dash-fullscreen #ic-sidebar-toggle{display:inline-flex!important}
  .ic-dash-fullscreen .ic-sidebar-backdrop.show{display:block}
}
.ic-sidebar-backdrop{display:none;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:150}

/* Accessible mode (toggled via topbar button) */
.ic-dash-fullscreen.fc-accessible .sidebar{background:#001540}
.ic-dash-fullscreen.fc-accessible .nav-item{color:#F0F0F0;font-weight:600;text-decoration:none}
.ic-dash-fullscreen.fc-accessible .nav-item:hover,.ic-dash-fullscreen.fc-accessible .nav-item.active{background:rgba(255,255,255,0.2);color:#fff}
.ic-dash-fullscreen.fc-accessible .nav-item--pill{background:#fff;color:#001540;font-weight:800;filter:none;box-shadow:none;transform:none}
.ic-dash-fullscreen.fc-accessible .nav-item--pill .nav-icon{opacity:1}
.ic-dash-fullscreen.fc-accessible .nav-item--pill:hover,.ic-dash-fullscreen.fc-accessible .nav-item--pill.active{background:#fff;color:#001540;box-shadow:0 0 0 2px #001540}
.ic-dash-fullscreen.fc-accessible .nav-section-label{color:#B0C4DE;font-weight:700}
.ic-dash-fullscreen.fc-accessible .topbar{background:#fff;border-bottom:2px solid #767676}
.ic-dash-fullscreen.fc-accessible .topbar-welcome{color:#000;font-weight:700}
.fc-a11y-toggle{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:7px 12px;font-size:13px;font-weight:600;color:var(--color-text-secondary);cursor:pointer}
.fc-a11y-toggle svg{width:16px;height:16px;flex-shrink:0}
.fc-a11y-toggle:hover{border-color:var(--ic-c-accent);color:var(--ic-c-primary)}
.fc-a11y-toggle[aria-pressed="true"]{background:var(--ic-c-primary);color:#fff;border-color:var(--ic-c-primary)}

.ic-dash-fullscreen .ic-dash-admin-bar{display:none}
.ic-dash-fullscreen .fc-bell-btn { position: relative; }
.ic-dash-fullscreen .fc-bell-count {
  position: absolute;
  top: 2px; right: 2px;
  background: var(--color-danger);
  color: #fff;
  font-size: 9px;
  font-weight: 700;
  min-width: 16px;
  height: 16px;
  border-radius: 99px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 3px;
  pointer-events: none;
  line-height: 1;
}
.ic-dash-fullscreen .fc-notif-panel {
  position: absolute;
  top: calc(var(--topbar-height) - 4px);
  right: 16px;
  width: 360px;
  max-height: 480px;
  background: var(--color-surface);
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  z-index: 500;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.ic-dash-fullscreen .fc-notif-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 16px;
  border-bottom: 1px solid var(--color-border);
  background: var(--color-surface-alt);
  flex-shrink: 0;
}
.ic-dash-fullscreen .fc-notif-panel-title {
  font-weight: 700;
  font-size: 14px;
  color: var(--color-text-primary);
}
.ic-dash-fullscreen .fc-notif-mark-all {
  background: none;
  border: none;
  font-size: 12px;
  color: var(--ic-c-primary-2);
  cursor: pointer;
  font-weight: 600;
  padding: 0;
}
.ic-dash-fullscreen .fc-notif-mark-all:hover { text-decoration: underline; }
.ic-dash-fullscreen .fc-notif-view-all {
  font-size: 12px;
  color: var(--ic-c-primary-2);
  font-weight: 600;
  text-decoration: none;
}
.ic-dash-fullscreen .fc-notif-view-all:hover { text-decoration: underline; }
.ic-dash-fullscreen .fc-notif-close {
  background: none;
  border: none;
  cursor: pointer;
  color: var(--color-text-muted);
  font-size: 14px;
  padding: 0 2px;
  line-height: 1;
}
.ic-dash-fullscreen .fc-notif-close:hover { color: var(--color-text-primary); }
.ic-dash-fullscreen .fc-notif-list {
  overflow-y: auto;
  flex: 1;
}
.ic-dash-fullscreen .fc-notif-loading, .ic-dash-fullscreen .fc-notif-empty {
  padding: 24px 16px;
  font-size: 13px;
  color: var(--color-text-muted);
  text-align: center;
}
.ic-dash-fullscreen .fc-notif-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--color-border);
  text-decoration: none;
  color: var(--color-text-primary);
  transition: background 0.15s;
  position: relative;
}
.ic-dash-fullscreen .fc-notif-item:hover { background: var(--color-surface-alt); }
.ic-dash-fullscreen .fc-notif-item.unread { background: rgba(0,102,204,0.04); }
.ic-dash-fullscreen .fc-notif-item:last-of-type { border-bottom: none; }
.ic-dash-fullscreen .fc-notif-icon { font-size: 20px; flex-shrink: 0; margin-top: 1px; }
.ic-dash-fullscreen .fc-notif-body { flex: 1; min-width: 0; }
.ic-dash-fullscreen .fc-notif-title {
  font-size: 13px;
  font-weight: 600;
  color: var(--color-text-primary);
  line-height: 1.4;
  margin-bottom: 2px;
}
.ic-dash-fullscreen .fc-notif-excerpt {
  font-size: 12px;
  color: var(--color-text-secondary);
  line-height: 1.4;
  margin-bottom: 3px;
}
.ic-dash-fullscreen .fc-notif-meta {
  font-size: 11px;
  color: var(--color-text-muted);
}
.ic-dash-fullscreen .fc-notif-unread-dot {
  width: 8px; height: 8px;
  background: var(--ic-c-primary-2);
  border-radius: 50%;
  flex-shrink: 0;
  margin-top: 6px;
}
.ic-dash-fullscreen .fc-notif-view-all-btn {
  display: block;
  text-align: center;
  padding: 12px;
  font-size: 13px;
  font-weight: 600;
  color: var(--ic-c-primary-2);
  text-decoration: none;
  border-top: 1px solid var(--color-border);
  background: var(--color-surface-alt);
}
.ic-dash-fullscreen .fc-notif-view-all-btn:hover { background: var(--color-bg); }
.ic-dash-fullscreen /* =========================================
.ic-dash-fullscreen .topbar-btn .dot-badge {
  position: absolute;
  top: 6px; right: 6px;
  width: 8px; height: 8px;
  background: var(--ic-c-warn);
  border-radius: 50%;
  border: 2px solid white;
}.ic-dash-fullscreen .fc-social-dropdown {
  position: relative;
  flex-shrink: 0;
}
.ic-dash-fullscreen .fc-social-trigger {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  background: var(--color-surface-alt);
  border: 1.5px solid var(--color-border);
  color: var(--ic-c-primary);
  border-radius: var(--radius-full);
  padding: 4px 8px 4px 4px;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  transition: background 0.15s, border-color 0.15s, box-shadow 0.15s;
  font-family: var(--font-body);
}
.ic-dash-fullscreen .fc-social-trigger:hover, .ic-dash-fullscreen .fc-social-dropdown.open .fc-social-trigger {
  background: var(--color-surface);
  border-color: var(--ic-c-primary-2);
  box-shadow: 0 0 0 2px rgba(0,102,204,0.15);
}
.ic-dash-fullscreen .fc-social-trigger-img {
  height: 28px;
  width: auto;
  max-width: 80px;
  object-fit: contain;
  display: block;
}
.ic-dash-fullscreen .fc-social-trigger-caret {
  color: var(--color-text-muted);
  flex-shrink: 0;
  transition: transform 0.2s;
}
.ic-dash-fullscreen .fc-social-dropdown.open .fc-social-trigger-caret {
  transform: rotate(180deg);
  color: var(--ic-c-primary-2);
}
.ic-dash-fullscreen .fc-social-trigger-label { line-height: 1; }
.ic-dash-fullscreen .fc-social-panel {
  display: none;
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  background: var(--color-surface);
  border: 1.5px solid var(--color-border);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  z-index: 500;
  min-width: 210px;
  overflow: hidden;
  animation: fc-dropdown-in 0.15s ease;
}
@keyframes fc-dropdown-in{

  from { opacity: 0; transform: translateY(-6px); }
  to   { opacity: 1; transform: translateY(0); }

}
.ic-dash-fullscreen .fc-social-dropdown.open .fc-social-panel { display: block; }
.ic-dash-fullscreen .fc-social-panel-title {
  padding: 10px 14px 8px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.7px;
  color: var(--color-text-muted);
  border-bottom: 1px solid var(--color-border);
}
.ic-dash-fullscreen .fc-social-panel-link {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  text-decoration: none;
  color: var(--color-text-primary);
  font-size: 13px;
  font-weight: 600;
  border-bottom: 1px solid var(--color-border);
  transition: background 0.12s;
}
.ic-dash-fullscreen .fc-social-panel-link:last-child { border-bottom: none; }
.ic-dash-fullscreen .fc-social-panel-link:hover { background: var(--color-surface-alt); color: var(--color-text-primary); }
.ic-dash-fullscreen .fc-social-panel-icon {
  width: 28px;
  height: 28px;
  border-radius: 7px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
/* =========================================================
   CPT ARCHIVES & SINGLES (rendered inside the app shell)
   ========================================================= */
.ic-dash-fullscreen main{flex:1 1 auto;min-width:0}
.ic-dash-fullscreen .ic-archive,
.ic-dash-fullscreen .ic-single{max-width:1100px;margin:0 auto;padding:var(--space-xl) var(--space-xl) var(--space-2xl);width:100%}
.ic-dash-fullscreen .ic-archive__header{margin-bottom:var(--space-lg);padding-bottom:var(--space-md);border-bottom:1px solid var(--color-border)}
.ic-dash-fullscreen .ic-archive__title{font-family:var(--font-display);font-size:28px;font-weight:800;color:var(--ic-c-primary);margin:0;letter-spacing:-.02em}

.ic-dash-fullscreen .ic-archive__grid,
.ic-dash-fullscreen .ic-staff-grid,
.ic-dash-fullscreen .ic-gallery-grid{display:grid;gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}

/* generic / news cards */
.ic-dash-fullscreen .ic-card{display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s}
.ic-dash-fullscreen .ic-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}
.ic-dash-fullscreen .ic-card__media img{width:100%;height:160px;object-fit:cover;display:block}
.ic-dash-fullscreen .ic-card__body{padding:var(--space-md);display:flex;flex-direction:column;gap:6px}
.ic-dash-fullscreen .ic-card__title{font-weight:700;font-size:16px;color:var(--color-text-primary);line-height:1.3}
.ic-dash-fullscreen .ic-card__excerpt{font-size:13.5px;color:var(--color-text-secondary);line-height:1.5}
.ic-dash-fullscreen .ic-card__meta{font-size:12px;color:var(--color-text-muted);margin-top:auto}

/* staff cards */
.ic-dash-fullscreen .ic-staff-card{display:flex;align-items:center;gap:12px;padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s}
.ic-dash-fullscreen .ic-staff-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}
.ic-dash-fullscreen .ic-staff-card__avatar{width:52px;height:52px;border-radius:50%;object-fit:cover;flex-shrink:0;background:var(--color-surface-alt)}
.ic-dash-fullscreen .ic-staff-card__body strong{display:block;color:var(--color-text-primary);font-size:15px}
.ic-dash-fullscreen .ic-staff-card__title{font-size:13px;color:var(--ic-c-primary);font-weight:600}
.ic-dash-fullscreen .ic-staff-card__dept{font-size:12px;color:var(--color-text-muted)}

/* lists: events / documents / announcements */
.ic-dash-fullscreen .ic-event-list,
.ic-dash-fullscreen .ic-doc-list,
.ic-dash-fullscreen .ic-announce-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.ic-dash-fullscreen .ic-event-list__item{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-left:3px solid var(--ic-c-accent);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}
.ic-dash-fullscreen .ic-event-list__date{font-size:12px;font-weight:700;color:var(--ic-c-primary);min-width:96px;flex-shrink:0}
.ic-dash-fullscreen .ic-event-list__title{font-weight:600;color:var(--color-text-primary);text-decoration:none;flex:1}
.ic-dash-fullscreen .ic-event-list__title:hover{color:var(--ic-c-primary)}
.ic-dash-fullscreen .ic-event-list__loc{font-size:12px;color:var(--color-text-muted)}
.ic-dash-fullscreen .ic-doc-list__item{display:flex;align-items:center;gap:12px;padding:13px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);text-decoration:none;color:var(--color-text-primary)}
.ic-dash-fullscreen .ic-doc-list__item:hover{border-color:var(--ic-c-accent)}
.ic-dash-fullscreen .ic-doc-list__badge{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:99px;background:var(--color-surface-alt);color:var(--ic-c-secondary);margin-left:auto}
.ic-dash-fullscreen .ic-doc-list__badge--done{background:#E6F4EC;color:#1F7A4D}
.ic-dash-fullscreen .ic-announce-list__item{padding:14px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-left:3px solid var(--ic-c-primary-2);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}

/* gallery */
.ic-dash-fullscreen .ic-gallery-card{display:block;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);background:var(--color-surface);border:1px solid var(--color-border)}
.ic-dash-fullscreen .ic-gallery-card img{width:100%;height:180px;object-fit:cover;display:block}
.ic-dash-fullscreen .ic-gallery-card span{display:block;padding:12px 16px;text-align:center;font-weight:600;color:var(--color-text-primary);line-height:1.35}
.ic-dash-fullscreen .ic-album-photos{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin-top:var(--space-lg)}
.ic-dash-fullscreen .ic-album-photo{display:block;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);aspect-ratio:1/1}
.ic-dash-fullscreen .ic-album-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s}
.ic-dash-fullscreen .ic-album-photo:hover img{transform:scale(1.05)}

/* single */
.ic-dash-fullscreen .ic-single__header{margin-bottom:var(--space-lg)}
.ic-dash-fullscreen .ic-single__title{font-family:var(--font-display);font-size:30px;font-weight:800;color:var(--ic-c-primary);margin:0 0 8px;letter-spacing:-.02em}
.ic-dash-fullscreen .ic-single__meta{font-size:13px;color:var(--color-text-muted)}
.ic-dash-fullscreen .ic-single__featured img{width:100%;max-height:420px;object-fit:cover;border-radius:var(--radius-lg);margin-bottom:var(--space-lg)}
.ic-dash-fullscreen .ic-single__body{font-size:15.5px;line-height:1.7;color:var(--color-text-secondary)}
.ic-dash-fullscreen .ic-single__body h2,
.ic-dash-fullscreen .ic-single__body h3{color:var(--color-text-primary);margin-top:1.4em}
.ic-dash-fullscreen .ic-single__body a{color:var(--ic-c-primary-2)}
.ic-dash-fullscreen .ic-single__body img{max-width:100%;height:auto;border-radius:var(--radius-md)}

/* staff profile (single) */
.ic-dash-fullscreen .ic-staff-profile{display:flex;gap:var(--space-xl);align-items:flex-start;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);box-shadow:var(--shadow-sm)}
.ic-dash-fullscreen .ic-staff-profile__avatar img{width:160px;height:160px;border-radius:var(--radius-lg);object-fit:cover}
.ic-dash-fullscreen .ic-staff-profile__body h1{font-family:var(--font-display);font-size:26px;color:var(--ic-c-primary);margin:0 0 4px}
.ic-dash-fullscreen .ic-staff-profile__title{font-size:15px;font-weight:600;color:var(--color-text-secondary);margin:0 0 2px}
.ic-dash-fullscreen .ic-staff-profile__dept{font-size:13px;color:var(--color-text-muted);margin:0 0 14px}
.ic-dash-fullscreen .ic-staff-profile__contact{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;font-size:14px;margin:0 0 16px}
.ic-dash-fullscreen .ic-staff-profile__contact dt{font-weight:600;color:var(--color-text-muted)}
.ic-dash-fullscreen .ic-staff-profile__contact dd{margin:0}
.ic-dash-fullscreen .ic-staff-profile__contact a{color:var(--ic-c-primary-2)}
.ic-dash-fullscreen .ic-staff-profile__bio{font-size:15px;line-height:1.6;color:var(--color-text-secondary)}

/* pagination + empty states */
.ic-dash-fullscreen .ic-archive .pagination,
.ic-dash-fullscreen .ic-archive .nav-links{display:flex;gap:8px;margin-top:var(--space-xl);flex-wrap:wrap}
.ic-dash-fullscreen .ic-archive .page-numbers{padding:7px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-secondary);text-decoration:none;font-size:13px;font-weight:600}
.ic-dash-fullscreen .ic-archive .page-numbers.current{background:var(--ic-c-primary);color:#fff;border-color:var(--ic-c-primary)}
.ic-dash-fullscreen .ic-archive>p{color:var(--color-text-muted);font-size:14.5px;background:var(--color-surface);border:1px dashed var(--color-border);border-radius:var(--radius-md);padding:24px;text-align:center}

@media(max-width:700px){
	.ic-dash-fullscreen .ic-staff-profile{flex-direction:column}
	.ic-dash-fullscreen .ic-archive,
	.ic-dash-fullscreen .ic-single{padding:var(--space-md)}
}

/* =========================================================
   ADMIN CONSOLE (Content Manager + Settings) inside the shell
   ========================================================= */
.ic-dash-fullscreen .ic-console-main{padding:24px 28px 40px}
/* CM tab bar provides its own 28px inset; drop it so it aligns with the
   padded main and its body content. */
.ic-dash-fullscreen .ic-console-main .fca-tabs-wrap{padding-left:0;padding-right:0}
@media(max-width:700px){
	.ic-dash-fullscreen .ic-console-main{padding:16px}
}

/* =========================================================
   MANAGE USERS (settings tab) + ACCEPT-INVITE page
   ========================================================= */
.ic-users{display:flex;flex-direction:column;gap:28px}
.ic-users h2{font-family:var(--font-display);font-size:18px;font-weight:800;color:var(--ic-c-primary);margin:0 0 14px}
.ic-users-notice{padding:11px 15px;border-radius:var(--radius-md);margin-bottom:18px;font-size:13.5px;font-weight:600;border:1px solid}
.ic-users-notice--ok{background:rgba(22,163,74,.08);border-color:rgba(22,163,74,.3);color:#15803d}
.ic-users-notice--warn{background:rgba(234,179,8,.1);border-color:rgba(234,179,8,.35);color:#a16207}
.ic-users-notice--err{background:rgba(220,38,38,.08);border-color:rgba(220,38,38,.3);color:#b91c1c}
.ic-users-invite{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-sm)}
.ic-users-invite-form{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end}
.ic-users-field{display:flex;flex-direction:column;gap:5px;flex:1 1 180px;min-width:0}
.ic-users-field label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}
.ic-users-field input,.ic-users-field select{padding:9px 12px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:14px;font-family:var(--font-body);background:#fff;color:var(--color-text-primary)}
.ic-users-field input:focus,.ic-users-field select:focus{outline:none;border-color:var(--ic-c-accent)}
.ic-users-btn{padding:10px 18px;background:var(--ic-c-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:14px;font-weight:700;cursor:pointer;font-family:var(--font-body)}
.ic-users-btn:hover{filter:brightness(1.08)}
.ic-users-table{width:100%;border-collapse:collapse;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}
.ic-users-table th{text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);padding:12px 16px;background:var(--color-surface-alt);border-bottom:1px solid var(--color-border)}
.ic-users-table td{padding:12px 16px;border-bottom:1px solid var(--color-border);font-size:14px;color:var(--color-text-primary);vertical-align:middle}
.ic-users-table tr:last-child td{border-bottom:none}
.ic-users-you{font-size:11px;color:var(--color-text-muted);font-weight:600}
.ic-users-inline{display:inline}
.ic-users-inline select{padding:6px 10px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:13px;background:#fff;color:var(--color-text-primary);cursor:pointer}
.ic-users-pill{font-size:12px;font-weight:700;color:var(--ic-c-secondary);background:var(--color-surface-alt);padding:3px 10px;border-radius:99px}
.ic-users-status{font-size:12px;font-weight:700;padding:3px 10px;border-radius:99px}
.ic-users-status--active{background:rgba(22,163,74,.1);color:#15803d}
.ic-users-status--pending{background:rgba(234,179,8,.14);color:#a16207}
.ic-users-actions{white-space:nowrap;text-align:right}
.ic-users-link{background:none;border:none;color:var(--ic-c-primary-2);font-size:13px;font-weight:600;cursor:pointer;padding:4px 6px}
.ic-users-link:hover{text-decoration:underline}
.ic-users-link--danger{color:#dc2626}
.ic-users-setpass{display:inline-block;vertical-align:middle}
.ic-users-setpass>summary{cursor:pointer;list-style:none;color:var(--ic-c-primary-2);font-size:13px;font-weight:600;padding:4px 6px}
.ic-users-setpass>summary::-webkit-details-marker{display:none}
.ic-users-setpass>summary:hover{text-decoration:underline}
.ic-users-setpass-form{margin-top:6px;display:flex;gap:6px;align-items:center}
.ic-users-setpass-form input[type=password]{padding:6px 9px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:13px}
.ic-users-invitenote{font-size:13px;color:var(--color-text-secondary);margin:-4px 0 14px;line-height:1.4}
.ic-users-listhead{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:8px}
.ic-users-listhead h2{margin:0}
.ic-staff-back{margin:0 0 10px;font-size:13px}
.ic-users-role{font-size:12px;color:var(--color-text-muted);margin-top:2px}
.ic-users-muted{color:var(--color-text-muted)}
@media(max-width:640px){
	.ic-users-table thead{display:none}
	.ic-users-table,.ic-users-table tbody,.ic-users-table tr,.ic-users-table td{display:block;width:100%}
	.ic-users-table tr{border-bottom:2px solid var(--color-border);padding:6px 0}
	.ic-users-table td{border:none;padding:6px 16px}
	.ic-users-actions{text-align:left}
}

/* Accept-invite / auth page (standalone, centred) */
.ic-auth-page{display:flex;min-height:100vh;align-items:center;justify-content:center;background:var(--color-bg)}
.ic-auth{width:100%;padding:24px}
.ic-auth-card{max-width:420px;margin:0 auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:36px 32px}
.ic-auth-title{font-family:var(--font-display);font-size:24px;font-weight:800;color:var(--ic-c-primary);margin:0 0 6px;text-align:center}
.ic-auth-sub{font-size:14.5px;color:var(--color-text-secondary);text-align:center;margin:0 0 22px;line-height:1.5}
.ic-auth-error{background:rgba(220,38,38,.08);border:1px solid rgba(220,38,38,.3);color:#b91c1c;padding:11px 14px;border-radius:var(--radius-md);font-size:13.5px;margin:0 0 18px;text-align:center}
.ic-auth-form{display:flex;flex-direction:column;gap:6px}
.ic-auth-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-top:10px}
.ic-auth-input{padding:11px 13px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:15px;font-family:var(--font-body);background:#fff;color:var(--color-text-primary)}
.ic-auth-input:focus{outline:none;border-color:var(--ic-c-accent)}
.ic-auth-btn{margin-top:20px;padding:12px;background:var(--ic-c-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:15px;font-weight:700;cursor:pointer;font-family:var(--font-body)}
.ic-auth-btn:hover{filter:brightness(1.08)}

/* Documents — category tabs */
.ic-dash-fullscreen .ic-doc-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:var(--space-lg);padding-bottom:2px}
.ic-dash-fullscreen .ic-doc-tab{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border:1.5px solid var(--color-border);background:var(--color-surface);border-radius:99px;font-size:13.5px;font-weight:600;color:var(--color-text-secondary);cursor:pointer;font-family:var(--font-body);transition:.15s}
.ic-dash-fullscreen .ic-doc-tab:hover{border-color:var(--ic-c-accent);color:var(--ic-c-primary)}
.ic-dash-fullscreen .ic-doc-tab.is-active{background:var(--ic-c-primary);border-color:var(--ic-c-primary);color:#fff}
.ic-dash-fullscreen .ic-doc-tab__count{font-size:11px;font-weight:700;padding:1px 7px;border-radius:99px;background:var(--color-surface-alt);color:var(--color-text-muted)}
.ic-dash-fullscreen .ic-doc-tab.is-active .ic-doc-tab__count{background:rgba(255,255,255,.22);color:#fff}
.ic-dash-fullscreen .ic-doc-list__ver{font-size:12px;font-weight:600;color:var(--color-text-muted)}
.ic-dash-fullscreen .ic-doc-list__type{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:99px;background:var(--color-surface-alt);color:var(--ic-c-secondary)}

/* =========================================================
   COMPLIANCE & POLICY ACKNOWLEDGEMENT
   ========================================================= */
.ic-cmp{max-width:980px}
.ic-cmp-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px;flex-wrap:wrap}
.ic-cmp-title{font-family:var(--font-display);font-size:26px;font-weight:800;color:var(--ic-c-primary);margin:0}
.ic-cmp-vtag{font-size:13px;font-weight:700;color:var(--ic-c-secondary);background:var(--color-surface-alt);padding:2px 9px;border-radius:99px;vertical-align:middle}
.ic-cmp-sub{color:var(--color-text-secondary);font-size:15px;margin:6px 0 0}
.ic-cmp-btn{display:inline-flex;align-items:center;gap:8px;background:var(--ic-c-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:14px;font-weight:700;padding:10px 16px;cursor:pointer;text-decoration:none}
.ic-cmp-btn:hover{filter:brightness(1.08)}
.ic-cmp-btn--lg{font-size:15.5px;padding:13px 26px}
.ic-cmp-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:26px}
.ic-cmp-stat{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:16px 18px;box-shadow:var(--shadow-sm)}
.ic-cmp-stat__n{font-family:var(--font-display);font-weight:800;font-size:28px;color:var(--ic-c-primary)}
.ic-cmp-stat__l{font-size:12.5px;color:var(--color-text-muted);font-weight:600;margin-top:2px}
.ic-cmp-table{width:100%;border-collapse:collapse;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}
.ic-cmp-table th{text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);padding:12px 16px;background:var(--color-surface-alt);border-bottom:1px solid var(--color-border)}
.ic-cmp-table td{padding:13px 16px;border-bottom:1px solid var(--color-border);font-size:14px;color:var(--color-text-primary);vertical-align:middle}
.ic-cmp-table tr:last-child td{border-bottom:none}
.ic-cmp-policy{font-weight:600}
.ic-cmp-progress-col{width:230px}
.ic-cmp-bar{display:inline-block;width:150px;height:8px;border-radius:99px;background:var(--color-surface-alt);overflow:hidden;vertical-align:middle;margin-right:9px}
.ic-cmp-bar__fill{display:block;height:100%;border-radius:99px}
.ic-cmp-bar__fill--ok{background:#16a34a}
.ic-cmp-bar__fill--warn{background:#e8a33d}
.ic-cmp-bar__fill--low{background:#dc2626}
.ic-cmp-pct{font-size:12.5px;font-weight:700;color:var(--color-text-secondary)}
.ic-cmp-muted{color:var(--color-text-muted)}
.ic-cmp-link{color:var(--ic-c-primary-2);font-weight:600;text-decoration:none}
.ic-cmp-link:hover{text-decoration:underline}
.ic-cmp-actions{text-align:right;white-space:nowrap}
.ic-cmp-actions .ic-cred-del{display:inline-block}
/* Themed row actions (Open / Delete) — consistent small buttons */
.ic-cmp-actions .ic-cmp-link,
.ic-cmp-actions .ic-cred-delbtn{
	display:inline-flex;align-items:center;justify-content:center;
	padding:6px 13px;border-radius:8px;font-size:13px;font-weight:600;line-height:1;
	border:1px solid var(--color-border,#e2e8f0);background:var(--color-surface,#fff);
	cursor:pointer;text-decoration:none;vertical-align:middle;
	-webkit-appearance:none;appearance:none;
	transition:background .12s ease,border-color .12s ease,color .12s ease;
}
.ic-cmp-actions .ic-cmp-link{color:var(--ic-c-primary,#15263B)}
.ic-cmp-actions .ic-cmp-link:hover{background:var(--color-surface-alt,#f1f5f9);border-color:#cbd5e1;text-decoration:none}
.ic-cmp-actions .ic-cred-delbtn{color:#c0392b!important;border-color:#ecc7c1;margin-left:6px}
.ic-cmp-actions .ic-cred-delbtn:hover{background:#fdecea;border-color:#e1a99e}
.ic-cmp-back{display:inline-block;color:var(--ic-c-primary-2);font-weight:600;font-size:14px;text-decoration:none;margin-bottom:14px}
.ic-cmp-back:hover{text-decoration:underline}
.ic-cmp-cols{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}
.ic-cmp-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:18px 20px;box-shadow:var(--shadow-sm)}
.ic-cmp-card__h{font-family:var(--font-display);font-size:15px;font-weight:700;margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid var(--color-border)}
.ic-cmp-card__h--todo{color:#b45309}
.ic-cmp-card__h--done{color:#15803d}
.ic-cmp-people{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;max-height:420px;overflow:auto}
.ic-cmp-people li{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:8px 4px;border-bottom:1px solid var(--color-surface-alt);font-size:14px}
.ic-cmp-people li:last-child{border-bottom:none}
.ic-cmp-name{font-weight:600;color:var(--color-text-primary)}
.ic-cmp-email,.ic-cmp-when{font-size:12.5px;color:var(--color-text-muted)}
.ic-cmp-allgood{color:#15803d;font-weight:600;font-size:14px}
.ic-cmp-empty{background:var(--color-surface);border:1px dashed var(--color-border);border-radius:var(--radius-lg);padding:40px;text-align:center}
.ic-cmp-empty__hint{color:var(--color-text-muted);font-size:13.5px;margin-top:6px}
/* Upsell */
.ic-cmp-upsell{max-width:560px;margin:10px auto;text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:40px 34px;box-shadow:var(--shadow-sm)}
.ic-cmp-upsell__icon{width:74px;height:74px;border-radius:20px;margin:0 auto 18px;display:grid;place-items:center;background:var(--mint,#E5F1EC);color:var(--ic-c-accent)}
.ic-cmp-upsell h1{font-family:var(--font-display);font-size:24px;font-weight:800;color:var(--ic-c-primary);margin:0 0 10px}
.ic-cmp-upsell>p{color:var(--color-text-secondary);font-size:15.5px;line-height:1.55;margin:0 0 20px}
.ic-cmp-upsell__list{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-direction:column;gap:10px;text-align:left;max-width:420px;margin-inline:auto}
.ic-cmp-upsell__list li{position:relative;padding-left:28px;font-size:14.5px;color:var(--color-text-primary)}
.ic-cmp-upsell__list li::before{content:"✓";position:absolute;left:0;top:0;color:#16a34a;font-weight:800}
.ic-cmp-upsell__note{font-size:12.5px;color:var(--color-text-muted);margin:16px 0 0}
@media(max-width:680px){.ic-cmp-stats{grid-template-columns:repeat(2,1fr)}.ic-cmp-cols{grid-template-columns:1fr}.ic-cmp-progress-col{width:auto}}
.ic-cmp-deact{margin-top:26px;text-align:right}
.ic-cmp-deact__btn{background:none;border:none;color:var(--color-text-muted);font-size:12.5px;cursor:pointer;text-decoration:underline}
.ic-cmp-deact__btn:hover{color:#dc2626}

/* ---------- Demo / trial: my account + auth extras ---------- */
.ic-auth-alt{text-align:center;font-size:13.5px;color:var(--color-text-muted);margin:18px 0 0}
.ic-auth-alt a{color:var(--ic-c-primary-2);font-weight:600;text-decoration:none}
.ic-auth-alt a:hover{text-decoration:underline}
.ic-acct{max-width:460px}
.ic-acct-status{text-align:center;background:var(--mint,#E5F1EC);border-radius:var(--radius-lg);padding:22px;margin:6px 0 18px}
.ic-acct-status--gone{background:#FCE7E1}
.ic-acct-big{font-family:var(--font-display);font-weight:800;font-size:20px;color:var(--ic-c-primary)}
.ic-acct-num{font-size:40px;line-height:1;color:var(--ic-c-accent)}
.ic-acct-status p{font-size:14px;color:var(--color-text-secondary);margin:8px 0 0}
.ic-acct-list{list-style:none;padding:0;margin:0 0 20px;display:flex;flex-direction:column;gap:9px}
.ic-acct-list li{position:relative;padding-left:26px;font-size:14.5px;color:var(--color-text-primary)}
.ic-acct-list li::before{content:"✓";position:absolute;left:0;color:#16a34a;font-weight:800}
.ic-acct-btn{display:block;text-align:center;text-decoration:none;margin-top:4px}
.ic-acct-logout{text-align:center;margin-top:18px}
.ic-acct-link{background:none;border:none;color:var(--color-text-muted);font-size:13.5px;cursor:pointer;text-decoration:underline}
.ic-acct-link:hover{color:#dc2626}

/* =========================================================
   CREDENTIAL & EXPIRY TRACKER
   ========================================================= */
.ic-cred{max-width:1040px}
.ic-cred-amber{color:#b45309!important}
.ic-cred-red{color:#dc2626!important}
.ic-cred-grid{display:grid;grid-template-columns:340px 1fr;gap:20px;align-items:start}
.ic-cred-form-card,.ic-cred-list-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}
.ic-cred-form-card{padding:20px}
.ic-cred-form-card h3{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--ic-c-primary);margin:0 0 14px}
.ic-cred-form{display:flex;flex-direction:column;gap:4px}
.ic-cred-form label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin-top:10px}
.ic-cred-form input,.ic-cred-form select,.ic-cred-form textarea{width:100%;box-sizing:border-box;max-width:100%;padding:9px 11px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:14px;font-family:var(--font-body);background:#fff;color:var(--color-text-primary)}
.ic-cred-form input:focus,.ic-cred-form select:focus,.ic-cred-form textarea:focus{outline:none;border-color:var(--ic-c-accent)}
.ic-cred-row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ic-cred-row2>div{min-width:0}
.ic-staffcred-2col{align-items:end}
.ic-cred-form input[type=date]{appearance:none;-webkit-appearance:none}
.ic-cred-row2 label{margin-top:10px}
.ic-cred-formbtns{display:flex;align-items:center;gap:14px;margin-top:16px}
.ic-cred-list-card{overflow:hidden}
.ic-cred-list-card .ic-cmp-table{border:none}
.ic-cred-ref{font-size:11.5px;color:var(--color-text-muted);background:var(--color-surface-alt);padding:1px 7px;border-radius:99px;margin-left:6px}
.ic-cred-badge{font-size:11px;font-weight:700;padding:3px 10px;border-radius:99px;margin-right:8px}
.ic-cred-badge--valid{background:#E3F3EA;color:#1f7a4d}
.ic-cred-badge--expiring{background:#FCF0DC;color:#9a6b18}
.ic-cred-badge--expired{background:#FCE2E2;color:#b91c1c}
.ic-cred-badge--none{background:var(--color-surface-alt);color:var(--color-text-muted)}
.ic-cred-date{font-size:12.5px;color:var(--color-text-secondary)}
.ic-cred-del{display:inline}
.ic-cred-delbtn{color:#dc2626!important}
@media(max-width:780px){.ic-cred-grid{grid-template-columns:1fr}}

/* =========================================================
   INCIDENT & HAZARD WORKFLOW  (reuses .ic-cred-* layout)
   ========================================================= */
.ic-inc{max-width:1040px}
.ic-inc-red{color:#dc2626!important}
.ic-inc-amber{color:#b45309!important}
.ic-inc-meta{display:block;font-size:11.5px;color:var(--color-text-muted);margin-top:3px}
.ic-inc-badge{font-size:11px;font-weight:700;padding:3px 10px;border-radius:99px;white-space:nowrap}
.ic-inc-sev--low{background:#E5F0F3;color:#33697a}
.ic-inc-sev--medium{background:#FCF0DC;color:#9a6b18}
.ic-inc-sev--high{background:#FCE5DC;color:#b4521f}
.ic-inc-sev--critical{background:#FCE2E2;color:#b91c1c}
.ic-inc-st--open{background:#FCE2E2;color:#b91c1c}
.ic-inc-st--in_review{background:#FCF0DC;color:#9a6b18}
.ic-inc-st--closed{background:#E3F3EA;color:#1f7a4d}
.ic-cred-form textarea{resize:vertical;min-height:62px}

/* Incident form extras: hint, notifiable flag + badge */
.ic-inc-hint{font-weight:400;font-size:11.5px;color:var(--color-text-muted);text-transform:none;letter-spacing:0}
.ic-inc-flag{display:flex;align-items:flex-start;gap:10px;cursor:pointer;padding:11px 13px;margin-top:12px;border:1.5px solid var(--color-border);border-radius:10px;background:var(--color-surface-alt)}
.ic-inc-flag:hover{border-color:#dc2626}
.ic-inc-flag input[type=checkbox]{width:18px;height:18px;margin:1px 0 0;flex:0 0 auto;accent-color:#dc2626;cursor:pointer}
.ic-inc-flag span{display:flex;flex-direction:column;gap:2px;font-size:14px;color:var(--color-text-primary)}
.ic-inc-notif{background:#fee2e2;color:#b91c1c;border:1px solid #fbb}
.ic-inc-ndis{background:#ede9fe;color:#6d28d9;border:1px solid #c4b5fd}
.ic-inc-due--overdue{background:#fee2e2;color:#b91c1c;border:1px solid #fbb}
.ic-inc-due--due_soon{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}
.ic-inc-due--pending{background:#e0f2fe;color:#075985;border:1px solid #bae6fd}
.ic-inc-due--notified{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}
.ic-inc-due--report_pending,.ic-inc-due--final_pending{background:#e0f2fe;color:#075985;border:1px solid #bae6fd}
.ic-inc-due--report_soon{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}
.ic-inc-due--report_overdue,.ic-inc-due--final_overdue{background:#fee2e2;color:#b91c1c;border:1px solid #fbb}
.ic-inc-due{font-size:13px;font-weight:600;margin:4px 0 12px;padding:8px 12px;border-radius:8px}
.ic-inc-due.ic-inc-due--overdue{background:#fef2f2;color:#b91c1c}
.ic-inc-due.ic-inc-due--due_soon{background:#fffbeb;color:#92400e}
.ic-inc-due.ic-inc-due--pending{background:#f0f9ff;color:#075985}
.ic-inc-due.ic-inc-due--notified{background:#f0fdf4;color:#166534}

/* WHS register: tabs, sections, QR panel */
.ic-inc-tabs{display:flex;gap:4px;background:var(--color-surface-alt);padding:4px;border-radius:10px}
.ic-inc-tab{font-size:13px;font-weight:700;padding:7px 14px;border-radius:7px;text-decoration:none;color:var(--color-text-secondary)}
.ic-inc-tab.is-on{background:var(--color-surface);color:var(--ic-c-primary);box-shadow:var(--shadow-sm)}
.ic-inc-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:14px;margin:0 0 16px}
.ic-inc-sec{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--ic-c-accent);margin:18px 0 4px;padding-top:14px;border-top:1px solid var(--color-border)}
.ic-inc-sec:first-of-type{border-top:none;padding-top:0;margin-top:4px}
.ic-inc-note{font-size:12.5px;color:var(--color-text-muted);margin:0 0 14px;line-height:1.5}
.ic-qr-panel{padding:22px;text-align:center}
.ic-qr-panel h3{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--ic-c-primary);margin:0 0 8px}
.ic-qr-box{display:flex;justify-content:center;padding:18px;background:#fff;border:1px solid var(--color-border);border-radius:12px;margin:6px auto 12px;max-width:260px}
.ic-qr-box svg{width:220px;height:220px;display:block}
.ic-qr-url{font-size:12px;word-break:break-all;margin:0 0 14px}
.ic-qr-url a{color:var(--ic-c-primary-2)}
/* Public quick-report page */
.ic-qr-page .ic-auth{padding:24px 14px}
.ic-qr-card{max-width:440px}
.ic-qr-form label{margin-top:12px}
.ic-qr-done{text-align:center;padding:10px 0}
.ic-qr-done h1{font-family:var(--font-display);margin:14px 0 8px}
.ic-qr-done p{color:var(--color-text-secondary);font-size:14.5px;margin:0 0 20px}
.ic-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media print{.intranet-layout .sidebar,.intranet-layout .topbar,.ic-inc-tabs,.ic-inc-toolbar,.ic-cred-form-card{display:none!important}.ic-qr-panel{border:none;box-shadow:none}}

/* Compliance: nudge button + notice */
.ic-cmp-headbtns{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.ic-cmp-btn--remind{background:var(--ic-c-accent,#1C7C94);color:#fff;border-color:var(--ic-c-accent,#1C7C94)}
.ic-cmp-btn--remind:hover{filter:brightness(.95)}
.ic-cmp-remind-form{margin:0}
.ic-cmp-remind-form--inline{margin:0 0 14px}
.ic-cmp-notice{background:#E3F3EA;border:1px solid #BFE3D2;color:#1f7a4d;font-size:14px;font-weight:600;padding:11px 15px;border-radius:10px;margin:0 0 18px}

/* Quick report: simple/detailed toggle + location field */
.ic-qr-modes{display:flex;gap:6px;background:var(--color-surface-alt,#eef2f6);padding:5px;border-radius:12px;margin:4px 0 6px}
.ic-qr-mode{flex:1;margin:0!important;text-align:center}
.ic-qr-mode input{position:absolute;opacity:0;pointer-events:none}
.ic-qr-mode span{display:block;padding:9px 12px;border-radius:8px;font-size:14px;font-weight:700;color:var(--color-text-secondary);cursor:pointer}
.ic-qr-mode input:checked+span{background:var(--color-surface,#fff);color:var(--ic-c-primary);box-shadow:var(--shadow-sm)}
.ic-loc{display:flex;flex-direction:column;gap:8px}
.ic-loc-other{margin-top:0}
.ic-qr-detailed{display:flex;flex-direction:column;gap:4px;border-top:1px dashed var(--color-border);margin-top:8px;padding-top:6px}

/* Dashboard quick-action: Report a hazard (stands out) */
.quick-link-btn--hazard{background:#FCEEEA;border-color:#F6C9BD!important;color:#b4521f}
.quick-link-btn--hazard .dashicons{color:#d9531e!important}
.quick-link-btn--hazard:hover{background:#FAE2DB;border-color:#e89b86!important}

/* Report a hazard inside the portal shell (logged-in staff) */
.ic-qr-main{padding:24px clamp(16px,4vw,30px) 48px;max-width:1280px;margin:0 auto;width:100%}
.ic-qr-portal{max-width:620px;background:var(--color-surface,#fff);border:1px solid var(--color-border);border-radius:16px;padding:clamp(20px,4vw,30px);box-shadow:var(--shadow-sm)}
.ic-qr-portal .ic-auth-title{font-size:22px;text-align:left;margin:0 0 4px}
.ic-qr-portal .ic-auth-sub{text-align:left;margin:0 0 18px;color:var(--color-text-secondary)}
.ic-qr-portal .ic-qr-done{text-align:center;padding:10px 0}

/* Visitor sign-in kiosk */
.ic-vis-card{max-width:540px}
.ic-vis-modes{display:flex;gap:6px;background:var(--color-surface-alt,#eef2f6);padding:5px;border-radius:12px;margin:0 0 18px}
.ic-vis-mode{flex:1;text-align:center;padding:10px 12px;border-radius:8px;font-size:15px;font-weight:700;color:var(--color-text-secondary);text-decoration:none}
.ic-vis-mode.is-on{background:var(--color-surface,#fff);color:var(--ic-c-primary);box-shadow:var(--shadow-sm)}
.ic-vis-err{background:#FCEEEA;border:1px solid #F6C9BD;color:#b4521f;font-size:14px;font-weight:600;padding:10px 14px;border-radius:10px;margin:0 0 14px}
.ic-vis-induction{border:1px solid var(--color-border);border-radius:12px;margin:16px 0 10px;overflow:hidden}
.ic-vis-induction__h{background:var(--color-surface-alt,#f1f5f9);padding:10px 14px;font-weight:700;font-size:14px;color:var(--ic-c-primary)}
.ic-vis-induction__body{padding:12px 14px;max-height:220px;overflow:auto;font-size:14px;line-height:1.5;color:var(--color-text-secondary)}
.ic-vis-induction__body p{margin:0 0 8px}
.ic-cmp-btn--ghost{background:var(--color-surface,#fff);color:#12586A;border:1.5px solid var(--color-border,#D9DEE6)}
.ic-cmp-btn--ghost:hover{background:#F0F6F8;color:#0E4756;filter:none}
/* Evacuation list print: only the on-site table */
@media print{
	.intranet-sidebar,.intranet-topbar,.ic-inc-tabs,.ic-inc-toolbar,.ic-cmp-actions,.nav-backdrop{display:none!important}
	.ic-main,.main-wrapper,.ic-console-main{margin:0!important;padding:0!important}
}

/* Toolbox talks */
.ic-tbt-summary{font-size:14px;line-height:1.5;color:var(--color-text-secondary);margin:6px 0 12px}
.ic-tbt-doc{font-weight:600;color:var(--ic-c-primary-2)}
.ic-tbt-already{background:#E3F3EA;border:1px solid #BFE3D2;color:#1f7a4d;font-weight:600;padding:12px 14px;border-radius:10px;margin-top:8px}
.ic-tbt-checklist{display:grid;grid-template-columns:1fr 1fr;gap:4px 14px;max-height:300px;overflow:auto;border:1px solid var(--color-border);border-radius:10px;padding:10px 12px;margin:6px 0 12px}
.ic-tbt-check{display:flex;align-items:center;gap:8px;font-size:14px;margin:0;padding:3px 0;cursor:pointer}
.ic-tbt-check.is-done{color:#1f7a4d;font-weight:600}
.ic-tbt-count{font-weight:700;color:var(--ic-c-primary)}
.ic-tbt-list{max-width:760px;margin:0 auto}
.ic-tbt-cards{display:flex;flex-direction:column;gap:10px;margin-top:14px}
.ic-tbt-card{display:block;background:var(--color-surface,#fff);border:1px solid var(--color-border);border-radius:12px;padding:14px 16px;text-decoration:none;position:relative;transition:border-color .12s,box-shadow .12s}
.ic-tbt-card:hover{border-color:#cbd5e1;box-shadow:var(--shadow-sm)}
.ic-tbt-card__t{font-weight:700;color:var(--ic-c-primary);font-size:15px}
.ic-tbt-card__m{font-size:13px;color:var(--color-text-secondary);margin-top:2px}
.ic-tbt-pill{position:absolute;top:14px;right:16px;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;background:var(--color-surface-alt,#eef2f6);color:var(--ic-c-primary)}
.ic-tbt-pill--done{background:#E3F3EA;color:#1f7a4d}
@media(max-width:640px){.ic-tbt-checklist{grid-template-columns:1fr}}

/* Risk register / SWMS / JSA */
.ic-risk-badge{display:inline-block;color:#fff;font-size:12px;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap}
.ic-risk-type{font-size:12px;font-weight:700;background:var(--color-surface-alt,#eef2f6);color:var(--ic-c-primary);padding:3px 9px;border-radius:999px;vertical-align:middle;margin-left:6px}
.ic-risk-lines-card{background:var(--color-surface,#fff);border:1px solid var(--color-border);border-radius:14px;overflow:auto;margin:4px 0 18px}
.ic-risk-table{width:100%;border-collapse:collapse;font-size:13.5px;min-width:760px}
.ic-risk-table th{text-align:left;padding:11px 14px;background:var(--color-surface-alt,#f5f7fa);font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border)}
.ic-risk-table td{padding:11px 14px;border-bottom:1px solid var(--color-border);vertical-align:top}
.ic-risk-table tr:last-child td{border-bottom:0}
.ic-risk-empty{text-align:center;color:var(--color-text-secondary);padding:22px}
.ic-risk-key{display:flex;flex-wrap:wrap;gap:14px;margin:14px 0;font-size:12.5px;color:var(--color-text-secondary)}
.ic-risk-key span{display:inline-flex;align-items:center;gap:6px}
.ic-risk-dot{width:11px;height:11px;border-radius:50%;display:inline-block}
.ic-risk-signed{margin:0 0 18px}
.ic-risk-signed__list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.ic-risk-chip{background:var(--color-surface,#fff);border:1px solid var(--color-border);border-radius:999px;padding:5px 12px;font-size:13px;font-weight:600}
.ic-risk-chip small{color:var(--color-text-secondary);font-weight:400;margin-left:4px}
.ic-risk-readlines{margin:10px 0 14px;display:flex;flex-direction:column;gap:8px}
.ic-risk-readline{border:1px solid var(--color-border);border-radius:10px;padding:10px 12px}
.ic-risk-readline__s{font-weight:700;font-size:14px;color:var(--ic-c-primary);display:flex;align-items:center;gap:8px;justify-content:space-between}
.ic-risk-readline__c{font-size:13px;color:var(--color-text-secondary);margin-top:4px}
@media print{
	.no-print{display:none!important}
	.intranet-sidebar,.intranet-topbar,.nav-backdrop{display:none!important}
	.ic-risk-doc .ic-cred-grid{display:none!important}
	.main-wrapper,.ic-console-main,.ic-main{margin:0!important;padding:0!important}
	.ic-risk-table{min-width:0;font-size:11px}
}

/* Staff directory & org chart */
.ic-dir{max-width:1100px;margin:0 auto}
.ic-dir-modes{display:flex;gap:6px;background:var(--color-surface-alt,#eef2f6);padding:5px;border-radius:12px}
.ic-dir-mode{padding:8px 16px;border-radius:8px;font-size:14px;font-weight:700;color:var(--color-text-secondary);text-decoration:none}
.ic-dir-mode.is-on{background:var(--color-surface,#fff);color:var(--ic-c-primary);box-shadow:var(--shadow-sm)}
.ic-dir-controls{display:flex;gap:10px;flex-wrap:wrap;margin:6px 0 18px}
.ic-dir-search{flex:1;min-width:220px;padding:10px 14px;border:1px solid var(--color-border);border-radius:10px;font-size:14px;background:var(--color-surface,#fff)}
.ic-dir-dept{padding:10px 14px;border:1px solid var(--color-border);border-radius:10px;font-size:14px;background:var(--color-surface,#fff)}
.ic-dir-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.ic-dir-card{display:flex;gap:13px;background:var(--color-surface,#fff);border:1px solid var(--color-border);border-radius:14px;padding:15px}
.ic-dir-avatar{flex:none}
.ic-dir-avatar__img{width:52px;height:52px;border-radius:50%;object-fit:cover;display:block}
.ic-dir-avatar__ph{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--ic-c-primary,#15263B);color:#fff;font-weight:700;font-size:17px}
.ic-dir-card__body{min-width:0}
.ic-dir-name{display:block;color:var(--ic-c-primary);font-size:15px;line-height:1.3}
.ic-dir-title{font-size:13px;color:var(--color-text);margin-top:1px}
.ic-dir-dept{font-size:12.5px;color:var(--color-text-secondary);margin-top:1px}
.ic-dir-contact{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.ic-dir-link{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:600;color:var(--ic-c-primary-2);text-decoration:none}
.ic-dir-link:hover{text-decoration:underline}
.ic-dir-none{text-align:center;color:var(--color-text-secondary);padding:24px}
/* Org chart — reporting tree */
.ic-org-controls{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}
.ic-org-ctrl{background:var(--color-surface,#fff);border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:9px;padding:7px 14px;font-size:13px;font-weight:600;cursor:pointer}
.ic-org-ctrl:hover{background:var(--color-surface-alt,#eef3f8);color:var(--ic-c-primary)}
.ic-org-ctrl--print{margin-left:auto}
.ic-org-wrap{overflow-x:auto;max-width:100%;padding:10px 4px 22px}
.ic-org,.ic-org ul{list-style:none;margin:0;padding:0}
.ic-org{display:flex;justify-content:center;width:max-content;max-width:none;margin-inline:auto;transform-origin:top left}
.ic-org ul{display:flex;justify-content:center;padding-top:24px;position:relative}
.ic-org li{position:relative;padding:24px 12px 0;display:flex;flex-direction:column;align-items:center}
.ic-org li::before,.ic-org li::after{content:"";position:absolute;top:0;right:50%;width:50%;height:24px;border-top:2px solid var(--color-border)}
.ic-org li::after{right:auto;left:50%;border-left:2px solid var(--color-border)}
.ic-org li:only-child::before,.ic-org li:only-child::after{display:none}
.ic-org li:only-child{padding-top:0}
.ic-org li:first-child::before,.ic-org li:last-child::after{border:0 none}
.ic-org li:last-child::before{border-right:2px solid var(--color-border);border-radius:0 7px 0 0}
.ic-org li:first-child::after{border-radius:7px 0 0 0}
.ic-org ul::before{content:"";position:absolute;top:0;left:50%;width:0;height:24px;border-left:2px solid var(--color-border)}
.ic-org>li{padding-top:0}
.ic-org>li::before,.ic-org>li::after{display:none}
.ic-org li.is-collapsed>ul{display:none}
.ic-dir-page-shell .main-wrapper,.ic-dir-page-shell .ic-qr-main,.ic-dir-page-shell .ic-dir{min-width:0}
.ic-org-ctrl.is-on{background:var(--ic-c-primary,#003366);color:#fff;border-color:var(--ic-c-primary,#003366)}
.ic-org-node{position:relative;display:inline-flex;align-items:center;gap:11px;background:var(--color-surface,#fff);border:1px solid var(--color-border);border-radius:12px;padding:10px 16px;min-width:200px;box-shadow:var(--shadow-sm,0 1px 2px rgba(16,40,70,.06));transition:box-shadow .15s,border-color .15s}
.ic-org-node:hover{border-color:var(--ic-c-primary);box-shadow:0 4px 14px rgba(16,40,70,.13)}
.ic-org-avatar .ic-dir-avatar__img,.ic-org-avatar .ic-dir-avatar__ph{width:40px;height:40px;font-size:14px;border-radius:50%;object-fit:cover}
.ic-org-node__body{display:flex;flex-direction:column;line-height:1.25;text-align:left}
.ic-org-node__body strong{color:var(--ic-c-primary);font-size:14px}
.ic-org-title{font-size:12.5px;color:var(--color-text-secondary)}
.ic-org-dept{font-size:11.5px;color:var(--color-text-muted)}
.ic-org-toggle{position:absolute;bottom:-12px;left:50%;transform:translateX(-50%);display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 9px;background:var(--ic-c-primary,#003366);color:#fff;border:2px solid var(--color-surface,#fff);border-radius:12px;font-size:11px;font-weight:700;line-height:1;cursor:pointer;z-index:3}
.ic-org-toggle:hover{background:var(--ic-c-primary-2,#0066CC)}
.ic-org-chev::before{content:"\25BE"}
.ic-org li.is-collapsed>.ic-org-node .ic-org-chev::before{content:"\25B8"}
.ic-org li.is-collapsed>.ic-org-node{border-style:dashed}
@media print{.sidebar,.topbar,.ic-demo-banner,.ic-account-banner,.ic-dir-modes,.ic-org-controls,.ic-org-toggle{display:none!important}.main-wrapper{margin:0!important}.ic-org-wrap{overflow:visible!important;max-width:none!important;height:auto!important}.ic-org{transform:none!important;zoom:1!important}.ic-org li.is-collapsed>ul{display:flex!important}.ic-org-node{box-shadow:none!important;border-color:#999!important}}
@media(max-width:640px){.ic-dir-grid{grid-template-columns:1fr}}

/* Demo-mode banner */
.ic-demo-bar{display:flex;align-items:center;gap:9px;background:#FFF4D6;border-bottom:1px solid #F0D98A;color:#7a5b00;font-size:13.5px;padding:9px 18px;line-height:1.4}
.ic-demo-bar svg{flex:none;color:#C9A227}
.ic-demo-bar strong{font-weight:700}
@media(max-width:640px){.ic-demo-bar{font-size:12.5px;padding:8px 14px}}

/* Leave */
.ic-leave{max-width:1000px;margin:0 auto}
.ic-leave-h{margin:22px 0 10px;font-size:15px;font-weight:700;color:var(--ic-c-primary)}
.ic-leave-badge{display:inline-block;font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap}
.ic-leave-badge--pending{background:#FFF4D6;color:#7a5b00}
.ic-leave-badge--approved{background:#E3F3EA;color:#1f7a4d}
.ic-leave-badge--declined{background:#FBE4E4;color:#a3282b}
.ic-leave-badge--cancelled{background:var(--color-surface-alt,#eef2f6);color:var(--color-text-secondary)}
.ic-leave-away{list-style:none;margin:0;padding:0}
.ic-leave-away li{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--color-border);font-size:13.5px}
.ic-leave-away li:last-child{border-bottom:0}
.ic-leave-away__who{font-weight:600;color:var(--ic-c-primary)}
.ic-leave-away__when{color:var(--color-text-secondary)}
.ic-leave-queue{display:flex;flex-direction:column;gap:10px}
.ic-leave-req{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;background:var(--color-surface,#fff);border:1px solid var(--color-border);border-radius:12px;padding:13px 15px}
.ic-leave-req__main{min-width:200px}
.ic-leave-type{font-size:12px;font-weight:700;background:var(--color-surface-alt,#eef2f6);color:var(--ic-c-primary);padding:2px 8px;border-radius:999px}
.ic-leave-req__dates{font-size:13px;color:var(--color-text-secondary);margin-top:3px}
.ic-leave-req__note{font-size:12.5px;color:var(--color-text-secondary);margin-top:3px;font-style:italic}
.ic-leave-req__act{display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.ic-leave-note{padding:7px 10px;border:1px solid var(--color-border);border-radius:8px;font-size:13px;min-width:150px}
.ic-leave-ok{background:#2E8F66!important;border-color:#2E8F66!important}
.ic-cmp-notice--err{background:#FBE4E4;color:#a3282b}

/* Engagement / noticeboard */
.ic-eng{max-width:1040px;margin:0 auto}
.ic-eng-grid{display:grid;grid-template-columns:1fr 300px;gap:18px}
.ic-eng-compose{background:var(--color-surface,#fff);border:1px solid var(--color-border);border-radius:14px;padding:14px;margin-bottom:16px}
.ic-eng-compose__row{display:flex;gap:10px;margin-bottom:8px}
.ic-eng-compose__row select{flex:1;padding:9px 11px;border:1px solid var(--color-border);border-radius:9px;font-size:14px;background:var(--color-surface,#fff)}
.ic-eng-compose textarea{width:100%;padding:9px 11px;border:1px solid var(--color-border);border-radius:9px;font-size:14px;resize:vertical}
.ic-eng-compose__btns{margin-top:8px;text-align:right}
.ic-eng-feed{display:flex;flex-direction:column;gap:11px}
.ic-eng-card{background:var(--color-surface,#fff);border:1px solid var(--color-border);border-radius:12px;padding:13px 15px}
.ic-eng-card__head{font-size:13.5px}
.ic-eng-from{font-weight:600;color:var(--color-text)}
.ic-eng-arrow{color:var(--color-text-secondary);margin:0 2px}
.ic-eng-to{font-weight:700;color:var(--ic-c-primary)}
.ic-eng-tag{font-size:11px;font-weight:700;background:#E9F2FF;color:#2456a6;padding:2px 8px;border-radius:999px;margin-left:4px}
.ic-eng-msg{font-size:14px;margin:6px 0 4px;line-height:1.45}
.ic-eng-when{font-size:12px;color:var(--color-text-secondary)}
.ic-eng-side{background:var(--color-surface,#fff);border:1px solid var(--color-border);border-radius:14px;padding:14px 16px;align-self:start}
.ic-eng-side h3{margin:0 0 10px;font-size:14px}
.ic-eng-dates{list-style:none;margin:0;padding:0}
.ic-eng-dates li{display:flex;align-items:center;gap:9px;padding:8px 0;border-bottom:1px solid var(--color-border);font-size:13.5px}
.ic-eng-dates li:last-child{border-bottom:0}
.ic-eng-ico{font-size:16px}
.ic-eng-dwho{flex:1;font-weight:600;color:var(--ic-c-primary)}
.ic-eng-dwho small{font-weight:400;color:var(--color-text-secondary)}
.ic-eng-dwhen{color:var(--color-text-secondary);font-size:12.5px}
@media(max-width:760px){.ic-eng-grid{grid-template-columns:1fr}.ic-leave-req__act{width:100%}}

/* Recognition mini card */
.ic-eng-mini{display:flex;flex-direction:column;gap:11px}
.ic-eng-mini__item{padding:10px 12px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface-alt,#f7f9fb)}
.ic-eng-mini__head{font-size:13.5px}
.ic-eng-mini__head strong{color:var(--ic-c-primary)}
.ic-eng-mini__head span{color:var(--color-text-secondary)}
.ic-eng-mini__msg{font-size:13px;color:var(--color-text);margin-top:3px;line-height:1.4}

/* Permissions matrix */
.ic-perm-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface,#fff)}
.ic-perm-matrix{border-collapse:collapse;width:100%;min-width:760px;font-size:13px}
.ic-perm-matrix th,.ic-perm-matrix td{padding:10px 8px;border-bottom:1px solid var(--color-border);text-align:center}
.ic-perm-matrix thead th{position:sticky;top:0;background:var(--color-surface-alt,#f7f9fb);vertical-align:bottom}
.ic-perm-name{text-align:left!important;min-width:180px;position:sticky;left:0;background:var(--color-surface,#fff);z-index:1}
.ic-perm-matrix thead .ic-perm-name{background:var(--color-surface-alt,#f7f9fb)}
.ic-perm-name strong{display:block;color:var(--ic-c-primary)}
.ic-perm-name span{font-size:11.5px;color:var(--color-text-secondary)}
.ic-perm-area span{display:inline-block;writing-mode:vertical-rl;transform:rotate(200grad);white-space:nowrap;font-weight:600;max-height:120px}
.ic-perm-check input{width:17px;height:17px;cursor:pointer}
.ic-perm-check input:disabled{cursor:not-allowed;opacity:.5}
.ic-perm-cell:hover{background:var(--color-surface-alt,#f3f6f9)}
.ic-perm-adminrow{background:var(--color-surface-alt,#f7f9fb)}
.ic-perm-adminrow .ic-perm-name{background:var(--color-surface-alt,#f7f9fb)}
.ic-perm-adminpill{display:inline-block;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#fff;background:var(--ic-c-primary);border-radius:999px;padding:1px 7px;vertical-align:middle}
.ic-perm-nologin{margin-top:26px;padding-top:20px;border-top:1px solid var(--color-border)}
.ic-perm-nologin__h{font-size:15px;margin:0 0 4px;color:var(--ic-c-primary)}
.ic-perm-nologin__list{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.ic-perm-nologin__list li{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 12px;background:var(--color-surface-alt,#f7f9fb);border:1px solid var(--color-border);border-radius:10px}
.ic-perm-nologin__list strong{color:var(--ic-c-primary)}
.ic-perm-nologin__list span{font-size:12.5px;color:var(--color-text-secondary)}
.ic-perm-noemail{font-style:italic}
.ic-perm-nologin__list a{margin-left:auto;font-size:12.5px;font-weight:600}

/* Staff CSV import card — padded (the base list-card is edge-to-edge for tables) */
.ic-staff-import{padding:20px}
.ic-staff-import h3{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--ic-c-primary);margin:0 0 14px}
.ic-staff-import .ic-cred-form{margin-bottom:6px}
.ic-staff-import .ic-inc-note{font-size:13px;line-height:1.5;color:var(--color-text-secondary);margin:10px 0}
.ic-staff-import .ic-cmp-btn--ghost{margin-top:6px}

/* Who's away card — padded (base list-card is edge-to-edge for tables) */
.ic-leave-away-card{padding:18px 20px}
.ic-leave-away-card h3{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--ic-c-primary);margin:0 0 8px}
.ic-leave-away-card .ic-cmp-empty{padding:6px 0}

/* Trial state: countdown banner + soft lock */
.ic-trial-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:9px 18px;background:#E9F2FF;color:#1d3a63;font-size:13.5px;border-bottom:1px solid #cfe0f5}
.ic-trial-bar.is-urgent{background:#FCE9E4;color:#8a3320;border-bottom-color:#f3c9bd}
.ic-trial-bar__btn{flex:none;background:var(--ic-c-primary,#1C7C94);color:#fff;font-weight:700;font-size:13px;padding:6px 16px;border-radius:99px;text-decoration:none;white-space:nowrap}
.ic-trial-bar.is-urgent .ic-trial-bar__btn{background:#d94b32}
.ic-trial-bar__btn:hover{filter:brightness(1.05)}

.ic-lock{min-height:60vh;display:flex;align-items:center;justify-content:center;padding:40px 18px}
.ic-lock__card{max-width:460px;width:100%;text-align:center;background:var(--color-surface,#fff);border:1px solid var(--color-border);border-radius:18px;padding:38px 32px;box-shadow:0 24px 60px -28px rgba(20,36,51,.4)}
.ic-lock__ico{width:64px;height:64px;border-radius:50%;background:#FCE9E4;color:#d94b32;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}
.ic-lock__card h1{font-size:23px;margin:0 0 10px;color:var(--color-text)}
.ic-lock__card p{color:var(--color-text-secondary);line-height:1.55;margin:0 0 18px}
.ic-lock__btn{display:inline-block;background:var(--ic-c-primary,#1C7C94);color:#fff;font-weight:700;padding:13px 28px;border-radius:99px;text-decoration:none}
.ic-lock__btn:hover{filter:brightness(1.05)}
.ic-lock__fine{font-size:12.5px;margin-top:16px!important}

/* Plan & trial summary */
.ic-acct-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;background:var(--color-surface,#fff);border:1px solid var(--color-border);border-radius:14px;padding:18px 20px}
.ic-acct-summary>div{display:flex;flex-direction:column;gap:5px}
.ic-acct-k{font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);font-weight:700}
.ic-acct-summary strong{font-size:15px;color:var(--color-text)}

/* Plan & trial: module grid + add-ons */
.ic-acct-mods{padding:18px 20px}
.ic-acct-modgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px;margin-top:6px}
.ic-acct-mod{display:flex;align-items:center;gap:9px;padding:8px 11px;border:1px solid var(--color-border);border-radius:9px;font-size:13.5px;background:var(--color-surface,#fff)}
.ic-acct-mod__dot{width:9px;height:9px;border-radius:50%;flex:none;background:#cdd6e0}
.ic-acct-mod.is-on .ic-acct-mod__dot{background:#2fa36b}
.ic-acct-mod.is-off{opacity:.55}
.ic-acct-mod__name{flex:1}.ic-acct-mod__name em{color:var(--color-text-secondary);font-style:italic}
.ic-acct-mod__tier{font-size:11px;font-weight:700;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}
.ic-acct-addon{display:flex;align-items:center;gap:10px;padding:9px 2px;border-bottom:1px solid var(--color-border)}
.ic-acct-addon:last-of-type{border-bottom:0}
.ic-acct-addon input{width:auto}
.ic-acct-addon__name{flex:1}
.ic-acct-price{font-weight:700;color:var(--ic-c-primary)}

/* Stripe checkout buttons */
.ic-bill-buttons{display:flex;flex-direction:column;gap:8px;align-items:flex-start;margin-top:6px}
.ic-bill-buttons .ic-cmp-btn{width:100%;text-align:center}
.ic-bill-buttons .ic-cmp-link{margin-top:4px}

/* Live search dropdown */
.topbar-search{position:relative}
.ic-search-dd{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--color-surface,#fff);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 18px 44px -20px rgba(20,36,51,.45);overflow:hidden;z-index:60;max-height:380px;overflow-y:auto}
.ic-search-dd-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;text-decoration:none;color:var(--color-text);border-bottom:1px solid var(--color-border)}
.ic-search-dd-item:hover{background:var(--color-hover,#f1f5f9)}
.ic-search-dd-item em{font-style:normal;font-size:11px;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;flex:none}
.ic-search-dd-empty{padding:14px;color:var(--color-text-secondary);font-size:14px}
.ic-search-dd-all{display:block;padding:10px 14px;font-weight:700;color:var(--ic-c-primary);text-decoration:none;font-size:13.5px}
.ic-search-dd-all:hover{background:var(--color-hover,#f1f5f9)}
/* Search results page */
.ic-search-title{font-size:24px;margin:0 0 16px}
.ic-search-bigform{display:flex;gap:10px;margin-bottom:22px;max-width:640px}
.ic-search-bigform input{flex:1;padding:12px 15px;border:1.5px solid var(--color-border);border-radius:12px;font-size:15px}
.ic-search-results-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;max-width:720px}
.ic-search-results-list a{display:flex;justify-content:space-between;gap:14px;padding:14px 16px;background:var(--color-surface,#fff);border:1px solid var(--color-border);border-radius:11px;text-decoration:none;color:var(--color-text)}
.ic-search-results-list a:hover{border-color:var(--ic-c-primary)}
.ic-search-r-type{font-size:11px;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;flex:none}
.ic-search-empty{color:var(--color-text-secondary)}
/* Users: inline set-password */
.ic-users-pass{display:inline-block}
.ic-users-pass>summary{cursor:pointer;list-style:none}
.ic-users-passform{margin-top:6px}
.ic-users-passform input[type=text]{padding:6px 9px;border:1px solid var(--color-border);border-radius:8px;font-size:13px}

/* Stat pills clickable */
a.stat-card--link{text-decoration:none;color:inherit;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}
a.stat-card--link:hover{transform:translateY(-2px);box-shadow:0 14px 30px -18px rgba(20,36,51,.45);border-color:var(--ic-c-primary)}
a.stat-card--link:focus-visible{outline:2px solid var(--ic-c-primary);outline-offset:2px}
/* Help centre */
.ic-help-h1{font-size:24px;margin:0 0 16px}
.ic-help-h2{font-size:18px;margin:0 0 12px;display:flex;align-items:center;gap:10px}
.ic-help-search{width:100%;max-width:640px;padding:12px 15px;border:1.5px solid var(--color-border);border-radius:12px;font-size:15px;margin-bottom:18px}
.ic-help-topics{display:flex;flex-direction:column;gap:8px;max-width:760px}
.ic-help-topic{background:var(--color-surface,#fff);border:1px solid var(--color-border);border-radius:11px;padding:0 16px}
.ic-help-topic>summary{cursor:pointer;padding:14px 0;font-weight:600;list-style:none}
.ic-help-topic>summary::-webkit-details-marker{display:none}
.ic-help-topic[open]>summary{border-bottom:1px solid var(--color-border)}
.ic-help-body{padding:12px 0;color:var(--color-text-secondary);line-height:1.55}
.ic-help-noresult{color:var(--color-text-secondary)}
.ic-help-muted{color:var(--color-text-secondary);font-size:13px;margin:6px 0}
.ic-help-saved{background:#dcfce7;color:#166534;padding:10px 14px;border-radius:10px;margin-bottom:12px;max-width:640px}
.ic-help-adminbadge{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;background:#ede9fe;color:#5b21b6;padding:2px 8px;border-radius:10px}
/* AI assistant */
.ic-help-ai{margin-top:30px;padding-top:24px;border-top:1px solid var(--color-border);max-width:760px}
.ic-ai-chat{background:var(--color-surface,#fff);border:1px solid var(--color-border);border-radius:14px;overflow:hidden;margin-bottom:18px}
.ic-ai-log{padding:16px;display:flex;flex-direction:column;gap:10px;max-height:420px;overflow-y:auto}
.ic-ai-msg{padding:10px 14px;border-radius:12px;max-width:85%;line-height:1.5;white-space:pre-wrap;font-size:14px}
.ic-ai-bot{background:var(--color-hover,#f1f5f9);align-self:flex-start;border-bottom-left-radius:4px}
.ic-ai-user{background:#12586A;color:#fff;align-self:flex-end;border-bottom-right-radius:4px}
.ic-ai-form{display:flex;gap:8px;padding:12px 16px;border-top:1px solid var(--color-border)}
.ic-ai-form input{flex:1;padding:10px 13px;border:1.5px solid var(--color-border);border-radius:10px;font-size:14px}
.ic-ai-settings{display:flex;flex-direction:column;gap:12px;background:var(--color-surface,#fff);border:1px solid var(--color-border);border-radius:14px;padding:18px;max-width:560px}
.ic-ai-settings .ic-ai-fld{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:600;color:var(--color-text)}
.ic-ai-settings .ic-ai-fld input,.ic-ai-settings .ic-ai-fld select{padding:9px 12px;border:1.5px solid var(--color-border);border-radius:9px;font-size:14px;font-weight:400}
.ic-ai-toggle{display:flex;align-items:center;gap:8px;font-weight:600;font-size:14px}

/* Search dropdown: Ask AI row */
.ic-search-dd-ai{display:block;padding:11px 14px;font-weight:600;color:#5b21b6;text-decoration:none;font-size:13.5px;border-top:1px solid var(--color-border);background:#faf5ff}
.ic-search-dd-ai:hover{background:#f3e8ff}

/* AI chat avatar rows */
.ic-ai-row{display:flex;gap:8px;align-items:flex-end}
.ic-ai-row--user{justify-content:flex-end}
.ic-ai-row--bot{justify-content:flex-start}
.ic-ai-av{width:30px;height:30px;border-radius:50%;object-fit:cover;flex:none}
.ic-ai-av--ph{display:flex;align-items:center;justify-content:center;background:var(--ic-c-primary,#003366);color:#fff;font-size:13px;font-weight:700}
/* AI avatar uploader (settings) */
.ic-ai-avwrap{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ic-ai-avprev{width:44px;height:44px;border-radius:50%;overflow:hidden;background:var(--color-hover,#f1f5f9);display:inline-flex;flex:none}
.ic-ai-avprev img{width:100%;height:100%;object-fit:cover}

/* AI chat header + New chat */
.ic-ai-chathead{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--color-border);background:var(--color-hover,#f8fafc)}
.ic-ai-chathead-name{font-weight:700;font-size:13.5px;color:var(--color-text)}
.ic-ai-newchat{background:transparent;border:1px solid var(--color-border);border-radius:8px;padding:5px 11px;font-size:12.5px;font-weight:600;color:var(--ic-c-primary);cursor:pointer}
.ic-ai-newchat:hover{background:var(--color-surface,#fff);border-color:var(--ic-c-primary)}

/* ===== AI assistant — rich chat widget ===== */
.ic-ai-chat--rich{background:#15181c;border:1px solid #262b31;border-radius:18px;color:#e7eaee;overflow:hidden;box-shadow:0 24px 60px -28px rgba(0,0,0,.55)}
.ic-ai-head{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid #262b31}
.ic-ai-hav{width:42px;height:42px;border-radius:50%;object-fit:cover;flex:none}
.ic-ai-hav--ph{display:flex;align-items:center;justify-content:center;background:#1C7C94;color:#fff;font-weight:700;font-size:16px}
.ic-ai-head-meta{display:flex;flex-direction:column;line-height:1.25;flex:1;min-width:0}
.ic-ai-head-name{font-weight:700;font-size:15px;color:#fff}
.ic-ai-head-tag{font-size:12.5px;color:#8b95a1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ic-ai-iconbtn{background:transparent;border:0;color:#8b95a1;cursor:pointer;padding:8px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;flex:none}
.ic-ai-iconbtn:hover{background:#22272d;color:#cdd4db}
.ic-ai-iconbtn.is-on{color:var(--ic-c-accent,#16a3a3);background:rgba(22,163,163,.12)}
.ic-ai-chat--rich .ic-ai-log{padding:18px 16px;min-height:240px;max-height:440px;overflow-y:auto;display:flex;flex-direction:column;gap:12px;background:#15181c}
.ic-ai-chat--rich .ic-ai-msg{font-size:14px;line-height:1.55}
.ic-ai-chat--rich .ic-ai-bot{background:#242a31;color:#e7eaee;border-bottom-left-radius:4px}
.ic-ai-chat--rich .ic-ai-user{background:#1C7C94;color:#fff;border-bottom-right-radius:4px}
.ic-ai-chat--rich .ic-ai-av--ph{background:#1C7C94}
.ic-ai-disclaimer{font-size:11.5px;color:#7c8794;text-align:center;padding:8px 22px 4px;margin:0;line-height:1.45}
.ic-ai-chat--rich .ic-ai-form{display:flex;gap:8px;align-items:center;padding:12px 14px;border-top:1px solid #262b31;background:#15181c}
.ic-ai-chat--rich .ic-ai-form input{flex:1;background:#0e1115;border:1.5px solid #2b3138;color:#e7eaee;border-radius:12px;padding:11px 14px;font-size:14px}
.ic-ai-chat--rich .ic-ai-form input::placeholder{color:#6b7682}
.ic-ai-chat--rich .ic-ai-form input:focus{outline:none;border-color:var(--ic-c-accent,#16a3a3);box-shadow:0 0 0 3px rgba(22,163,163,.18)}
.ic-ai-send{background:var(--ic-c-accent,#16a3a3);border:0;color:#fff;width:42px;height:42px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex:none}
.ic-ai-send:hover{filter:brightness(1.08)}

/* ===== AI assistant — "Ask {bot}" trigger + floating pop-over ===== */
.ic-dash-fullscreen .topbar-btn.ic-ai-asktrigger{width:auto;height:38px;padding:0 14px;gap:7px;background:#1C7C94;border:0;color:#fff;border-radius:var(--radius-md)}
.ic-dash-fullscreen .topbar-btn.ic-ai-asktrigger:hover{background:#12586A;color:#fff;border:0}
.ic-ai-asktrigger svg{width:18px;height:18px;stroke:#fff}
.ic-ai-asktrigger-label{font-size:13px;font-weight:700;white-space:nowrap;color:#fff}
@media(max-width:600px){.ic-ai-asktrigger-label{display:none}.ic-dash-fullscreen .topbar-btn.ic-ai-asktrigger{padding:0;width:38px;justify-content:center}}
.ic-ai-pop{position:fixed;right:22px;bottom:22px;width:380px;max-width:calc(100vw - 32px);z-index:9000}
.ic-ai-pop .ic-ai-chat--rich{box-shadow:0 30px 70px -24px rgba(0,0,0,.6)}
.ic-ai-pop .ic-ai-log{max-height:50vh}
.ic-ai-pop.is-open{animation:icAiPop .18s ease}
@keyframes icAiPop{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:480px){.ic-ai-pop{right:8px;bottom:8px;left:8px;width:auto}}

/* Single brand logo fills the top-left; shrinks only when 2+ are shown */
.ic-dash-fullscreen .sidebar-brand-logos--single{justify-content:flex-start;padding:2px 0 6px}
.ic-dash-fullscreen .sidebar-brand-logos--single .sidebar-brand-logo{height:auto;max-height:54px;max-width:100%;width:auto}

/* ===== Membership database — stat pills + padded list card ===== */
.ic-mem-stats{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 18px}
.ic-mem-pill{flex:1;min-width:130px;display:flex;align-items:center;gap:12px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:14px 18px}
.ic-mem-pill-num{font-family:var(--font-display);font-size:26px;font-weight:800;line-height:1;color:var(--ic-c-primary)}
.ic-mem-pill-label{font-size:13px;font-weight:600;color:var(--color-text-secondary)}
.ic-mem-pill--warn .ic-mem-pill-num{color:#b76e00}
.ic-mem-pill--danger .ic-mem-pill-num{color:#c0392b}
.ic-mem-list-card{padding:20px}
.ic-mem-list-card h3{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--ic-c-primary)}
@media(max-width:560px){.ic-mem-pill{min-width:calc(50% - 6px)}}
.ic-mem-import{margin:0 0 14px;border:1px dashed var(--color-border);border-radius:var(--radius-md);padding:10px 14px;background:var(--color-bg)}
.ic-mem-import summary{cursor:pointer;font-weight:600;color:var(--ic-c-primary);font-size:13.5px}
.ic-mem-import-form{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:10px}
/* Add / edit member form */
.ic-mem-add{padding:0;overflow:hidden}
.ic-mem-add>summary{cursor:pointer;list-style:none;padding:16px 20px;font-family:var(--font-display);font-size:15px;font-weight:700;color:var(--ic-c-primary)}
.ic-mem-add>summary::-webkit-details-marker{display:none}
.ic-mem-add>summary::before{content:"+";display:inline-block;width:18px;font-weight:800;color:var(--ic-c-accent)}
.ic-mem-add[open]>summary::before{content:"–"}
.ic-mem-add[open]>summary{border-bottom:1px solid var(--color-border)}
.ic-mem-add>summary:hover{background:var(--color-surface-alt)}
.ic-mem-add .ic-mem-form{padding:18px 20px 20px}
.ic-mem-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px 18px}
.ic-mem-form-grid>label{display:flex;flex-direction:column}
.ic-mem-span{grid-column:1 / -1}
@media(max-width:640px){.ic-mem-form-grid{grid-template-columns:1fr}}
/* List header row */
.ic-mem-listhead{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.ic-mem-headbtns{display:inline-flex;gap:10px;align-items:center;flex-wrap:wrap}
/* Member detail (View) */
.ic-mem-detail{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:22px}
.ic-mem-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.ic-mem-detail-head h3{font-family:var(--font-display);font-size:19px;font-weight:800;color:var(--ic-c-primary);margin:0 0 6px}
.ic-mem-detail-actions{display:inline-flex;gap:10px;flex-wrap:wrap}
.ic-mem-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 28px;margin:0}
.ic-mem-detail-grid dt{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin-bottom:3px}
.ic-mem-detail-grid dd{margin:0;font-size:14px;color:var(--color-text-primary);line-height:1.45;word-break:break-word}
@media(max-width:640px){.ic-mem-detail-grid{grid-template-columns:1fr}}

/* People settings — sub-tab bar */
.ic-console-subtabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 18px;border-bottom:1px solid var(--color-border);padding-bottom:2px}
.ic-console-subtab{padding:8px 14px;border-radius:8px 8px 0 0;font-size:13.5px;font-weight:600;color:var(--color-text-secondary);text-decoration:none;border:1px solid transparent;border-bottom:none}
.ic-console-subtab:hover{color:var(--ic-c-primary);background:var(--color-bg)}
.ic-console-subtab.is-active{color:var(--ic-c-primary);background:var(--color-surface);border-color:var(--color-border);position:relative;top:1px}
.ic-leave-review-actions form{display:inline-block;margin-left:10px}
.ic-leave-review-actions form:first-child{margin-left:0}

/* ===== Link-or-upload document field + attached-file chip ===== */
.ic-upload{display:block}
.ic-upload__row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.ic-upload__url{flex:1;min-width:180px}
.ic-upload__btn{flex:none;white-space:nowrap;background:var(--ic-c-primary);color:#fff;border:none}
.ic-upload__status{display:block;font-size:12.5px;margin-top:6px;color:var(--color-text-secondary)}
.ic-upload__status.is-busy{color:var(--ic-c-primary-2)}
.ic-upload__status.is-err{color:#c0392b}
.ic-upload__status.is-ok{color:#1f9d55}
.ic-upload__chip[hidden]{display:none}
.ic-upload__chip{display:inline-flex;align-items:center;gap:8px;margin-top:8px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:999px;padding:4px 6px 4px 12px;max-width:100%}
.ic-upload__thumb{width:24px;height:24px;border-radius:5px;object-fit:cover;flex:none}
.ic-upload__chip-name{font-size:13px;font-weight:600;color:var(--ic-c-primary);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:240px}
.ic-upload__chip-name:hover{text-decoration:underline}
.ic-upload__chip-remove{flex:none;width:22px;height:22px;border:0;border-radius:50%;background:transparent;color:var(--color-text-secondary);font-size:18px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0}
.ic-upload__chip-remove:hover{background:var(--color-border);color:var(--ic-c-primary)}
.ic-cmp-review--over{color:#b91c1c;font-weight:700}

/* ===== Onboarding & induction ===== */
.ic-ob-card{background:var(--color-surface);border:1px solid var(--color-border);border-left:4px solid var(--ic-c-primary);border-radius:var(--radius-lg);padding:18px 20px;margin-bottom:var(--space-xl);box-shadow:var(--shadow-sm)}
.ic-ob-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.ic-ob-title{font-size:16px;font-weight:800;color:var(--ic-c-primary)}
.ic-ob-sub{font-size:13px;color:var(--color-text-secondary);margin-top:2px}
.ic-ob-pct{font-size:22px;font-weight:800;color:var(--ic-c-primary);white-space:nowrap}
.ic-ob-bar{height:8px;border-radius:99px;background:var(--color-bg);overflow:hidden;margin:12px 0 4px}
.ic-ob-bar>span{display:block;height:100%;background:var(--ic-c-primary);border-radius:99px}
.ic-ob-list{list-style:none;margin:10px 0 0;padding:0}
.ic-ob-item{display:flex;gap:12px;padding:11px 0;border-top:1px solid var(--color-border)}
.ic-ob-item:first-child{border-top:0}
.ic-ob-check{flex:none;width:22px;height:22px;border-radius:50%;border:2px solid var(--color-border);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;margin-top:1px}
.ic-ob-item.is-done .ic-ob-check{background:#1f9d55;border-color:#1f9d55}
.ic-ob-body{flex:1;min-width:0}
.ic-ob-label{font-size:14px;font-weight:600;color:var(--ic-c-primary)}
.ic-ob-item.is-done .ic-ob-label{color:var(--color-text-secondary);text-decoration:line-through;font-weight:500}
.ic-ob-opt{font-size:11px;font-weight:600;color:var(--color-text-secondary)}
.ic-ob-meta{font-size:12px;color:#1f9d55;font-weight:600;margin-top:2px}
.ic-ob-btn{display:inline-flex;align-items:center;gap:6px;background:var(--ic-c-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:12.5px;font-weight:700;padding:7px 13px;cursor:pointer;text-decoration:none;margin-top:6px}
.ic-ob-btn--ghost{background:transparent;color:var(--ic-c-primary);border:1px solid var(--color-border)}
.ic-ob-link{display:inline-block;margin-top:6px;margin-right:8px;font-size:12.5px;font-weight:700;color:var(--ic-c-primary)}
.ic-ob-inline{display:inline}
.ic-ob-credform{margin-top:8px}
.ic-ob-credrow{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.ic-ob-credrow input[type=file]{font-size:12px;max-width:100%}
.ic-ob-exp{font-size:12px;color:var(--color-text-secondary);display:inline-flex;align-items:center;gap:5px}
.ic-ob-credrow .ic-ob-btn{margin-top:0}
.ic-ob-minibar{height:7px;border-radius:99px;background:var(--color-bg);overflow:hidden;max-width:220px;margin-bottom:3px}
.ic-ob-minibar>span{display:block;height:100%;background:var(--ic-c-primary)}
.ic-ob-assign{margin-top:12px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ic-ob-assign select{padding:8px 10px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:13px}
.ic-ob-actions{white-space:nowrap}
.ic-cmp-link--danger{color:#c0392b}
.ic-ob-settingswrap{margin-top:20px;border-top:1px solid var(--color-border);padding-top:12px}
.ic-ob-settingswrap>summary{cursor:pointer;font-weight:700;color:var(--ic-c-primary);font-size:14px;margin-bottom:8px}
.ic-ob-tpl input[type=text]{padding:7px 9px;border:1px solid var(--color-border);border-radius:6px;font-size:13px}
.ic-ob-tpl select{padding:7px 9px;border:1px solid var(--color-border);border-radius:6px;font-size:13px;max-width:100%}
.ic-ob-settings .ic-inc-flag{margin:8px 0}
.ic-ob-linkbox{display:inline-block;margin-left:4px;vertical-align:middle}
.ic-ob-linkbox>summary{cursor:pointer;color:var(--ic-c-primary);font-size:12.5px;font-weight:600;display:inline}
.ic-ob-linkbox input{display:block;margin-top:6px;width:280px;max-width:100%;padding:6px 8px;border:1px solid var(--color-border);border-radius:6px;font-size:12px;color:var(--color-text-secondary)}
.ic-ob-startbox{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:16px 18px;margin:14px 0 18px}
.ic-ob-starth{font-weight:800;color:var(--ic-c-primary);font-size:15px;margin-bottom:10px}
.ic-ob-startrow{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.ic-ob-startform select{padding:8px 10px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:13px;min-width:200px}
.ic-ob-pblabel{display:flex;gap:8px;align-items:flex-start;margin-top:11px;font-size:13px;color:var(--color-text-secondary);max-width:660px;cursor:pointer}
.ic-ob-pblabel input{margin-top:3px;flex:none}
.ic-ob-startempty{color:var(--color-text-secondary);margin:0}
.ic-ob-startgrid{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.ic-ob-startgrid input{padding:8px 10px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:13px}
.ic-ob-startgrid input[name=first_name],.ic-ob-startgrid input[name=last_name]{width:150px}
.ic-ob-startgrid input[name=email]{flex:1;min-width:200px}
.ic-ob-startnote{margin:8px 0 0;font-size:12px;color:var(--color-text-secondary)}
.ic-ob-startor{margin-top:14px;padding-top:12px;border-top:1px dashed var(--color-border);display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13px;color:var(--color-text-secondary)}
.ic-ob-startor select{padding:7px 10px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:13px;min-width:180px}
.ic-ob-pbinline{font-size:12.5px;color:var(--color-text-secondary)}
.ic-ob-policypick{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px 14px;margin:8px 0 14px;max-width:760px}
.ic-ob-policypick label{display:flex;gap:8px;align-items:flex-start;font-size:13px;color:var(--color-text-secondary);padding:5px 8px;border:1px solid var(--color-border);border-radius:8px;cursor:pointer}
.ic-ob-policypick input{margin-top:2px;flex:none}
.ic-ob-newpolicy{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px 14px;max-width:560px}
.ic-ob-newpolicy strong{display:block;margin-bottom:8px;font-size:13px;color:var(--ic-c-primary)}
.ic-ob-newpolicy-title{width:100%;padding:8px 10px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:13px;margin-bottom:8px}
.ic-ob-pollist{display:flex;flex-direction:column;gap:4px;margin-top:6px}
.ic-ob-pollist a{font-size:13px;font-weight:600;color:var(--ic-c-primary)}
.ic-ob-ackchk{display:inline-flex;gap:6px;align-items:center;font-size:12.5px;color:var(--color-text-secondary);margin-top:6px}
.ic-ob-detailrow>td{padding:0 0 10px!important;border-top:0!important}
.ic-ob-detogg>summary{cursor:pointer;font-size:12.5px;font-weight:600;color:var(--ic-c-primary);padding:4px 0 8px}
.ic-ob-pdetail{list-style:none;margin:0 0 6px;padding:8px 12px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px}
.ic-ob-pdetail li{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:4px 0;font-size:13px}
.ic-ob-dchk{flex:none;width:18px;height:18px;border-radius:50%;border:1.5px solid var(--color-border);color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800}
.ic-ob-dchk.is-done{background:#1f9d55;border-color:#1f9d55}
.ic-ob-dlabel{font-weight:500}
.ic-ob-dexp{font-size:12px;color:var(--color-text-secondary)}
.ic-ob-dwait{font-size:12px;color:#c0392b}
.ic-ob-dnote{font-size:12px;color:var(--color-text-secondary);margin:8px 0 0}
.ic-ob-doctag{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary);background:var(--color-bg);border:1px solid var(--color-border);border-radius:99px;padding:1px 7px;white-space:nowrap}
.ic-ob-doctag--all{color:#b45309;background:#fff7ed;border-color:#fcd9b6}
.ic-ob-allstaff{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--color-text-secondary);margin:4px 0 8px}
.ic-ob-allstaff input{flex:none}

/* ===== Dashboard hero split + acknowledgement callout (2.6.8) ===== */
.welcome-row{display:flex;gap:20px;align-items:stretch;margin-bottom:24px}
.welcome-row > .welcome-banner{flex:1 1 auto;margin-bottom:0}
.ack-callout{flex:0 0 300px;display:flex;flex-direction:column;background:#fff;border:1px solid #e5e9f0;border-radius:16px;padding:20px 22px;box-shadow:0 1px 2px rgba(16,24,40,.04)}
.ack-callout__head{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.ack-callout__icon{font-size:18px;line-height:1}
.ack-callout__eyebrow{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#7E8AA0}
.ack-callout--todo{border-color:#fcd9b6;background:linear-gradient(180deg,#fff7ed 0%,#fff 60%)}
.ack-callout--todo .ack-callout__eyebrow{color:#b45309}
.ack-callout__count{font-size:44px;line-height:1;font-weight:800;color:var(--ic-c-accent,#003366);margin:2px 0}
.ack-callout__label{font-size:13.5px;color:#475467;margin-bottom:12px}
.ack-callout__list{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column;gap:6px}
.ack-callout__list li{font-size:13px;line-height:1.3}
.ack-callout__list a{color:#1f2a44;text-decoration:none;border-bottom:1px solid transparent}
.ack-callout__list a:hover{border-bottom-color:currentColor}
.ack-callout__more{color:#7E8AA0;font-size:12px}
.ack-callout__btn{margin-top:auto;display:inline-block;text-align:center;background:var(--ic-c-accent,#003366);color:#fff;text-decoration:none;font-weight:600;font-size:13.5px;padding:10px 14px;border-radius:9px}
.ack-callout__btn:hover{filter:brightness(.93)}
.ack-callout--clear{border-color:#cdeedd;background:linear-gradient(180deg,#f0fdf6 0%,#fff 60%)}
.ack-callout--clear .ack-callout__icon{color:#0a7d49}
.ack-callout--clear .ack-callout__eyebrow{color:#0a7d49}
.ack-callout__clear-text{font-size:13.5px;color:#475467;margin:4px 0 0}
@media (max-width:900px){.welcome-row{flex-direction:column}.ack-callout{flex-basis:auto}}

/* ===== Compliance score card (2.6.9) ===== */
.ic-cmp-score{display:flex;gap:26px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:22px 24px;margin-bottom:22px;border-left:6px solid var(--color-border)}
.ic-cmp-score--ok{border-left-color:#16a34a}
.ic-cmp-score--warn{border-left-color:#e8a33d}
.ic-cmp-score--low{border-left-color:#dc2626}
.ic-cmp-score__main{display:flex;align-items:center;gap:18px;min-width:240px}
.ic-cmp-score__ring{flex:0 0 auto;width:96px;height:96px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--color-surface-alt);border:3px solid var(--color-border)}
.ic-cmp-score--ok .ic-cmp-score__ring{border-color:#16a34a;background:#eafaf0}
.ic-cmp-score--warn .ic-cmp-score__ring{border-color:#e8a33d;background:#fdf4e6}
.ic-cmp-score--low .ic-cmp-score__ring{border-color:#dc2626;background:#fdecec}
.ic-cmp-score__num{font-family:var(--font-display);font-weight:800;font-size:30px;color:var(--ic-c-primary)}
.ic-cmp-score__lbl{font-family:var(--font-display);font-weight:800;font-size:18px;color:var(--ic-c-primary)}
.ic-cmp-score__hint{font-size:13px;color:var(--color-text-muted);margin:4px 0 0;max-width:340px}
.ic-cmp-score__parts{display:flex;gap:26px;flex-wrap:wrap;flex:1 1 320px}
.ic-cmp-score__part{flex:1 1 160px;min-width:160px}
.ic-cmp-score__part-head{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;color:var(--color-text-secondary);margin-bottom:6px}
.ic-cmp-score__part-head b{color:var(--ic-c-primary);font-size:14px}
.ic-cmp-score__part .ic-cmp-bar{display:block;width:100%;margin:0 0 6px}
.ic-cmp-score__part small{color:var(--color-text-muted);font-size:12px}
@media (max-width:680px){.ic-cmp-score{gap:18px}.ic-cmp-score__parts{flex-basis:100%}}

/* On-leave badge in staff directory (2.7.1) */
.ic-dir-nameline{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.ic-dir-leave{font-size:10.5px;font-weight:700;letter-spacing:.02em;color:#92510a;background:#fdeecf;border:1px solid #f6d28a;border-radius:999px;padding:1px 7px;line-height:1.5;white-space:nowrap}

/* Default EasyIntranet logo in the sidebar when no brand logo is configured */
.ic-dash-fullscreen .sidebar-brand-logo--default{display:block;height:56px;width:auto;max-width:100%;margin:2px 0}

/* staff self-serve credentials */
.ic-cred-badge--pending{background:#FEF3C7;color:#92400E}
.ic-mycred-grid{display:grid;grid-template-columns:340px 1fr;gap:18px;align-items:start;margin-top:14px}
@media(max-width:860px){.ic-mycred-grid{grid-template-columns:1fr}}
.ic-mycred-file{display:block;width:100%;font-size:14px;padding:8px 0}

/* horizontal scroll for wide register tables on small screens */
.ic-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius-lg)}
.ic-table-wrap .ic-cmp-table{min-width:640px}
.nav-item--alert,.nav-item--alert .nav-icon{color:#F2654B}
.nav-item--alert:hover{color:#d94f36}

/* beta badges */
.nav-item--beta::after{content:'BETA';margin-left:auto;background:#F2654B;color:#fff;font-size:9px;font-weight:800;letter-spacing:.06em;padding:2px 6px;border-radius:8px;line-height:1.4}
.ic-beta-tag{display:inline-block;vertical-align:middle;background:#F2654B;color:#fff;font-size:11px;font-weight:800;letter-spacing:.05em;padding:2px 8px;border-radius:9px;margin-left:8px}
/* roster admin bits */
.ic-rst-week{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:6px 0 12px}
.ic-rst-stats{color:var(--color-text-muted);font-size:13px;margin-left:auto}
.ic-rst-tools{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 16px}
.ic-rst-tool{display:inline}
.ic-rst-form-card{margin-bottom:16px}
.ic-rst-areas-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 16px;font-size:13px}
.ic-rst-areas-form input{flex:1;min-width:220px;padding:8px 10px;border:1.5px solid var(--color-border);border-radius:var(--radius-md)}
.ic-cmp-h2h{font-size:16px;margin:22px 0 8px}

/* roster coverage overview */
.ic-rst-ov-title{font-size:16px;margin:4px 0 8px}
.ic-rst-ov td{font-size:12.5px;white-space:nowrap}
.ic-rst-ov-none{color:var(--color-text-muted);text-align:center}
.ic-rst-ov-ok{background:#F0F9F4}
.ic-rst-ov-open{background:#FEF7E8}
.ic-rst-ov-unstaffed{color:#92400E;font-weight:600}
.ic-rst-ov-legend{font-size:12px;color:var(--color-text-muted);margin:6px 0 14px}
.ic-rst-ov-gaps{margin-bottom:16px}
.ic-rst-ov-short{background:#FDECEC}
.ic-rst-ov-shortlbl{color:#a3282b;font-weight:700;font-size:11px;white-space:normal}

/* fc-forms pages rendered in the shell */
.ic-formspage{max-width:900px}
.ic-formspage h2{font-size:18px;margin:18px 0 8px}
.ic-formspage p{margin:8px 0}
.ic-formspage form{background:var(--color-surface,#fff);border:1px solid var(--color-border,#D9DEE6);border-radius:var(--radius-lg,12px);padding:18px;margin:14px 0}
.ic-formspage input[type=text],.ic-formspage input[type=email],.ic-formspage input[type=date],.ic-formspage input[type=number],.ic-formspage select,.ic-formspage textarea{width:100%;padding:10px 12px;border:1.5px solid var(--color-border,#D9DEE6);border-radius:8px;font:inherit;margin:4px 0 12px}
.ic-formspage input[type=submit],.ic-formspage button[type=submit]{background:#1C7C94;color:#fff;border:none;border-radius:8px;padding:10px 18px;font-weight:700;cursor:pointer}
.ic-formspage input[type=submit]:hover,.ic-formspage button[type=submit]:hover{background:#12586A}
.ic-formspage table{width:100%;border-collapse:collapse}
.ic-formspage table td,.ic-formspage table th{padding:8px 10px;border-bottom:1px solid var(--color-border,#EAE5DB);text-align:left}

/* knowledge base */
.ic-kb-search{display:flex;gap:8px;margin:14px 0}
.ic-kb-search input[type=search]{flex:1;max-width:420px;padding:10px 12px;border:1.5px solid var(--color-border,#D9DEE6);border-radius:8px;font:inherit}
.ic-kb-cats{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.ic-kb-cat{display:inline-block;padding:6px 14px;border:1.5px solid var(--color-border,#D9DEE6);border-radius:999px;font-size:13px;font-weight:600;color:#12586A;text-decoration:none;background:var(--color-surface,#fff)}
.ic-kb-cat span{opacity:.6;font-weight:500}
.ic-kb-cat:hover{border-color:#1C7C94}
.ic-kb-cat.is-on{background:#1C7C94;border-color:#1C7C94;color:#fff}
.ic-kb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.ic-kb-card{display:block;position:relative;background:var(--color-surface,#fff);border:1px solid var(--color-border,#D9DEE6);border-radius:var(--radius-lg,12px);padding:16px 18px 34px;text-decoration:none;color:inherit}
.ic-kb-card:hover{border-color:#1C7C94;box-shadow:0 6px 18px rgba(21,38,59,.08)}
.ic-kb-card h3{margin:0 0 6px;font-size:15px;color:#12586A}
.ic-kb-card p{margin:6px 0 0;font-size:13px;color:var(--color-text-muted,#667085)}
.ic-kb-tag{display:inline-block;background:#EEF6F8;color:#12586A;font-size:11px;font-weight:700;padding:2px 8px;border-radius:8px}
.ic-kb-ver{position:absolute;bottom:12px;left:18px;font-size:11px;color:var(--color-text-muted,#98A2B3)}
.ic-kb-single{max-width:820px}
.ic-kb-back{margin:0 0 6px}
.ic-kb-meta{display:flex;flex-wrap:wrap;gap:14px;font-size:12.5px;color:var(--color-text-muted,#667085);border-bottom:1px solid var(--color-border,#EAE5DB);padding-bottom:10px;margin:0 0 18px}
.ic-kb-overdue{color:#a3282b;font-weight:700}
.ic-kb-body{font-size:15px;line-height:1.65}
.ic-kb-body h2{font-size:19px;margin:22px 0 8px}
.ic-kb-body h3{font-size:16px;margin:18px 0 6px}
.ic-kb-body ol,.ic-kb-body ul{padding-left:22px}
.ic-kb-body li{margin:4px 0}
.ic-kb-history{margin:26px 0 0;border-top:1px solid var(--color-border,#EAE5DB);padding-top:12px;font-size:13px}
.ic-kb-history summary{cursor:pointer;font-weight:600;color:#12586A}
.ic-kb-history ul{margin:8px 0 0;padding-left:20px;color:var(--color-text-muted,#667085)}

/* knowledge base attachments (staff view) */
.ic-kb-docs{margin:24px 0 0;border-top:1px solid var(--color-border,#EAE5DB);padding-top:14px}
.ic-kb-docs h2{font-size:16px;margin:0 0 10px}
.ic-kb-docs ul{list-style:none;margin:0;padding:0}
.ic-kb-docs li{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 12px;border:1px solid var(--color-border,#D9DEE6);border-radius:10px;margin:0 0 8px;background:var(--color-surface,#fff)}
.ic-kb-docs li a{display:flex;align-items:center;gap:10px;text-decoration:none;color:#12586A;font-weight:600}
.ic-kb-doc-ext{display:inline-block;min-width:44px;text-align:center;background:#EEF6F8;color:#12586A;font-size:10.5px;font-weight:800;letter-spacing:.04em;padding:3px 6px;border-radius:6px}
.ic-kb-doc-meta{margin-left:auto;font-size:12px;color:var(--color-text-muted,#98A2B3)}

/* team access — searchable people list */
.ic-perm-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:14px 0}
.ic-perm-search{flex:1;min-width:240px;max-width:420px;padding:10px 14px;border:1.5px solid var(--color-border,#D9DEE6);border-radius:10px;font:inherit}
.ic-perm-search:focus{outline:none;border-color:#1C7C94}
.ic-perm-filters{display:flex;gap:6px}
.ic-perm-filter{padding:7px 14px;border:1.5px solid var(--color-border,#D9DEE6);background:var(--color-surface,#fff);border-radius:999px;font-size:13px;font-weight:600;color:#12586A;cursor:pointer}
.ic-perm-filter:hover{border-color:#1C7C94}
.ic-perm-filter.is-on{background:#1C7C94;border-color:#1C7C94;color:#fff}
.ic-perm-count{font-size:12.5px;color:var(--color-text-muted,#667085);margin-left:auto}
.ic-perm-people{display:flex;flex-direction:column;gap:8px}
.ic-perm-person{border:1px solid var(--color-border,#D9DEE6);border-radius:12px;background:var(--color-surface,#fff);overflow:hidden}
.ic-perm-person.is-open{border-color:#1C7C94;box-shadow:0 4px 16px rgba(21,38,59,.07)}
.ic-perm-person.is-admin{background:#FBFAF6}
.ic-perm-head{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;background:none;border:none;text-align:left;cursor:pointer;font:inherit}
.ic-perm-person.is-admin .ic-perm-head{cursor:default}
.ic-perm-avatar{flex:0 0 34px;height:34px;border-radius:50%;background:#12586A;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}
.ic-perm-who{display:flex;flex-direction:column;min-width:150px}
.ic-perm-who strong{font-size:14px}
.ic-perm-email{font-size:12px;color:var(--color-text-muted,#667085)}
.ic-perm-summary{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-left:auto}
.ic-perm-tag{background:#EEF6F8;color:#12586A;font-size:11.5px;font-weight:600;padding:3px 9px;border-radius:8px}
.ic-perm-tag--more{background:#E7EBF0;color:#475569}
.ic-perm-none{font-size:12.5px;color:var(--color-text-muted,#98A2B3)}
.ic-perm-adminpill{background:#F2654B;color:#fff;font-size:11px;font-weight:700;padding:3px 10px;border-radius:8px}
.ic-perm-chev{color:var(--color-text-muted,#98A2B3);font-size:12px;transition:transform .15s}
.ic-perm-person.is-open .ic-perm-chev{transform:rotate(180deg)}
.ic-perm-body{padding:0 16px 16px;border-top:1px solid var(--color-border,#EAE5DB)}
.ic-perm-bulk{display:flex;gap:14px;padding:10px 0 6px;font-size:12.5px}
.ic-perm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}
.ic-perm-opt{display:flex;align-items:center;gap:9px;padding:9px 12px;border:1px solid var(--color-border,#EAE5DB);border-radius:9px;font-size:13px;cursor:pointer;background:#fff}
.ic-perm-opt:hover{border-color:#1C7C94;background:#F7FBFC}
.ic-perm-opt input{width:16px;height:16px;accent-color:#1C7C94;flex:0 0 auto}
.ic-perm-empty{padding:26px;text-align:center;color:var(--color-text-muted,#667085)}
.ic-perm-savebar{position:sticky;bottom:0;display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:16px;padding:12px 0;background:linear-gradient(to top,var(--color-bg,#F4F6F9) 70%,transparent)}
.ic-perm-savehint{font-size:12.5px;color:var(--color-text-muted,#667085)}
@media(max-width:640px){.ic-perm-summary{width:100%;margin:6px 0 0}.ic-perm-count{margin-left:0}}

/* resource & vehicle booking */
.ic-book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px}
.ic-book-card{border:1px solid var(--color-border,#D9DEE6);border-radius:12px;background:var(--color-surface,#fff);padding:16px 18px;display:flex;flex-direction:column;gap:12px}
.ic-book-card.is-open{border-color:#1C7C94;box-shadow:0 6px 18px rgba(21,38,59,.08)}
.ic-book-card h3{margin:6px 0 0;font-size:15.5px;color:#12586A}
.ic-book-type{display:inline-block;font-size:10.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:3px 9px;border-radius:8px;background:#EEF6F8;color:#12586A}
.ic-book-type--vehicle{background:#EAF3E8;color:#2E6B3F}
.ic-book-type--equipment{background:#FDF1E3;color:#8A5A16}
.ic-book-type--other{background:#EFEFF4;color:#4A5568}
.ic-book-meta{margin:2px 0 0;font-size:12.5px;color:var(--color-text-muted,#667085)}
.ic-book-details{margin:0;font-size:12.5px;color:var(--color-text-muted,#667085)}
.ic-book-today{font-size:12.5px;border-top:1px solid var(--color-border,#EAE5DB);padding-top:10px}
.ic-book-today strong{display:block;margin-bottom:4px;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted,#98A2B3)}
.ic-book-today ul{list-style:none;margin:0;padding:0}
.ic-book-today li{display:flex;justify-content:space-between;gap:8px;padding:3px 0;border-bottom:1px dashed var(--color-border,#EAE5DB)}
.ic-book-today li span{color:var(--color-text-muted,#667085)}
.ic-book-free{color:#2E6B3F;font-weight:600}
.ic-book-form summary{list-style:none;cursor:pointer;text-align:center}
.ic-book-form summary::-webkit-details-marker{display:none}
.ic-book-form[open] summary{margin-bottom:10px}
.ic-book-inactive{display:flex;align-items:center;gap:8px;font-size:13px;margin:10px 0}
.ic-book-invite{margin:10px 0;border:1px solid var(--color-border,#EAE5DB);border-radius:9px;padding:10px 12px}
.ic-book-invite summary{cursor:pointer;font-weight:600;font-size:13px;color:#12586A}
.ic-book-invite-hint{font-size:12px;color:var(--color-text-muted,#667085);margin:6px 0 0}
.ic-book-people{max-height:150px;overflow:auto;border:1px solid var(--color-border,#EAE5DB);border-radius:8px;padding:8px;margin:4px 0 10px}
.ic-book-person{display:flex;align-items:center;gap:8px;padding:4px 2px;font-size:13px;cursor:pointer}
.ic-book-person input{accent-color:#1C7C94}
.ic-book-rsvp{font-size:12px;white-space:nowrap}
.ic-book-yes{color:#2E6B3F;font-weight:700}
.ic-book-no{color:#A3282B;font-weight:600}
.ic-book-wait{color:var(--color-text-muted,#98A2B3)}
