/* History, prices, holdings and settlement work areas. */
.op-scope{display:flex;align-items:flex-end;gap:12px 16px;flex-wrap:wrap;padding:16px;background:#fff;border:1px solid var(--border,#dfe3e8);border-radius:6px;margin-bottom:16px}
.op-scope label{display:grid;gap:6px;font-size:13px;color:var(--secondary,#646a73)}
.op-scope input:not([type=checkbox]),.op-scope select,.op-filter input,.op-toolbar select{height:34px;padding:6px 10px;border:1px solid var(--border,#dfe3e8);border-radius:6px;background:#fff;font-size:14px;color:var(--text,#1f2329)}
.op-scope .op-check{display:flex;align-items:center;gap:8px;min-height:34px}.op-check input{width:15px;height:15px;min-height:auto;accent-color:var(--primary,#1677ff)}
.op-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin:0 0 16px}
.op-metric{background:#fff;border:1px solid var(--border,#dfe3e8);border-radius:6px;padding:16px;display:grid;gap:8px;align-content:start;min-height:100px;min-width:0}
.op-metric span,.op-metric small{color:var(--secondary,#646a73);font-size:13px}.op-metric small{font-size:12px;line-height:1.55}.op-metric strong{font-size:26px;line-height:1.3;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text,#1f2329);overflow-wrap:anywhere}.op-metric strong .op-number{font-size:inherit;color:inherit}
.op-table{width:100%;min-width:760px;border-collapse:collapse}.op-table th,.op-table td{height:42px;padding:6px 14px;line-height:1.55;border-bottom:1px solid #edf0f3}
.op-table th{white-space:nowrap;font-size:13px;color:var(--text,#1f2329);font-weight:600;background:#f5f7fa;position:sticky;top:0;z-index:1}.op-table td{font-size:14px;color:var(--text,#1f2329);font-variant-numeric:tabular-nums;max-width:300px;overflow-wrap:anywhere}.op-table td strong{font-size:14px;color:var(--text,#1f2329)}
.op-table td small{display:block;margin-top:2px;color:var(--secondary,#646a73);font-size:12px;line-height:1.55}.op-table td:last-child{white-space:nowrap}.op-table tbody tr:hover td{background:#f0f6ff}
.op-number{font-variant-numeric:tabular-nums;white-space:nowrap}.op-table .align-right{text-align:right}
.op-table .row-action{white-space:nowrap;margin-right:12px;font-size:13px;min-height:24px;display:inline-flex;align-items:center;color:var(--primary,#1677ff)}.op-table .row-action:last-child{margin-right:0}
.op-caption{font-size:12px;color:var(--secondary,#646a73);line-height:1.65;margin:12px 0}.op-spaced{margin-top:16px}
.op-filter,.op-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.op-filter input{flex:1;min-width:230px;max-width:460px}.op-filter span{color:var(--secondary,#646a73);font-size:13px}
.op-detail{padding:20px;min-height:0;overflow:auto;font-size:14px}.op-detail h3{margin:20px 0 12px;font-size:15px;color:var(--text,#1f2329)}.op-detail p{line-height:1.7}.op-detail .table-scroll{max-height:55vh;overflow:auto}.op-detail .op-table{min-width:650px}.op-detail .op-table td:nth-child(2){white-space:normal}
.op-settlement-total{background:#f0f6ff;border:1px solid #cfe1ff;color:var(--text,#1f2329);border-radius:6px;padding:16px;display:flex;align-items:baseline;flex-wrap:wrap;gap:12px;margin:16px 0;font-size:14px}.op-settlement-total strong{font-size:28px;font-variant-numeric:tabular-nums;color:var(--primary,#1677ff)}.op-settlement-total .op-number{color:inherit}
.op-fee-row{background:#f5f7fa;border:1px solid var(--border,#dfe3e8);border-radius:6px;padding:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px}.op-fee-row label{font-size:13px}.op-fee-row input,.op-fee-row select{min-width:0;width:100%;height:36px;font-size:14px}.op-fee-row label[hidden],.op-scope label[hidden]{display:none}
:is(.op-scope,.op-filter,.op-toolbar,.op-fee-row) :is(input,select):focus{border-color:var(--primary,#1677ff);box-shadow:0 0 0 2px #1677ff1a;outline:none}
.drawer:has(.op-detail){width:min(980px,94vw);max-width:94vw}.drawer:has(.op-detail) #drawer-content{display:flex;flex-direction:column;height:100%;overflow:hidden}.drawer:has(.op-detail) .dialog-head{flex:none}.drawer:has(.op-detail) .op-detail{flex:1}
.modal:has(#op-form){width:min(900px,94vw);max-width:94vw;max-height:calc(100dvh - 48px);overflow:hidden}.modal:has(#op-form) #modal-content{display:flex;flex-direction:column;max-height:calc(100dvh - 48px);overflow:hidden}.modal:has(#op-form) .dialog-head{flex:none}
#op-form{overflow:auto;min-height:0;flex:1}#op-form .dialog-foot{position:sticky;bottom:0;z-index:3;background:#fff;padding:14px 20px;border-top:1px solid var(--border,#dfe3e8)}#op-error{padding:0 20px}#op-preview{padding:0 20px}
@media(max-width:850px){.op-fee-row{grid-template-columns:repeat(2,minmax(0,1fr))}.op-scope label{flex:1;min-width:130px}.op-metric strong{font-size:24px}}
@media(max-width:550px){.op-fee-row{grid-template-columns:1fr}.op-scope{gap:10px}.op-detail{padding:16px}.op-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.op-metric{padding:12px}.op-metric strong{font-size:22px}.op-settlement-total strong{font-size:24px}}

/* One column type controls both its heading and all of its cells. */
.op-table :is(th,td).op-text{text-align:left}
.op-table :is(th,td).op-numeric{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.op-table :is(th,td).op-date{text-align:left;white-space:nowrap;min-width:110px;font-variant-numeric:tabular-nums}
.op-table :is(th,td).op-status{text-align:center;min-width:90px}
.op-table :is(th,td).op-actions{text-align:center;white-space:nowrap;min-width:120px;width:1%;position:sticky;right:0;z-index:1;background:#fff;box-shadow:-3px 0 5px #1f232909}
.op-table th.op-actions{z-index:2;background:#f5f7fa}
.op-table tbody tr:hover .op-actions{background:#f0f6ff}
.op-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;margin:12px 0 20px}
.op-field-grid>div{min-width:0;padding:12px 0;border-bottom:1px solid #edf0f3}
.op-field-grid dt{font-size:13px;color:var(--secondary,#646a73);margin-bottom:6px}
.op-field-grid dd{font-size:14px;color:var(--text,#1f2329);line-height:1.65;overflow-wrap:anywhere;margin:0}
.op-field-grid dd.op-numeric{font-variant-numeric:tabular-nums}
.op-position-facts{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:8px}
@media(max-width:650px){.op-field-grid{grid-template-columns:1fr}.op-position-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}}
