/* The private conversations and public record behind the deal desk. */
.career-bar {
  display: grid;
  grid-template-columns: minmax(170px, 1.35fr) repeat(3, minmax(0, 1fr)) auto;
  align-items: center;
  gap: 16px;
  min-height: 64px;
  padding: 10px 18px;
  border-bottom: 2px solid #172314;
  background: #293623;
  box-shadow: inset 0 1px #586b44;
}
.career-title {
  color: #b5c39c;
  font-size: 15px;
  line-height: 1.1;
  letter-spacing: .6px;
}
.career-title small {
  display: block;
  margin-top: 5px;
  color: #899d72;
  font-size: 11px;
  letter-spacing: 1px;
}
.career-stat {
  min-width: 0;
  padding-left: 15px;
  border-left: 1px solid #4b5d3c;
}
.career-stat > span {
  display: block;
  color: #9aae83;
  font-size: 12px;
  line-height: 1.1;
  letter-spacing: .5px;
}
.career-stat > strong {
  display: block;
  margin-top: 4px;
  color: #d6dbb4;
  font-size: 26px;
  line-height: 1;
  font-weight: 400;
}
.wire-button,
.story-open {
  flex-shrink: 0;
  min-height: 34px;
  padding: 6px 10px;
  border: 1px solid #849363;
  background: #435638;
  box-shadow: 2px 2px #172811;
  color: #d1d9ae;
  font-family: inherit;
  font-size: 16px;
  line-height: 1;
  letter-spacing: .5px;
}
.wire-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  white-space: nowrap;
}
.wire-button::before {
  content: '';
  width: 5px;
  height: 5px;
  background: #b4bb82;
  box-shadow: 0 0 0 2px #2b3e22;
}
.wire-button b {
  min-width: 20px;
  padding: 2px 4px;
  background: #b4a772;
  color: #34432a;
  font-size: 16px;
  font-weight: 400;
  text-align: center;
}
.wire-button:hover:not(:disabled),
.story-open:hover:not(:disabled) {
  border-color: #c2c99a;
  background: #526844;
}
.wire-button:active:not(:disabled),
.story-open:active:not(:disabled) {
  translate: 1px 1px;
  box-shadow: 1px 1px #172811;
}
.story-brief {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 65px;
  padding: 11px 18px 12px;
  border-left: 4px solid #9b925e;
  border-bottom: 3px solid #172314;
  background: #3a4130;
}
.story-brief > div {
  flex: 1;
  min-width: 0;
}
.story-brief > div > span {
  display: block;
  color: #b0af80;
  font-size: 12px;
  line-height: 1.1;
  letter-spacing: 1px;
}
.story-brief p {
  margin: 5px 0 0;
  color: #d0d4af;
  font-size: 20px;
  line-height: 1.2;
  overflow-wrap: break-word;
}
.story-open {
  border-color: #8d9164;
  background: #525d3d;
  color: #ddd9ae;
}
.story-envelope {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px 10px;
  margin: 17px 0 20px;
  padding: 11px 13px;
  border-left: 4px solid #8c8b59;
  background: #c5cba7;
  color: #556940;
  font-size: 18px;
  line-height: 1.25;
}
.story-envelope strong {
  color: #3d542f;
  font-size: 20px;
  font-weight: 400;
}
.story-envelope small {
  color: #687c4e;
  font-size: 14px;
}
.story-body {
  margin: 17px 0;
  color: #425834;
  font-size: 22px;
  line-height: 1.4;
  overflow-wrap: break-word;
}
.story-body p {
  margin: 0 0 15px;
  font-size: inherit;
  line-height: inherit;
}
.story-body p:last-child {
  margin-bottom: 0;
}
.story-body strong {
  color: #2f4826;
  font-weight: 400;
}
.story-context {
  margin: 20px 0;
  padding: 14px 16px;
  border-top: 1px dashed #9ca97a;
  border-bottom: 1px dashed #9ca97a;
  background: #d0d4b1;
  color: #5c7145;
  font-size: 20px;
  line-height: 1.4;
}
.story-context > strong,
.story-context > h3 {
  display: block;
  margin-bottom: 7px;
  color: #435c31;
  font-size: 18px;
  line-height: 1.2;
  font-weight: 400;
}
.story-context p {
  margin: 8px 0 0;
  font-size: inherit;
  line-height: inherit;
}
.story-options {
  display: grid;
  gap: 12px;
  margin: 21px 0 6px;
}
.story-option {
  display: block;
  width: 100%;
  padding: 13px 15px 12px;
  border: 2px solid #899d68;
  background: #c8d0aa;
  box-shadow: 3px 3px #a4b287;
  color: #415b2e;
  font-family: inherit;
  text-align: left;
}
.story-option strong {
  display: block;
  color: #354f29;
  font-size: 22px;
  line-height: 1.15;
  font-weight: 400;
}
.story-option p {
  display: block;
  margin: 7px 0;
  color: #5d7447;
  font-size: 18px;
  line-height: 1.3;
}
.story-option small,
.story-option .story-signal {
  display: block;
  color: #777449;
  font-size: 15px;
  line-height: 1.2;
}
.story-option:hover:not(:disabled) {
  border-color: #4b6a34;
  background: #d2dabb;
}
.story-option:active:not(:disabled) {
  translate: 1px 1px;
  box-shadow: 2px 2px #a4b287;
}
.story-option:disabled {
  opacity: .72;
  border-style: dashed;
  box-shadow: none;
}
.story-option[aria-pressed='true'],
.story-option.selected {
  border-color: #5e7c3f;
  border-style: solid;
  background: #b8c99c;
  box-shadow: inset 4px 0 #6b884a;
  opacity: 1;
}
.career-mini {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 20px 0;
  padding: 13px 0;
  border-top: 1px dashed #9daf7c;
  border-bottom: 1px dashed #9daf7c;
}
.career-mini > div,
.career-mini .career-stat {
  min-width: 0;
  padding: 0;
  border: 0;
}
.career-mini span {
  display: block;
  color: #738959;
  font-size: 12px;
  line-height: 1.2;
}
.career-mini strong {
  display: block;
  margin-top: 5px;
  color: #476830;
  font-size: 28px;
  line-height: 1;
  font-weight: 400;
}
.story-outcome {
  margin: 20px 0 8px;
  padding: 15px 16px;
  border-top: 3px solid #82945c;
  background: #c8d2ad;
  color: #4f683b;
}
.story-outcome > strong {
  display: block;
  margin-bottom: 8px;
  color: #3b582c;
  font-size: 23px;
  line-height: 1.15;
  font-weight: 400;
}
.story-outcome p {
  margin: 7px 0 0;
  font-size: 21px;
  line-height: 1.35;
}
.impact-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 13px;
}
.impact-chips span {
  display: inline-block;
  padding: 4px 7px;
  border: 1px solid #a0af7f;
  background: #d8debd;
  color: #5b7040;
  font-size: 15px;
  line-height: 1.1;
}
.impact-chips .positive {
  border-color: #8caa65;
  color: #496c30;
}
.impact-chips .negative {
  border-color: #b7a079;
  color: #91583f;
}
.wire-feed {
  display: grid;
  gap: 12px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}
.wire-post {
  min-width: 0;
  padding: 13px 15px 14px;
  border: 1px solid #acb88b;
  border-left: 3px solid #859b63;
  background: #cdd5b1;
  color: #4b6436;
  overflow-wrap: break-word;
}
.wire-post strong {
  color: #344f28;
  font-size: 21px;
  line-height: 1.15;
  font-weight: 400;
}
.wire-post small {
  display: inline-block;
  margin-left: 6px;
  color: #708555;
  font-size: 15px;
  line-height: 1.2;
}
.wire-post > span,
.wire-post .wire-meta {
  display: block;
  margin-top: 5px;
  color: #7c8c5d;
  font-size: 13px;
  line-height: 1.2;
  letter-spacing: .4px;
}
.wire-post p {
  margin: 10px 0 0;
  color: #4d6539;
  font-size: 22px;
  line-height: 1.3;
}
.wire-post.followup {
  margin-left: 16px;
  border-left-color: #a29760;
  background: #d5d8b7;
}
.chapter-label {
  display: block;
  margin: 20px 0 8px;
  color: #859264;
  font-size: 13px;
  line-height: 1.2;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}
.ending-copy {
  margin: 15px 0 20px;
  color: #465f33;
  font-size: 24px;
  line-height: 1.35;
}
.ending-copy p + p {
  margin-top: 14px;
}
.epilogue-list {
  display: grid;
  gap: 13px;
  margin-top: 21px;
}
.epilogue-list article {
  padding: 13px 15px;
  border-left: 3px solid #8a9f68;
  background: #ccd4af;
}
.epilogue-list h3 {
  margin: 0 0 7px;
  color: #3a562b;
  font-size: 23px;
  line-height: 1.1;
  font-weight: 400;
}
.epilogue-list p {
  margin: 0;
  color: #597142;
  font-size: 20px;
  line-height: 1.35;
}
.story-pending,
.decision-receipt .story-pending {
  display: block;
  width: 100%;
  margin-top: 10px;
  padding: 7px 9px;
  border: 1px solid #9d8c55;
  border-left-width: 3px;
  background: #d4c58e;
  color: #66582f;
  font-family: inherit;
  font-size: 16px;
  line-height: 1.2;
  text-align: left;
}
button.story-pending:hover:not(:disabled) {
  background: #e0d29c;
  border-color: #806e3f;
}
.wire-button:focus-visible,
.story-open:focus-visible,
.story-option:focus-visible,
button.story-pending:focus-visible {
  outline: 2px solid #b4a15e;
  outline-offset: 3px;
}

@media (max-width: 1150px) {
  .career-bar { gap: 12px; padding-inline: 14px; }
  .career-title { font-size: 14px; }
  .career-stat { padding-left: 12px; }
  .career-stat > span { font-size: 11px; letter-spacing: .2px; }
  .story-brief { padding-inline: 14px; gap: 15px; }
}
@media (max-width: 850px) {
  .career-bar { grid-template-columns: repeat(3, minmax(0, 1fr)) auto; gap: 10px 16px; }
  .career-title { grid-column: 1 / -1; font-size: 15px; }
  .career-title small { display: inline; margin-left: 10px; }
  .career-stat { padding-left: 12px; }
  .career-stat:nth-child(2) { padding-left: 0; border-left: 0; }
  .career-stat > span { font-size: 12px; }
  .career-stat > strong { font-size: 25px; }
  .story-brief { align-items: center; gap: 14px; }
  .story-brief p { font-size: 20px; }
  .story-open { max-width: 170px; font-size: 15px; line-height: 1.1; }
}
@media (max-width: 560px) {
  .career-bar { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 11px 8px; padding: 10px 12px 12px; }
  .career-title { grid-column: 1 / 3; grid-row: 1; font-size: 14px; }
  .career-title small { display: block; margin: 4px 0 0; font-size: 10px; }
  .career-stat { grid-row: 2; padding-left: 9px; }
  .career-stat > span { font-size: 10px; letter-spacing: .1px; }
  .career-stat > strong { font-size: 24px; }
  .wire-button { grid-column: 3; grid-row: 1; justify-self: end; gap: 6px; min-height: 32px; padding: 5px 7px; font-size: 15px; }
  .wire-button b { min-width: 17px; font-size: 15px; }
  .wire-button::before { width: 4px; height: 4px; }
  .story-brief { flex-direction: column; align-items: stretch; gap: 9px; padding: 11px 12px 12px; }
  .story-brief > div > span { font-size: 11px; }
  .story-brief p { font-size: 20px; line-height: 1.25; }
  .story-open { align-self: flex-start; max-width: none; min-height: 32px; font-size: 16px; }
  .story-envelope { padding: 10px 11px; font-size: 18px; }
  .story-body { font-size: 22px; line-height: 1.4; }
  .story-context { padding: 12px; font-size: 19px; line-height: 1.4; }
  .story-options { gap: 11px; }
  .story-option { padding: 12px; }
  .story-option strong { font-size: 21px; }
  .story-option p { font-size: 18px; line-height: 1.3; }
  .story-option small, .story-option .story-signal { font-size: 14px; }
  .career-mini { gap: 9px; }
  .career-mini span { font-size: 11px; }
  .career-mini strong { font-size: 25px; }
  .story-outcome { padding: 13px; }
  .story-outcome p { font-size: 21px; }
  .impact-chips { gap: 5px; }
  .impact-chips span { padding: 4px 6px; font-size: 14px; }
  .wire-post { padding: 12px; }
  .wire-post strong { font-size: 21px; }
  .wire-post small { font-size: 14px; }
  .wire-post p { font-size: 21px; }
  .wire-post.followup { margin-left: 10px; }
  .ending-copy { font-size: 23px; }
  .epilogue-list article { padding: 12px; }
  .epilogue-list h3 { font-size: 22px; }
  .epilogue-list p { font-size: 20px; }
}

/* Long conversations retain an accessible exit and a clear message state. */
.modal-top{position:sticky;top:0;z-index:2}
.story-open.pending{border-color:#c0ac6c;background:#69613b;color:#f1df9e}
.wire-post h3{font-size:20px;font-weight:400;margin:10px 0 0;color:#536537}
@media(max-width:560px){
  .interview{grid-template-rows:23px minmax(146px,auto) auto}
  .portrait-window{height:100%;min-height:146px}
  .dialogue{min-height:146px}
}
