.career-panel [hidden] {
  display: none !important;
}

.career-panel fieldset {
  min-width: 0;
  border: 0;
  padding: 0;
}

.career-panel .field-label {
  display: block;
  margin-top: 14px;
}

.career-panel .form-input {
  width: 100%;
  margin: 6px 0 0;
}

.career-panel textarea {
  min-height: 92px;
}

.career-panel .career-disclosure {
  margin-top: 12px;
  font-size: 13px;
  line-height: 1.7;
  color: var(--muted);
}

.career-options,
.career-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.career-options > label {
  flex: 1 1 130px;
}

.career-panel [data-question] {
  margin-top: 16px;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.career-panel [data-reset] {
  margin-top: 18px;
}

.career-panel .career-status:empty {
  display: none;
}

.career-result,
.career-resume-text,
.career-history {
  margin-top: 16px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 8px;
  font: inherit;
  line-height: 1.8;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.career-resume-section {
  margin-top: 20px;
}

.career-resume-section .career-resume-text {
  margin-top: 8px;
}

.career-resume-text > * + * {
  margin-top: 10px;
}

.career-resume-text :is(ul, ol) {
  padding-left: 1.5em;
}

.career-resume-score {
  display: block;
  margin-top: 8px;
  font-size: 24px;
}

.career-diff {
  overflow: auto;
  max-height: 32rem;
  margin-top: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
}

.career-diff-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-bottom: 1px solid var(--line);
}

.career-diff-row:last-child {
  border-bottom: 0;
}

.career-diff-head {
  position: sticky;
  top: 0;
  background: #fff8ec;
}

.career-diff-head > strong,
.career-diff-cell {
  padding: 8px;
}

.career-diff-row > :first-child {
  border-right: 1px solid var(--line);
}

.career-diff-cell {
  min-width: 0;
  line-height: 1.65;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.career-diff-sign {
  margin-right: 6px;
  font-weight: 700;
}

.career-diff-cell.is-removed { background: #ffebe9; }
.career-diff-cell.is-added { background: #dafbe1; }
.career-diff-cell del { background: #ffcecb; }
.career-diff-cell ins { background: #aceebb; }

.career-history {
  padding-left: 36px;
}

.career-history:empty {
  display: none;
}

.career-history li + li {
  margin-top: 12px;
}
.mock-section-title,.mock-toolbar,.records-toolbar { display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; }
.mock-section-title > div,.mock-toolbar > div { display:flex; gap:16px; flex-wrap:wrap; align-items:center; }
.mock-choices { display:flex; gap:8px; flex-wrap:wrap; }
.mock-choices button { border:1px solid var(--line); background:transparent; color:var(--muted); padding:9px 16px; border-radius:6px; font-size:13px; }
.mock-choices button[aria-pressed=true] { border-color:var(--ink); background:var(--ink); color:var(--paper); }
.mock-choices button:disabled { cursor:not-allowed; opacity:.6; }
.mock-resume-drop.is-dragging { outline:2px dashed var(--accent); outline-offset:4px; }
.web-mock > .work-section,.web-mock [data-preparation] .work-section { margin-top:0; }
.web-mock .mock-choice-group { margin-top:20px; }
.web-mock [data-preparation] > form > fieldset > .button { margin-top:20px; }
.web-mock .mock-chat { display:flex; flex-direction:column; min-height:480px; }
.mock-toolbar { padding-bottom:16px; border-bottom:1px solid var(--line); font-size:13px; }
.mock-thread { height:min(48vh,440px); min-height:220px; overflow-y:auto; padding:20px 4px; overscroll-behavior:contain; }
.mock-message { max-width:88%; margin-bottom:18px; }
.mock-message.candidate { margin-left:auto; }
.mock-message-label { display:block; margin-bottom:6px; font-size:11px; color:var(--muted); }
.mock-message.candidate .mock-message-label { text-align:right; }
.mock-message-body { border:1px solid var(--line); background:#f6f1e8; border-radius:10px; padding:14px 16px; font-size:14px; line-height:1.9; overflow-wrap:anywhere; white-space:pre-wrap; }
.mock-message.candidate .mock-message-body { background:#fff0d2; }
.mock-message-body .career-resume-text,.record-message-text .career-resume-text { border:0; margin:0; padding:0; border-radius:0; white-space:normal; font-size:inherit; }
.mock-message.is-incomplete { opacity:.8; }
.mock-message.is-incomplete .mock-message-label { color:#a13d21; }
.mock-composer-actions { align-items:center; }
.mock-action-space { flex:1; }
.mock-sync { display:flex; align-items:center; gap:16px; font-size:12px; color:var(--muted); margin-top:12px; }
.mock-review [data-review-text] > .career-resume-text { border:0; padding:0; margin-top:24px; }
.mock-completed-actions { padding-top:16px; border-top:1px solid var(--line); }
.career-funding .career-actions { margin-top:24px; }
.records-status { font-size:13px; line-height:1.9; margin:16px 0; color:var(--muted); }
.record-row { display:flex; gap:20px; align-items:center; width:100%; background:none; border:0; border-top:1px solid var(--line); padding:20px 0; text-align:left; }
.record-row > div:first-child { flex:1; min-width:0; }
.record-row strong { display:block; font-size:16px; font-weight:500; overflow-wrap:anywhere; }
.record-row div > span { display:block; margin-top:8px; color:var(--muted); font-size:12px; }
.record-row > span:last-child { font-size:22px; color:var(--muted); }
.record-detail [data-record-meta] { margin-top:8px; font-size:12px; color:var(--muted); }
.record-conversation { margin-top:24px; }
.record-message { max-width:88%; margin-bottom:20px; }
.record-message.answer { margin-left:auto; }
.record-message-label { display:block; color:var(--muted); font-size:11px; margin-bottom:6px; }
.record-message.answer .record-message-label { text-align:right; }
.record-message-text { background:#f1ece3; border:1px solid var(--line); border-radius:10px; padding:16px; font-size:14px; line-height:1.9; overflow-wrap:anywhere; }
.record-message.answer .record-message-text { background:#fff0d2; }
.record-message.review { max-width:100%; }
.record-message.is-empty .record-message-text { color:var(--muted); }
.record-solution { border:1px solid var(--line); border-radius:10px; padding:20px; margin:24px 0; }
.record-solution h3 { font-size:16px; font-weight:500; margin-bottom:16px; }
.record-solution pre { margin:0; white-space:pre-wrap; overflow-wrap:anywhere; font:13px/1.8 Consolas,monospace; }
.records-empty { padding:32px 0; }
.records-empty h2 { font-size:22px; }
.records-empty p { font-size:14px; line-height:1.9; margin-top:16px; color:var(--muted); }
@media(max-width:700px) {
  .mock-thread { min-height:200px; height:42vh; }
  .mock-message,.record-message { max-width:94%; }
  .mock-message-body,.record-message-text { padding:12px; }
  .mock-action-space { display:none; }
  .mock-composer-actions .button { flex:1 1 auto; }
  .mock-section-title > div { gap:12px; }
  .record-row { gap:12px; }
  .record-row strong { font-size:14px; }
  .record-row div > span { font-size:11px; }
}
