/**
 * Version 3 scholarly-portfolio refinement.
 * Loaded last so it can simplify the inherited dashboard interface without
 * removing the underlying WordPress data, filters, maps or record drawers.
 */

:root{
  --had-reading-size:15px;
  --had-interface-size:13px;
  --had-meta-size:12px;
}

body.had-theme{font-size:var(--had-reading-size);line-height:1.5}
.had-sidebar a,.had-top-links a,.had-language-switch button,.had-profile-actions a,
.had-header-link,.had-metric-pill,.had-year-filter button,.had-topic-tabs button,
.had-portfolio-filters button,.had-segmented a,.had-collection-filter-row input,
.had-contact-form input,.had-contact-form textarea,.had-contact-form button{font-size:var(--had-interface-size)!important}
.had-top-stream em,.had-top-stream-item,.had-brand em,.had-side-label,.had-kicker,
.had-analytics-title em,.had-record-row label,.had-record-row time small,
.had-screen-header p,.had-collection-header p,.had-section-title>span,
.had-news-item p,.had-signal-line,.had-profile-telemetry small{font-size:var(--had-meta-size)!important}
.had-sidebar a{min-height:42px}
.had-sidebar a small{font-size:12px}
.had-top-stream{font-size:12px}
.had-top-stream em{margin-right:52px}
.had-top-stream-item span{font-size:12px}
.had-screen-header p,.had-profile-summary,.had-project-card>p,.had-focus-panel p,
.had-story-copy>p,.had-contact-card p,.had-credential-summary,.had-teaching-philosophy p{line-height:1.55}

/* Public interface no longer advertises its implementation layer. */
.had-auto-source,.had-github-sync{display:none!important}

/* Home: preserve portrait, What’s New, Scholar and global reach; remove redundant visual telemetry. */
@media(min-width:901px){
  .had-home-screen{grid-template-rows:auto minmax(380px,1fr) auto auto!important;overflow-y:auto!important}
  .had-home-top{grid-template-columns:minmax(520px,1.34fr) minmax(390px,.96fr) minmax(350px,.9fr)!important}
  .had-dashboard-zone{grid-template-rows:auto auto!important;min-height:auto!important}
}
.had-home-command{min-height:66px;order:0}
.had-home-top{order:1}
.had-home-kpi-grid{order:2}
.had-dashboard-zone{order:3}
.had-home-command h1{font-size:20px}
.had-home-filter-strip label{font-size:12px!important;letter-spacing:.08em}
.had-home-filter-strip select,.had-home-filter-strip button{min-height:39px}
.had-home-kpi-grid article{min-height:68px;padding:11px 14px}
.had-home-kpi-grid span,.had-home-kpi-grid em{font-size:12px!important}
.had-home-kpi-grid b{font-size:25px}
.had-profile-copy h1{font-size:clamp(28px,2vw,38px)}
.had-profile-role{font-size:14px}
.had-profile-summary{font-size:14px;-webkit-line-clamp:4}
.had-profile-telemetry b{font-size:21px}
.had-profile-actions a{font-size:13px!important}
.had-news-title h2{font-size:24px}
.had-news-item h3{font-size:clamp(21px,1.45vw,28px);line-height:1.14}
.had-news-item p{font-size:13px!important}
.had-news-item>b{font-size:12px}
.had-scholar-card h2,.had-reach-card h2{font-size:15px!important}
.had-scholar-kpis small,.had-reach-metrics small{font-size:12px!important}
.had-scholar-kpis b{font-size:20px!important}
.had-micro-chart{padding-top:10px!important;gap:7px!important}
.had-micro-chart>i{min-width:8px;border-radius:2px 2px 0 0}
.had-micro-chart>i>small{bottom:-18px!important;font-size:12px!important}
.had-reach-caption{margin:2px 0 0;color:#7899a8;font-size:12px;line-height:1.35}
.had-dashboard-zone-head{min-height:58px;align-items:flex-start}
.had-dashboard-zone-head h2{font-size:18px;margin:4px 0 2px}
.had-dashboard-zone-head p{margin:0;color:#7898a7;font-size:13px}
.had-home-dashboard-grid{grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:repeat(2,minmax(70px,auto));gap:8px;padding-top:5px}
.had-dashboard-card.is-compact{min-height:74px;padding:10px 11px}
.had-dashboard-card.is-compact h3{height:auto;min-height:31px;margin:7px 0 0;font-size:12px!important;line-height:1.25}
.had-dashboard-card.is-compact .had-dash-card-head>b{font-size:20px}
.had-dashboard-card.is-compact .had-spark-bars,.had-dashboard-card.is-compact .had-velocity,.had-dashboard-card.is-compact>p{display:none}

/* Research: evidence categories rather than artificial percentages. */
.had-research-v3{overflow-y:auto!important}
.had-research-v3 .had-research-layout{grid-template-columns:minmax(0,1fr) minmax(300px,.28fr);align-items:start}
.had-project-sections{display:grid;gap:18px;min-width:0}
.had-project-group{min-width:0}
.had-project-group-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding-bottom:7px;border-bottom:1px solid #1b4357}
.had-project-group-title h2{margin:0;font-size:18px}
.had-project-group-title span{min-width:29px;height:29px;display:grid;place-items:center;border:1px solid #236177;border-radius:50%;color:var(--had-accent);font:700 12px ui-monospace,monospace}
.had-project-group .had-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.had-project-card{min-height:280px;padding:17px;text-align:left}
.had-project-card h3{margin:10px 0 8px;color:#f2f8fb;font-size:18px;line-height:1.22}
.had-project-card>p{display:-webkit-box;overflow:hidden;font-size:13px;-webkit-line-clamp:4;-webkit-box-orient:vertical}
.had-project-meta b{font-size:12px!important;line-height:1.35;white-space:normal;text-align:right}
.had-project-role{display:flex;align-items:flex-start;gap:7px;margin:10px 0;color:#8caab7;font-size:12px;line-height:1.35}
.had-project-role .dashicons{flex:0 0 16px;color:var(--had-accent);font-size:16px}
.had-project-card .had-tag-row span{font-size:12px}
.had-open-detail{font-size:12px!important}
.had-research-side{position:sticky;top:0;grid-template-rows:auto auto;gap:12px}
.had-focus-panel,.had-methods-panel{padding:18px}
.had-research-theme-list,.had-method-chip-list,.had-project-method-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.had-research-theme-list span,.had-method-chip-list span,.had-project-method-chips>span{padding:7px 9px;border:1px solid #24536a;border-radius:999px;background:rgba(14,48,65,.55);color:#a9c3ce;font-size:13px;line-height:1.25}

/* Project evidence popup: empty metrics disappear; methods are categories. */
.had-project-kpis{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
.had-project-kpis span[hidden]{display:none}
.had-project-dashboard>header p,.had-project-source-panel>p,.had-project-publications>p{font-size:13px!important}
.had-project-kpis small{font-size:12px!important}
.had-project-status{font-size:12px!important}
.had-project-method-panel{overflow:auto}
.had-project-method-chips{align-content:flex-start}
.had-project-empty{font-size:13px;color:#7999a8}
.had-source-flow b,.had-country-chips span,.had-project-output-list label,.had-project-output-list small,.had-project-no-output span{font-size:12px!important}
.had-project-output-list b{font-size:14px}

/* Publications: distinguish outputs from dissemination. */
.had-publications-v3{overflow-y:auto!important}
.had-publications-v3 .had-publication-dashboard{overflow:visible}
.had-publications-v3 .had-publication-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(175px,auto)}
.had-publications-v3 .had-dissemination-heading{margin-top:14px;padding-top:12px;border-top:1px solid #1c465a}
.had-publications-v3 .had-dissemination-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.had-publications-v3 .had-dashboard-card h3{font-size:14px}
.had-publications-v3 .had-dashboard-card>p{font-size:12px}

/* Teaching: no public placeholders for missing student totals. */
.had-teaching-v3{overflow-y:auto!important}
.had-teaching-philosophy{display:grid;grid-template-columns:minmax(250px,.65fr) minmax(0,1.35fr);gap:20px;align-items:center;padding:16px 18px}
.had-teaching-philosophy h2{margin:0 0 4px;font-size:18px}
.had-teaching-philosophy p{margin:0;color:#8ba7b3;font-size:14px}
.had-teaching-evidence{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}
.had-teaching-evidence span{padding:7px 10px;border:1px solid #245269;border-radius:999px;color:#9fbac5;font-size:13px}
.had-teaching-summary-kpis{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}
.had-teaching-summary-kpis small{font-size:12px!important}
.had-teaching-course-matrix.without-students .had-teaching-matrix-head,
.had-teaching-course-matrix.without-students>button{grid-template-columns:55px minmax(260px,1.35fr) minmax(190px,.9fr) minmax(120px,.5fr) 20px!important}
.had-teaching-course-matrix time,.had-teaching-course-matrix b,.had-teaching-course-matrix small,.had-teaching-course-matrix>button>span{font-size:13px!important}
.had-teaching-dimensions .had-section-title>span{display:none}

/* Credentials. */
.had-credentials-v3{overflow-y:auto!important}
.had-credential-list button b{font-size:14px}
.had-credential-list button small{font-size:12px}
.had-credential-detail{position:relative;overflow:auto}
.had-credential-image{width:min(220px,33%);max-height:180px;object-fit:contain;float:right;margin:0 0 14px 18px;border:1px solid #26566b;background:#eef4f6}
.had-credential-summary{max-width:780px;margin:14px 0;color:#8faab6;font-size:14px}
.had-credential-verify{display:inline-flex;align-items:center;gap:7px;margin-top:14px;padding:10px 13px;border:1px solid var(--had-accent);color:var(--had-accent);font-size:13px;text-decoration:none}

/* Blog: genuine featured image, readable heading and fully clickable card. */
.had-blog-v3{overflow-y:auto!important}
.had-featured-story{color:inherit;text-decoration:none}
.had-featured-story:hover{border-color:var(--had-accent)}
.had-story-visual{background-size:cover;background-position:center;min-height:100%}
.had-story-copy h2{font-size:clamp(30px,3vw,52px)!important;line-height:1.05}
.had-story-copy>p{font-size:14px!important;display:-webkit-box;overflow:hidden;-webkit-line-clamp:5;-webkit-box-orient:vertical}
.had-story-link{display:inline-flex;align-items:center;gap:8px;width:max-content;margin-top:14px;padding:10px 13px;border:1px solid var(--had-accent);color:var(--had-accent);font-size:13px;font-weight:700}
.had-blog-list button b{font-size:14px}
.had-blog-list button em,.had-blog-list button label{font-size:12px}

/* Code, data and research portfolio. */
.had-portfolio-v3{overflow-y:auto!important}
.had-portfolio-v3 .had-code-project label,.had-portfolio-v3 .had-code-project small{font-size:12px}
.had-portfolio-v3 .had-code-project b{font-size:14px}
.had-portfolio-v3 .had-code-project p{font-size:13px;line-height:1.45}
.had-portfolio-v3 .had-portfolio-toolbar{grid-template-columns:auto 1fr}

/* Contact. */
.had-contact-card h2{font-size:26px}
.had-contact-card p,.had-contact-card a,.had-contact-form label{font-size:14px}
.had-contact-form input,.had-contact-form textarea{line-height:1.45}

/* Collection dashboards: readable labels, wrapping filters and safe long text. */
.had-collection-screen{overflow-y:auto!important}
.had-collection-insight-note{min-height:48px}
.had-collection-insight-note b{font-size:13px!important;line-height:1.4}
.had-collection-insight-note small:empty{display:none}
.had-collection-header h1{font-size:clamp(30px,2.3vw,44px)}
.had-collection-kpis small{font-size:12px!important}
.had-collection-records .had-section-title h2{font-size:15px}
.had-collection-filter-row{grid-template-columns:minmax(230px,1fr) minmax(0,auto)}
.had-collection-filter-row .had-year-filter{max-width:none!important;overflow:visible!important;flex-wrap:wrap!important;justify-content:flex-end}
.had-year-filter button{min-width:44px;height:36px}
.had-scroll-list{scrollbar-gutter:stable}
.had-record-row{min-height:78px}
.had-record-row time{font-size:16px}
.had-record-row label{font-size:12px!important}
.had-record-row b{font-size:14px!important;line-height:1.25}
.had-record-row em,.had-record-row p{font-size:13px!important;line-height:1.4}
.had-record-row.is-doctoral{background:linear-gradient(90deg,rgba(246,184,74,.13),transparent 65%);border-left:3px solid #f6b84a}
.had-record-row.is-doctoral label{color:#f6b84a}
.had-analytics-panel{overflow:auto!important;padding:12px}
.had-analytics-title{min-height:31px}
.had-analytics-title span{font-size:13px!important;line-height:1.3}
.had-analytics-title em{font-size:12px!important}
.had-metric-bars>div{margin-top:8px}
.had-metric-bars span,.had-metric-bars em{font-size:13px!important;line-height:1.35}
.had-metric-bars span{white-space:normal;overflow-wrap:anywhere}
.had-facet-chips span,.had-dimension-groups small{font-size:12px!important}
.had-facet-chips span b{font-size:12px!important;white-space:normal;overflow-wrap:anywhere}
.had-advanced-year-bars span>em,.had-advanced-year-bars span>small,
.had-year-bars span>em,.had-year-bars span>small{font-size:12px!important}
.had-advanced-year-bars,.had-year-bars{min-height:150px}
.had-bubble-cloud{align-content:flex-start}
.had-bubble-cloud span{font-size:12px!important;line-height:1.2}
.had-map-location-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.had-map-location-list button{display:flex;align-items:center;gap:7px;min-height:34px;padding:6px 8px;border:1px solid #245269;background:#071c2a;color:#9db7c2;text-align:left;font-size:12px}
.had-map-location-list button span{color:var(--had-current-accent,var(--had-accent));font:700 12px ui-monospace,monospace}
.had-map-location-list button b{font-size:12px;font-weight:600}
.had-conference-profile-panel [data-had-conference-analytics-body="profile"]{display:grid!important;grid-template-rows:auto minmax(155px,1fr)!important;gap:7px;overflow:visible!important}
.had-conference-profile-dimensions{overflow:visible!important;max-height:none!important}
.had-conference-year-chart{min-height:155px}
.had-conference-year-chart .had-advanced-year-bars,.had-conference-year-chart .had-year-bars{min-height:135px}

/* Make long-label dashboards use the available width instead of overflowing. */
[data-had-persian-analytics-body="subjects"],
[data-had-journal-analytics-body="subjects"],
[data-had-teaching-analytics-body="fields"],
[data-had-media-analytics-body="platforms"],
[data-had-pedagogy-analytics-body="themes"]{min-width:0}

@media(max-width:1250px){
  .had-home-dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:auto}
  .had-project-group .had-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .had-research-v3 .had-research-layout{grid-template-columns:1fr}
  .had-research-side{position:static;grid-template-columns:1fr 1fr;display:grid}
}

@media(max-width:900px){
  body.had-theme{font-size:15px}
  .had-top-stream{display:none}
  .had-home-screen,.had-research-v3,.had-publications-v3,.had-teaching-v3,.had-credentials-v3,.had-blog-v3,.had-portfolio-v3,.had-collection-screen{overflow:visible!important}
  .had-home-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .had-project-group .had-project-grid,.had-publications-v3 .had-publication-card-grid,.had-publications-v3 .had-dissemination-grid,.had-research-side,.had-teaching-philosophy{grid-template-columns:1fr}
  .had-teaching-evidence{justify-content:flex-start}
  .had-teaching-course-matrix{overflow-x:auto}
  .had-teaching-course-matrix.without-students .had-teaching-matrix-head,
  .had-teaching-course-matrix.without-students>button{min-width:780px}
  .had-collection-filter-row{grid-template-columns:1fr}
  .had-collection-filter-row .had-year-filter{justify-content:flex-start}
  .had-credential-image{float:none;width:100%;max-height:230px;margin:0 0 14px}
}

@media(max-width:560px){
  .had-home-dashboard-grid{grid-template-columns:1fr}
  .had-project-group .had-project-grid{grid-template-columns:1fr}
  .had-screen-header h1,.had-collection-header h1{font-size:30px}
  .had-story-copy h2{font-size:30px!important}
}


/* Pedagogical programme hierarchy */
.had-programme-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .85rem 1rem;
  margin-bottom: .8rem;
  border: 1px solid rgba(0, 229, 255, .26);
  background: linear-gradient(135deg, rgba(0, 229, 255, .08), rgba(154, 118, 255, .05));
}
.had-programme-summary span { display: grid; gap: .2rem; }
.had-programme-summary b { color: var(--had-white, #eefbff); font-size: 14px; }
.had-programme-summary small { color: var(--had-muted, #8aa6b5); font-size: 12px; }
.had-programme-summary em {
  color: var(--had-cyan, #00e5ff);
  font-style: normal;
  font-family: var(--had-mono, monospace);
  font-size: 13px;
  white-space: nowrap;
}
@media (max-width: 680px) {
  .had-programme-summary { align-items: flex-start; flex-direction: column; }
  .had-programme-summary em { white-space: normal; }
}
