/* ------------------------------------------------------------
   MONO THEME OVERRIDES
   Minimal, flat, mechanical UI for EnCI
   ------------------------------------------------------------ */

/* Use Roboto Mono everywhere */
body,
input,
select,
button,
textarea {
  font-family: "Roboto Mono", ui-monospace, SFMono-Regular, Menlo, Monaco,
               Consolas, "Liberation Mono", monospace !important;
}

/* ------------------------------------------------------------
   1. Simplify shapes (cards, icons, buttons, topics)
   ------------------------------------------------------------ */

.card,
.btn,
.icon,
.topic,
.repo-card,
.brand .logo {
  border-radius: 6px !important; /* clean, mechanical */
}

/* ------------------------------------------------------------
   2. Flatten UI surfaces (remove complex shadows & gradients)
   ------------------------------------------------------------ */

.card,
.repo-card {
  box-shadow: 0 1px 3px rgba(0,0,0,0.15) !important;
  border: 1px solid var(--panel-strong) !important;
  background: var(--card) !important;
}

.icon {
  background: var(--panel-strong) !important;
  box-shadow: none !important;
}

.icon svg {
  fill: var(--text) !important;
}

/* Remove button gradients */
.btn {
  background: var(--card) !important;
  border: 1px solid var(--panel-strong) !important;
  color: var(--text) !important;
}

/* Primary button is just darker border */
.btn.primary {
  border-color: var(--text) !important;
  background: var(--panel) !important;
}

/* ------------------------------------------------------------
   3. Flatten global background (remove radial/linear blends)
   ------------------------------------------------------------ */

body {
  background: var(--bg) !important;
}

/* ------------------------------------------------------------
   4. Simplify navbar (remove blur/glass)
   ------------------------------------------------------------ */

.topbar {
  backdrop-filter: none !important;
  background: var(--bg) !important;
  border-bottom: 1px solid var(--panel-strong) !important;
}

/* ------------------------------------------------------------
   5. Simplify menu hover (remove bubbles)
   ------------------------------------------------------------ */

.menu a:hover {
  background: none !important;
  color: var(--text) !important;
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* ------------------------------------------------------------
   6. Remove card shimmer & lift
   ------------------------------------------------------------ */

a.card:hover {
  transform: none !important;
  border-color: var(--text) !important;
}
a.card .shine {
  display: none !important;
}

/* ------------------------------------------------------------
   7. GitHub repo card separator more minimal
   ------------------------------------------------------------ */

.repo-card::before {
  background: var(--panel-strong) !important;
  opacity: 0.4 !important;
}

/* ------------------------------------------------------------
   8. Theme selector simplification
   ------------------------------------------------------------ */

#themeSelect {
  background: transparent !important;
  color: var(--text) !important;
  border: 1px solid var(--panel-strong) !important;
  padding: 4px 6px !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  box-shadow: none !important;
}

/* On hover: simple underline effect */
#themeSelect:hover {
  border-color: var(--text) !important;
}

/* Remove focus ring bubble */
#themeSelect:focus {
  outline: none !important;
  border-color: var(--text) !important;
}

/* ------------------------------------------------------------
   9. Brand title tweak support
   ------------------------------------------------------------ */

.brand-sub {
  font-weight: 300 !important;
  opacity: 0.80 !important;
}

.brand-sub strong {
  font-weight: 700 !important;
  opacity: 1 !important;
}

/* ------------------------------------------------------------
   Stylized Itimize
   ------------------------------------------------------------ */

/* Force card content to align fully left */
.card {
  text-align: left !important;
  align-items: flex-start !important;   /* stop centering */
}

/* Lists inside cards should align left with no indent */
.card .mono-list {
  padding-left: 1rem !important;
  margin-left: 0 !important;
  font-size: 0.85rem !important;
  list-style-position: inside !important;
  text-align: left !important;
}

.card .mono-list li {
  text-align: left !important;
}

/* ------------------------------------------------------------
   Images
   ------------------------------------------------------------ */

.image-frame{
	margin: 12px 0 16px;
	background: white;
	overflow: hidden;
}
.image-frame img{ display:block; max-width:100%; height:auto; }

/* ------------------------------------------------------------
   MONO OVERRIDES FOR group_members.html (cleaned)
   ------------------------------------------------------------ */

/* Page background override */
body {
  background: var(--bg) !important;
}

/* Hero */
.hero .title {
  font-weight: 700 !important;
  text-shadow: none !important;
}

.hero .subtitle {
  opacity: 0.8 !important;
  font-size: 0.9rem !important;
}

/* Toolbar */
.toolbar {
  display: flex !important;
  gap: 10px !important;
  align-items: center !important;
  padding-bottom: 12px !important;
  white-space: nowrap !important;
}

.search {
	flex: 3 1 200px !important;
}

.search input {
  border: 1px solid var(--panel-strong) !important;
  background: var(--card) !important;
  font-size: 0.9rem !important;
  padding-left: 10px !important;
  box-shadow: none !important;
	width: 90% !important;
}

.search svg {
  opacity: 0.6 !important;
  width: 16px !important;
  height: 16px !important;
}

.legend {
  font-size: 0.75rem !important;
  opacity: 0.8 !important;
}

/* People list spacing */
.people {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: grid !important;
  gap: 10px !important;       /* clean vertical spacing */
}

/* Person card */
.person {
  background: var(--card) !important;
  border: 1px solid var(--panel-strong) !important;
  border-radius: 5px !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.15) !important;
  padding: 18px !important;
  display: grid !important;
  grid-template-columns: 100px 1fr !important;
  gap: 16px !important;
}

.avatar {
  width: 100px !important;
  height: 100px !important;
  object-fit: cover !important;
  border-radius: 5px !important;
}

.name {
  font-size: 1rem !important;
  font-weight: 700 !important;
  margin: 0 !important;
}

.role {
  font-size: 0.8rem !important;
  color: var(--muted) !important;
  margin: 0 !important;
}

/* Field row on one line */
.row {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 16px !important;
  overflow-x: auto !important;
  white-space: nowrap !important;
}

.field {
  font-size: 0.78rem !important;
  opacity: 0.8 !important;
  white-space: nowrap !important;
}

/* Chips */
.chips {
  margin-top: 6px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
}

.chip {
  padding: 4px 8px !important;
  font-size: 0.7rem !important;
	border: solid 1px !important;
}

/* Bio */
.bio {
  margin-top: 8px !important;
  font-size: 0.85rem !important;
  line-height: 1.3 !important;
}

/* Left alignment */
.wrap,
.person,
.person > div,
.headerline,
.row,
.chips,
.bio {
  text-align: left !important;
  align-items: flex-start !important;
}

/* Publication cards */
.pub-card {
  border: 1px solid var(--panel-strong);
  border-radius: 6px;
  padding: 14px;
  background: var(--card);
  margin-bottom: 18px;
  box-shadow: 0 1px 3px rgba(0,0,0,0.15);
  transition: border-color .15s ease, background .15s ease;
  cursor: default;
}

.pub-card:hover {
  border-color: var(--text);
  background: var(--panel);
}

.pubtitle {
  margin: 0 0 6px;
  font-size: 1rem;
  font-weight: 700;
}

.meta span {
  margin-right: 10px;
  font-size: 0.8rem;
  opacity: 0.85;
}

.links, .tags {
  margin-top: 6px;
}

/* Hover abstract box */
#abstract-hover {
  position: absolute;
  max-width: 500px;
  padding: 12px;
  border-radius: 6px;
  background: var(--card);
  border: 1px solid var(--panel-strong);
  box-shadow: 0 4px 12px rgba(0,0,0,0.25);
  font-size: 0.85rem;
  line-height: 1.35;
  display: none;
  z-index: 9999;
}
/* ------------------------------------------------------------
   BURGER MENU – MOBILE MODE
   ------------------------------------------------------------ */

/* Hide burger on desktop */
#burger {
  display: none;
  background: none;
  border: none;
  font-size: 26px;
  cursor: pointer;
  color: var(--text);
}

/* Mobile breakpoint */
@media (max-width: 1050px) {

  /* Show burger */
  #burger {
    display: block;
  }

  /* Collapse menu by default */
  .menu {
    position: absolute;
    top: 75px;              /* under topbar */
    right: 0;
    left: 0;

    display: none;
    flex-direction: column;
    gap: 0;

    background: var(--bg);
    border-bottom: 1px solid var(--panel-strong);
    padding: 10px 0;
    z-index: 50;
  }

  /* Open state */
  .menu.open {
    display: flex;
  }

  /* Menu item style in mobile mode */
  .menu a,
  .menu span {
    padding: 14px 20px !important;
    border-radius: 0 !important;
    text-align: left !important;
    background: none !important;
    font-size: 1rem;
  }

  .menu a:hover {
    text-decoration: underline;
  }

  /* Ensure theme selector fits on mobile */
  #themeMount {
    padding: 10px 20px !important;
  }

  #themeSelect {
    width: 100% !important;
  }
}

