/* ======================================================================
   ASR PREMIUM PORTAL / COURSES OVERRIDE
   Paste this at the END of assets/css/styles.css
   ====================================================================== */

:root{
  --asr-gold:#d8b35a;
  --asr-gold-strong:#f0cf7a;
  --asr-gold-soft:rgba(216,179,90,.10);
  --asr-gold-line:rgba(216,179,90,.28);
  --asr-blue:#5d83ff;
  --asr-blue-soft:rgba(93,131,255,.10);
  --asr-panel:#0b111b;
  --asr-panel-2:#101827;
  --asr-border:rgba(151,170,201,.13);
}

/* ---------- Global portal polish ---------- */
.portal-main{
  background:
    radial-gradient(circle at 10% 0%,rgba(69,196,255,.07),transparent 28rem),
    radial-gradient(circle at 90% 2%,rgba(216,179,90,.055),transparent 25rem),
    transparent;
}

.ws-container{max-width:1240px;}

.portal-kicker,
.asr-gold-label{
  display:inline-block;
  color:var(--asr-gold-strong);
  font-size:.69rem;
  font-weight:850;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.ws-panel-card,
.portal-welcome,
.ws-welcome{
  border:1px solid var(--asr-border);
  background:linear-gradient(180deg,rgba(14,22,34,.90),rgba(7,12,20,.96));
  box-shadow:0 16px 42px rgba(0,0,0,.12);
}

.ws-panel-card::before{
  content:"";
  display:block;
  width:42px;
  height:2px;
  margin:-1px 0 18px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--asr-gold),transparent);
}

.button-gold{
  background:linear-gradient(180deg,#efd078,#d9b356);
  border-color:#f1d487;
  color:#11100b;
  box-shadow:0 8px 24px rgba(216,179,90,.12);
}
.button-gold:hover{
  background:linear-gradient(180deg,#f4d98f,#e1bd64);
  color:#0e0d09;
}

/* ---------- Courses top area ---------- */
.asr-learning-topbar{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:32px;
  padding:34px 0 26px;
  border-bottom:1px solid rgba(151,170,201,.10);
}
.asr-learning-topbar h1{
  margin:5px 0 8px;
  font-size:clamp(2.2rem,4vw,3.7rem);
}
.asr-learning-topbar p{
  margin:0;
  max-width:680px;
  color:#8f9db1;
}

.asr-learning-summary{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(520px,.95fr);
  gap:24px;
  align-items:center;
  margin:26px 0 18px;
  padding:22px 24px;
  border:1px solid var(--asr-border);
  border-radius:20px;
  background:
    linear-gradient(130deg,rgba(15,24,38,.96),rgba(7,12,20,.98));
  position:relative;
  overflow:hidden;
}
.asr-learning-summary::after{
  content:"";
  position:absolute;
  width:260px;height:260px;
  right:-120px;top:-150px;
  border:1px solid rgba(216,179,90,.11);
  border-radius:50%;
  box-shadow:0 0 0 42px rgba(216,179,90,.018),0 0 0 84px rgba(216,179,90,.012);
  pointer-events:none;
}
.asr-learning-summary-main h2{
  margin:5px 0 8px;
  font-size:1.75rem;
}
.asr-learning-summary-main p{
  margin:0;
  max-width:620px;
  color:#8290a4;
  font-size:.87rem;
}
.asr-learning-summary-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  position:relative;
  z-index:1;
}
.asr-learning-summary-stats article{
  min-height:86px;
  padding:13px 14px;
  border:1px solid rgba(151,170,201,.10);
  border-radius:13px;
  background:rgba(255,255,255,.018);
}
.asr-learning-summary-stats span,
.asr-learning-summary-stats small{
  display:block;
  color:#718198;
  font-size:.67rem;
}
.asr-learning-summary-stats strong{
  display:block;
  margin-top:5px;
  color:#f6f8fb;
  font-size:1.3rem;
  letter-spacing:-.03em;
}
.asr-learning-summary-stats .next-session-stat{
  border-color:rgba(216,179,90,.20);
  background:rgba(216,179,90,.035);
}
.asr-learning-summary-stats .next-session-stat strong{color:var(--asr-gold-strong);}
.asr-learning-summary-stats .next-session-stat small{
  margin-top:3px;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}

/* ---------- Upcoming meeting ---------- */
.asr-next-session{
  display:grid;
  grid-template-columns:64px minmax(0,1fr) auto;
  gap:16px 20px;
  align-items:center;
  margin:0 0 28px;
  padding:15px 17px;
  border:1px solid rgba(216,179,90,.17);
  border-radius:16px;
  background:linear-gradient(90deg,rgba(216,179,90,.045),rgba(10,16,25,.88) 38%);
}
.asr-next-session-date{
  display:grid;
  place-items:center;
  min-height:62px;
  border:1px solid rgba(216,179,90,.23);
  border-radius:12px;
  background:rgba(216,179,90,.06);
}
.asr-next-session-date span{
  color:var(--asr-gold-strong);
  font-size:.60rem;
  font-weight:850;
  letter-spacing:.1em;
}
.asr-next-session-date strong{
  margin-top:-5px;
  font-size:1.42rem;
}
.asr-next-session-copy h3{margin:3px 0 4px;font-size:1rem;}
.asr-next-session-copy p{margin:0;color:#7e8da2;font-size:.78rem;}
.asr-next-session-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.asr-inline-gate{
  grid-column:2/-1;
  display:grid;
  grid-template-columns:minmax(180px,260px) auto;
  gap:8px;
  max-width:430px;
}
.asr-next-session>.form-status{grid-column:2/-1;margin:0;}

/* ---------- Library heading / filters ---------- */
.asr-course-library-head{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:24px;
  margin:34px 0 14px;
}
.asr-course-library-head h2{margin:4px 0 0;font-size:1.55rem;}
.asr-course-tools{
  display:grid;
  grid-template-columns:240px 190px;
  gap:8px;
}
.asr-course-tools input,
.asr-course-tools select{
  min-height:42px;
  padding:9px 11px;
  border-radius:10px!important;
  font-size:.8rem;
}

/* ---------- Course rows - D+A-inspired, ASR identity ---------- */
.asr-course-stack{display:grid;gap:18px;padding-bottom:56px;}

.asr-course-section{
  padding:20px;
  border:1px solid rgba(151,170,201,.14);
  border-radius:20px;
  background:linear-gradient(180deg,rgba(12,19,30,.88),rgba(7,12,19,.97));
  position:relative;
  overflow:hidden;
}
.asr-course-section::before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;
  width:2px;
  background:linear-gradient(180deg,var(--asr-blue),rgba(93,131,255,.06));
  opacity:.75;
}
.asr-course-section.is-locked::before{
  background:linear-gradient(180deg,var(--asr-gold),rgba(216,179,90,.05));
}

.asr-course-section-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) 205px;
  gap:22px;
  align-items:start;
  margin-bottom:15px;
}
.asr-course-meta-line{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
  margin-bottom:7px;
}
.asr-course-code{
  color:var(--asr-gold-strong);
  font-size:.64rem;
  font-weight:850;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.asr-course-team{
  color:#708198;
  font-size:.67rem;
  font-weight:680;
}
.asr-course-code::after{
  content:"";
  display:inline-block;
  width:3px;height:3px;
  margin:0 1px 2px 8px;
  border-radius:50%;
  background:var(--asr-gold);
}
.asr-course-title-line{
  display:flex;
  align-items:baseline;
  gap:12px;
  flex-wrap:wrap;
}
.asr-course-title-line h3{
  margin:0;
  font-size:1.14rem;
  letter-spacing:-.025em;
}
.asr-course-title-line>span{
  color:#687891;
  font-size:.72rem;
}
.asr-course-title-wrap>p{
  margin:7px 0 0;
  max-width:780px;
  color:#8290a4;
  font-size:.82rem;
  line-height:1.5;
}

.asr-course-progress-box{
  padding-top:2px;
}
.asr-course-progress-box>div:first-child{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
}
.asr-course-progress-box span{color:#77879c;font-size:.66rem;}
.asr-course-progress-box strong{font-size:.8rem;color:#dce4ef;}
.asr-course-progress-track{
  height:5px;
  margin:8px 0 7px;
  overflow:hidden;
  border-radius:999px;
  background:#141c29;
}
.asr-course-progress-track>span{
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#4167de,#6a90ff 68%,var(--asr-gold-strong));
}
.asr-course-progress-box small{
  display:block;
  color:#8a7960;
  text-align:right;
  font-size:.63rem;
}
.asr-course-progress-box small.ok{color:#69c9a7;}

/* ---------- Session lock ---------- */
.asr-session-lock{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(340px,auto);
  gap:14px 18px;
  align-items:center;
  margin:0 0 14px;
  padding:12px 13px;
  border:1px solid var(--asr-gold-line);
  border-radius:13px;
  background:linear-gradient(90deg,rgba(216,179,90,.07),rgba(216,179,90,.018));
}
.asr-session-lock-copy{display:flex;gap:11px;align-items:center;}
.asr-lock-icon{
  width:32px;height:32px;
  display:grid;place-items:center;
  flex:0 0 32px;
  border:1px solid rgba(216,179,90,.28);
  border-radius:10px;
  color:var(--asr-gold-strong);
  background:rgba(216,179,90,.05);
}
.asr-session-lock-copy strong{display:block;font-size:.79rem;}
.asr-session-lock-copy p{margin:2px 0 0;color:#7f8c9e;font-size:.70rem;line-height:1.42;}
.asr-session-form{display:grid;grid-template-columns:minmax(160px,1fr) auto;gap:8px;}
.asr-session-form input{min-height:40px;padding:8px 10px;font-size:.78rem;}
.asr-session-lock>.form-status{grid-column:1/-1;margin:0;}
.asr-capstone-lock{
  display:flex;gap:8px;align-items:center;
  margin:0 0 14px;padding:11px 13px;
  border:1px solid var(--asr-gold-line);border-radius:12px;background:var(--asr-gold-soft);
}
.asr-capstone-lock strong{color:var(--asr-gold-strong);font-size:.78rem;}
.asr-capstone-lock span{color:#8f8a7d;font-size:.72rem;}

/* ---------- Three course cards ---------- */
.asr-course-cards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.asr-course-tile{
  min-width:0;
  min-height:188px;
  margin:0!important;
  border:1px solid rgba(91,124,204,.29)!important;
  border-radius:17px!important;
  background:
    radial-gradient(circle at 80% 0%,rgba(74,109,202,.08),transparent 45%),
    linear-gradient(145deg,rgba(17,26,48,.94),rgba(8,14,28,.98));
  overflow:hidden;
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
.asr-course-tile:hover{
  transform:translateY(-2px);
  border-color:rgba(104,142,241,.44)!important;
}
.asr-course-tile.asr-tone-gold{
  border-color:rgba(216,179,90,.34)!important;
  background:
    radial-gradient(circle at 80% 0%,rgba(216,179,90,.08),transparent 45%),
    linear-gradient(145deg,rgba(30,26,18,.86),rgba(10,13,20,.98));
}
.asr-course-tile.asr-tone-gold:hover{border-color:rgba(232,199,119,.52)!important;}
.asr-course-tile.is-locked{opacity:.58;filter:saturate(.75);padding:18px;}

.asr-course-tile>summary{
  list-style:none;
  min-height:188px;
  padding:18px!important;
  cursor:pointer;
  display:flex;
  flex-direction:column;
}
.asr-course-tile>summary::-webkit-details-marker{display:none;}
.asr-course-tile-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:9px;
}
.asr-course-pill{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:5px 10px;
  border:1px solid rgba(93,131,255,.46);
  border-radius:999px;
  background:rgba(93,131,255,.08);
  color:#7fa0ff;
  font-size:.62rem;
  font-weight:850;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.asr-tone-gold .asr-course-pill{
  border-color:rgba(216,179,90,.40);
  background:rgba(216,179,90,.07);
  color:var(--asr-gold-strong);
}
.asr-course-state{
  color:#71819a;
  font-size:.64rem;
  font-weight:700;
}
.asr-course-tile-copy{margin:17px 0 0;}
.asr-course-tile-copy h4{
  margin:0 0 7px;
  font-size:1.12rem;
  letter-spacing:-.025em;
}
.asr-course-tile-copy p{
  margin:0;
  max-width:390px;
  color:#7f8ba0;
  font-size:.82rem;
  line-height:1.55;
}
.asr-course-link{
  margin-top:auto;
  padding-top:17px;
  color:#7196ff;
  font-size:.78rem;
  font-weight:780;
}
.asr-tone-gold .asr-course-link{color:var(--asr-gold-strong);}
.asr-course-link.muted-link{color:#807761;}

.asr-course-drawer{
  padding:6px 16px 15px;
  border-top:1px solid rgba(151,170,201,.09);
  background:rgba(4,8,14,.32);
}
.asr-resource-list{display:grid;gap:0;}
.asr-resource-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:52px;
  padding:10px 2px;
  border-bottom:1px solid rgba(151,170,201,.08);
}
.asr-resource-item:last-child{border-bottom:0;}
.asr-resource-copy span,
.asr-resource-copy strong,
.asr-resource-copy small{display:block;}
.asr-resource-copy span{
  color:#61718a;
  font-size:.56rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.085em;
}
.asr-resource-copy strong{margin-top:2px;font-size:.77rem;}
.asr-resource-copy small{margin-top:1px;color:#617086;font-size:.60rem;}
.asr-mini-action,
.asr-text-action{
  border:0;
  background:transparent;
  color:#7ca0ff;
  padding:0;
  font-size:.72rem;
  font-weight:760;
  cursor:pointer;
}
.asr-tone-gold .asr-mini-action{color:var(--asr-gold-strong);}
.asr-mini-action:hover,.asr-text-action:hover{color:#a9c0ff;}
.asr-text-action:disabled{opacity:.45;cursor:not-allowed;}
.asr-course-empty{margin:11px 0 2px;color:#6e7c90;font-size:.72rem;}

.asr-assignment-list{display:grid;gap:7px;margin-top:8px;}
.asr-assignment-list article{
  padding:10px 11px;
  border:1px solid rgba(216,179,90,.13);
  border-radius:10px;
  background:rgba(216,179,90,.025);
}
.asr-assignment-list article>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.asr-assignment-list article span{color:var(--asr-gold-strong);font-size:.56rem;text-transform:uppercase;letter-spacing:.08em;font-weight:850;}
.asr-assignment-list article strong{font-size:.76rem;}
.asr-assignment-list article small{display:block;margin-top:3px;color:#817967;font-size:.61rem;}
.asr-assignment-list article p{margin:5px 0 0;color:#7e8a9b;font-size:.69rem;}

.asr-course-footer{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  margin-top:13px;
  padding-top:12px;
  border-top:1px solid rgba(151,170,201,.08);
  color:#68778d;
  font-size:.68rem;
}

/* ---------- Responsive ---------- */
@media (max-width:1050px){
  .asr-learning-summary{grid-template-columns:1fr;}
  .asr-course-cards{grid-template-columns:1fr 1fr;}
  .asr-course-cards>*:last-child{grid-column:1/-1;}
  .asr-course-section-head{grid-template-columns:1fr 190px;}
}

@media (max-width:760px){
  .asr-learning-topbar,
  .asr-course-library-head{align-items:flex-start;flex-direction:column;}
  .asr-learning-summary{padding:17px;}
  .asr-learning-summary-stats{grid-template-columns:1fr 1fr;}
  .asr-next-session{grid-template-columns:55px 1fr;}
  .asr-next-session-actions{grid-column:1/-1;justify-content:flex-start;}
  .asr-inline-gate{grid-column:1/-1;grid-template-columns:1fr;max-width:none;}
  .asr-course-tools{width:100%;grid-template-columns:1fr;}
  .asr-course-section{padding:15px;}
  .asr-course-section-head{grid-template-columns:1fr;gap:12px;}
  .asr-course-progress-box{max-width:320px;}
  .asr-course-progress-box small{text-align:left;}
  .asr-session-lock{grid-template-columns:1fr;}
  .asr-session-form{grid-template-columns:1fr;}
  .asr-course-cards{grid-template-columns:1fr;}
  .asr-course-cards>*:last-child{grid-column:auto;}
  .asr-course-tile,.asr-course-tile>summary{min-height:0;}
  .asr-course-footer{align-items:flex-start;flex-direction:column;}
}
/* ======================================================================
   ASR ECOSYSTEM WORKSPACE v8.5.0 — PREMIUM UNIVERSAL UI
   Visual language: deep navy, restrained cobalt, warm gold, generous space.
   ====================================================================== */

:root {
  --asr-gold: #d8b35a;
  --asr-gold-2: #f0cf7a;
  --asr-gold-soft: rgba(216,179,90,.08);
  --asr-gold-line: rgba(216,179,90,.24);
  --asr-blue: #5d83ff;
  --asr-blue-2: #7ca0ff;
  --asr-blue-soft: rgba(93,131,255,.09);
  --asr-ink: #f6f8fc;
  --asr-muted: #8d9bb0;
  --asr-muted-2: #6f8098;
  --asr-bg: #060a11;
  --asr-bg-2: #080d16;
  --asr-panel: #0b111c;
  --asr-panel-2: #0f1725;
  --asr-panel-3: #111b2c;
  --asr-line: rgba(149,169,202,.13);
  --asr-line-strong: rgba(149,169,202,.22);
  --asr-shadow: 0 24px 64px rgba(0,0,0,.22);
  --asr-radius-xl: 24px;
  --asr-radius-lg: 18px;
  --asr-radius-md: 13px;
}

html { scroll-behavior: smooth; }
body { background: var(--asr-bg); }

body.portal-body,
.portal-main {
  background:
    radial-gradient(circle at 6% -8%, rgba(62,118,255,.10), transparent 31rem),
    radial-gradient(circle at 95% 1%, rgba(216,179,90,.055), transparent 27rem),
    linear-gradient(180deg, #060a11 0%, #070c14 44%, #060a11 100%);
}

.portal-main { min-height: calc(100vh - 80px); padding: 30px 0 68px; }
.ws-container { width: min(1280px, calc(100% - 36px)); max-width: 1280px; }

/* --- typography / section rhythm ------------------------------------ */
.portal-kicker,
.asr-gold-label,
.publications-hero .eyebrow,
.page-hero .eyebrow {
  color: var(--asr-gold-2) !important;
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.portal-muted,
.form-note,
.ws-panel-card > p,
.portal-section-head > p { color: var(--asr-muted); }

.portal-section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 18px;
}
.portal-section-head h2 { margin: 4px 0 0; font-size: clamp(1.2rem, 2vw, 1.55rem); letter-spacing: -.025em; }
.portal-section-head p { max-width: 560px; margin: 0; font-size: .82rem; line-height: 1.55; }

/* --- universal welcome / dashboard hero ------------------------------ */
.portal-welcome,
.ws-welcome {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: end;
  gap: 28px;
  margin: 0 0 22px;
  padding: 29px 30px;
  border: 1px solid var(--asr-line);
  border-radius: var(--asr-radius-xl);
  background:
    radial-gradient(circle at 89% 10%, rgba(216,179,90,.055), transparent 24rem),
    linear-gradient(135deg, rgba(15,24,39,.97), rgba(7,12,20,.99));
  box-shadow: var(--asr-shadow);
}
.portal-welcome::before,
.ws-welcome::before {
  content: "";
  position: absolute;
  inset: 0 auto auto 0;
  width: 42%;
  height: 2px;
  background: linear-gradient(90deg, var(--asr-gold), var(--asr-blue), transparent);
  opacity: .9;
}
.portal-welcome::after,
.ws-welcome::after {
  content: "";
  position: absolute;
  width: 260px;
  height: 260px;
  right: -150px;
  top: -175px;
  border-radius: 50%;
  border: 1px solid rgba(216,179,90,.09);
  box-shadow: 0 0 0 42px rgba(216,179,90,.014), 0 0 0 84px rgba(93,131,255,.012);
  pointer-events: none;
}
.portal-welcome > *, .ws-welcome > * { position: relative; z-index: 1; }
.portal-welcome h1,
.ws-welcome h1 { margin: 5px 0 8px; max-width: 850px; font-size: clamp(1.8rem, 3.4vw, 2.75rem); letter-spacing: -.045em; }
.portal-welcome p,
.ws-welcome p { margin: 0; max-width: 770px; color: var(--asr-muted); font-size: .9rem; line-height: 1.55; }
.portal-welcome .button-row,
.ws-welcome .button-row { justify-content: flex-end; max-width: 520px; }

/* --- action buttons --------------------------------------------------- */
.button { border-radius: 11px; font-weight: 760; letter-spacing: -.01em; box-shadow: none; transition: transform .16s ease, border-color .16s ease, background .16s ease, color .16s ease; }
.button:hover { transform: translateY(-1px); }
.button-primary {
  border-color: rgba(91,132,255,.55) !important;
  background: linear-gradient(180deg, #5d83ff, #456ae0) !important;
  color: #fff !important;
}
.button-secondary,
.button-soft {
  border-color: var(--asr-line-strong) !important;
  background: rgba(255,255,255,.025) !important;
  color: #cbd4e2 !important;
}
.button-secondary:hover,
.button-soft:hover { border-color: rgba(216,179,90,.28) !important; color: var(--asr-gold-2) !important; background: rgba(216,179,90,.045) !important; }
.button-gold,
.publication-actions .button-primary {
  border-color: #efd385 !important;
  background: linear-gradient(180deg, #f1d486, #d9b55b) !important;
  color: #10100c !important;
}
.button-danger { border-radius: 11px; }
.button-row { gap: 9px; }

/* --- metric / journey cards ----------------------------------------- */
.ws-metric-grid,
.metric-grid,
.admin-metrics {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 11px;
  margin: 0 0 22px;
}
.ws-metric-grid article,
.metric-grid article,
.admin-metrics article {
  min-height: 105px;
  padding: 17px 18px;
  border: 1px solid var(--asr-line);
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(14,22,35,.88), rgba(8,13,21,.95));
  box-shadow: 0 12px 32px rgba(0,0,0,.10);
}
.ws-metric-grid article:first-child,
.metric-grid article:first-child { border-top-color: rgba(216,179,90,.32); }
.ws-metric-grid span,
.metric-grid span,
.admin-metrics span { color: var(--asr-muted-2); font-size: .66rem; font-weight: 720; letter-spacing: .03em; }
.ws-metric-grid strong,
.metric-grid strong,
.admin-metrics strong { display: block; margin-top: 7px; color: var(--asr-ink); font-size: 1.36rem; letter-spacing: -.035em; }
.ws-metric-grid small,
.metric-grid small,
.admin-metrics small { display: block; margin-top: 4px; color: #65768e; font-size: .65rem; line-height: 1.35; }

.ws-journey,
.trainee-journey {
  margin: 0 0 22px;
  border: 1px solid var(--asr-line);
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(15,24,38,.94), rgba(8,13,21,.98));
  box-shadow: 0 16px 40px rgba(0,0,0,.12);
}
.ws-week-badge { border-color: var(--asr-gold-line) !important; background: var(--asr-gold-soft) !important; color: var(--asr-gold-2) !important; }
.ws-progress-track { height: 6px; background: #121a27; border-radius: 999px; overflow: hidden; }
.ws-progress-track span { background: linear-gradient(90deg, #4e75ec, #6b9dff 72%, var(--asr-gold-2)); border-radius: inherit; }

/* --- tabs: compact, horizontal, elegant ------------------------------ */
.ws-tabs {
  position: sticky;
  top: 76px;
  z-index: 20;
  display: flex;
  gap: 4px;
  margin: 0 0 18px;
  padding: 6px;
  overflow-x: auto;
  scrollbar-width: none;
  border: 1px solid var(--asr-line);
  border-radius: 14px;
  background: rgba(7,12,20,.86);
  backdrop-filter: blur(16px);
  box-shadow: 0 14px 34px rgba(0,0,0,.15);
}
.ws-tabs::-webkit-scrollbar { display: none; }
.ws-tabs button,
.ws-tabs a {
  flex: 0 0 auto;
  min-height: 38px;
  padding: 8px 13px;
  border: 1px solid transparent;
  border-radius: 9px;
  background: transparent;
  color: #8493a8;
  font-size: .72rem;
  font-weight: 760;
}
.ws-tabs button:hover,
.ws-tabs a:hover { color: #dfe6f0; background: rgba(255,255,255,.025); }
.ws-tabs button.active,
.ws-tabs a.active {
  border-color: rgba(216,179,90,.22);
  background: linear-gradient(180deg, rgba(216,179,90,.09), rgba(216,179,90,.035));
  color: var(--asr-gold-2);
}
.ws-panel { padding-top: 2px; }

/* --- panels / cards --------------------------------------------------- */
.ws-panel-card,
.admin-section,
.portal-capstone,
.portal-certificate-box,
.studio-create,
.studio-list-section {
  position: relative;
  margin-bottom: 18px;
  padding: 23px 24px;
  border: 1px solid var(--asr-line);
  border-radius: var(--asr-radius-lg);
  background: linear-gradient(180deg, rgba(13,21,33,.91), rgba(7,12,20,.97));
  box-shadow: 0 16px 40px rgba(0,0,0,.10);
}
.ws-panel-card::before,
.admin-section::before,
.studio-create::before,
.studio-list-section::before {
  content: "";
  display: block;
  width: 38px;
  height: 2px;
  margin: -24px 0 19px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--asr-gold), transparent);
}
.ws-grid-2 { gap: 15px; }
.ws-project-grid { gap: 13px; }
.ws-project-grid > .card,
.card,
.ws-project-summary,
.ws-submission,
.ecosystem-row,
.studio-item,
.interview-question {
  border-color: var(--asr-line) !important;
  border-radius: 15px !important;
  background: linear-gradient(180deg, rgba(15,23,37,.90), rgba(8,13,22,.97)) !important;
}
.ws-project-grid > .card:hover,
.studio-item:hover,
.ecosystem-row:hover { border-color: rgba(216,179,90,.22) !important; }

/* --- task board / cards ---------------------------------------------- */
.ws-board { gap: 12px; }
.ws-board-column {
  min-width: 250px;
  padding: 13px;
  border: 1px solid var(--asr-line);
  border-radius: 15px;
  background: rgba(8,13,21,.68);
}
.ws-task-card {
  margin-bottom: 9px;
  padding: 14px 14px 13px;
  border: 1px solid rgba(149,169,202,.13);
  border-radius: 13px;
  background: linear-gradient(180deg, rgba(16,25,40,.92), rgba(10,16,26,.98));
  box-shadow: 0 8px 22px rgba(0,0,0,.11);
}
.ws-task-card:hover { border-color: rgba(93,131,255,.32); }
.ws-task-top { gap: 10px; }
.ws-task-meta { color: var(--asr-muted-2); }
.ws-assignee-row { margin-top: 10px; }
.ws-avatar { border-color: var(--asr-gold-line); background: var(--asr-gold-soft); color: var(--asr-gold-2); }

/* --- Gantt ------------------------------------------------------------ */
.ws-gantt {
  overflow: auto;
  border: 1px solid var(--asr-line);
  border-radius: 15px;
  background: rgba(5,9,15,.56);
}
.ws-gantt-scale,
.ws-gantt-row { min-width: 900px; }
.ws-gantt-row { border-top-color: rgba(149,169,202,.08); }
.ws-gantt-label { background: rgba(8,13,21,.88); }
.ws-gantt-line { background-image: linear-gradient(to right, rgba(149,169,202,.055) 1px, transparent 1px); }
.ws-gantt-bar { border-radius: 8px; box-shadow: 0 7px 18px rgba(0,0,0,.18); }

/* --- status / role chips --------------------------------------------- */
.status-pill,
.ws-status,
.ws-role {
  border-radius: 999px !important;
  font-size: .62rem !important;
  font-weight: 780 !important;
  letter-spacing: .025em;
}
.status-pill.ok { border-color: rgba(88,205,162,.26); background: rgba(88,205,162,.07); }

/* --- sessions / meetings --------------------------------------------- */
.ws-session-stack { display: grid; gap: 11px; }
.ws-session-card,
.member-meeting-card,
.meeting-card {
  border: 1px solid var(--asr-line) !important;
  border-radius: 17px !important;
  background: linear-gradient(180deg, rgba(14,22,35,.92), rgba(8,13,22,.98)) !important;
  box-shadow: 0 12px 30px rgba(0,0,0,.09);
}
.ws-session-card { padding: 18px; }
.member-meeting-card { position: relative; overflow: hidden; }
.member-meeting-card::before,
.meeting-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 2px;
  background: linear-gradient(180deg, var(--asr-gold), rgba(93,131,255,.35));
}
.member-meeting-time { color: var(--asr-gold-2); }
.ws-session-gate,
.portal-alert,
.notice {
  border-color: rgba(216,179,90,.18) !important;
  border-radius: 13px !important;
  background: linear-gradient(90deg, rgba(216,179,90,.055), rgba(216,179,90,.018)) !important;
}

/* --- chat / discussions ---------------------------------------------- */
.ws-chat-feed,
.ws-discussion-feed,
.ws-comments {
  min-height: 280px;
  max-height: 560px;
  padding: 15px;
  border: 1px solid var(--asr-line);
  border-radius: 15px;
  background: rgba(5,9,15,.56);
}
.ws-chat-message {
  max-width: 82%;
  margin-bottom: 10px;
  padding: 11px 13px;
  border: 1px solid rgba(149,169,202,.10);
  border-radius: 13px;
  background: rgba(17,26,42,.84);
}
.ws-discussion-feed .ws-submission,
.ws-comments .ws-submission { padding: 13px; }

/* --- archives / files ------------------------------------------------ */
.ws-archive-group,
.resource-list {
  border-radius: 14px;
}
.resource-row {
  padding: 12px 5px;
  border-bottom-color: rgba(149,169,202,.08) !important;
}
.resource-row:last-child { border-bottom: 0; }
.resource-type { color: var(--asr-gold-2); }

/* --- tables ----------------------------------------------------------- */
.table-scroll,
.admin-table-wrap {
  overflow: auto;
  border: 1px solid var(--asr-line);
  border-radius: 14px;
  background: rgba(6,10,17,.50);
}
.admin-table { width: 100%; border-collapse: collapse; }
.admin-table th {
  position: sticky;
  top: 0;
  z-index: 2;
  padding: 12px 13px;
  background: #0c1421;
  color: #8191a8;
  font-size: .62rem;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.admin-table td { padding: 13px; border-top: 1px solid rgba(149,169,202,.075); color: #c8d1df; font-size: .76rem; }
.admin-table tr:hover td { background: rgba(93,131,255,.025); }
.table-actions { gap: 6px; }

/* --- forms: spacious, calm, premium ---------------------------------- */
.form-card,
.portal-form,
.publication-form,
.login-card {
  border: 1px solid var(--asr-line) !important;
  border-radius: 20px !important;
  background:
    radial-gradient(circle at 95% 0%, rgba(216,179,90,.035), transparent 19rem),
    linear-gradient(180deg, rgba(14,22,35,.94), rgba(7,12,20,.98)) !important;
  box-shadow: 0 20px 52px rgba(0,0,0,.18);
}
.form-card,
.portal-form,
.publication-form { padding: 26px !important; }
.portal-form.compact { padding: 20px !important; }
.form-grid { gap: 19px 20px !important; }
.field { min-width: 0; }
.field label {
  display: block;
  margin-bottom: 7px;
  color: #cbd4e2;
  font-size: .70rem;
  font-weight: 760;
  letter-spacing: .015em;
}
.field label::first-letter { color: inherit; }
input,
select,
textarea {
  border: 1px solid rgba(149,169,202,.18) !important;
  border-radius: 11px !important;
  background: rgba(4,9,16,.70) !important;
  color: #eef2f8 !important;
  outline: none;
  transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
input,
select { min-height: 48px; padding: 11px 13px !important; }
textarea { min-height: 128px; padding: 12px 13px !important; line-height: 1.55; resize: vertical; }
input::placeholder,
textarea::placeholder { color: #54647b; }
input:focus,
select:focus,
textarea:focus {
  border-color: rgba(216,179,90,.52) !important;
  box-shadow: 0 0 0 3px rgba(216,179,90,.08) !important;
  background: rgba(7,12,20,.90) !important;
}
input[type="file"] { min-height: 56px; padding: 9px !important; color: #8d9bb0 !important; }
input[type="file"]::file-selector-button {
  margin-right: 10px;
  padding: 8px 11px;
  border: 1px solid rgba(216,179,90,.25);
  border-radius: 8px;
  background: rgba(216,179,90,.06);
  color: var(--asr-gold-2);
  font-weight: 720;
}
.form-note { margin-top: 7px; font-size: .66rem; line-height: 1.5; }
.form-status { font-size: .72rem; }
.inline-form { gap: 10px !important; align-items: end; }
.inline-form input,
.inline-form select { min-width: 170px; }
.check-row { padding: 10px 0; gap: 10px; }
.check-row input { min-height: auto; }

.cv-drop {
  padding: 16px;
  border: 1px dashed rgba(216,179,90,.24);
  border-radius: 14px;
  background: rgba(216,179,90,.025);
}

/* public application — extra air */
.apply-layout { gap: clamp(34px, 5vw, 70px); align-items: start; }
.application-card { padding: 30px !important; }
.application-card .form-grid { gap: 20px 22px !important; }
.application-card .field-full + .field-full { margin-top: 2px; }
.apply-copy .notice { margin-top: 24px; padding: 16px 17px; }

/* login */
.portal-login-shell { min-height: 68vh; display: grid; place-items: center; padding: 38px 0; }
.login-card { position: relative; overflow: hidden; width: min(500px, 100%); padding: 36px !important; }
.login-card::before { content:""; position:absolute; left:0; right:0; top:0; height:2px; background: linear-gradient(90deg,var(--asr-gold),var(--asr-blue),transparent); }
.login-card .brand-mark { margin-bottom: 14px; }
.login-card h1 { margin: 5px 0 7px; font-size: 2.1rem; }
.login-card .lead { margin-bottom: 25px; font-size: .82rem; color: var(--asr-muted); }

/* modal */
.ws-modal { backdrop-filter: blur(12px); background: rgba(2,5,9,.72); }
.ws-modal-card { width: min(760px, calc(100% - 28px)); max-height: 88vh; overflow: auto; padding: 27px !important; border: 1px solid rgba(216,179,90,.18) !important; border-radius: 20px !important; background: linear-gradient(180deg,#0e1725,#080d16) !important; box-shadow: 0 30px 90px rgba(0,0,0,.48); }

/* --- publication catalogue ------------------------------------------ */
.publications-hero { padding-bottom: 46px; }
.publications-hero h1 { max-width: 980px; }
.publication-toolbar {
  display: grid;
  grid-template-columns: minmax(260px,1fr) 180px 180px;
  gap: 9px;
  margin-bottom: 20px;
}
.publication-toolbar input,
.publication-toolbar select { min-height: 44px; }
.publication-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 17px; }
.publication-card {
  position: relative;
  overflow: hidden;
  min-height: 270px;
  padding: 25px !important;
  border: 1px solid var(--asr-line) !important;
  border-radius: 20px !important;
  background: linear-gradient(180deg, rgba(15,23,36,.94), rgba(8,13,21,.99)) !important;
  transition: transform .18s ease, border-color .18s ease;
}
.publication-card::before { content:""; position:absolute; inset:0 auto auto 0; width:46%; height:2px; background:linear-gradient(90deg,var(--asr-gold),var(--asr-blue),transparent); }
.publication-card:hover { transform: translateY(-3px); border-color: rgba(216,179,90,.25) !important; }
.publication-icon { border-color: rgba(216,179,90,.25) !important; background: var(--asr-gold-soft) !important; color: var(--asr-gold-2) !important; }
.publication-meta { color: #75869d; }
.publication-tags { gap: 6px; }
.publication-tags span { padding: 4px 8px; border: 1px solid rgba(216,179,90,.10); border-radius: 999px; background: rgba(216,179,90,.025); color: #8f9bb0; font-size: .60rem; }
.publication-actions { margin-top: auto; gap: 8px; }

/* --- publication studio --------------------------------------------- */
.studio-create { margin-bottom: 24px; }
.studio-item { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 18px; padding: 18px 19px !important; margin-bottom: 10px; }
.studio-item-actions { align-self: center; justify-content: flex-end; gap: 7px; }

/* --- company / partnerships / ecosystem ----------------------------- */
.ws-project-summary,
.ecosystem-row { padding: 17px 18px !important; }
.ws-detail-section { padding: 16px 0; border-top-color: rgba(149,169,202,.08); }
.ws-detail-status { gap: 7px; }
.module-facts { gap: 8px; }
.module-facts span { border-color: rgba(149,169,202,.10); background: rgba(255,255,255,.018); }

/* --- archive presentation ------------------------------------------- */
.ws-archive-group { padding: 17px; border: 1px solid var(--asr-line); background: rgba(8,13,21,.70); }
.ws-archive-group h3 { color: var(--asr-gold-2); font-size: .78rem; letter-spacing: .04em; }

/* --- public site polish ---------------------------------------------- */
.card,
.hero-card,
.cta-band,
.meeting-card,
.verification-card {
  border-color: var(--asr-line);
}
.section-soft { background: rgba(8,13,21,.72); }
.icon-box { border-color: rgba(216,179,90,.22); color: var(--asr-gold-2); background: rgba(216,179,90,.04); }

/* --- responsive ------------------------------------------------------- */
@media (max-width: 1100px) {
  .portal-welcome,.ws-welcome { grid-template-columns: 1fr; align-items: start; }
  .portal-welcome .button-row,.ws-welcome .button-row { justify-content: flex-start; max-width: none; }
  .ws-metric-grid,.metric-grid,.admin-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .publication-grid { grid-template-columns: 1fr; }
}

@media (max-width: 820px) {
  .portal-main { padding-top: 20px; }
  .ws-container { width: min(100% - 24px,1280px); }
  .portal-welcome,.ws-welcome { padding: 23px 21px; border-radius: 19px; }
  .ws-tabs { top: 66px; }
  .form-grid { grid-template-columns: 1fr !important; }
  .field-full { grid-column: auto !important; }
  .publication-toolbar { grid-template-columns: 1fr; }
  .studio-item { grid-template-columns: 1fr; }
  .studio-item-actions { justify-content: flex-start; }
}

@media (max-width: 620px) {
  .ws-metric-grid,.metric-grid,.admin-metrics { grid-template-columns: 1fr 1fr; }
  .portal-welcome h1,.ws-welcome h1 { font-size: 1.75rem; }
  .ws-panel-card,.admin-section,.form-card,.portal-form,.publication-form { padding: 18px !important; }
  .ws-panel-card::before,.admin-section::before,.studio-create::before,.studio-list-section::before { margin-top: -19px; }
  .button-row { width: 100%; }
  .button-row .button { flex: 1 1 auto; text-align: center; }
  .application-card { padding: 20px !important; }
  .login-card { padding: 26px !important; }
  .ws-tabs { position: static; }
}

/* =========================================================
   ASR ECOSYSTEM v8.7 · Recruitment + Admin + Meeting polish
   ========================================================= */
.ecosystem-tabs{overflow-x:auto;scrollbar-width:thin;padding-bottom:4px;gap:8px}.ecosystem-tabs button{white-space:nowrap}.ecosystem-hero{margin-bottom:24px}.airy-form,.compact-airy{display:grid;gap:20px}.airy-form .field,.compact-airy .field{display:grid;gap:8px}.airy-form label,.compact-airy label,.mini-admin-form label{display:grid;gap:7px;color:#aeb9c8;font-size:.76rem;font-weight:700}.airy-form input,.airy-form select,.airy-form textarea,.compact-airy input,.compact-airy select,.compact-airy textarea,.mini-admin-form input,.mini-admin-form select,.mini-admin-form textarea{min-height:48px;padding:12px 14px;border-radius:12px;border:1px solid rgba(151,170,201,.16);background:rgba(4,9,16,.72);color:#eef3fa}.airy-form textarea,.compact-airy textarea,.mini-admin-form textarea{min-height:108px;line-height:1.55;resize:vertical}.airy-form input:focus,.airy-form select:focus,.airy-form textarea:focus,.compact-airy input:focus,.compact-airy textarea:focus,.mini-admin-form input:focus,.mini-admin-form textarea:focus{outline:none;border-color:rgba(216,179,90,.5);box-shadow:0 0 0 3px rgba(216,179,90,.07)}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px}.field-grid .wide{grid-column:1/-1}.compact-airy{gap:14px}.compact-airy input,.compact-airy select{min-height:42px}.compact-airy textarea{min-height:82px}.mini-admin-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.mini-admin-form .wide{grid-column:1/-1}.mini-admin-form button,.mini-admin-form .form-status{justify-self:start}.candidate-admin-stack,.meeting-admin-stack,.assessment-library-stack{display:grid;gap:18px;margin-top:22px}.candidate-admin-card,.meeting-manager-card,.library-template{position:relative;border:1px solid rgba(151,170,201,.13);border-radius:20px;background:linear-gradient(180deg,rgba(13,21,33,.92),rgba(7,12,20,.97));padding:22px}.candidate-admin-card:before,.meeting-manager-card:before,.library-template:before{content:"";position:absolute;left:0;top:22px;width:2px;height:64px;border-radius:999px;background:linear-gradient(var(--asr-gold,#d8b35a),transparent)}.candidate-admin-head,.meeting-manager-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.candidate-admin-head h2,.meeting-manager-head h2{margin:5px 0 6px;font-size:1.35rem}.candidate-admin-head p,.meeting-manager-head p{margin:0;color:#7f8da1;font-size:.8rem}.candidate-stage-pills{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.candidate-stage-pills span{padding:6px 9px;border-radius:999px;border:1px solid rgba(216,179,90,.16);background:rgba(216,179,90,.04);color:#9f9275;font-size:.64rem;text-transform:capitalize}.candidate-admin-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px;padding-top:18px;border-top:1px solid rgba(151,170,201,.08)}.candidate-admin-columns>div{min-width:0;padding:17px;border-radius:15px;background:rgba(255,255,255,.015);border:1px solid rgba(151,170,201,.08)}.candidate-admin-columns h3{margin:0 0 10px;font-size:.93rem}.candidate-admin-columns p{color:#8492a7;font-size:.76rem;line-height:1.55}.assessment-review-box,.final-decision-box{margin-top:14px;padding:14px;border-radius:13px;border:1px solid rgba(151,170,201,.1);background:rgba(3,7,13,.38)}.assessment-review-box>span,.final-decision-box>strong{display:block;color:#d8b35a;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.assessment-review-box>strong{display:block;margin:5px 0 8px}.promote-form{margin-top:14px;padding-top:13px;border-top:1px solid rgba(216,179,90,.12)}.pipeline-explainer{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:18px 0}.pipeline-explainer span{padding:8px 11px;border:1px solid rgba(93,131,255,.16);border-radius:10px;background:rgba(93,131,255,.04);font-size:.72rem}.pipeline-explainer b{color:#d8b35a}.pipeline-explainer.vertical{flex-direction:column;align-items:stretch;text-align:center}.pipeline-explainer.vertical b{align-self:center}.recruitment-timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.pipeline-stage{display:flex;align-items:flex-start;gap:10px;padding:13px;border:1px solid rgba(151,170,201,.1);border-radius:13px;background:rgba(255,255,255,.015)}.pipeline-stage>span{width:27px;height:27px;display:grid;place-items:center;flex:0 0 27px;border-radius:9px;border:1px solid rgba(151,170,201,.15);color:#75849a;font-size:.65rem;font-weight:800}.pipeline-stage strong,.pipeline-stage small{display:block}.pipeline-stage strong{font-size:.76rem}.pipeline-stage small{margin-top:4px;color:#748299;font-size:.64rem;line-height:1.35}.pipeline-stage.is-done{border-color:rgba(76,190,148,.18);background:rgba(76,190,148,.025)}.pipeline-stage.is-done>span{color:#80d5b5;border-color:rgba(76,190,148,.28)}.pipeline-stage.is-current{border-color:rgba(216,179,90,.25);background:rgba(216,179,90,.025)}.pipeline-stage.is-current>span{color:#efd078;border-color:rgba(216,179,90,.35)}.candidate-stage-grid{display:grid;gap:18px;margin-top:18px}.candidate-material-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:17px}.candidate-material-grid article{display:flex;flex-direction:column;align-items:flex-start;min-height:175px;padding:17px;border:1px solid rgba(151,170,201,.11);border-radius:15px;background:rgba(255,255,255,.014)}.candidate-material-grid article>span{color:#d8b35a;font-size:.62rem;text-transform:uppercase;letter-spacing:.09em}.candidate-material-grid article strong{margin-top:12px}.candidate-material-grid article p{color:#7f8da2;font-size:.74rem;line-height:1.5;flex:1}.candidate-interview-summary,.assessment-meta{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.candidate-interview-summary>div,.assessment-meta>span{padding:10px 12px;border:1px solid rgba(151,170,201,.1);border-radius:11px;background:rgba(255,255,255,.014)}.candidate-interview-summary span,.candidate-interview-summary strong{display:block}.candidate-interview-summary span{color:#718096;font-size:.62rem}.candidate-interview-summary strong{margin-top:3px;font-size:.74rem}.assessment-meta>span{color:#8290a4;font-size:.68rem}.assessment-form{margin-top:20px}.form-section{padding:18px;border:1px solid rgba(151,170,201,.1);border-radius:15px;background:rgba(255,255,255,.012)}.interview-question{font-size:.95rem!important;color:#e4eaf2!important;line-height:1.55!important}.candidate-latest{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0;padding:13px 15px;border:1px solid rgba(151,170,201,.1);border-radius:13px}.candidate-latest span,.candidate-latest strong,.candidate-latest small{display:block}.candidate-latest span{font-size:.62rem;color:#748197}.candidate-latest small{color:#69788d;font-size:.62rem}.assessment-result{margin:16px 0;padding:16px;border-radius:15px;border:1px solid rgba(216,179,90,.15);background:rgba(216,179,90,.025)}.assessment-result>div:first-child{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.assessment-result>div:first-child span{color:#d8b35a;font-size:.65rem;text-transform:uppercase;letter-spacing:.08em}.assessment-result>div:first-child strong{font-size:1.2rem}.assessment-result>div:first-child small{color:#7d8ca1;font-size:.65rem}.assessment-scorebar{height:6px!important;margin:12px 0;border-radius:999px;background:#151e2b;overflow:hidden}.assessment-scorebar span{display:block;height:100%;background:linear-gradient(90deg,#5d83ff,#d8b35a)}.assessment-result.is-pass{border-color:rgba(75,190,148,.2)}.assessment-result.is-fail{border-color:rgba(224,98,98,.2)}.assessment-result p{color:#7e8da1;font-size:.72rem}.assessment-breakdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}.assessment-breakdown>div{padding:9px;border-radius:10px;background:rgba(0,0,0,.18)}.assessment-breakdown strong,.assessment-breakdown span,.assessment-breakdown small{display:block}.assessment-breakdown strong{font-size:.62rem;color:#d8b35a}.assessment-breakdown span{margin-top:4px;font-size:.78rem}.assessment-breakdown small{color:#67768b;font-size:.58rem}.library-template{padding:20px}.template-questions{display:grid;gap:8px;margin-top:16px}.template-questions details,.question-bank-list details,.meeting-manager-card details{border:1px solid rgba(151,170,201,.09);border-radius:12px;background:rgba(3,7,13,.24)}.template-questions summary,.question-bank-list summary,.meeting-manager-card summary{cursor:pointer;padding:12px 14px;color:#bdc7d5;font-size:.75rem}.template-questions details form,.question-bank-list details form,.meeting-manager-card details>form{padding:0 14px 14px}.code-textarea{min-height:230px!important;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.68rem}.notebook-template-admin{margin-top:15px;padding:14px;border-radius:12px;border:1px solid rgba(216,179,90,.12);background:rgba(216,179,90,.018)}.notebook-template-admin p{margin:5px 0;color:#7d899c;font-size:.7rem}.notebook-template-admin form{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap}.question-bank-list,.welcome-admin-list,.account-list{display:grid;gap:7px;margin-top:18px;max-height:540px;overflow:auto;padding-right:4px}.welcome-admin-list>div,.account-list>div,.partner-admin-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px;border-bottom:1px solid rgba(151,170,201,.08)}.welcome-admin-list span,.welcome-admin-list strong,.account-list span,.account-list strong,.partner-admin-row span,.partner-admin-row strong{font-size:.68rem}.welcome-admin-list span,.account-list span,.partner-admin-row span{color:#718096}.meeting-admin-top{align-items:start}.reminder-field{display:flex;gap:16px;flex-wrap:wrap;padding:14px 16px;border:1px solid rgba(151,170,201,.11);border-radius:12px}.reminder-field legend{padding:0 7px;color:#d8b35a;font-size:.66rem}.reminder-field label,.check-field{display:flex!important;align-items:center;gap:8px!important;font-size:.7rem!important}.reminder-field input,.check-field input{min-height:auto!important;width:auto}.meeting-manager-card details{margin-top:15px}.attendance-admin{padding:14px}.attendance-admin h3{font-size:.82rem}.attendance-admin>div{display:grid;grid-template-columns:minmax(0,1fr) 90px auto;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid rgba(151,170,201,.07);font-size:.68rem}.danger-link,.danger-button{color:#e99a9a!important}.danger-button{border-color:rgba(230,105,105,.18)!important}.public-scheduled-grid{display:grid;gap:12px}.public-scheduled-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;padding:19px 20px;border:1px solid rgba(151,170,201,.12);border-radius:16px;background:linear-gradient(100deg,rgba(17,26,41,.88),rgba(7,12,20,.96))}.public-scheduled-card h3{margin:6px 0}.public-scheduled-card p{margin:0;color:#7c899b}.public-scheduled-time{text-align:right}.public-scheduled-time strong,.public-scheduled-time span{display:block}.public-scheduled-time strong{color:#efd078}.public-scheduled-time span{margin:4px 0 10px;color:#718096;font-size:.65rem}.application-actions{display:grid;gap:10px;justify-items:end}.compact-select{display:flex!important;align-items:center;gap:8px!important;color:#738198;font-size:.62rem!important}.compact-select select{min-height:34px!important;padding:5px 8px}.premium-link-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.premium-link-grid .card{padding:20px}.airy-row{padding:18px 0!important}
@media(max-width:1050px){.candidate-admin-columns,.meeting-admin-top,.recruitment-admin-grid{grid-template-columns:1fr}.candidate-material-grid{grid-template-columns:1fr 1fr}.recruitment-timeline{grid-template-columns:1fr 1fr}.premium-link-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.field-grid,.mini-admin-form,.candidate-material-grid,.assessment-breakdown,.recruitment-timeline{grid-template-columns:1fr}.candidate-admin-head,.meeting-manager-head,.public-scheduled-card{grid-template-columns:1fr;display:grid}.candidate-stage-pills,.application-actions{justify-content:flex-start;justify-items:start}.candidate-admin-columns{grid-template-columns:1fr}.premium-link-grid{grid-template-columns:1fr}.public-scheduled-time{text-align:left}.attendance-admin>div{grid-template-columns:1fr}.welcome-admin-list>div,.account-list>div,.partner-admin-row{align-items:flex-start;flex-direction:column}.field-grid .wide{grid-column:auto}}

/* =========================================================
   ASR v8.7.2 · Explicit Recruitment Library navigation
   ========================================================= */
.admin-library-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:26px 0 16px;padding:24px 26px;border:1px solid rgba(216,179,90,.18);border-radius:18px;background:linear-gradient(135deg,rgba(216,179,90,.055),rgba(9,15,24,.94) 46%);box-shadow:0 18px 46px rgba(0,0,0,.13)}
.admin-library-intro h2{margin:5px 0 7px;font-size:1.55rem;letter-spacing:-.025em}.admin-library-intro p{margin:0;max-width:760px;color:#8390a3;line-height:1.55}.library-mini-stats{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.library-mini-stats span{display:grid;gap:1px;min-width:118px;padding:11px 13px;border:1px solid rgba(151,170,201,.12);border-radius:12px;background:rgba(255,255,255,.018);color:#75849a;font-size:.67rem}.library-mini-stats strong{color:#f0cf7a;font-size:1.05rem}.library-editor-grid{align-items:start}.ecosystem-tabs{position:sticky;top:72px;z-index:15;padding:10px;border:1px solid rgba(151,170,201,.10);border-radius:15px;background:rgba(7,12,19,.92);backdrop-filter:blur(14px)}.ecosystem-tabs button[data-tab="assessment-templates"],.ecosystem-tabs button[data-tab="visual-bank"],.ecosystem-tabs button[data-tab="welcome-materials"],.ecosystem-tabs button[data-tab="meetings"]{border-color:rgba(216,179,90,.15)}.ecosystem-tabs button.active{border-color:rgba(216,179,90,.35);background:rgba(216,179,90,.07);color:#f0cf7a}@media(max-width:760px){.admin-library-intro{align-items:flex-start;flex-direction:column;padding:18px}.library-mini-stats{justify-content:flex-start}.ecosystem-tabs{top:58px}}

/* =========================================================
   ASR v8.8 · NDA & ADMINISTRATIVE DOCUMENTS
   Premium navy / gold, airy and low-noise
   ========================================================= */

.documents-hero,
.admin-library-intro {
  position: relative;
  overflow: hidden;
}

.documents-hero::after,
.admin-library-intro::after {
  content: "";
  position: absolute;
  width: 230px;
  height: 230px;
  right: -110px;
  top: -140px;
  border: 1px solid rgba(216,179,90,.12);
  border-radius: 50%;
  box-shadow: 0 0 0 40px rgba(216,179,90,.018), 0 0 0 80px rgba(216,179,90,.012);
  pointer-events: none;
}

.document-metrics {
  margin: 24px 0;
}

.document-metrics .attention-metric {
  border-color: rgba(216,179,90,.28);
  background: linear-gradient(180deg, rgba(216,179,90,.075), rgba(10,16,25,.9));
}

.document-metrics .attention-metric strong {
  color: var(--asr-gold-strong, #f0cf7a);
}

.nda-callout {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin: 0 0 22px;
  padding: 22px 24px;
  border: 1px solid rgba(216,179,90,.3);
  border-radius: 18px;
  background:
    radial-gradient(circle at 88% 0%, rgba(216,179,90,.10), transparent 38%),
    linear-gradient(135deg, rgba(29,25,17,.86), rgba(9,14,22,.98));
}

.nda-callout h2 {
  margin: 4px 0 7px;
  font-size: 1.35rem;
}

.nda-callout p {
  margin: 0;
  max-width: 760px;
  color: #8c98aa;
  line-height: 1.55;
}

.admin-doc-stack,
.admin-document-stack {
  display: grid;
  gap: 18px;
  padding-bottom: 54px;
}

.admin-doc-card,
.admin-document-admin-card {
  position: relative;
  overflow: hidden;
  padding: 22px;
  border: 1px solid rgba(151,170,201,.14);
  border-radius: 20px;
  background:
    radial-gradient(circle at 92% 0%, rgba(88,126,230,.05), transparent 34%),
    linear-gradient(180deg, rgba(13,20,31,.95), rgba(7,12,19,.98));
}

.admin-doc-card::before,
.admin-document-admin-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, rgba(86,126,242,.9), rgba(86,126,242,.25), transparent 72%);
}

.admin-doc-card.is-nda::before,
.admin-document-admin-card.is-nda::before {
  background: linear-gradient(90deg, var(--asr-gold, #d8b35a), rgba(216,179,90,.32), transparent 72%);
}

.admin-doc-card.is-nda,
.admin-document-admin-card.is-nda {
  border-color: rgba(216,179,90,.22);
}

.admin-doc-card-head {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 24px;
  align-items: start;
}

.admin-doc-card-head h2,
.admin-document-admin-card h2 {
  margin: 5px 0 7px;
  font-size: 1.2rem;
  letter-spacing: -.02em;
}

.admin-doc-card-head p,
.admin-document-admin-card p {
  margin: 0;
  max-width: 820px;
  color: #8290a4;
  line-height: 1.55;
}

.admin-doc-meta,
.admin-doc-audience-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 16px 0;
}

.admin-doc-meta span,
.admin-doc-audience-strip span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 9px;
  border: 1px solid rgba(151,170,201,.11);
  border-radius: 999px;
  background: rgba(255,255,255,.018);
  color: #8695aa;
  font-size: .66rem;
  font-weight: 720;
}

.admin-doc-audience-strip strong {
  align-self: center;
  margin-right: 3px;
  color: #aab5c5;
  font-size: .69rem;
}

.admin-doc-audience-strip em {
  align-self: center;
  color: #68778c;
  font-size: .69rem;
  font-style: normal;
}

.admin-doc-audience-strip button {
  width: 17px;
  height: 17px;
  border: 0;
  border-radius: 50%;
  background: rgba(255,255,255,.05);
  color: #8d9aab;
  cursor: pointer;
}

.admin-doc-audience-strip button:hover {
  color: #f0cf7a;
  background: rgba(216,179,90,.08);
}

.admin-doc-return-form {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid rgba(151,170,201,.09);
}

.document-ack {
  padding: 13px 14px;
  border: 1px solid rgba(216,179,90,.14);
  border-radius: 12px;
  background: rgba(216,179,90,.025);
  line-height: 1.5;
}

.success-alert {
  border-color: rgba(69,194,151,.22) !important;
  background: rgba(69,194,151,.045) !important;
}

.danger-alert {
  border-color: rgba(238,112,112,.22) !important;
  background: rgba(238,112,112,.045) !important;
}

.admin-doc-editor,
.admin-doc-compliance {
  margin-top: 14px;
  border-top: 1px solid rgba(151,170,201,.09);
}

.admin-doc-editor > summary,
.admin-doc-compliance > summary {
  padding: 14px 0 6px;
  color: #9aa9bb;
  font-size: .75rem;
  font-weight: 780;
  cursor: pointer;
}

.admin-doc-editor > .portal-form,
.admin-doc-editor > form,
.admin-doc-compliance > div {
  margin-top: 10px;
}

.compact-airy-form {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid rgba(151,170,201,.08);
}

.doc-compliance-list {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.doc-compliance-row {
  display: grid;
  grid-template-columns: minmax(220px,1fr) minmax(130px,.35fr) minmax(260px,.8fr);
  gap: 14px;
  align-items: start;
  padding: 13px 14px;
  border: 1px solid rgba(151,170,201,.09);
  border-radius: 13px;
  background: rgba(255,255,255,.014);
}

.doc-compliance-row > div:first-child strong,
.doc-compliance-row > div:first-child small {
  display: block;
}

.doc-compliance-row > div:first-child strong {
  margin-top: 3px;
  font-size: .78rem;
}

.doc-compliance-row small {
  margin-top: 3px;
  color: #68788f;
  font-size: .62rem;
}

.doc-review-actions {
  display: grid;
  gap: 7px;
}

.doc-review-form {
  margin: 0;
}

.doc-review-form textarea {
  min-height: 72px;
}

.candidate-admin-docs {
  margin-top: 18px;
}

.candidate-document-mini-list {
  display: grid;
  gap: 7px;
  margin: 14px 0 16px;
}

.candidate-document-mini-list > div {
  display: grid;
  grid-template-columns: 120px minmax(0,1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 10px 11px;
  border-bottom: 1px solid rgba(151,170,201,.07);
}

.candidate-document-mini-list span {
  color: var(--asr-gold-strong, #f0cf7a);
  font-size: .58rem;
  font-weight: 820;
  text-transform: uppercase;
  letter-spacing: .07em;
}

.candidate-document-mini-list strong {
  font-size: .75rem;
}

.candidate-document-mini-list small {
  color: #718098;
  font-size: .63rem;
}

.admin-library-intro + .library-editor-grid {
  margin-top: 18px;
}

/* Airier admin forms globally without making the portal feel oversized. */
.portal-form.airy-form {
  display: grid;
  gap: 18px;
}

.portal-form.airy-form .field-grid {
  gap: 14px 16px;
}

.portal-form.airy-form input,
.portal-form.airy-form select,
.portal-form.airy-form textarea {
  min-height: 46px;
}

.portal-form.airy-form textarea {
  min-height: 118px;
}

.portal-form.airy-form label,
.portal-form.airy-form .field > label {
  display: grid;
  gap: 7px;
}

@media (max-width: 900px) {
  .doc-compliance-row {
    grid-template-columns: 1fr 1fr;
  }
  .doc-review-actions {
    grid-column: 1 / -1;
  }
}

@media (max-width: 720px) {
  .nda-callout,
  .admin-doc-card-head {
    align-items: flex-start;
    flex-direction: column;
    display: flex;
  }
  .doc-compliance-row,
  .candidate-document-mini-list > div {
    grid-template-columns: 1fr;
  }
  .admin-doc-card,
  .admin-document-admin-card {
    padding: 16px;
  }
}

.home-logo-card-v131{position:relative;display:flex;align-items:center;justify-content:center;min-height:410px;padding:28px;border:1px solid rgba(255,255,255,.09);border-radius:34px;background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.015));box-shadow:0 32px 80px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.07);overflow:hidden;isolation:isolate}.home-logo-card-v131:before{content:"";position:absolute;width:320px;height:320px;border-radius:50%;background:rgba(105,130,255,.16);filter:blur(75px);z-index:-1}.home-logo-inner-v131{display:flex;align-items:center;justify-content:center;width:100%;min-height:330px;padding:28px;border:1px solid rgba(255,255,255,.07);border-radius:26px;background:rgba(255,255,255,.025);box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}.home-hero-logo-v131{display:block;width:min(100%,500px);height:auto;padding:14px;border-radius:30px;object-fit:contain;filter:drop-shadow(0 24px 34px rgba(0,0,0,.35));transform:scale(1.04);transition:transform .35s ease,filter .35s ease}.home-logo-card-v131:hover .home-hero-logo-v131{transform:scale(1.08);filter:drop-shadow(0 28px 42px rgba(0,0,0,.42))}


/* =========================================================
   ASR v8.8.1 · Assigned onboarding / welcome materials
   ========================================================= */
.asr-onboarding-hub{margin:22px 0;padding:22px;border:1px solid rgba(216,179,90,.18);background:linear-gradient(145deg,rgba(15,22,34,.95),rgba(7,12,20,.98));border-radius:20px}.asr-onboarding-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.asr-onboarding-card{min-height:180px;padding:18px;border:1px solid rgba(151,170,201,.14);border-radius:16px;background:linear-gradient(145deg,rgba(18,27,43,.9),rgba(9,14,23,.98));display:flex;flex-direction:column}.asr-onboarding-card.is-complete{border-color:rgba(216,179,90,.22)}.asr-onboarding-card-head{display:flex;justify-content:space-between;gap:8px;align-items:center}.asr-onboarding-card-head span{color:#83a2ff;font-size:.62rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.asr-onboarding-card-head em{font-style:normal;color:var(--asr-gold-strong);font-size:.61rem;font-weight:800}.asr-onboarding-card h3{margin:14px 0 7px;font-size:1.02rem}.asr-onboarding-card p{margin:0 0 16px;color:#7f8ea3;font-size:.79rem;line-height:1.5}.asr-onboarding-card .button-row{margin-top:auto}.welcome-admin-detail{padding:16px}.welcome-audience-chips{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px}.welcome-audience-chips .status-pill{display:inline-flex;align-items:center;gap:7px}.welcome-audience-chips .status-pill button{border:0;background:transparent;color:inherit;cursor:pointer;font-size:1rem;line-height:1;padding:0}.welcome-audience-add{margin:0 0 16px}.welcome-audience-add select{min-width:280px;max-width:100%}@media(max-width:900px){.asr-onboarding-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.asr-onboarding-grid{grid-template-columns:1fr}.asr-onboarding-hub{padding:16px}.welcome-audience-add{display:grid;grid-template-columns:1fr}.welcome-audience-add select{min-width:0;width:100%}}

/* v8.9 Academy + Resource Center */
.academy-builder-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0}
.academy-program-stack{display:grid;gap:18px;margin:18px 0 30px}
.academy-program-card{overflow:hidden}
.academy-module-list,.resource-item-list{display:grid;gap:9px;margin:14px 0 18px}
.academy-module-row{display:grid;grid-template-columns:minmax(64px,90px) minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--line,rgba(18,42,66,.12));border-radius:12px;background:var(--surface-soft,#f7f9fb)}
.academy-module-row span{font-weight:800;letter-spacing:.04em}
.academy-module-row small{opacity:.72;text-align:right}
.academy-status-form{margin:12px 0}
.resource-library-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line,rgba(18,42,66,.12))}
.resource-library-row:last-child{border-bottom:0}
.resource-library-row strong{display:block;margin:3px 0}
.resource-library-row small{display:block;opacity:.72}
.resource-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.course-lock-note{display:grid;gap:6px;padding:14px 16px;border:1px dashed var(--line-strong,rgba(18,42,66,.22));border-radius:12px;background:var(--surface-soft,#f7f9fb)}
.portal-module-card.is-locked{opacity:.9}
@media(max-width:900px){.academy-builder-grid{grid-template-columns:1fr}.academy-module-row{grid-template-columns:72px 1fr}.academy-module-row small{grid-column:1/-1;text-align:left}.resource-library-row{grid-template-columns:1fr}}

/* ========================================================================== */
/* ASR v9.6.0 · Quarterly Challenge system                                    */
/* ========================================================================== */
.nav-challenge{border:1px solid rgba(65,217,189,.32);background:rgba(65,217,189,.08);border-radius:999px;padding:8px 13px!important;color:#bdf8ee!important}
.public-challenge-home-slot{padding:0 0 24px;background:#070b12}
.public-challenge-banner{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.38fr);gap:24px;align-items:center;padding:26px 28px;border:1px solid rgba(65,217,189,.2);border-radius:22px;background:linear-gradient(135deg,rgba(15,118,110,.2),rgba(12,17,25,.96) 48%,rgba(184,155,94,.12));box-shadow:0 24px 70px rgba(0,0,0,.24)}
.public-challenge-banner h2{margin:5px 0 8px;font-size:clamp(1.6rem,3vw,2.6rem)}
.public-challenge-banner p{max-width:760px;color:#c9d1dc;margin:0 0 14px}.public-challenge-banner .button-row{align-items:center;gap:14px}.public-challenge-banner .button-row>span{font-size:.86rem;color:#9eabb9}
.public-challenge-mark{justify-self:end;border:1px solid rgba(184,155,94,.32);border-radius:18px;padding:25px 28px;font-weight:800;letter-spacing:.14em;line-height:1.5;text-align:center;color:#e6d5ac;background:rgba(184,155,94,.06)}
.public-challenge-winners{display:grid;gap:8px}.public-challenge-winners>span{font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;color:#9aa8b8}.public-challenge-winners>div{display:grid;grid-template-columns:38px 1fr auto;gap:8px;align-items:center;padding:9px 11px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.03)}.public-challenge-winners b{color:#41d9bd}.public-challenge-winners small{color:#d7c18b}

.head-challenge-priority{display:flex;justify-content:space-between;gap:22px;align-items:center;margin:18px 0;padding:18px 20px;border:1px solid rgba(65,217,189,.24);border-radius:17px;background:linear-gradient(120deg,rgba(15,118,110,.16),rgba(10,14,21,.93));text-decoration:none;color:inherit}.head-challenge-priority strong{display:block;font-size:1.12rem;margin:4px 0}.head-challenge-priority small{display:block;color:#9daaba;max-width:860px;line-height:1.55}.head-challenge-priority>b{white-space:nowrap;color:#83ead8}.challenge-command-card{border-color:rgba(65,217,189,.22)!important}

.challenge-control-page{background:radial-gradient(circle at 80% 0,rgba(15,118,110,.08),transparent 34%),#070b12}
.challenge-control-nav{display:flex;gap:8px;flex-wrap:wrap;padding:10px;margin-bottom:12px;border:1px solid rgba(255,255,255,.07);border-radius:14px;background:rgba(12,17,25,.88);position:sticky;top:8px;z-index:12;backdrop-filter:blur(14px)}
.challenge-control-nav a{padding:9px 12px;border-radius:10px;text-decoration:none;color:#b9c5d1;font-size:.84rem}.challenge-control-nav a:hover{background:rgba(65,217,189,.09);color:#e7fff9}
.challenge-control-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(480px,.8fr);gap:24px;align-items:stretch;padding:28px;border:1px solid rgba(255,255,255,.08);border-radius:23px;background:linear-gradient(145deg,#0a1018,#0a0e15 62%,rgba(15,118,110,.12));box-shadow:0 24px 60px rgba(0,0,0,.24)}
.challenge-control-hero h1{font-size:clamp(2rem,4vw,3.4rem);margin:6px 0 8px}.challenge-control-hero p{color:#aeb9c6;max-width:780px}.challenge-cycle-switch{display:inline-flex;gap:8px;align-items:center;font-size:.78rem;color:#a5b1be}.challenge-cycle-switch select{width:auto;max-width:380px}
.challenge-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.challenge-kpis article{padding:16px;border:1px solid rgba(255,255,255,.07);border-radius:15px;background:rgba(255,255,255,.025)}.challenge-kpis span,.challenge-kpis small{display:block;color:#8e9baa;font-size:.74rem}.challenge-kpis strong{display:block;font-size:1.45rem;margin:5px 0;color:#f0f5f8}
.challenge-tabs{display:flex;gap:7px;overflow-x:auto;margin:16px 0 18px;padding:8px;border:1px solid rgba(255,255,255,.07);border-radius:15px;background:#0b1017}.challenge-tabs button{border:0;background:transparent;color:#8f9aa8;padding:10px 12px;border-radius:10px;white-space:nowrap;cursor:pointer}.challenge-tabs button.active{color:#dffff8;background:rgba(65,217,189,.11);box-shadow:inset 0 0 0 1px rgba(65,217,189,.22)}
.challenge-panel{display:none}.challenge-panel.active{display:block}.challenge-phase-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin-bottom:18px}.challenge-phase-strip>div{display:flex;gap:8px;align-items:center;padding:12px 10px;border-radius:12px;border:1px solid rgba(255,255,255,.07);color:#6f7d8c;font-size:.72rem;text-transform:capitalize}.challenge-phase-strip span{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#121924}.challenge-phase-strip .done{border-color:rgba(65,217,189,.18);color:#8ccdc1}.challenge-phase-strip .done span{background:rgba(65,217,189,.12)}.challenge-phase-strip .current{border-color:rgba(184,155,94,.32);color:#e4cf9f;background:rgba(184,155,94,.06)}
.challenge-overview-grid,.challenge-grid-2,.challenge-grid-3{display:grid;gap:14px}.challenge-overview-grid{grid-template-columns:1.2fr .8fr}.challenge-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.challenge-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.challenge-focus-card,.challenge-role-card,.challenge-list-card,.challenge-workstream,.challenge-launch-card,.readiness-board,.challenge-publish-box{border:1px solid rgba(255,255,255,.08);border-radius:18px;background:#0b1017;padding:20px}.challenge-role-card.industry{border-color:rgba(184,155,94,.25);background:linear-gradient(145deg,rgba(184,155,94,.08),#0b1017 58%)}.challenge-deadline{margin-top:18px;padding:14px;border-radius:12px;background:rgba(255,255,255,.03)}.challenge-deadline strong,.challenge-deadline span{display:block}.challenge-deadline span{font-size:.72rem;color:#8997a7;margin-top:4px}
.challenge-list-card{margin-top:14px}.challenge-list-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 0;border-top:1px solid rgba(255,255,255,.06)}.challenge-list-row:first-of-type{border-top:0}.challenge-list-row small{display:block;color:#7f8c9a;margin-top:3px}.challenge-list-row>div:last-child{text-align:right}
.challenge-workstream-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.challenge-workstream{display:flex;flex-direction:column;min-height:270px}.challenge-workstream.blocked{border-color:rgba(221,96,96,.32)}.challenge-workstream-head{display:flex;justify-content:space-between;align-items:center}.challenge-workstream-head>span{font-size:.72rem;letter-spacing:.12em;color:#67dbc8}.challenge-workstream h3{margin:12px 0 5px}.challenge-workstream p{color:#8f9baa;font-size:.84rem;line-height:1.55}.challenge-progress{height:7px;background:#151d28;border-radius:99px;overflow:hidden;margin-top:auto}.challenge-progress span{display:block;height:100%;background:linear-gradient(90deg,#0f766e,#41d9bd);border-radius:99px}.challenge-workstream-meta{display:flex;justify-content:space-between;margin:7px 0 10px;color:#91a0ae;font-size:.78rem}.challenge-workstream form{display:grid;grid-template-columns:1fr 80px;gap:7px}.challenge-workstream form input[name=notes],.challenge-workstream form button{grid-column:1/-1}
.challenge-milestone-table{display:grid;gap:8px}.challenge-milestone-table>article{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(190px,.55fr) minmax(330px,.8fr);gap:16px;align-items:center;border:1px solid rgba(255,255,255,.07);border-radius:14px;padding:14px;background:#0b1017}.challenge-milestone-table article.overdue{border-color:rgba(221,96,96,.32)}.challenge-milestone-table p{margin:4px 0 0;color:#8794a4;font-size:.82rem}.challenge-milestone-table small{display:block;margin-top:5px;color:#7b8998}.challenge-milestone-table form{display:grid;grid-template-columns:120px 1fr auto;gap:7px}
.challenge-brief-form{border:1px solid rgba(255,255,255,.08);background:#0b1017;border-radius:18px;padding:22px}.challenge-long-text{min-height:220px!important}.challenge-code-text{min-height:160px!important;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem}
.industry-sponsor-banner{display:grid;grid-template-columns:1fr 300px;gap:24px;align-items:center;border:1px solid rgba(184,155,94,.3);border-radius:18px;background:linear-gradient(145deg,rgba(184,155,94,.1),#0b1017);padding:22px}.industry-sponsor-banner>div:last-child{padding:15px;border-radius:14px;background:rgba(0,0,0,.18)}.industry-sponsor-banner>div:last-child strong{display:block;font-size:1.5rem}.industry-sponsor-banner>div:last-child span{display:block;color:#a99b77;font-size:.76rem;margin:4px 0 8px}
.challenge-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:end;margin:15px 0}.portal-search-field{display:grid;gap:6px;min-width:min(520px,100%)}.portal-search-field span{font-size:.72rem;color:#8492a1;text-transform:uppercase;letter-spacing:.08em}.challenge-inline-create,.challenge-resource-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:16px;margin:10px 0 16px;border:1px solid rgba(65,217,189,.15);border-radius:15px;background:rgba(65,217,189,.03)}.challenge-inline-create .field-full,.challenge-resource-form textarea,.challenge-resource-form button{grid-column:1/-1}
.challenge-sponsor-table,.challenge-participant-table,.challenge-submission-table{display:grid;gap:8px}.challenge-sponsor-table>article,.challenge-participant-table>article{display:grid;grid-template-columns:1.4fr .55fr .7fr minmax(160px,.45fr);gap:14px;align-items:center;border:1px solid rgba(255,255,255,.07);border-radius:14px;padding:13px 15px;background:#0b1017}.challenge-sponsor-table small,.challenge-participant-table small{display:block;color:#7f8c9b;margin-top:3px}.challenge-sponsor-table details form,.challenge-participant-table details form{display:grid;gap:7px;margin-top:8px}.challenge-pagination{display:flex;justify-content:center;gap:14px;align-items:center;margin:16px 0;color:#8b98a7;font-size:.82rem}
.challenge-submission-table>article{display:grid;grid-template-columns:minmax(0,1.5fr) 150px minmax(250px,.55fr);gap:16px;align-items:center;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:16px;background:#0b1017}.challenge-submission-table h3{margin:8px 0 5px}.challenge-submission-table p{margin:0 0 8px;color:#8f9cab;font-size:.82rem}.challenge-score-summary{text-align:center;padding:12px;border-radius:12px;background:rgba(255,255,255,.03)}.challenge-score-summary strong{font-size:1.5rem;display:block}.challenge-score-summary span,.challenge-score-summary small{display:block;color:#8593a2;font-size:.72rem}.challenge-score-form{display:grid;gap:7px}
.challenge-mini-list{display:grid;gap:8px;margin-top:14px}.challenge-mini-list>div{padding:11px;border:1px solid rgba(255,255,255,.06);border-radius:12px}.challenge-mini-list small{display:block;color:#7f8b99}.challenge-mini-list p{margin:5px 0 0;color:#8e9aa8}.readiness-board{display:grid;grid-template-columns:1fr 190px;gap:20px;align-items:center;background:linear-gradient(140deg,#0b1017,rgba(15,118,110,.08))}.readiness-score{text-align:center;padding:16px;border:1px solid rgba(65,217,189,.14);border-radius:14px}.readiness-score strong{font-size:2.4rem;display:block}.readiness-score span,.readiness-score small{display:block;color:#8392a2}.challenge-signoff-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:13px 0}.challenge-signoff-grid article{display:grid;gap:6px;padding:15px;border:1px solid rgba(255,255,255,.07);border-radius:14px;background:#0b1017}.challenge-signoff-grid article.signed{border-color:rgba(65,217,189,.22);background:rgba(15,118,110,.07)}.challenge-signoff-grid span,.challenge-signoff-grid small{color:#8997a6;font-size:.76rem}.challenge-publish-box{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:14px;border-color:rgba(184,155,94,.2)}.challenge-audit-list{display:grid;gap:7px}.challenge-audit-list article{display:grid;grid-template-columns:180px 220px 1fr;gap:14px;align-items:center;padding:11px 13px;border:1px solid rgba(255,255,255,.06);border-radius:12px;background:#0b1017}.challenge-audit-list time{font-size:.74rem;color:#7c8998}.challenge-audit-list code{overflow:hidden;text-overflow:ellipsis;color:#7ea99f;font-size:.73rem}
.challenge-launch-card{display:grid;grid-template-columns:1fr 1.1fr;gap:26px;padding:28px}.challenge-launch-form{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.challenge-launch-form .field-full{grid-column:1/-1}.challenge-empty-state{padding:60px 30px;text-align:center;border:1px dashed rgba(255,255,255,.1);border-radius:22px;background:#0b1017}.challenge-empty-state p{max-width:720px;margin:10px auto;color:#8f9baa}

.challenge-public-page{background:#080c12}.challenge-public-hero{padding:90px 0 70px;background:radial-gradient(circle at 78% 10%,rgba(15,118,110,.22),transparent 35%),linear-gradient(180deg,#070b12,#0b1119);border-bottom:1px solid rgba(255,255,255,.06)}.challenge-public-hero .container{max-width:1080px}.challenge-public-code{display:flex;gap:10px;align-items:center;color:#8cb3ad;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em}.challenge-public-hero h1{max-width:950px;font-size:clamp(2.8rem,7vw,6.5rem);line-height:.96;margin:15px 0 18px}.challenge-public-hero .lead{max-width:820px;color:#b3becb}.challenge-public-hero-actions{display:flex;gap:18px;align-items:center;margin-top:24px}.challenge-public-hero-actions>span{color:#8d9aa8;font-size:.86rem}.challenge-public-badge{display:inline-flex;padding:5px 9px;border-radius:999px;border:1px solid rgba(65,217,189,.22);background:rgba(65,217,189,.08);color:#86dfd0;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em}.challenge-public-facts{background:#0b1017;border-bottom:1px solid rgba(255,255,255,.06)}.challenge-public-facts .container{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;padding-top:0;padding-bottom:0}.challenge-public-facts article{padding:18px 16px;border-left:1px solid rgba(255,255,255,.06)}.challenge-public-facts article:last-child{border-right:1px solid rgba(255,255,255,.06)}.challenge-public-facts span{display:block;color:#7e8c9b;font-size:.72rem}.challenge-public-facts strong{display:block;margin-top:5px;font-size:.88rem}
.challenge-public-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.challenge-public-card{padding:24px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:#0b1017}.challenge-public-card p{color:#9aa7b5;line-height:1.7}.challenge-rubric{display:grid;gap:7px;margin-top:12px}.challenge-rubric>div{display:flex;justify-content:space-between;padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.03)}.challenge-rubric span{color:#41d9bd}.challenge-sponsor-public-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.challenge-sponsor-public-grid article{padding:18px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:#0b1017}.challenge-sponsor-public-grid img{max-height:48px;max-width:150px;object-fit:contain;margin-bottom:12px}.challenge-sponsor-public-grid strong,.challenge-sponsor-public-grid span{display:block}.challenge-sponsor-public-grid span{color:#a7966d;font-size:.74rem;margin-top:4px}.challenge-sponsor-public-grid p{color:#8895a4;font-size:.82rem}.challenge-announcement-list{display:grid;gap:10px}.challenge-announcement-list article{padding:16px;border:1px solid rgba(255,255,255,.07);border-radius:14px;background:#0b1017}.challenge-announcement-list time{font-size:.72rem;color:#7e8b99}.challenge-announcement-list h3{margin:5px 0}.challenge-announcement-list p{color:#8d99a8;line-height:1.6;margin:0}
.challenge-access-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.challenge-access-card{padding:22px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:#0b1017;display:grid;gap:11px}.challenge-access-card h3{margin:0}.challenge-access-card p{color:#8d9aa8}.challenge-join-box{display:grid;gap:14px;padding:24px;border:1px solid rgba(65,217,189,.2);border-radius:18px;background:linear-gradient(140deg,rgba(15,118,110,.08),#0b1017)}
.challenge-terminal{display:grid;grid-template-columns:250px minmax(0,1fr);gap:16px;align-items:start}.challenge-terminal-sidebar{position:sticky;top:18px;padding:18px;border:1px solid rgba(255,255,255,.08);border-radius:17px;background:#0b1017}.challenge-terminal-sidebar>strong{display:block;color:#65dfca;font-size:.82rem;margin-bottom:8px}.challenge-terminal-sidebar nav{display:grid;margin:18px 0}.challenge-terminal-sidebar nav a{padding:9px 0;border-top:1px solid rgba(255,255,255,.06);color:#9eabb8;text-decoration:none}.challenge-terminal-main{display:grid;gap:13px}.challenge-terminal-card{padding:20px;border:1px solid rgba(255,255,255,.08);border-radius:17px;background:#0b1017}.challenge-terminal-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}.challenge-terminal-metrics article{padding:12px;border-radius:11px;background:rgba(255,255,255,.03)}.challenge-terminal-metrics span{display:block;color:#7b8998;font-size:.7rem}.challenge-terminal-metrics strong{display:block;margin-top:4px;font-size:.84rem}.challenge-participant-resources{display:grid;gap:8px}.challenge-participant-resources article{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:13px;border:1px solid rgba(255,255,255,.06);border-radius:12px}.challenge-participant-resources small{display:block;color:#758391;margin-top:3px}.challenge-participant-resources p{color:#8996a5;font-size:.8rem;margin:4px 0 0}.challenge-current-submission{padding:13px;margin:9px 0 14px;border-radius:12px;background:rgba(65,217,189,.06);border:1px solid rgba(65,217,189,.14)}.challenge-current-submission p{color:#8d9aa8}.challenge-public-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.challenge-results{background:linear-gradient(180deg,#0a1017,#080c12)}.challenge-podium{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;align-items:end;margin:20px 0 26px}.challenge-podium article{padding:24px 18px;text-align:center;border:1px solid rgba(184,155,94,.22);border-radius:18px;background:linear-gradient(160deg,rgba(184,155,94,.1),#0b1017)}.challenge-podium .rank-1{padding-top:34px;border-color:rgba(184,155,94,.5)}.challenge-podium article>span{color:#d9be7a;font-size:1.4rem}.challenge-podium h3{margin:8px 0 4px}.challenge-podium p{color:#7f8c9a}.challenge-podium strong{font-size:1.5rem}.challenge-ranking-table{border:1px solid rgba(255,255,255,.07);border-radius:16px;overflow:hidden}.challenge-ranking-head,.challenge-ranking-table>div:not(.challenge-ranking-head){display:grid;grid-template-columns:80px 1.3fr 1fr 110px 130px;gap:12px;align-items:center;padding:12px 14px}.challenge-ranking-head{background:#101720;color:#7e8b99;font-size:.7rem;text-transform:uppercase;letter-spacing:.07em}.challenge-ranking-table>div:not(.challenge-ranking-head){border-top:1px solid rgba(255,255,255,.05);background:#0b1017}.challenge-ranking-table small{display:block;color:#758291;margin-top:2px}.challenge-ranking-table>div>span:nth-child(4){font-weight:700;color:#b8e9df}.challenge-public-empty{max-width:850px;margin:80px auto;padding:50px 30px;text-align:center}

@media(max-width:1100px){.challenge-control-hero,.challenge-launch-card,.public-challenge-banner{grid-template-columns:1fr}.challenge-workstream-grid{grid-template-columns:repeat(2,1fr)}.challenge-milestone-table>article{grid-template-columns:1fr}.challenge-milestone-table form{grid-template-columns:1fr 1fr auto}.challenge-sponsor-table>article,.challenge-participant-table>article{grid-template-columns:1fr 1fr}.challenge-submission-table>article{grid-template-columns:1fr 140px}.challenge-score-form{grid-column:1/-1}.challenge-signoff-grid{grid-template-columns:repeat(2,1fr)}.challenge-sponsor-public-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.challenge-control-hero{padding:19px}.challenge-kpis,.challenge-overview-grid,.challenge-grid-2,.challenge-grid-3,.challenge-public-grid,.challenge-access-grid,.challenge-terminal-metrics,.challenge-public-grid-2{grid-template-columns:1fr}.challenge-phase-strip{grid-template-columns:1fr 1fr}.challenge-workstream-grid{grid-template-columns:1fr}.industry-sponsor-banner,.readiness-board{grid-template-columns:1fr}.challenge-inline-create,.challenge-resource-form,.challenge-launch-form{grid-template-columns:1fr}.challenge-inline-create .field-full,.challenge-resource-form textarea,.challenge-resource-form button,.challenge-launch-form .field-full{grid-column:auto}.challenge-sponsor-table>article,.challenge-participant-table>article,.challenge-submission-table>article{grid-template-columns:1fr}.challenge-signoff-grid{grid-template-columns:1fr}.challenge-publish-box,.head-challenge-priority{display:grid}.challenge-public-facts .container{grid-template-columns:1fr 1fr}.challenge-sponsor-public-grid,.challenge-podium{grid-template-columns:1fr}.challenge-terminal{grid-template-columns:1fr}.challenge-terminal-sidebar{position:static}.challenge-ranking-table{overflow-x:auto}.challenge-ranking-head,.challenge-ranking-table>div:not(.challenge-ranking-head){min-width:720px}.challenge-audit-list article{grid-template-columns:1fr}.public-challenge-mark{justify-self:start}}
@media(min-width:1051px){.command-center-quick{grid-template-columns:repeat(5,minmax(0,1fr))}}

/* ==========================================================================
   ASR v10.2 · A–Z Research Workflow + Legacy Recovery Pipeline
   ========================================================================== */
.workflow-system-card{overflow:hidden}.workflow-engine-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}.workflow-engine{border:1px solid var(--line,#d9dde5);border-radius:18px;padding:18px;background:color-mix(in srgb,var(--surface,#fff) 94%,transparent)}.workflow-engine>span{display:block;font-size:.72rem;font-weight:800;letter-spacing:.12em;opacity:.64;margin-bottom:7px}.workflow-engine strong{display:block;font-size:1rem;margin-bottom:7px}.workflow-engine p{margin:0;color:var(--muted,#677084)}.workflow-engine.primary{box-shadow:inset 3px 0 0 currentColor}.workflow-engine.fallback{opacity:.82}.canonical-banner{display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px solid var(--line,#d9dde5);border-radius:20px;padding:18px;margin:16px 0;background:linear-gradient(135deg,color-mix(in srgb,var(--surface,#fff) 93%,transparent),color-mix(in srgb,currentColor 3%,transparent))}.canonical-banner h3{margin:4px 0 5px}.canonical-banner p{margin:0;color:var(--muted,#677084)}.canonical-pair{display:flex;align-items:center;gap:9px;flex:0 0 auto}.canonical-pair span:nth-child(odd){display:grid;place-items:center;min-width:52px;height:52px;border-radius:15px;border:1px solid currentColor;font-weight:900;letter-spacing:.06em}.canonical-pair span:nth-child(2){font-size:1.35rem;opacity:.55}.workflow-create-case,.workflow-materialize,.workflow-recovery,.legacy-recovery-locked,.legacy-global-console{border:1px solid var(--line,#d9dde5);border-radius:16px;padding:0;margin-top:14px;overflow:hidden}.workflow-create-case>summary,.workflow-materialize>summary,.workflow-recovery>summary,.legacy-recovery-locked>summary,.legacy-global-console>summary{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px 16px;cursor:pointer;list-style:none}.workflow-create-case>summary span,.workflow-materialize>summary span,.workflow-recovery>summary span,.legacy-recovery-locked>summary span,.legacy-global-console>summary span{font-size:.82rem;color:var(--muted,#677084)}.workflow-create-case>form,.workflow-materialize>form,.workflow-recovery>form,.legacy-global-console>.ws-panel-card{margin:0 14px 14px}.workflow-board-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin:30px 0 14px}.workflow-board-head h2{margin:4px 0}.workflow-board-head p{margin:0;color:var(--muted,#677084)}.workflow-case{margin-top:18px}.workflow-case.fallback-active{box-shadow:inset 4px 0 0 #b27b39}.workflow-case-badges{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.workflow-canonical-contract{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:14px;align-items:center;margin:16px 0;padding:16px;border:1px solid var(--line,#d9dde5);border-radius:18px}.workflow-canonical-contract>div:not(.workflow-link-mark){display:flex;flex-direction:column;gap:4px}.workflow-canonical-contract small{color:var(--muted,#677084)}.workflow-link-mark{font-size:1.35rem;opacity:.5}.workflow-current-step{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px;border-radius:18px;background:color-mix(in srgb,currentColor 4%,transparent);border:1px solid var(--line,#d9dde5);margin:16px 0}.workflow-current-step h3{margin:4px 0}.workflow-current-step p{margin:0;color:var(--muted,#677084)}.workflow-current-control.gate{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px dashed var(--line,#d9dde5);padding:14px 16px;border-radius:14px;margin-top:-6px;margin-bottom:16px}.workflow-current-control p{margin:4px 0 0;color:var(--muted,#677084)}.workflow-step-form{display:grid;grid-template-columns:minmax(160px,.35fr) minmax(260px,1fr) auto;gap:12px;align-items:end;margin-bottom:16px}.workflow-step-form label{margin:0}.workflow-step-form textarea{min-height:76px}.workflow-recovery.active{border-color:#b27b39}.workflow-switch-request{margin:0 14px 14px;padding:15px;border-radius:14px;background:color-mix(in srgb,currentColor 4%,transparent)}.workflow-switch-request strong{display:block;margin:4px 0}.workflow-map{display:grid;gap:10px;margin-top:18px}.workflow-phase{border:1px solid var(--line,#d9dde5);border-radius:16px;overflow:hidden}.workflow-phase>summary{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px 15px;cursor:pointer}.workflow-phase>summary>span{font-size:.75rem;font-weight:800;opacity:.6}.workflow-phase>summary>em{font-style:normal;font-size:.8rem;color:var(--muted,#677084)}.workflow-step-list{border-top:1px solid var(--line,#d9dde5)}.workflow-step{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:start;padding:12px 14px;border-bottom:1px solid color-mix(in srgb,var(--line,#d9dde5) 70%,transparent)}.workflow-step:last-child{border-bottom:0}.workflow-step.active{background:color-mix(in srgb,currentColor 5%,transparent)}.workflow-step.complete,.workflow-step.waived{opacity:.82}.workflow-step.blocked{box-shadow:inset 3px 0 0 #b84c4c}.workflow-step-no{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;border:1px solid var(--line,#d9dde5);font-size:.78rem;font-weight:800}.workflow-step p{margin:5px 0 0;color:var(--muted,#677084);font-size:.84rem}.canonical-tag{display:inline-block;margin-left:8px;padding:2px 7px;border-radius:999px;border:1px solid currentColor;font-size:.67rem;font-weight:800;opacity:.72}.legacy-recovery-console{margin-top:20px;padding:16px;border:1px solid #b27b39;border-radius:20px}.legacy-recovery-console>.research-cycle{margin:12px 0 0}.legacy-recovery-locked .portal-empty{margin:0 14px 14px}.recovery-legacy-create{margin:0!important;border:0!important;box-shadow:none!important}.notice.danger{border-color:#b27b39}.workflow-system-card .metric-grid,.workflow-case .metric-grid{margin-top:14px}
@media (max-width:900px){.workflow-engine-grid{grid-template-columns:1fr}.workflow-canonical-contract{grid-template-columns:1fr}.workflow-link-mark{transform:rotate(90deg);justify-self:center}.workflow-step-form{grid-template-columns:1fr}.workflow-board-head,.workflow-current-step,.workflow-current-control.gate{align-items:flex-start;flex-direction:column}.workflow-phase>summary{grid-template-columns:42px minmax(0,1fr) auto}.workflow-step{grid-template-columns:34px minmax(0,1fr)}.workflow-step>.status-pill{grid-column:2}.canonical-banner{align-items:flex-start;flex-direction:column}}
