/* FRA Prop HQ v6.19 — Professional Trade View + Coach Review 2.0 */
:root {
  --v619-line: color-mix(in srgb, var(--border) 76%, transparent);
  --v619-soft: color-mix(in srgb, var(--panel-2) 76%, transparent);
  --v619-faint: color-mix(in srgb, var(--muted) 9%, transparent);
}

/* Keep the new pages open and editorial rather than card-heavy. */
#view-trades,
#view-ai { padding-bottom: 80px; }
#view-trades .section-head,
#view-ai .section-head { margin-bottom: 32px; }
.section-kicker {
  display: block;
  margin-bottom: 8px;
  color: var(--accent);
  font: 600 10px/1.2 "IBM Plex Mono", monospace;
  letter-spacing: .13em;
}

/* ----------------------------- Trade View ----------------------------- */
.trade-page-head-v619 { align-items: flex-end; }
.trade-workspace-v619 {
  display: grid;
  grid-template-columns: minmax(260px, 318px) minmax(0, 1fr);
  min-height: 720px;
  border-top: 1px solid var(--v619-line);
}
.trade-browser-v619 {
  min-width: 0;
  padding: 24px 24px 24px 0;
  border-right: 1px solid var(--v619-line);
}
.trade-browser-search-v619 { position: relative; }
.trade-browser-search-v619 input {
  width: 100%;
  height: 43px;
  padding: 0 38px 0 13px;
  color: var(--text);
  background: transparent;
  border: 1px solid var(--border);
  border-radius: 8px;
  outline: none;
}
.trade-browser-search-v619 input:focus { border-color: var(--muted-strong); }
.trade-browser-search-v619 > span {
  position: absolute;
  right: 13px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--muted);
}
.trade-filter-row-v619 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-top: 10px;
}
.trade-filter-row-v619 select {
  width: 100%;
  min-width: 0;
  height: 38px;
  padding: 0 30px 0 10px;
  color: var(--muted-strong);
  background: transparent;
  border: 1px solid var(--border);
  border-radius: 7px;
  font-size: 12px;
}
.trade-browser-summary-v619 {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin: 22px 2px 9px;
  color: var(--muted);
  font: 500 10px/1.2 "IBM Plex Mono", monospace;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.trade-decision-list-v619 {
  display: flex;
  flex-direction: column;
  max-height: calc(100vh - 330px);
  min-height: 360px;
  overflow: auto;
  scrollbar-width: thin;
}
.trade-decision-v619 {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) auto;
  gap: 11px;
  align-items: center;
  width: 100%;
  padding: 14px 8px 14px 2px;
  color: var(--text);
  text-align: left;
  background: transparent;
  border: 0;
  border-top: 1px solid var(--v619-line);
  cursor: pointer;
}
.trade-decision-v619:last-child { border-bottom: 1px solid var(--v619-line); }
.trade-decision-v619:hover { background: var(--v619-faint); }
.trade-decision-v619.active {
  position: relative;
  background: color-mix(in srgb, var(--accent) 5%, transparent);
}
.trade-decision-v619.active::before {
  content: "";
  position: absolute;
  left: -1px;
  top: 11px;
  bottom: 11px;
  width: 2px;
  background: var(--accent);
}
.trade-decision-time-v619 {
  color: var(--muted);
  font: 500 11px/1.25 "IBM Plex Mono", monospace;
}
.trade-decision-main-v619 { min-width: 0; }
.trade-decision-main-v619 strong {
  display: block;
  overflow: hidden;
  color: var(--text);
  font-size: 13px;
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.trade-decision-main-v619 span {
  display: block;
  margin-top: 4px;
  overflow: hidden;
  color: var(--muted);
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.trade-decision-result-v619 {
  text-align: right;
  font: 600 12px/1.2 "IBM Plex Mono", monospace;
}
.trade-decision-result-v619 small {
  display: block;
  margin-top: 5px;
  color: var(--muted);
  font: 500 9px/1.2 "IBM Plex Mono", monospace;
  letter-spacing: .05em;
}
.trade-list-empty-v619 {
  padding: 42px 12px;
  color: var(--muted);
  text-align: center;
  border-top: 1px solid var(--v619-line);
}

.trade-case-v619 {
  min-width: 0;
  padding: 25px 0 0 34px;
}
.trade-case-empty-v619 {
  display: grid;
  place-items: center;
  align-content: center;
  min-height: 570px;
  color: var(--muted);
  text-align: center;
}
.trade-case-empty-v619 > div {
  margin-bottom: 20px;
  color: var(--accent);
  font-size: 30px;
}
.trade-case-empty-v619 h3 { margin: 0 0 8px; color: var(--text); font-size: 21px; }
.trade-case-empty-v619 p { max-width: 390px; margin: 0; line-height: 1.55; }
.trade-case-header-v619 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 28px;
  align-items: center;
  padding: 0 0 23px;
  border-bottom: 1px solid var(--v619-line);
}
.trade-case-title-v619 { display: flex; gap: 14px; align-items: center; min-width: 0; }
.trade-direction-mark {
  display: grid;
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  place-items: center;
  color: var(--text);
  border: 1px solid var(--border-strong);
  border-radius: 50%;
  font: 600 13px/1 "IBM Plex Mono", monospace;
}
.trade-direction-mark.long { color: var(--green); }
.trade-direction-mark.short { color: var(--red); }
.trade-case-title-v619 span,
.trade-result-v619 span,
.trade-account-list-v619 > span,
.trade-review-editor-head-v619 span,
.trade-rule-checklist-v619 > div:first-child > span,
.trade-coach-head-v619 span {
  color: var(--muted);
  font: 600 9px/1.2 "IBM Plex Mono", monospace;
  letter-spacing: .12em;
}
.trade-case-title-v619 h3 {
  margin: 4px 0 4px;
  color: var(--text);
  font-size: clamp(22px, 2.1vw, 31px);
  font-weight: 600;
  letter-spacing: -.035em;
}
.trade-case-title-v619 p { margin: 0; color: var(--muted); font-size: 12px; }
.trade-result-v619 { text-align: right; }
.trade-result-v619 strong {
  display: block;
  margin-top: 6px;
  font: 600 clamp(22px, 2vw, 30px)/1 "IBM Plex Mono", monospace;
}
.trade-case-nav-v619 { display: flex; gap: 6px; }
.trade-case-nav-v619 button {
  width: 37px;
  height: 37px;
  color: var(--muted-strong);
  background: transparent;
  border: 1px solid var(--border);
  border-radius: 7px;
  cursor: pointer;
}
.trade-case-nav-v619 button:hover { color: var(--text); border-color: var(--border-strong); }
.trade-case-nav-v619 button:disabled { opacity: .35; cursor: default; }
.trade-case-main-v619 {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(210px, .72fr);
  gap: 28px;
  padding: 28px 0 34px;
  border-bottom: 1px solid var(--v619-line);
}
.trade-shot-v619 {
  position: relative;
  min-height: 330px;
  overflow: hidden;
  background:
    linear-gradient(var(--v619-line) 1px, transparent 1px),
    linear-gradient(90deg, var(--v619-line) 1px, transparent 1px),
    color-mix(in srgb, var(--panel-2) 45%, transparent);
  background-size: 48px 48px;
  border: 1px solid var(--border);
  border-radius: 10px;
}
.trade-shot-v619 > img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 330px;
  max-height: 560px;
  object-fit: contain;
  background: #090a0b;
}
.trade-shot-empty-v619 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 330px;
  padding: 34px;
  color: var(--muted);
  text-align: center;
}
.trade-shot-empty-v619 > span { font: 600 9px/1.2 "IBM Plex Mono", monospace; letter-spacing: .12em; }
.trade-shot-empty-v619 strong { margin-top: 12px; color: var(--text); font-size: 18px; font-weight: 500; }
.trade-shot-empty-v619 p { max-width: 360px; margin: 8px 0 18px; line-height: 1.5; }
.trade-shot-empty-v619 label,
.trade-shot-actions-v619 label,
.trade-shot-actions-v619 button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 0 13px;
  color: var(--text);
  background: var(--panel-3);
  border: 1px solid var(--border-strong);
  border-radius: 7px;
  font-size: 12px;
  cursor: pointer;
}
.trade-shot-empty-v619 input,
.trade-shot-actions-v619 input { display: none; }
.trade-shot-actions-v619 {
  position: absolute;
  right: 11px;
  bottom: 11px;
  display: flex;
  gap: 6px;
}
.trade-shot-actions-v619 button { color: #fff; background: rgba(0,0,0,.68); }
.trade-shot-actions-v619 label { color: #fff; background: rgba(0,0,0,.68); }
.trade-timeline-v619 {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 12px;
  margin-top: 16px;
}
.trade-timeline-point-v619 span { display: block; color: var(--muted); font: 600 9px/1.2 "IBM Plex Mono", monospace; letter-spacing: .1em; }
.trade-timeline-point-v619 strong { display: block; margin-top: 5px; font: 600 14px/1.2 "IBM Plex Mono", monospace; }
.trade-timeline-point-v619:last-child { text-align: right; }
.trade-timeline-line-v619 { min-width: 75px; height: 1px; background: var(--border-strong); position: relative; }
.trade-timeline-line-v619::before,
.trade-timeline-line-v619::after { content:""; position:absolute; top:-3px; width:7px; height:7px; border-radius:50%; background:var(--muted-strong); }
.trade-timeline-line-v619::before { left:0; }
.trade-timeline-line-v619::after { right:0; }
.trade-timeline-line-v619 span { position:absolute; left:50%; top:-19px; transform:translateX(-50%); color:var(--muted); font:500 9px/1 "IBM Plex Mono", monospace; white-space:nowrap; }
.trade-facts-v619 { min-width: 0; }
.trade-fact-grid-v619 { border-top: 1px solid var(--v619-line); }
.trade-fact-grid-v619 > div {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  padding: 13px 0;
  border-bottom: 1px solid var(--v619-line);
}
.trade-fact-grid-v619 span { color: var(--muted); font-size: 11px; }
.trade-fact-grid-v619 strong { color: var(--text); font: 600 12px/1.2 "IBM Plex Mono", monospace; text-align: right; }
.trade-account-list-v619 { margin-top: 25px; }
.trade-account-list-v619 > div { margin-top: 9px; border-top: 1px solid var(--v619-line); }
.trade-account-chip-v619 { display:flex; justify-content:space-between; gap:10px; padding:11px 0; border-bottom:1px solid var(--v619-line); }
.trade-account-chip-v619 strong { font-size: 12px; }
.trade-account-chip-v619 span { color: var(--muted); font-size: 10px; }

.trade-review-editor-v619 { padding: 34px 0; border-bottom: 1px solid var(--v619-line); }
.trade-review-editor-head-v619 { display:flex; justify-content:space-between; align-items:flex-end; gap:22px; margin-bottom:24px; }
.trade-review-editor-head-v619 h3 { margin:7px 0 0; font-size:22px; font-weight:600; letter-spacing:-.025em; }
.trade-review-meta-v619 { display:grid; grid-template-columns:1.25fr repeat(3, minmax(105px,.75fr)); gap:12px; margin-bottom:18px; }
.trade-review-editor-v619 label { display:flex; flex-direction:column; gap:7px; color:var(--muted); font-size:10px; font-weight:600; letter-spacing:.03em; text-transform:uppercase; }
.trade-review-editor-v619 select,
.trade-review-editor-v619 input,
.trade-review-editor-v619 textarea {
  width:100%; color:var(--text); background:transparent; border:1px solid var(--border); border-radius:7px; outline:none; text-transform:none; letter-spacing:0; font-size:13px; font-weight:400;
}
.trade-review-editor-v619 select,
.trade-review-editor-v619 input { height:41px; padding:0 11px; }
.trade-review-editor-v619 textarea { min-height:118px; padding:12px; resize:vertical; line-height:1.55; }
.trade-review-editor-v619 select:focus,
.trade-review-editor-v619 input:focus,
.trade-review-editor-v619 textarea:focus { border-color:var(--muted-strong); }
.trade-review-writing-v619 { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.trade-review-bottom-v619 { display:grid; grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr); gap:28px; margin-top:22px; align-items:start; }
.trade-tags-v619 { margin-bottom:14px; }
.trade-review-editor-v619 .checkbox-row { flex-direction:row; align-items:center; gap:9px; min-height:34px; color:var(--muted-strong); text-transform:none; letter-spacing:0; font-size:12px; font-weight:400; }
.trade-review-editor-v619 .checkbox-row input { width:16px; height:16px; }
.trade-rule-checklist-v619 { border-top:1px solid var(--v619-line); }
.trade-rule-checklist-v619 > div:first-child { display:flex; justify-content:space-between; gap:15px; padding:11px 0; border-bottom:1px solid var(--v619-line); }
.trade-rule-checklist-v619 > div:first-child strong { font:600 11px/1.2 "IBM Plex Mono",monospace; }
.trade-rule-item-v619 { display:flex; flex-direction:row !important; align-items:flex-start; gap:9px !important; padding:10px 0; border-bottom:1px solid var(--v619-line); color:var(--muted-strong) !important; font-size:12px !important; font-weight:400 !important; letter-spacing:0 !important; text-transform:none !important; }
.trade-rule-item-v619 input { flex:0 0 16px; width:16px !important; height:16px !important; margin-top:1px; }
.trade-rule-empty-v619 { padding:17px 0; color:var(--muted); font-size:12px; }

.trade-coach-v619 { padding: 26px 0 0; }
.trade-coach-head-v619 { display:flex; justify-content:space-between; align-items:center; gap:18px; }
.trade-coach-head-v619 h3 { margin:6px 0 0; font-size:18px; }
.trade-coach-head-v619 button { color:var(--muted-strong); background:transparent; border:0; cursor:pointer; font-size:12px; }
.trade-coach-body-v619 { padding-top:18px; }
.trade-coach-actions-v619 { display:flex; flex-wrap:wrap; gap:7px; }
.trade-coach-actions-v619 button { min-height:36px; padding:0 12px; color:var(--muted-strong); background:transparent; border:1px solid var(--border); border-radius:7px; cursor:pointer; font-size:11px; }
.trade-coach-actions-v619 button:hover { color:var(--text); border-color:var(--border-strong); }
.trade-coach-actions-v619 button:disabled { opacity:.5; cursor:wait; }
.trade-coach-output-v619 { margin-top:18px; padding-top:18px; border-top:1px solid var(--v619-line); }
.trade-coach-output-v619 > p { margin:0; color:var(--muted); }

/* ----------------------------- Coach Review ----------------------------- */
.coach-page-head { align-items:flex-end; }
.coach-page-head > div:first-child { max-width:760px; }
.coach-route-toggle { display:inline-flex; padding:3px; border:1px solid var(--border); border-radius:8px; }
.coach-route-toggle button { min-height:34px; padding:0 12px; color:var(--muted); background:transparent; border:0; border-radius:5px; cursor:pointer; font-size:11px; font-weight:600; }
.coach-route-toggle button.active { color:var(--text); background:var(--panel-3); }
.coach-action-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; margin-bottom:30px; border-top:1px solid var(--v619-line); border-bottom:1px solid var(--v619-line); }
.coach-action-strip button { position:relative; min-width:0; min-height:126px; padding:20px 20px 18px; color:var(--text); text-align:left; background:transparent; border:0; border-right:1px solid var(--v619-line); cursor:pointer; }
.coach-action-strip button:last-child { border-right:0; }
.coach-action-strip button:hover { background:var(--v619-faint); }
.coach-action-strip button > span { color:var(--accent); font:600 9px/1.2 "IBM Plex Mono",monospace; letter-spacing:.12em; text-transform:uppercase; }
.coach-action-strip button strong { display:block; margin-top:17px; overflow:hidden; font-size:14px; text-overflow:ellipsis; white-space:nowrap; }
.coach-action-strip button small { display:block; margin-top:6px; color:var(--muted); font-size:11px; }
.coach-layout-v619 { display:grid; grid-template-columns:minmax(0,1fr) 270px; gap:34px; }
.coach-workspace-v619 { min-width:0; }
.coach-workspace-head { display:flex; justify-content:space-between; align-items:center; gap:16px; padding-bottom:16px; border-bottom:1px solid var(--v619-line); }
.coach-workspace-head span { color:var(--accent); font:600 9px/1.2 "IBM Plex Mono",monospace; letter-spacing:.12em; }
.coach-workspace-head h3 { margin:5px 0 0; font-size:19px; }
.coach-empty-v619 { display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:360px; padding:50px 20px; text-align:center; }
.coach-empty-mark { display:grid; width:52px; height:52px; place-items:center; color:var(--accent); border:1px solid var(--border-strong); border-radius:50%; font:600 11px/1 "IBM Plex Mono",monospace; }
.coach-empty-v619 h3 { margin:18px 0 7px; font-size:21px; }
.coach-empty-v619 p { max-width:520px; margin:0; color:var(--muted); line-height:1.6; }
.coach-review-output { padding:24px 0 8px; }
.coach-verdict-v619 { display:grid; grid-template-columns:104px minmax(0,1fr); gap:20px; align-items:start; padding-bottom:24px; border-bottom:1px solid var(--v619-line); }
.coach-grade-v619 { display:grid; min-height:88px; place-items:center; border:1px solid var(--border-strong); border-radius:9px; }
.coach-grade-v619 span { color:var(--muted); font:600 9px/1.2 "IBM Plex Mono",monospace; letter-spacing:.12em; }
.coach-grade-v619 strong { font:600 30px/1 "IBM Plex Mono",monospace; }
.coach-verdict-copy-v619 > span { color:var(--accent); font:600 9px/1.2 "IBM Plex Mono",monospace; letter-spacing:.1em; }
.coach-verdict-copy-v619 h3 { margin:7px 0 8px; font-size:24px; letter-spacing:-.025em; }
.coach-verdict-copy-v619 p { margin:0; color:var(--muted-strong); line-height:1.6; }
.coach-review-grid-v619 { display:grid; grid-template-columns:1fr 1fr; gap:0 28px; }
.coach-review-section-v619 { padding:22px 0; border-bottom:1px solid var(--v619-line); }
.coach-review-section-v619.full { grid-column:1/-1; }
.coach-review-section-v619 > span { color:var(--muted); font:600 9px/1.2 "IBM Plex Mono",monospace; letter-spacing:.12em; }
.coach-review-section-v619 h4 { margin:8px 0 11px; font-size:14px; }
.coach-review-section-v619 ul { margin:0; padding:0; list-style:none; }
.coach-review-section-v619 li { position:relative; padding:5px 0 5px 15px; color:var(--muted-strong); font-size:12px; line-height:1.5; }
.coach-review-section-v619 li::before { content:""; position:absolute; left:0; top:12px; width:5px; height:5px; border-radius:50%; background:var(--muted); }
.coach-mistake-v619 { padding:12px 0; border-top:1px solid var(--v619-line); }
.coach-mistake-v619:first-of-type { border-top:0; }
.coach-mistake-v619 > div { display:flex; align-items:center; gap:8px; }
.coach-mistake-v619 strong { font-size:12px; }
.coach-severity-v619 { padding:3px 6px; color:var(--muted); border:1px solid var(--border); border-radius:4px; font:600 8px/1 "IBM Plex Mono",monospace; text-transform:uppercase; }
.coach-mistake-v619 p { margin:5px 0 0; color:var(--muted); font-size:11px; line-height:1.5; }
.coach-next-action-v619 { margin-top:22px; padding:20px 0 0 18px; border-top:1px solid var(--v619-line); border-left:2px solid var(--accent); }
.coach-next-action-v619 span { color:var(--accent); font:600 9px/1.2 "IBM Plex Mono",monospace; letter-spacing:.12em; }
.coach-next-action-v619 strong { display:block; max-width:760px; margin-top:8px; font-size:16px; line-height:1.5; }
.coach-confidence-v619 { margin-top:11px; color:var(--muted); font-size:10px; }
.coach-history-v619 { min-height:0 !important; max-height:320px; padding:0 !important; background:transparent !important; }
.coach-history-v619:empty { display:none; }
.coach-history-v619 .ai-message { padding:14px 0; border-top:1px solid var(--v619-line); }
.coach-history-v619 .ai-avatar { display:none; }
.coach-history-v619 .ai-bubble { padding:0 !important; background:transparent !important; border:0 !important; box-shadow:none !important; }
.coach-history-v619 .ai-message.user .ai-bubble { color:var(--muted-strong); font-size:12px; }
.coach-composer-v619 { margin-top:20px; border-top:1px solid var(--v619-line); }
.coach-composer-v619 textarea { width:100%; min-height:92px; padding:17px 0; color:var(--text); background:transparent; border:0; outline:none; resize:vertical; line-height:1.55; }
.coach-composer-footer { display:flex; align-items:center; gap:12px; padding-top:12px; border-top:1px solid var(--v619-line); }
.coach-composer-footer > span { flex:1; color:var(--muted); font-size:10px; }
.coach-upload-v619 { display:inline-flex; align-items:center; min-height:35px; padding:0 11px; color:var(--muted-strong); border:1px solid var(--border); border-radius:7px; cursor:pointer; font-size:11px; }
.coach-upload-v619 input { display:none; }
#view-ai .ai-attachment { margin:16px 0 0; }
.coach-sidebar-v619 { min-width:0; border-left:1px solid var(--v619-line); padding-left:24px; }
.coach-sidebar-v619 > section { padding:0 0 25px; margin-bottom:25px; border-bottom:1px solid var(--v619-line); }
.coach-side-title { margin-bottom:16px; }
.coach-side-title span { display:block; color:var(--muted); font:600 9px/1.2 "IBM Plex Mono",monospace; letter-spacing:.12em; }
.coach-side-title strong { display:block; margin-top:5px; font-size:13px; }
.coach-sidebar-v619 label { display:flex; flex-direction:column; gap:6px; margin-bottom:10px; color:var(--muted); font-size:10px; font-weight:600; text-transform:uppercase; letter-spacing:.05em; }
.coach-sidebar-v619 .control { width:100%; height:38px; color:var(--text); background:transparent; border:1px solid var(--border); border-radius:7px; font-size:11px; text-transform:none; letter-spacing:0; }
.coach-scope-metrics { margin-top:15px; border-top:1px solid var(--v619-line); }
.coach-scope-metrics > div { display:flex; justify-content:space-between; gap:12px; padding:10px 0; border-bottom:1px solid var(--v619-line); }
.coach-scope-metrics span { color:var(--muted); font-size:10px; }
.coach-scope-metrics strong { font:600 11px/1.2 "IBM Plex Mono",monospace; }
#view-ai .ai-conversation-list { display:flex; flex-direction:column; gap:0; }
#view-ai .ai-conversation { display:flex; justify-content:space-between; gap:10px; width:100%; padding:10px 0; color:var(--muted-strong); text-align:left; background:transparent; border:0; border-top:1px solid var(--v619-line); cursor:pointer; font-size:11px; }
#view-ai .ai-conversation:last-child { border-bottom:1px solid var(--v619-line); }
#view-ai .ai-conversation.active { color:var(--text); }
#view-ai .ai-conversation small { color:var(--muted); font:500 9px/1 "IBM Plex Mono",monospace; }
.coach-boundary-v619 { padding-left:13px; border-left:2px solid var(--border-strong); }
.coach-boundary-v619 strong { font-size:11px; }
.coach-boundary-v619 p { margin:5px 0 0; color:var(--muted); font-size:10px; line-height:1.5; }
.ai-loading-line-v619 { display:flex; align-items:center; gap:10px; padding:22px 0; color:var(--muted); border-top:1px solid var(--v619-line); }
.ai-loading-line-v619 i { width:8px; height:8px; border-radius:50%; background:var(--accent); animation:v619Pulse 1s ease-in-out infinite alternate; }
@keyframes v619Pulse { to { opacity:.25; transform:scale(.75); } }

@media (max-width: 1120px) {
  .trade-workspace-v619 { grid-template-columns:270px minmax(0,1fr); }
  .trade-case-v619 { padding-left:25px; }
  .trade-case-main-v619 { grid-template-columns:1fr; }
  .trade-facts-v619 { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
  .trade-account-list-v619 { margin-top:0; }
  .coach-action-strip { grid-template-columns:1fr 1fr; }
  .coach-action-strip button:nth-child(2) { border-right:0; }
  .coach-action-strip button:nth-child(-n+2) { border-bottom:1px solid var(--v619-line); }
}
@media (max-width: 900px) {
  .trade-workspace-v619 { display:block; border-top:0; }
  .trade-browser-v619 { padding-right:0; border-right:0; border-top:1px solid var(--v619-line); }
  .trade-decision-list-v619 { max-height:360px; min-height:0; }
  .trade-case-v619 { padding-left:0; border-top:1px solid var(--v619-line); }
  .trade-case-header-v619 { padding-top:24px; }
  .coach-layout-v619 { display:block; }
  .coach-sidebar-v619 { margin-top:38px; padding:26px 0 0; border-left:0; border-top:1px solid var(--v619-line); }
  .coach-sidebar-v619 { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
  .coach-boundary-v619 { grid-column:1/-1; }
}
@media (max-width: 680px) {
  #view-trades .section-head,
  #view-ai .section-head { margin-bottom:24px; }
  .trade-page-head-v619,
  .coach-page-head { align-items:flex-start; }
  .trade-page-head-v619 .panel-actions { width:100%; }
  .trade-filter-row-v619 { grid-template-columns:1fr; }
  .trade-case-header-v619 { grid-template-columns:minmax(0,1fr) auto; gap:14px; }
  .trade-result-v619 { grid-column:1/2; grid-row:2; text-align:left; }
  .trade-case-nav-v619 { grid-column:2; grid-row:1/3; }
  .trade-shot-v619,
  .trade-shot-v619 > img,
  .trade-shot-empty-v619 { min-height:245px; }
  .trade-facts-v619 { display:block; }
  .trade-account-list-v619 { margin-top:22px; }
  .trade-review-meta-v619,
  .trade-review-writing-v619,
  .trade-review-bottom-v619 { grid-template-columns:1fr; }
  .trade-review-editor-head-v619 { align-items:flex-start; }
  .trade-review-editor-head-v619 .button { min-width:110px; }
  .coach-route-toggle { width:100%; }
  .coach-route-toggle button { flex:1; }
  .coach-action-strip { grid-template-columns:1fr; }
  .coach-action-strip button { min-height:100px; border-right:0; border-bottom:1px solid var(--v619-line); }
  .coach-action-strip button:last-child { border-bottom:0; }
  .coach-review-grid-v619 { grid-template-columns:1fr; }
  .coach-verdict-v619 { grid-template-columns:72px minmax(0,1fr); }
  .coach-grade-v619 { min-height:72px; }
  .coach-sidebar-v619 { display:block; }
  .coach-composer-footer { flex-wrap:wrap; }
  .coach-composer-footer > span { order:3; flex-basis:100%; }
}
