[hidden] { display: none !important; }
body { overflow-x: hidden; }
.office,.rail,.workspace { min-width: 0; }
.masthead, .entry, .entry-copy, .mandate { min-width: 0; }
.entry { width: 100%; overflow: hidden; }
.entry-copy { width: 100%; max-width: 100%; }
h1, .mandate blockquote { overflow-wrap: break-word; }
.identity img { width: 138px; height: auto; }
.continuum-return,.footer-return { color: var(--ink); text-decoration: none; }
.continuum-return { min-height: 38px; padding: 0 13px; display: inline-flex; align-items: center; gap: 7px; border: 1px solid var(--line); border-radius: 3px; font-size: 11px; font-weight: 700; letter-spacing: .35px; background: rgba(255,255,255,.55); }
.continuum-return:hover,.continuum-return:focus-visible { border-color: var(--green); color: var(--green-dark); background: #fff; }
.continuum-return:focus-visible,.footer-return:focus-visible { outline: 3px solid var(--amber); outline-offset: 3px; }
.footer-return { font-weight: 700; }
.footer-return:hover { color: var(--green); }
.office-detail-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr); gap: 24px; }
.project-office-detail { min-height: 680px; margin-top: 0; scroll-margin-top: 18px; }
.project-office-toolbar { min-height: 58px; margin-bottom: 18px; padding-bottom: 14px; display: flex; align-items: center; justify-content: space-between; gap: 12px; border-bottom: 1px solid var(--line); }
.project-office-state { padding: 6px 9px; border: 1px solid #bac6c1; border-radius: 2px; font-size: 9px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: var(--green); background: var(--panel); }
.project-office-hero { margin-bottom: 26px; padding: 24px; display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(280px, .6fr); gap: 28px; color: #f4f1e8; background: #10272c; border-top: 4px solid #e5a72e; }
.project-office-hero h3 { margin: 7px 0 9px; font-family: Georgia,serif; font-size: 32px; font-weight: 500; color: #fff; }
.project-office-hero p:not(.kicker) { max-width: 700px; margin: 0; font-size: 12px; line-height: 1.65; color: #c8d5d2; }
.project-office-hero dl { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin: 0; border: 1px solid rgba(255,255,255,.16); }
.project-office-hero dl div { min-height: 86px; padding: 14px; border-right: 1px solid rgba(255,255,255,.14); }
.project-office-hero dl div:last-child { border-right: 0; }
.project-office-hero dt { font-size: 9px; letter-spacing: 1px; text-transform: uppercase; color: #92aaa5; }
.project-office-hero dd { margin: 12px 0 0; font-family: Georgia,serif; font-size: 28px; color: #fff; }
.project-office-loading { min-height: 360px; display: grid; place-content: center; gap: 8px; text-align: center; border: 1px dashed #bbbdb7; background: var(--panel); }
.project-office-loading b { font-family: Georgia,serif; font-size: 24px; font-weight: 500; }
.project-office-loading span { font-size: 12px; color: var(--muted); }
.office-detail-grid h4 { margin: 0 0 14px; font-size: 12px; letter-spacing: .8px; text-transform: uppercase; color: var(--muted); }
.team-list { display: grid; gap: 1px; border: 1px solid var(--line); background: var(--line); }
.team-row { min-height: 62px; padding: 12px 14px; display: flex; align-items: center; justify-content: space-between; gap: 16px; background: var(--panel); }
.team-row span { display: grid; gap: 4px; min-width: 0; }
.team-row strong { font-size: 13px; }
.team-row small { color: var(--muted); overflow-wrap: anywhere; }
.team-row em { font-size: 10px; font-style: normal; text-transform: uppercase; color: var(--green); }
.authority-panel { padding: 18px; border: 1px solid var(--line); background: var(--panel); }
.authority-panel form + form { margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--line); }
.authority-panel label { margin-top: 0; }
.authority-note { font-size: 12px; line-height: 1.6; color: var(--muted); }
.empty.compact { padding: 20px 14px; }
.project-workbench { margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--line); }
.record-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.record { min-height: 190px; padding: 17px; border: 1px solid var(--line); background: var(--panel); }
.record > span { font-size: 9px; font-weight: 700; letter-spacing: 1.1px; color: var(--green); }
.record h4 { margin: 13px 0 8px; font-family: Georgia, serif; font-size: 20px; font-weight: 500; text-transform: none; color: var(--ink); }
.record p { min-height: 54px; margin: 0; font-size: 12px; line-height: 1.55; color: var(--muted); }
.record footer { height: auto; min-height: 30px; margin-top: 18px; padding: 10px 0 0; justify-content: flex-start; gap: 12px; border-top: 1px solid var(--line); }
.record footer b,.record footer em,.record footer a { font-size: 9px; font-style: normal; text-transform: uppercase; }
.record footer b { color: var(--green); }.record footer em { color: var(--muted); }.record footer a { margin-left: auto; color: var(--ink); }
.record-composer { margin-top: 16px; border: 1px solid var(--line); background: var(--panel); }
.record-composer summary { padding: 15px 17px; cursor: pointer; font-size: 12px; font-weight: 700; }
.record-composer form { padding: 0 17px 17px; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 16px; }
.form-grid .wide { grid-column: 1 / -1; }
.project-creator { display: grid; grid-template-columns: minmax(260px,.65fr) minmax(0,1.35fr); gap: 32px; margin-bottom: 28px; padding: 24px; border-top: 4px solid #e5a72e; background: #10272c; color: #f4f1e8; }
.project-creator h3 { margin: 8px 0; font-family: Georgia,serif; font-size: 28px; font-weight: 500; color: #fff; }
.project-creator p:not(.kicker) { font-size: 12px; line-height: 1.65; color: #c8d5d2; }
.project-creator label { color: #c8d5d2; }
.project-creator input,.project-creator select,.project-creator textarea { background: #fff; color: var(--ink); }
.phase-board { margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--line); }
.phase-grid { display: grid; gap: 1px; border: 1px solid var(--line); background: var(--line); }
.phase { display: grid; grid-template-columns: 64px minmax(0,1fr); gap: 18px; padding: 18px; background: var(--panel); }
.phase-number { font-family: Georgia,serif; font-size: 32px; color: #c89125; }
.phase span { font-size: 9px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: var(--green); }
.phase h4 { margin: 7px 0 5px; font-family: Georgia,serif; font-size: 20px; font-weight: 500; }
.phase p { margin: 0 0 9px; font-size: 12px; line-height: 1.55; color: var(--muted); }
.phase small { color: var(--muted); }
.phase form { display: flex; align-items: center; gap: 8px; margin-top: 12px; }
.phase form select { width: auto; min-width: 130px; margin: 0; }
.phase-composer { margin-top: 12px; border: 1px solid var(--line); background: var(--panel); }
.phase-composer summary { padding: 15px 17px; cursor: pointer; font-size: 12px; font-weight: 700; }
.phase-composer form { padding: 0 17px 17px; }
.featured-artifacts { display: grid; grid-template-columns: minmax(220px,.7fr) repeat(2,minmax(0,1fr)); gap: 1px; margin: 18px 0 28px; border: 1px solid var(--line); background: var(--line); }
.featured-artifacts > * { padding: 18px; background: var(--panel); }
.featured-artifacts header h3 { margin: 7px 0 0; font-family: Georgia,serif; font-size: 22px; font-weight: 500; }
.featured-artifacts article { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.featured-artifacts article div { min-width: 0; }
.featured-artifacts article b { font-size: 9px; color: var(--green); }
.featured-artifacts article h4 { margin: 6px 0; font-size: 12px; line-height: 1.35; }
.featured-artifacts article small { color: var(--muted); }

@media (max-width: 560px) {
  .identity img { width: 118px; }
  .identity span { display: none; }
  .continuum-return { width: 42px; padding: 0; justify-content: center; font-size: 0; }
  .continuum-return span { font-size: 17px; }
  .session-actions .button { padding: 0 12px; }
  .entry { grid-template-columns: minmax(0, 1fr); }
  h1 { font-size: 38px; }
  .office-detail-grid { grid-template-columns: 1fr; }
  .project-office-hero { grid-template-columns: 1fr; padding: 20px 18px; }
  .project-office-hero h3 { font-size: 27px; }
  .project-office-hero dl { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .project-office-hero dl div { min-height: 72px; padding: 10px; }
  .project-office-hero dd { font-size: 22px; }
  .record-grid,.form-grid { grid-template-columns: 1fr; }
  .form-grid .wide { grid-column: auto; }
  .project-creator,.featured-artifacts { grid-template-columns: 1fr; }
  .phase { grid-template-columns: 46px minmax(0,1fr); }
}

@media (min-width: 561px) and (max-width: 1100px) { .record-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.blueprint-intro { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(300px, .55fr); gap: 36px; padding: 30px; color: #f4f1e8; background: #10272c; border-top: 4px solid #e5a72e; }
.blueprint-intro h3 { margin: 9px 0 13px; font-family: Georgia, serif; font-size: 34px; line-height: 1.08; font-weight: 500; color: #fff; }
.blueprint-intro p:not(.kicker) { max-width: 720px; margin: 0; font-size: 13px; line-height: 1.75; color: #c8d5d2; }
.blueprint-intro dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; border: 1px solid rgba(255,255,255,.16); }
.blueprint-intro dl div { min-height: 84px; padding: 15px; border-right: 1px solid rgba(255,255,255,.12); border-bottom: 1px solid rgba(255,255,255,.12); }
.blueprint-intro dt { font-size: 9px; text-transform: uppercase; color: #92aaa5; }
.blueprint-intro dd { margin: 11px 0 0; font-family: Georgia, serif; font-size: 19px; color: #fff; }
.chapter-index { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin: 20px 0 34px; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.chapter-index a { min-height: 78px; padding: 13px; display: grid; grid-template-columns: 26px 1fr; gap: 8px; align-content: start; text-decoration: none; color: var(--ink); border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--panel); }
.chapter-index a:hover { box-shadow: inset 0 -3px #e5a72e; }
.chapter-index b { font-family: Georgia, serif; font-size: 18px; color: var(--green); }
.chapter-index span { font-size: 11px; line-height: 1.35; }
.blueprint-chapters { display: grid; gap: 32px; }
.blueprint-chapter { scroll-margin-top: 20px; padding-top: 10px; border-top: 1px solid var(--line); }
.blueprint-chapter > header { display: grid; grid-template-columns: 58px minmax(0, 1fr); gap: 16px; margin-bottom: 15px; }
.blueprint-chapter > header > span { font-family: Georgia, serif; font-size: 34px; color: #c89125; }
.blueprint-chapter h3 { margin: 2px 0 4px; font-family: Georgia, serif; font-size: 23px; font-weight: 500; }
.blueprint-chapter header p { margin: 0; font-size: 12px; line-height: 1.55; color: var(--muted); }
.blueprint-artifacts { display: grid; gap: 1px; border: 1px solid var(--line); background: var(--line); }
.blueprint-artifacts article { min-height: 84px; padding: 14px 16px; display: flex; align-items: center; justify-content: space-between; gap: 18px; background: var(--panel); }
.blueprint-artifacts article > div { min-width: 0; }
.blueprint-artifacts article span { font-size: 9px; font-weight: 700; color: var(--green); }
.blueprint-artifacts article h4 { margin: 7px 0 3px; font-size: 13px; line-height: 1.35; }
.blueprint-artifacts article small { display: block; max-width: 760px; overflow-wrap: anywhere; color: var(--muted); }
.blueprint-pending { padding: 22px 16px; font-size: 12px; color: var(--muted); background: var(--panel); }

@media (max-width: 900px) {
  .blueprint-intro { grid-template-columns: 1fr; }
  .chapter-index { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .blueprint-intro { padding: 22px 18px; }
  .blueprint-intro h3 { font-size: 28px; }
  .blueprint-intro dl { grid-template-columns: 1fr 1fr; }
  .chapter-index { grid-template-columns: 1fr; }
  .chapter-index a { min-height: 58px; }
  .blueprint-artifacts article { align-items: flex-start; flex-direction: column; }
  .blueprint-artifacts .button { width: 100%; }
}

.lab-intro { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(330px, .65fr); gap: 32px; align-items: end; padding: 28px; margin-top: 28px; color: #f4f1e8; background: #10272c; border-top: 4px solid #e5a72e; }
.lab-intro h3 { margin: 7px 0 11px; font-family: Georgia, serif; font-size: 34px; font-weight: 500; color: #fff; }
.lab-intro p:not(.kicker) { max-width: 760px; margin: 0; font-size: 13px; line-height: 1.65; color: #c8d5d2; }
.lab-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.lab-actions .button.secondary { color: #fff; border-color: rgba(255,255,255,.38); background: transparent; }
.lab-frame { height: min(72vh, 820px); min-height: 600px; border: 1px solid var(--line); border-top: 0; background: #10272c; }
.lab-frame iframe { display: block; width: 100%; height: 100%; border: 0; }
.sih-frame { min-height: 650px; }
.lab-contract { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; border: 1px solid var(--line); border-top: 0; background: var(--line); }
.lab-contract span { min-height: 78px; padding: 15px; font-size: 11px; line-height: 1.55; color: var(--muted); background: var(--panel); }
.lab-contract b { display: block; margin-bottom: 5px; color: var(--green); }
.library-groups { display: grid; gap: 28px; margin-top: 28px; }
.library-empty { margin-top: 22px; padding: 48px 24px; text-align: center; border: 1px dashed #aeb7b2; background: var(--panel); }
.library-empty b { font-family: Georgia,serif; font-size: 22px; font-weight: 500; }
.library-empty p { max-width: 540px; margin: 10px auto 0; font-size: 12px; line-height: 1.6; color: var(--muted); }
.library-groups > section > header { display: flex; align-items: end; justify-content: space-between; gap: 16px; margin-bottom: 10px; }
.library-groups h3 { margin: 0; font-family: Georgia, serif; font-size: 22px; font-weight: 500; text-transform: capitalize; }
.library-groups header span { font-size: 10px; color: var(--muted); text-transform: uppercase; }
.document > span > b { margin-right: 8px; font-size: 9px; color: var(--green); }
.document a.button { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; min-width: 106px; text-decoration: none; font-size: 12px; }

@media (max-width: 900px) {
  .office { grid-template-columns: minmax(0, 1fr); max-width: 100vw; }
  .rail { width: 100%; max-width: 100vw; }
  .rail nav { width: 100%; min-width: 0; max-width: 100%; overflow-x: auto; }
  .nav-button { flex: 0 0 auto; }
  .lab-intro { grid-template-columns: 1fr; }
  .lab-actions { justify-content: flex-start; }
  .lab-frame { min-height: 560px; }
  .lab-contract { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .lab-intro { padding: 22px 18px; }
  .lab-intro h3 { font-size: 28px; }
  .lab-actions { display: grid; }
  .lab-actions .button { width: 100%; }
  .lab-frame,.sih-frame { min-height: 540px; height: 68vh; }
  .library-groups > section > header { align-items: flex-start; flex-direction: column; }
}
