.p-scalping-trading { --p-scalping-buy: #c62828; --p-scalping-buy-bg: #fff1f1; --p-scalping-sell: #1565c0; --p-scalping-sell-bg: #eef6ff; grid-template-columns: minmax(0, 1fr); gap: 16px; }
.p-scalping-page-head { align-items: center; }
.p-scalping-page-head p { max-width: 860px; margin: 6px 0 0; color: var(--muted); font-size: 13px; line-height: 1.55; }
.p-scalping-title-line { display: flex; align-items: center; gap: 10px; }
.p-scalping-title-line h1 { margin: 0; }
.p-scalping-title-line span { padding: 4px 8px; border: 1px solid color-mix(in srgb, var(--accent) 35%, var(--line)); border-radius: 999px; color: var(--accent); background: color-mix(in srgb, var(--accent) 8%, var(--surface)); font-size: 11px; font-weight: 900; }
.p-scalping-automation-state { display: inline-flex; align-items: center; gap: 7px; padding: 7px 10px; border: 1px solid color-mix(in srgb, var(--trade-warning) 40%, var(--line)); border-radius: 999px; color: var(--trade-warning); background: color-mix(in srgb, var(--trade-warning) 8%, var(--surface)); font-size: 11px; font-weight: 900; white-space: nowrap; }
.p-scalping-automation-state i { width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.p-scalping-lookup-panel .trading-panel-head > div, .p-scalping-context-panel .trading-panel-head > div, .p-scalping-orders-panel .trading-panel-head > div { min-width: 0; }
.p-scalping-trading .pattern-calendar-day .date-dots .execution, .p-scalping-trading .pattern-calendar-legend .execution { background: var(--p-scalping-sell); }
.p-scalping-lookup-panel .trading-panel-head p, .p-scalping-context-panel .trading-panel-head p, .p-scalping-orders-panel .trading-panel-head p { margin: 4px 0 0; color: var(--muted); font-size: 12px; }
.p-scalping-date-grid { padding: 16px; }
.p-scalping-search-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.p-scalping-search-grid select { min-width: 0; min-height: 40px; border-radius: 5px; }
.p-scalping-search-grid input { min-height: 40px; }
.p-scalping-cash-control { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
.p-scalping-amount-control { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 10px; }
.p-scalping-amount-control > input:disabled, .p-scalping-cash-control > input[readonly] { color: var(--muted); background: color-mix(in srgb, var(--canvas) 66%, var(--surface)); }
.p-scalping-all-cash-check { display: inline-flex; min-height: 40px; align-items: center; gap: 6px; white-space: nowrap; }
.p-scalping-all-cash-check input { width: 18px; min-height: 18px; margin: 0; accent-color: var(--accent); }
.p-scalping-relative-time { display: grid; grid-template-columns: auto minmax(68px, 1fr) auto; align-items: center; gap: 7px; min-height: 40px; padding: 0 10px; border: 1px solid var(--line); border-radius: 5px; background: var(--surface); font-weight: 700; }
.p-scalping-relative-time input { min-height: 32px; text-align: right; }
.p-scalping-small-buy-control { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px; }
.p-scalping-small-buy-control input[readonly] { color: var(--ink); background: color-mix(in srgb, var(--canvas) 66%, var(--surface)); font-weight: 800; text-align: right; }
.p-scalping-small-buy-control small { color: var(--muted); font-size: 10px; font-weight: 700; white-space: nowrap; }
.p-scalping-context-actions { display: flex; grid-column: 1 / -1; align-items: center; justify-content: flex-end; gap: 8px; padding-top: 4px; }
.p-scalping-context-actions > span { margin-right: auto; color: var(--muted); font-size: 11px; font-weight: 700; }
.p-scalping-order-actions { display: flex; align-items: center; justify-content: flex-end; gap: 10px; }
.p-scalping-order-actions > span { max-width: 370px; text-align: right; }
.p-scalping-orders-wrap { width: auto; margin: 12px 16px 0; border: 1px solid var(--line); border-radius: 6px; overflow-x: hidden; }
.app-shell .table-wrap.p-scalping-orders-wrap { overflow-x: hidden; }
.app-shell .p-scalping-orders-wrap .p-scalping-orders-table { width: 100%; min-width: 0; border-collapse: collapse; table-layout: fixed; }
.app-shell .p-scalping-orders-table th, .app-shell .p-scalping-orders-table td { padding: 10px 8px; border: 1px solid var(--line); white-space: normal; overflow-wrap: anywhere; text-align: center; font-size: 11px; vertical-align: middle; }
.p-scalping-orders-table th { background: color-mix(in srgb, var(--canvas) 72%, var(--surface)); font-weight: 900; }
.p-scalping-col-side { width: 8%; }
.p-scalping-col-account { width: 19%; }
.p-scalping-col-symbol { width: 7%; }
.p-scalping-col-method { width: 9%; }
.p-scalping-col-quantity { width: 8%; }
.p-scalping-col-price { width: 10%; }
.p-scalping-col-time { width: 17%; }
.p-scalping-col-status { width: 22%; }
.p-scalping-order-row.buy td { background: var(--p-scalping-buy-bg); border-top-color: #efb7b7; border-bottom-color: #efb7b7; }
.p-scalping-order-row.sell td { background: var(--p-scalping-sell-bg); border-top-color: #b8d7f5; border-bottom-color: #b8d7f5; }
.p-scalping-order-row.buy td:first-child { border-left: 4px solid var(--p-scalping-buy); }
.p-scalping-order-row.sell td:first-child { border-left: 4px solid var(--p-scalping-sell); }
.p-scalping-order-side { display: inline-flex; min-width: 48px; justify-content: center; padding: 4px 8px; border-radius: 999px; font-weight: 900; white-space: nowrap; }
.p-scalping-order-side.buy { color: var(--p-scalping-buy); background: #fff; }
.p-scalping-order-side.sell { color: var(--p-scalping-sell); background: #fff; }
.p-scalping-order-side.assessment { color: var(--accent); background: color-mix(in srgb, var(--accent) 10%, var(--surface)); }
.p-scalping-account-cell { display: flex; min-width: 0; align-items: center; gap: 8px; text-align: left; }
.p-scalping-account-copy { display: grid; min-width: 0; gap: 3px; }
.p-scalping-account-copy strong { display: block; overflow: hidden; color: var(--ink); text-overflow: ellipsis; white-space: nowrap; }
.p-scalping-account-copy small { display: block; overflow: hidden; color: var(--muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.p-scalping-environment-badge, .p-scalping-status-badge { display: inline-flex; align-items: center; width: fit-content; padding: 3px 7px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); font-size: 10px; font-weight: 900; white-space: nowrap; }
.p-scalping-environment-badge.rehearsal, .p-scalping-environment-badge.demo { color: var(--accent); border-color: color-mix(in srgb, var(--accent) 40%, var(--line)); background: color-mix(in srgb, var(--accent) 8%, var(--surface)); }
.p-scalping-environment-badge.real { color: #b42318; border-color: #efb7b7; background: #fff1f1; }
.p-scalping-status-badge { color: var(--ink); }
.p-scalping-status-detail { display: block; margin-top: 5px; color: var(--muted); line-height: 1.45; white-space: normal; overflow-wrap: anywhere; }
.p-scalping-symbol { letter-spacing: .02em; white-space: nowrap; }
.p-scalping-number { text-align: right !important; font-variant-numeric: tabular-nums; white-space: nowrap; }
.p-scalping-order-time { font-variant-numeric: tabular-nums; white-space: nowrap; }
.p-scalping-empty-order-row td { height: 68px; color: var(--muted); }
.p-scalping-empty-order-row strong, .p-scalping-empty-order-row span { display: block; }
.p-scalping-empty-order-row strong { margin-bottom: 4px; color: var(--ink); font-size: 12px; }
.p-scalping-empty-order-row span { font-size: 11px; }
.p-scalping-result { margin: 14px 16px 16px; padding-top: 14px; border-top: 1px solid var(--line); }
.p-scalping-result-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 10px; }
.p-scalping-result-head h3 { margin: 0; font-size: 13px; }
.p-scalping-result-head span { color: var(--accent); font-size: 11px; font-weight: 900; }
.p-scalping-result-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 0; }
.p-scalping-result-grid > div { display: grid; grid-template-columns: minmax(74px, auto) minmax(0, 1fr); align-items: center; gap: 10px; min-height: 64px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 6px; background: color-mix(in srgb, var(--canvas) 46%, var(--surface)); }
.p-scalping-result-grid dt { color: var(--muted); font-size: 11px; font-weight: 800; }
.p-scalping-result-grid dd { display: grid; justify-items: end; gap: 3px; margin: 0; min-width: 0; }
.p-scalping-result-grid strong { color: var(--ink); font-size: 13px; }
.p-scalping-result-grid small { color: var(--muted); font-size: 10px; text-align: right; }
.p-scalping-result-grid strong.positive { color: var(--p-scalping-buy); }
.p-scalping-result-grid strong.negative { color: var(--p-scalping-sell); }

@media (max-width: 760px) {
  .p-scalping-page-head { align-items: flex-start; }
  .p-scalping-date-grid { padding: 12px; }
  .p-scalping-small-buy-control { grid-template-columns: 1fr; }
  .p-scalping-search-grid { grid-template-columns: 1fr; }
  .p-scalping-context-actions { align-items: stretch; flex-direction: column; }
  .p-scalping-context-actions > span { margin: 0 0 2px; }
  .p-scalping-context-actions .button { width: 100%; }
  .p-scalping-order-actions { flex-direction: column; align-items: stretch; }
  .p-scalping-order-actions > span { max-width: none; text-align: left; }
  .app-shell .table-wrap.p-scalping-orders-wrap { margin: 12px 12px 0; overflow: visible; border: 0; background: transparent; }
  .app-shell .p-scalping-orders-wrap .p-scalping-orders-table { min-width: 0; display: block; border-collapse: separate; }
  .p-scalping-orders-table thead { display: none; }
  .p-scalping-orders-table tbody { display: grid; gap: 10px; }
  .p-scalping-orders-table tbody tr { min-width: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: hidden; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); }
  .app-shell .p-scalping-orders-table tbody td { min-width: 0; display: grid; grid-template-columns: 74px minmax(0, 1fr); align-items: center; gap: 8px; padding: 9px 10px; border: 0; border-bottom: 1px solid var(--line); text-align: right; white-space: normal; }
  .p-scalping-orders-table tbody td::before { color: var(--muted); font-size: 10px; font-weight: 800; text-align: left; }
  .p-scalping-orders-table tbody td:nth-child(1)::before { content: "매매유형"; }
  .p-scalping-orders-table tbody td:nth-child(2)::before { content: "계좌"; }
  .p-scalping-orders-table tbody td:nth-child(3)::before { content: "종목"; }
  .p-scalping-orders-table tbody td:nth-child(4)::before { content: "주문유형"; }
  .p-scalping-orders-table tbody td:nth-child(5)::before { content: "거래수량"; }
  .p-scalping-orders-table tbody td:nth-child(6)::before { content: "거래가격"; }
  .p-scalping-orders-table tbody td:nth-child(7)::before { content: "주문시간"; }
  .p-scalping-orders-table tbody td:nth-child(8)::before { content: "상태"; }
  .p-scalping-orders-table tbody td:nth-child(2), .p-scalping-orders-table tbody td:nth-child(7), .p-scalping-orders-table tbody td:nth-child(8) { grid-column: 1 / -1; }
  .p-scalping-orders-table .p-scalping-account-cell { justify-self: end; }
  .p-scalping-orders-table .p-scalping-order-time { white-space: normal; }
  .app-shell .p-scalping-orders-table tbody .p-scalping-empty-order-row { display: block; }
  .app-shell .p-scalping-orders-table tbody .p-scalping-empty-order-row td { display: block; min-height: 68px; padding: 18px 12px; text-align: center; }
  .p-scalping-orders-table .p-scalping-empty-order-row td::before { content: none; }
  .p-scalping-result { margin: 12px; }
  .p-scalping-result-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .p-scalping-result-grid > div { grid-template-columns: 1fr; }
  .p-scalping-result-grid dd { justify-items: start; }
  .p-scalping-result-grid small { text-align: left; }
}
