/* Min Lab: Louisiana Tech blue and red. */
:root {
	--minlab-blue: #002f8b;
	--minlab-red: #e31b23;
	--minlab-ink: #1d2433;
	--minlab-muted: #5b6475;
	--minlab-line: #e3e7ef;
	--minlab-soft: #f4f6fb;
	--minlab-radius: 10px;
}

.minlab-muted { color: var(--minlab-muted); }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* Citation panel */
.minlab-stats { margin: 0 0 2rem; }
.minlab-tiles { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 12px; }
.minlab-tile { background: var(--minlab-soft); border: 1px solid var(--minlab-line); border-radius: var(--minlab-radius); padding: 16px; text-align: center; }
.minlab-tile-num { display: block; font-size: 2rem; font-weight: 700; color: var(--minlab-blue); line-height: 1.1; font-variant-numeric: tabular-nums; }
.minlab-tile-label { display: block; font-size: .85rem; color: var(--minlab-muted); margin-top: 4px; }
.minlab-chart { margin-top: 16px; border: 1px solid var(--minlab-line); border-radius: var(--minlab-radius); padding: 16px; }
.minlab-chart-title { font-size: .9rem; font-weight: 600; color: var(--minlab-ink); margin-bottom: 8px; }
.minlab-bars { display: flex; align-items: flex-end; gap: 6px; height: 160px; }
.minlab-bar-col { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; height: 100%; min-width: 0; }
.minlab-bar { display: block; width: 100%; max-width: 36px; background: var(--minlab-blue); border-radius: 4px 4px 0 0; }
.minlab-bar-col:hover .minlab-bar { background: var(--minlab-red); }
.minlab-bar-val { font-size: .7rem; color: var(--minlab-muted); margin-bottom: 2px; font-variant-numeric: tabular-nums; }
.minlab-bar-year { font-size: .7rem; color: var(--minlab-muted); margin-top: 4px; }
.minlab-stats-note { font-size: .8rem; color: var(--minlab-muted); margin-top: 8px; }

/* Filters */
.minlab-filters { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 8px; }
.minlab-filters label { margin: 0; }
.minlab-search { flex: 1 1 260px; }
.minlab-filters input, .minlab-filters select { width: 100%; padding: 9px 12px; border: 1px solid #c9d0dc; border-radius: 8px; font-size: .95rem; background: #fff; color: var(--minlab-ink); }
.minlab-filters input:focus, .minlab-filters select:focus { outline: 2px solid var(--minlab-blue); outline-offset: 1px; }
.minlab-count { font-size: .85rem; color: var(--minlab-muted); margin: 0 0 12px; }

/* Publication list */
.minlab-year-heading { font-size: 1.25rem; color: var(--minlab-blue); border-bottom: 2px solid var(--minlab-line); padding-bottom: 4px; margin: 24px 0 8px; }
.minlab-list { list-style: none; margin: 0; padding: 0; }
.minlab-pub { display: flex; gap: 16px; padding: 14px 0; border-bottom: 1px solid var(--minlab-line); }
.minlab-pub[hidden], .minlab-year-group[hidden] { display: none; }
.minlab-pub-main { flex: 1; min-width: 0; }
.minlab-pub-title { font-weight: 600; font-size: 1.02rem; line-height: 1.35; color: var(--minlab-ink); }
.minlab-pub-title a { color: var(--minlab-ink); text-decoration: none; }
.minlab-pub-title a:hover { color: var(--minlab-blue); text-decoration: underline; }
.minlab-pub-authors { font-size: .9rem; color: var(--minlab-muted); margin-top: 3px; }
.minlab-member-author { font-weight: 600; color: var(--minlab-blue); }
.minlab-pub-venue { font-size: .88rem; color: var(--minlab-muted); margin-top: 3px; }
.minlab-badge { display: inline-block; font-size: .7rem; font-weight: 600; text-transform: uppercase; letter-spacing: .03em; padding: 2px 8px; border-radius: 999px; margin-left: 6px; background: var(--minlab-soft); color: var(--minlab-blue); border: 1px solid var(--minlab-line); vertical-align: 1px; }
.minlab-badge-journal { background: #e8eefc; }
.minlab-badge-conference { background: #eef7f0; color: #1f6b3a; }
.minlab-pub-actions { display: flex; gap: 12px; margin-top: 6px; font-size: .82rem; }
.minlab-pub-actions a, .minlab-bib-toggle { color: var(--minlab-blue); background: none; border: 0; padding: 0; font: inherit; cursor: pointer; text-decoration: underline; text-underline-offset: 2px; }
.minlab-bib { margin-top: 8px; position: relative; }
.minlab-bib pre { font-size: .75rem; background: var(--minlab-soft); border: 1px solid var(--minlab-line); border-radius: 8px; padding: 10px; overflow-x: auto; white-space: pre; margin: 0; }
.minlab-bib-copy { position: absolute; top: 6px; right: 6px; font-size: .75rem; padding: 3px 10px; border-radius: 6px; border: 1px solid var(--minlab-line); background: #fff; cursor: pointer; }
.minlab-pub-cites { flex: 0 0 72px; text-align: center; align-self: flex-start; background: var(--minlab-soft); border-radius: 8px; padding: 6px 4px; }
.minlab-cite-num { display: block; font-size: 1.2rem; font-weight: 700; color: var(--minlab-blue); font-variant-numeric: tabular-nums; }
.minlab-cite-label { display: block; font-size: .65rem; color: var(--minlab-muted); text-transform: uppercase; letter-spacing: .04em; }
.minlab-none, .minlab-empty { color: var(--minlab-muted); font-style: italic; }

/* People */
.minlab-people-group { margin-bottom: 2.5rem; }
.minlab-people-group h2 { color: var(--minlab-blue); border-bottom: 2px solid var(--minlab-line); padding-bottom: 6px; }
.minlab-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 16px; }
.minlab-card { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 10px; padding: 20px 16px; border: 1px solid var(--minlab-line); border-radius: var(--minlab-radius); text-decoration: none; color: var(--minlab-ink); transition: box-shadow .15s, transform .15s; background: #fff; }
.minlab-card:hover { box-shadow: 0 6px 20px rgba(0, 47, 139, .12); transform: translateY(-2px); }
.minlab-people-pi .minlab-cards { grid-template-columns: 1fr; }
.minlab-people-pi .minlab-card { flex-direction: row; text-align: left; align-items: center; gap: 20px; }
.minlab-photo { width: 120px; height: 120px; border-radius: 50%; object-fit: cover; object-position: center top; flex: 0 0 auto; }
.minlab-initials { display: inline-flex; align-items: center; justify-content: center; background: var(--minlab-blue); color: #fff; font-size: 2.2rem; font-weight: 700; }
.minlab-card-body { display: flex; flex-direction: column; gap: 4px; }
.minlab-card-name { font-weight: 700; font-size: 1.1rem; color: var(--minlab-blue); }
.minlab-card-role { font-size: .9rem; color: var(--minlab-muted); }
.minlab-card-research { font-size: .85rem; color: var(--minlab-ink); }
.minlab-alumni { padding-left: 1.2rem; }
.minlab-alumni li { margin: 4px 0; }

/* Profile */
.minlab-profile-head { display: flex; gap: 24px; align-items: center; margin-bottom: 1.5rem; }
.minlab-profile-head .minlab-photo { width: 170px; height: 170px; }
.minlab-profile-head .minlab-initials { font-size: 3rem; }
.minlab-profile-role { font-size: 1.1rem; color: var(--minlab-muted); margin: 0 0 8px; }
.minlab-tags { list-style: none; display: flex; flex-wrap: wrap; gap: 6px; padding: 0; margin: 0 0 10px; }
.minlab-tags li { background: #e8eefc; color: var(--minlab-blue); font-size: .8rem; padding: 3px 10px; border-radius: 999px; }
.minlab-links a { color: var(--minlab-blue); }
.minlab-profile-section h2 { font-size: 1.3rem; color: var(--minlab-blue); border-bottom: 2px solid var(--minlab-line); padding-bottom: 4px; margin-top: 2rem; }
.minlab-education { padding-left: 1.2rem; }

@media (max-width: 600px) {
	.minlab-pub { flex-direction: column; gap: 6px; }
	.minlab-pub-cites { align-self: flex-start; display: flex; gap: 6px; align-items: baseline; padding: 2px 10px; flex: none; }
	.minlab-profile-head, .minlab-people-pi .minlab-card { flex-direction: column; text-align: center; }
	.minlab-tags { justify-content: center; }
	.minlab-bar-val { display: none; }
}

/* Home / research page blocks */
.minlab-hero { background: linear-gradient(135deg, var(--minlab-blue), #0b4fd1); color: #fff; border-radius: 14px; padding: 48px 32px; margin-bottom: 2.5rem; }
.minlab-hero h1 { color: #fff; margin: 0 0 12px; font-size: clamp(1.8rem, 4vw, 2.8rem); }
.minlab-hero-sub { font-size: 1.15rem; opacity: .92; max-width: 640px; }
.minlab-hero .wp-block-button__link { background: #fff; color: var(--minlab-blue); border-radius: 8px; font-weight: 600; }
.minlab-hero .is-style-outline .wp-block-button__link { background: transparent; color: #fff; border: 2px solid #fff; }
.minlab-areas { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 16px; margin-bottom: 2rem; }
.minlab-area { border: 1px solid var(--minlab-line); border-top: 4px solid var(--minlab-red); border-radius: var(--minlab-radius); padding: 18px; background: #fff; }
.minlab-area h3 { font-size: 1.05rem; color: var(--minlab-blue); margin: 0 0 8px; }
.minlab-area p { font-size: .92rem; color: var(--minlab-muted); margin: 0; }

/* Block theme: the home page has its own hero heading. */
.home main .wp-block-post-title { display: none; }

/* Hero buttons (shortcode version) */
.minlab-hero-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
.minlab-btn { display: inline-block; padding: 10px 20px; border-radius: 8px; font-weight: 600; text-decoration: none !important; font-size: .95rem; }
.minlab-btn-light { background: #fff; color: var(--minlab-blue) !important; }
.minlab-btn-outline { border: 2px solid rgba(255,255,255,.85); color: #fff !important; }
.minlab-btn:hover { opacity: .9; }
.minlab-section-title { color: var(--minlab-blue); border-bottom: 2px solid var(--minlab-line); padding-bottom: 6px; margin-top: 2.5rem; }
.minlab-intro { font-size: 1.08rem; line-height: 1.65; color: var(--minlab-ink); max-width: 760px; }

/* Projects */
.minlab-projects { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 18px; margin-bottom: 1.5rem; }
.minlab-project { display: flex; flex-direction: column; border: 1px solid var(--minlab-line); border-radius: var(--minlab-radius); overflow: hidden; background: #fff; transition: box-shadow .15s; }
.minlab-project:hover { box-shadow: 0 6px 20px rgba(0, 47, 139, .1); }
.minlab-project-img img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.minlab-project-body { padding: 16px 18px 18px; }
.minlab-project-meta { display: flex; gap: 10px; align-items: center; font-size: .8rem; color: var(--minlab-muted); }
.minlab-status { font-weight: 700; text-transform: uppercase; letter-spacing: .04em; font-size: .7rem; padding: 2px 8px; border-radius: 999px; }
.minlab-status-current { background: #e6f4ea; color: #1f6b3a; }
.minlab-status-past { background: var(--minlab-soft); color: var(--minlab-muted); }
.minlab-project-title { font-size: 1.1rem; margin: 8px 0 6px; line-height: 1.3; }
.minlab-project-title a { color: var(--minlab-blue); text-decoration: none; }
.minlab-project-title a:hover { text-decoration: underline; }
.minlab-project-sponsor { font-size: .85rem; color: var(--minlab-red); font-weight: 600; margin: 0 0 6px; }
.minlab-project-summary { font-size: .92rem; color: var(--minlab-ink); margin: 0 0 8px; }
.minlab-project-team { font-size: .85rem; color: var(--minlab-muted); margin: 0; }
.minlab-project-team span { font-weight: 600; }
.minlab-project-team a { color: var(--minlab-blue); }
.minlab-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 10px; background: var(--minlab-soft); border: 1px solid var(--minlab-line); border-radius: var(--minlab-radius); padding: 14px 16px; margin: 0 0 1rem; }
.minlab-facts dt { font-size: .75rem; text-transform: uppercase; letter-spacing: .04em; color: var(--minlab-muted); }
.minlab-facts dd { margin: 2px 0 0; font-weight: 600; color: var(--minlab-ink); }
.minlab-facts dd a { color: var(--minlab-blue); }
.minlab-project-hero img { width: 100%; height: auto; border-radius: var(--minlab-radius); }

/* News, contact */
.minlab-news { list-style: none; padding: 0; margin: 0; }
.minlab-news li { padding: 10px 0; border-bottom: 1px solid var(--minlab-line); }
.minlab-news time { display: inline-block; min-width: 100px; font-size: .85rem; color: var(--minlab-muted); font-variant-numeric: tabular-nums; }
.minlab-news a { color: var(--minlab-ink); font-weight: 600; text-decoration: none; }
.minlab-news a:hover { color: var(--minlab-blue); text-decoration: underline; }
.minlab-contact { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 18px; }
.minlab-contact-card { border: 1px solid var(--minlab-line); border-top: 4px solid var(--minlab-blue); border-radius: var(--minlab-radius); padding: 18px 20px; }
.minlab-join { border-top-color: var(--minlab-red); }
.minlab-contact-card h2 { font-size: 1.2rem; color: var(--minlab-blue); margin-top: 0; }
.minlab-contact-card a { color: var(--minlab-blue); }

/* Footer */
.minlab-footer { display: grid; grid-template-columns: 2fr 1fr 1.5fr; gap: 28px; font-size: .9rem; color: var(--minlab-muted); }
.minlab-footer p { margin: 0 0 8px; }
.minlab-footer-name { font-weight: 700; font-size: 1.05rem; color: var(--minlab-blue); }
.minlab-footer-head { font-weight: 700; color: var(--minlab-ink); text-transform: uppercase; font-size: .75rem; letter-spacing: .06em; }
.minlab-footer ul { list-style: none; padding: 0; margin: 0; }
.minlab-footer li { margin: 0 0 6px; }
.minlab-footer a { color: var(--minlab-ink); text-decoration: none; }
.minlab-footer a:hover { color: var(--minlab-blue); text-decoration: underline; }
.minlab-footer-copy { grid-column: 1 / -1; border-top: 1px solid var(--minlab-line); padding-top: 14px; font-size: .8rem; }
@media (max-width: 700px) { .minlab-footer { grid-template-columns: 1fr; gap: 16px; } }

/* Classic theme (Hello Elementor) header, links and footer */
body a { color: var(--minlab-blue); }
.site-header .site-title a, .site-header .site-title { color: var(--minlab-blue); font-weight: 700; }
.site-header .site-description { color: var(--minlab-muted); }
.site-header .site-navigation ul.menu li a { color: var(--minlab-ink); font-weight: 500; }
.site-header .site-navigation ul.menu li a:hover,
.site-header .site-navigation ul.menu li.current-menu-item > a { color: var(--minlab-blue); }
.site-header .site-navigation ul.menu li.current-menu-item > a { box-shadow: inset 0 -2px 0 var(--minlab-red); }
.site-header { border-bottom: 1px solid var(--minlab-line); }
.minlab-site-footer { margin-top: 4rem; border-top: 1px solid var(--minlab-line); background: var(--minlab-soft); }
.minlab-site-footer-inner { max-width: 1140px; margin: 0 auto; padding: 36px 16px 20px; }
/* The lab footer replaces Hello Elementor's own footer line. */
.site-footer:not(.minlab-site-footer) { display: none; }
@media (max-width: 600px) {
	body .site-header .site-branding .site-title { font-size: 1.35rem; line-height: 1.2; }
	body .site-header .site-branding .site-description { font-size: .8rem; }
}

/* Hello Elementor resets: no pink theme buttons, no underlines on cards and titles. */
body .minlab-bib-toggle { border: 0; background: none; padding: 0; border-radius: 0; color: var(--minlab-blue); font: inherit; font-size: .82rem; text-decoration: underline; text-underline-offset: 2px; cursor: pointer; }
body .minlab-bib-toggle:hover, body .minlab-bib-toggle:focus { background: none; color: var(--minlab-red); }
body .minlab-bib-copy { border: 1px solid var(--minlab-line); background: #fff; color: var(--minlab-ink); padding: 3px 10px; border-radius: 6px; font-size: .75rem; }
body .minlab-bib-copy:hover { background: var(--minlab-soft); color: var(--minlab-blue); }
body .minlab-pub-title a, body .minlab-card, body .minlab-card *, body .minlab-project-title a,
body .minlab-footer a, body .minlab-news a, body .minlab-member-author, body .minlab-alumni a,
body .minlab-newslist a { text-decoration: none; }
body .minlab-pub-title a:hover, body .minlab-project-title a:hover, body .minlab-member-author:hover,
body .minlab-alumni a:hover, body .minlab-newslist h3 a:hover { text-decoration: underline; }
body .minlab-card .minlab-card-name { color: var(--minlab-blue); }
body .minlab-card .minlab-card-role, body .minlab-card .minlab-card-research { color: var(--minlab-muted); }

/* News list */
.minlab-newslist { display: grid; gap: 18px; }
.minlab-newsitem { display: grid; grid-template-columns: 200px 1fr; gap: 18px; padding-bottom: 18px; border-bottom: 1px solid var(--minlab-line); }
.minlab-newsitem.no-img { grid-template-columns: 1fr; }
.minlab-newsitem img { width: 100%; height: 130px; object-fit: cover; border-radius: 8px; }
.minlab-newsitem time { font-size: .8rem; color: var(--minlab-muted); text-transform: uppercase; letter-spacing: .04em; }
.minlab-newsitem h3 { margin: 4px 0 6px; font-size: 1.15rem; }
.minlab-newsitem h3 a { color: var(--minlab-blue); }
.minlab-newsitem p { margin: 0; color: var(--minlab-ink); }
.minlab-pager { display: flex; gap: 12px; margin-top: 18px; }
@media (max-width: 600px) { .minlab-newsitem { grid-template-columns: 1fr; } }
/* Beats Hello's ".page-content a { text-decoration: underline }". */
body .page-content a.minlab-card, body .page-content .minlab-pub-title a, body .page-content .minlab-project-title a,
body .page-content .minlab-member-author, body .page-content .minlab-alumni a, body .page-content .minlab-newslist a,
body .page-content .minlab-news a, body .page-content .minlab-btn { text-decoration: none; }
body .page-content .minlab-pub-title a:hover, body .page-content .minlab-project-title a:hover,
body .page-content .minlab-member-author:hover, body .page-content .minlab-alumni a:hover { text-decoration: underline; }

/* Hello Elementor phone menu */
body .site-header .site-navigation-dropdown ul.menu { background: #fff; box-shadow: 0 10px 24px rgba(0, 47, 139, .12); border-top: 1px solid var(--minlab-line); }
body .site-header .site-navigation-dropdown ul.menu li a { background: #fff; color: var(--minlab-ink); font-size: 1rem; font-weight: 500; padding: 14px 20px; border-bottom: 1px solid var(--minlab-line); text-decoration: none; }
body .site-header .site-navigation-dropdown ul.menu li.current-menu-item a,
body .site-header .site-navigation-dropdown ul.menu li a:hover { background: var(--minlab-soft); color: var(--minlab-blue); box-shadow: inset 4px 0 0 var(--minlab-red); }
body .site-header .site-navigation-toggle { background: var(--minlab-soft); border: 1px solid var(--minlab-line); color: var(--minlab-blue); border-radius: 8px; }

/* ===== v1.3 People page ===== */
.minlab-eyebrow { font-size: .75rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--minlab-red); margin: 0 0 6px; }
.minlab-group-title { font-size: 1.3rem; color: var(--minlab-ink); margin: 2.5rem 0 1rem; padding-bottom: 8px; border-bottom: 2px solid var(--minlab-line); }
.minlab-pi { display: grid; grid-template-columns: 200px 1fr; gap: 32px; align-items: center; padding: 28px; border: 1px solid var(--minlab-line); border-radius: 14px; background: linear-gradient(135deg, #f7f9fe 0%, #fff 60%); margin: 8px 0 1rem; }
.minlab-pi-photo .minlab-photo { width: 200px; height: 200px; box-shadow: 0 8px 24px rgba(0, 47, 139, .15); }
body .page-content .minlab-pi-name { font-size: 1.7rem; margin: 0 0 4px; }
body .page-content .minlab-pi-name a { color: var(--minlab-blue); text-decoration: none; }
.minlab-pi-role { color: var(--minlab-muted); margin: 0 0 12px; }
.minlab-pi-bio { color: var(--minlab-ink); line-height: 1.6; margin: 0 0 14px; max-width: 720px; }
.minlab-cards { grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 18px; }
.minlab-card { gap: 6px; padding: 24px 18px; border-radius: 12px; }
.minlab-card .minlab-photo { width: 112px; height: 112px; margin-bottom: 6px; }
body .page-content .minlab-card .minlab-card-name { font-size: 1.1rem; font-weight: 700; color: var(--minlab-blue); }
body .page-content .minlab-card .minlab-card-role { color: var(--minlab-ink); font-weight: 500; font-size: .92rem; }
body .page-content .minlab-card .minlab-card-program { color: var(--minlab-muted); font-size: .85rem; }
.minlab-card .minlab-tags { justify-content: center; margin: 8px 0 0; }
.minlab-tags li { font-size: .75rem; }
.minlab-alumni-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 14px; }
body .page-content a.minlab-alum { display: flex; gap: 14px; align-items: center; padding: 14px 16px; border: 1px solid var(--minlab-line); border-radius: 12px; text-decoration: none; background: #fff; transition: box-shadow .15s, border-color .15s; }
body .page-content a.minlab-alum:hover { border-color: #c9d5f0; box-shadow: 0 4px 14px rgba(0, 47, 139, .08); }
.minlab-alum .minlab-photo { width: 56px; height: 56px; }
.minlab-alum .minlab-initials { font-size: 1.1rem; }
.minlab-alum-body { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.minlab-alum-name { font-weight: 700; color: var(--minlab-blue); }
.minlab-alum-meta { font-size: .85rem; color: var(--minlab-ink); }
.minlab-alum-now { font-size: .82rem; color: var(--minlab-muted); }

/* Link buttons */
.minlab-linkbtns { display: flex; flex-wrap: wrap; gap: 8px; }
body .page-content a.minlab-linkbtn, body a.minlab-linkbtn { display: inline-flex; align-items: center; gap: 7px; padding: 7px 13px; border: 1px solid #c9d5f0; border-radius: 8px; background: #fff; color: var(--minlab-blue); font-size: .85rem; font-weight: 600; text-decoration: none; transition: background .15s; }
body a.minlab-linkbtn:hover { background: #eef3fd; }
.minlab-icon { flex: none; }
.minlab-linkbtns.is-stacked { flex-direction: column; }
.minlab-linkbtns.is-stacked .minlab-linkbtn { justify-content: flex-start; }

/* ===== v1.3 Profile page ===== */
.minlab-back { margin: 4px 0 18px; font-size: .9rem; }
body .minlab-back a { text-decoration: none; }
.minlab-profile { display: grid; grid-template-columns: 280px 1fr; gap: 40px; align-items: start; }
.minlab-profile-aside { position: sticky; top: 24px; }
.minlab-profile-card { border: 1px solid var(--minlab-line); border-radius: 14px; padding: 22px; background: #fbfcff; display: flex; flex-direction: column; gap: 16px; }
.minlab-profile-card > .minlab-photo { width: 100%; height: auto; aspect-ratio: 1; border-radius: 12px; }
.minlab-profile-card > .minlab-initials { width: 100%; height: auto; aspect-ratio: 1; border-radius: 12px; font-size: 4rem; }
.minlab-profile-edu h3 { font-size: .8rem; text-transform: uppercase; letter-spacing: .06em; color: var(--minlab-muted); margin: 0 0 8px; }
.minlab-profile-edu ul { list-style: none; margin: 0; padding: 0; }
.minlab-profile-edu li { font-size: .88rem; line-height: 1.45; padding: 8px 0; border-top: 1px solid var(--minlab-line); color: var(--minlab-ink); }
body .minlab-profile-name { font-size: 2.2rem; line-height: 1.15; margin: 0 0 6px; color: var(--minlab-ink); }
.minlab-profile-role { font-size: 1.05rem; color: var(--minlab-muted); margin: 0 0 12px; }
.minlab-profile-now { font-size: .95rem; color: var(--minlab-ink); margin: -4px 0 12px; }
.minlab-profile-main .minlab-profile-section h2 { margin-top: 2.2rem; }
.minlab-count-badge { display: inline-block; font-size: .8rem; background: var(--minlab-soft); color: var(--minlab-muted); border-radius: 999px; padding: 2px 10px; vertical-align: middle; }
.minlab-more { margin-top: 12px; }

/* Career timeline */
.minlab-timeline { list-style: none; margin: 0; padding: 0 0 0 22px; border-left: 2px solid var(--minlab-line); }
.minlab-timeline-item { position: relative; padding: 0 0 20px 12px; display: flex; flex-direction: column; }
.minlab-timeline-item::before { content: ""; position: absolute; left: -30px; top: 4px; width: 12px; height: 12px; border-radius: 50%; background: #fff; border: 3px solid #9bb0de; }
.minlab-timeline-item.is-current::before { border-color: var(--minlab-red); background: var(--minlab-red); }
.minlab-timeline-years { font-size: .78rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--minlab-muted); }
.minlab-timeline-role { font-weight: 700; color: var(--minlab-ink); font-size: 1rem; }
.minlab-timeline-org { color: var(--minlab-blue); font-size: .92rem; }

@media (max-width: 860px) {
	.minlab-profile { grid-template-columns: 1fr; gap: 24px; }
	.minlab-profile-aside { position: static; }
	.minlab-profile-card { flex-direction: row; flex-wrap: wrap; align-items: flex-start; }
	.minlab-profile-card > .minlab-photo, .minlab-profile-card > .minlab-initials { width: 140px; }
	.minlab-profile-card .minlab-linkbtns.is-stacked { flex: 1; min-width: 150px; }
	.minlab-profile-edu { flex-basis: 100%; }
}
@media (max-width: 600px) {
	.minlab-pi { grid-template-columns: 1fr; text-align: center; padding: 22px 18px; gap: 16px; }
	.minlab-pi-photo { justify-self: center; }
	.minlab-pi-photo .minlab-photo { width: 150px; height: 150px; }
	.minlab-pi .minlab-tags, .minlab-pi .minlab-linkbtns { justify-content: center; }
	body .minlab-profile-name { font-size: 1.7rem; }
}

/* Profile grid: name block and main column on the right, photo card spanning both on the left; stacked on phones. */
.minlab-profile { grid-template-areas: "aside head" "aside main"; grid-template-rows: auto 1fr; row-gap: 0; }
.minlab-profile-head { grid-area: head; }
.minlab-profile-aside { grid-area: aside; }
.minlab-profile-main { grid-area: main; }
.minlab-profile-main > .minlab-profile-section:first-child h2 { margin-top: 1.4rem; }
@media (max-width: 860px) { .minlab-profile { grid-template-areas: "head" "aside" "main"; grid-template-rows: auto; row-gap: 18px; } }
/* Override the v1.0 .minlab-profile-head flex rules. */
body .minlab-profile .minlab-profile-head { display: block; text-align: left; margin: 0; }
@media (max-width: 600px) { body .minlab-profile .minlab-profile-head { text-align: left; } }

/* ===== v1.4 Page header band ===== */
.minlab-pagehead { position: relative; overflow: hidden; margin: 20px 0 32px; padding: 34px 36px 32px; border-radius: 16px; color: #fff;
	background: radial-gradient(circle at 92% 18%, rgba(255,255,255,.14) 0 90px, transparent 91px),
		radial-gradient(circle at 80% 120%, rgba(227,27,35,.18) 0 140px, transparent 141px),
		linear-gradient(135deg, #002f8b 0%, #0b4fd1 100%); }
.minlab-crumbs { display: flex; gap: 8px; align-items: center; font-size: .82rem; color: rgba(255,255,255,.75); margin-bottom: 10px; }
body .minlab-crumbs a { color: rgba(255,255,255,.9); text-decoration: none; }
body .minlab-crumbs a:hover { color: #fff; text-decoration: underline; }
body .minlab-pagehead-title { color: #fff; font-size: clamp(1.9rem, 4vw, 2.6rem); line-height: 1.15; margin: 0; font-weight: 700; }
.minlab-pagehead-sub { margin: 10px 0 0; max-width: 680px; font-size: 1.05rem; line-height: 1.55; color: rgba(255,255,255,.9); }
.minlab-pagehead::after { content: ""; position: absolute; left: 36px; bottom: 0; width: 64px; height: 4px; border-radius: 4px 4px 0 0; background: var(--minlab-red); }
.page-content > .minlab-intro:first-of-type, .minlab-pagehead + .minlab-intro { margin-top: 0; }
@media (max-width: 600px) {
	.minlab-pagehead { padding: 24px 20px 26px; margin: 12px 0 22px; border-radius: 12px; }
	.minlab-pagehead::after { left: 20px; }
	.minlab-pagehead-sub { font-size: .95rem; }
}

/* ===== v1.5 Paper page ===== */
.minlab-paper-meta { border: 1px solid var(--minlab-line); border-radius: 14px; padding: 18px 20px; background: #fbfcff; margin-bottom: 8px; }
.minlab-paper-authors { font-size: 1rem; margin: 0 0 6px; color: var(--minlab-ink); }
.minlab-paper-venue { margin: 0 0 14px; color: var(--minlab-muted); }
.minlab-paper-cites { display: inline-block; margin-left: 6px; font-size: .8rem; font-weight: 700; color: var(--minlab-blue); background: #e8eefc; border-radius: 999px; padding: 2px 10px; }
.single-minlab_pub .minlab-bib { display: block; }
.single-minlab_pub .minlab-pub { display: block; border: 0; padding: 0; }

/* ===== v1.6 Phone polish ===== */
.minlab-more-btn { display: block; margin: 18px auto 4px; padding: 11px 22px; border: 1px solid #c9d5f0; border-radius: 10px; background: #fff; color: var(--minlab-blue); font-weight: 600; font-size: .92rem; cursor: pointer; }
.minlab-more-btn:hover { background: #eef3fd; }
.minlab-more-btn[hidden] { display: none; }

/* Header: lab name and menu button on one line whenever the dropdown menu is used. */
@media (max-width: 1024px) {
	body .site-header .header-inner { flex-wrap: nowrap; align-items: center; gap: 12px; }
	body .site-header .site-branding { flex: 1 1 auto; min-width: 0; }
	body .site-header .site-navigation-toggle-holder { flex: none; padding: 0; }
}

@media (max-width: 600px) {
	body .site-header { padding-top: 10px; padding-bottom: 10px; }
	body .site-header .site-branding .site-description { display: none; }
	body .site-header .site-branding .site-title { font-size: 1.3rem; }

	/* Banner */
	.minlab-hero { padding: 26px 20px; margin-bottom: 1.6rem; border-radius: 14px; }
	.minlab-hero h1 { font-size: 1.75rem; margin-bottom: 8px; }
	.minlab-hero-sub { font-size: 1rem; }
	.minlab-hero-actions { flex-wrap: nowrap; gap: 8px; margin-top: 16px; }
	.minlab-btn { flex: 1 1 auto; text-align: center; padding: 10px 8px; font-size: .86rem; }
	.minlab-intro { font-size: 1rem; line-height: 1.6; }
	.minlab-section-title { font-size: 1.4rem; margin-top: 2rem; }

	/* Stats */
	.minlab-tiles { gap: 8px; }
	.minlab-tile { padding: 12px 8px; }
	.minlab-tile-num { font-size: 1.55rem; }

	/* Research areas: swipe sideways instead of a long stack. */
	.minlab-areas { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 12px; padding: 4px 16px 12px 2px; margin-right: -16px; -webkit-overflow-scrolling: touch; }
	.minlab-area { flex: 0 0 80%; scroll-snap-align: start; padding: 16px; }
	.minlab-area h3 { font-size: 1rem; }
	.minlab-area p { font-size: .88rem; }

	/* Publication items: citation pill on the actions row, bigger tap targets. */
	.minlab-pub { position: relative; padding: 14px 0 16px; }
	.minlab-pub-title { font-size: .98rem; }
	.minlab-pub-actions { gap: 4px; margin-top: 8px; }
	.minlab-pub-actions a, body .minlab-bib-toggle { display: inline-flex; align-items: center; min-height: 34px; padding: 0 10px; border: 1px solid var(--minlab-line); border-radius: 8px; text-decoration: none; font-size: .82rem; }
	.minlab-pub-cites { position: absolute; right: 0; bottom: 16px; display: flex; align-items: baseline; gap: 4px; padding: 6px 10px; background: var(--minlab-soft); border-radius: 8px; }
	.minlab-cite-num { font-size: .95rem; }
	.minlab-cite-label { font-size: .65rem; }

	/* Filters: search on top, three dropdowns on one row. */
	.minlab-filters { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
	.minlab-filters .minlab-search { grid-column: 1 / -1; }
	.minlab-filters select { padding: 9px 6px; font-size: .85rem; }

	/* People: compact student rows, shorter PI bio. */
	.minlab-pi-bio { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
	.minlab-pi-photo .minlab-photo { width: 130px; height: 130px; }
	body .page-content .minlab-pi-name { font-size: 1.45rem; }
	.minlab-cards { gap: 10px; }
	body .page-content a.minlab-card { display: grid; grid-template-columns: 72px 1fr; column-gap: 14px; row-gap: 1px; align-items: center; justify-items: start; text-align: left; padding: 14px; }
	.minlab-card .minlab-photo { grid-row: 1 / span 4; width: 72px; height: 72px; margin: 0; }
	.minlab-card .minlab-initials { font-size: 1.4rem; }
	.minlab-card .minlab-tags { justify-content: flex-start; margin-top: 4px; }
	.minlab-card .minlab-tags li:nth-child(n+3) { display: none; }
	.minlab-group-title { margin-top: 1.8rem; }

	/* Profile */
	.minlab-profile-head .minlab-tags { justify-content: flex-start; }
	.minlab-profile-card { padding: 16px; gap: 12px; }
	.minlab-linkbtns.is-stacked .minlab-linkbtn { min-height: 38px; }

	/* Footer: two-column link list, larger tap areas. */
	.minlab-footer ul { columns: 2; column-gap: 16px; }
	.minlab-footer li { margin: 0; }
	.minlab-footer li a { display: block; padding: 7px 0; }
	.minlab-site-footer-inner { padding: 28px 16px 16px; }
	.minlab-back a { display: inline-block; padding: 6px 0; }
}
@media (max-width: 600px) {
	.minlab-areas { margin-right: 0; padding-right: 0; }
	body .page-content .minlab-pub-actions a { text-decoration: none; }
}
