#v-paper-trading { --pt-positive:var(--good); }
.pt-heading { display:flex; align-items:start; justify-content:space-between; gap:24px; }
.pt-heading h2 { margin:4px 0 8px; font-size:28px; }
.pt-heading p { max-width:650px; color:var(--muted); font-size:14px; }
.pt-badge { white-space:nowrap; color:var(--accent); background:var(--accent-soft); padding:6px 12px; border-radius:30px; font-size:11px; font-weight:700; }
.pt-controls { display:flex; flex-wrap:wrap; gap:12px; align-items:end; margin:20px 0; }
#v-paper-trading label { display:grid; gap:6px; color:var(--muted); font-size:12px; font-weight:600; min-width:0; }
#v-paper-trading input,#v-paper-trading select { width:100%; min-width:0; box-sizing:border-box; padding:11px 12px; color:var(--text); background:var(--panel); border:1px solid var(--border); border-radius:8px; font:inherit; font-size:14px; }
#pt-select { min-width:200px; }
#pt-create { display:grid; grid-template-columns:2fr 1.5fr 1fr 1fr; gap:14px; align-items:end; margin:18px 0; }
.pt-note { font-size:12px; color:var(--muted); line-height:1.7; }
#pt-status { min-height:1.7em; margin:14px 0; font-size:14px; }
#pt-status[data-error="true"] { color:var(--bad); }
#pt-retry { margin-bottom:18px; }
.pt-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:1px solid var(--border); border-radius:12px; overflow:hidden; margin:24px 0; }
.pt-metrics > div { padding:20px; background:var(--panel-2); border-right:1px solid var(--border); }
.pt-metrics > div:last-child { border-right:0; }
.pt-metrics span { display:block; color:var(--muted); font-size:11px; text-transform:uppercase; letter-spacing:.09em; }
.pt-metrics strong { display:block; margin-top:6px; font-size:24px; font-weight:600; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.pt-grid { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:22px; align-items:start; }
.pt-grid > * { min-width:0; }
.pt-card { border:1px solid var(--border); border-radius:12px; padding:20px; min-width:0; }
.pt-card h3 { margin:0 0 16px; font-size:16px; }
#pt-trade { display:grid; gap:14px; }
#pt-trade .btn { width:100%; }
#pt-quote { padding:12px; background:var(--panel-2); border-radius:8px; font-size:12px; min-height:65px; overflow-wrap:anywhere; }
#pt-chart { width:100%; height:auto; display:block; }
.pt-history { margin-top:24px; }
.pt-scroll { overflow-x:auto; max-width:100%; }
#v-paper-trading table { width:100%; border-collapse:collapse; font-size:12px; white-space:nowrap; }
#v-paper-trading th,#v-paper-trading td { padding:12px 10px; border-bottom:1px solid var(--border); text-align:right; }
#v-paper-trading th:first-child,#v-paper-trading td:first-child { text-align:left; }
#v-paper-trading th { color:var(--muted); font-size:11px; font-weight:600; }
#v-paper-trading td small { display:block; color:var(--muted); font-size:10px; }
#v-paper-trading button:disabled { opacity:.5; cursor:wait; }
.pt-empty { padding:20px 0; color:var(--muted); font-size:13px; }
#pt-replay { padding:16px; border-left:3px solid var(--accent); background:var(--accent-soft); margin:16px 0; }
#pt-replay .pt-controls { margin:8px 0; }
#pt-methods { margin-top:24px; color:var(--muted); font-size:12px; }
#pt-methods summary { cursor:pointer; color:var(--text); font-weight:600; }
@media(max-width:850px) { #pt-create { grid-template-columns:1fr 1fr; } .pt-grid { grid-template-columns:1fr; } .pt-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); } .pt-metrics > div { border-bottom:1px solid var(--border); } }
@media(max-width:480px) { .pt-heading { flex-direction:column; gap:4px; } #pt-create { grid-template-columns:1fr; } .pt-metrics strong { font-size:20px; } .pt-metrics > div { padding:14px; } .pt-card { padding:14px; } .pt-controls > label { flex:1 1 100%; } #pt-select { min-width:0; } }
