:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif;color:#263244;background:#f5f6f8;font-size:13px}*{box-sizing:border-box}body{margin:0}header{height:66px;background:#fff;border-bottom:1px solid #e6e8ee;display:flex;justify-content:space-between;align-items:center;padding:0 30px}.brand{font-size:21px;font-weight:750;display:flex;align-items:center;gap:10px}.mark{font-size:32px;color:#cba52c}.brand small{font-size:12px;color:#9299a5;font-weight:400;margin-left:8px}.connection{font-size:12px;color:#87909f;border:1px solid #e5e7eb;border-radius:20px;padding:6px 12px}.connection.live{color:#1a9d79;background:#ecfaf4;border-color:#d4efe4}main{max-width:1460px;margin:0 auto;padding:34px 32px}h1{font-size:23px;letter-spacing:-.6px;margin:0 0 9px}p{color:#969daa;margin:0}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.controls{display:flex;gap:16px}label{font-size:11px;color:#9299a5;display:flex;flex-direction:column;gap:7px}select,button{font:inherit;border:1px solid #e0e3e9;background:#fff;color:#364152;border-radius:6px;height:34px;padding:0 12px}select{min-width:150px}button{cursor:pointer}button:hover{background:#f8f9fb}.section-heading{display:flex;justify-content:space-between;align-items:center;margin:22px 0 12px;gap:12px}.section-heading h2{font-size:13px;margin:0;font-weight:650}.section-heading>span,h2 span{color:#959ca8;font-size:12px;font-weight:400}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#d2ae31;margin-right:8px;vertical-align:middle}.card{background:#fff;border:1px solid #e4e6ec;border-radius:12px;box-shadow:0 2px 2px #172b4d03;overflow:hidden}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:12px}th{text-align:right;font-size:10px;letter-spacing:.3px;color:#929baa;font-weight:650;background:#fcfcfd;padding:15px 14px;border-bottom:1px solid #eceef2}td{text-align:right;padding:15px 14px;border-bottom:1px solid #eff0f3;font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}th:first-child,td:first-child{text-align:left}th:nth-child(2),td:nth-child(2){text-align:left}.quotes td{height:60px}.quotes tr:last-child td{border-bottom:0}.source{font-family:Inter,-apple-system,"PingFang SC",sans-serif;font-weight:650;color:#273348}.source small{display:block;font-family:ui-monospace,monospace;color:#a3aab5;font-size:10px;font-weight:400;margin-top:5px}.primary td{background:#fff9df}.badge{font:10px -apple-system,"PingFang SC",sans-serif;border-radius:4px;background:#fff7dc;color:#b6952b;padding:3px 7px}.primary .badge{color:#71a653;background:#e8efca}.buy{color:#21af87}.sell{color:#ef6677}.muted{color:#a0a8b5}.positive{color:#d29b31}.negative{color:#637fe8}.segmented{display:flex;border:1px solid #e2e5eb;border-radius:6px;overflow:hidden}.segmented button{border:0;border-radius:0;height:29px;padding:0 18px;font-size:12px;font-weight:600}.segmented button.active{background:#f6c729;color:#493a00}.chart-card{padding:18px 18px 16px}.chart-top{display:flex;justify-content:space-between;color:#a0a7b2;font-size:11px}.chart-stage{height:288px;position:relative;margin-top:12px}canvas{width:100%;height:100%;display:block}#chart-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#9aa3b1;font-size:14px;pointer-events:none}#chart-empty span{font-size:11px;color:#b4bbc5;margin-top:10px}.legend{display:flex;gap:18px;flex-wrap:wrap;margin:12px 0 0;font:11px ui-monospace,monospace;color:#8290a0}.legend span{display:flex;align-items:center;gap:6px}.swatch{width:10px;height:3px;border-radius:2px}.list-controls{display:flex;gap:8px}.list-controls select,.list-controls button{height:30px;font-size:11px}.tick-wrap{max-height:360px}.tick-wrap thead{position:sticky;top:0}.empty-cell{text-align:center!important;padding:36px;color:#a4acb8}.tick-wrap td{padding:11px 14px}footer{display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#a9b0bc;margin-top:22px;letter-spacing:.4px}#tooltip{display:none;position:absolute;top:12px;pointer-events:none;padding:12px;background:#fffffff2;border:1px solid #e1e5eb;border-radius:7px;font:11px ui-monospace,monospace;line-height:1.9;box-shadow:0 6px 20px #1a2a3a15}#error{position:fixed;bottom:20px;right:20px;padding:15px;background:#fff0f0;color:#b64141;border:1px solid #efcaca;border-radius:8px}@media(max-width:800px){header{padding:0 16px}.brand small{display:none}main{padding:24px 14px}.toolbar{align-items:flex-start;gap:20px;flex-direction:column}.controls{width:100%}.controls label{flex:1}.controls select{min-width:0;width:100%}footer{flex-direction:column}.section-heading>span{display:none}h2 span{display:none}.list-controls{gap:4px}.list-controls select{min-width:90px;max-width:110px}.list-controls button{padding:0 7px}.chart-stage{height:250px}}
nav{display:flex;gap:8px}nav a{color:#939caa;text-decoration:none;font-size:12px;padding:9px 15px;border-radius:6px}nav a.selected{color:#66521d;background:#fff7df}.contract-card{padding:16px}.contract-toolbar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:15px;align-items:center}.contract-toolbar .list-controls{align-items:center}input{height:32px;padding:0 12px;border:1px solid #e1e4e9;border-radius:6px;font:12px inherit;min-width:230px;background:#fcfcfd}button.yellow{background:#f6c729;border-color:#f6c729;color:#4d3b00;font-weight:600}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:15px;margin-top:15px;color:#929cab}.pagination button:disabled{opacity:.4;cursor:default}#contracts tr{cursor:pointer}#contracts tr:hover td{background:#fffcf0}#contracts td{padding:16px 14px}.contract-card table th:nth-child(2),.contract-card table td:nth-child(2){text-align:left}dialog{border:1px solid #e2e5eb;border-radius:14px;max-width:850px;width:90%;max-height:85vh;padding:24px;color:#263244}dialog::backdrop{background:#1c293a66}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.dialog-head h2{margin:0;font-size:18px}dialog dl{display:grid;grid-template-columns:160px 1fr;gap:0;margin-bottom:24px}dt,dd{padding:9px;border-bottom:1px solid #eef0f3;margin:0;font-size:12px}dt{color:#98a1af}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f6f7f9;padding:16px;border-radius:8px;font-size:11px}#total{font-size:11px}@media(max-width:800px){header .brand{font-size:15px}nav a{padding:8px}.contract-toolbar .list-controls{flex-wrap:wrap}input{min-width:150px}}
.sync-panel{border:1px solid #e7eaf0;border-radius:8px;padding:12px;margin-bottom:15px;background:#fafbfd}.sync-panel summary{cursor:pointer;color:#68768a;font-size:12px}.sync-jobs{display:grid;gap:8px;margin-top:10px}.sync-job{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:11px}.sync-job progress{width:140px;height:7px}.sync-job .failed{color:#d15063}.sync-job .completed{color:#159c76}.rules-note{font-size:11px;line-height:1.8;color:#8a94a3;margin:10px 0}.chart-actions{display:flex;gap:8px;align-items:center}.chart-actions select{min-width:90px;height:29px;font-size:11px}.chart-actions button{height:29px;font-size:11px}.legend button{border:0;height:auto;padding:2px 0;display:flex;align-items:center;gap:6px;font:inherit;color:inherit}.legend button.off{opacity:.3;text-decoration:line-through}.status-label{font-size:9px;font-weight:400;margin-left:6px;color:#d09a34}.clock-skew .status-label{color:#d95c6e}.stale td{opacity:.55}#rules{max-width:900px}
:root{--sidebar-width:192px}header{position:sticky;top:0;z-index:20}.sidebar{position:fixed;left:0;top:66px;bottom:0;width:var(--sidebar-width);background:#fff;border-right:1px solid #e6e8ee;padding:28px 16px;display:flex;flex-direction:column;z-index:15}.sidebar-caption{font-size:9px;color:#b1a994;letter-spacing:1.1px;margin:0 12px 20px}.sidebar nav{display:flex;flex-direction:column;gap:8px}.sidebar nav a{display:flex;align-items:center;padding:14px 16px;font-size:14px;font-weight:600;border-radius:9px}.sidebar nav a.selected{background:#fff7df;color:#765c1d}.sidebar-foot{margin-top:auto;color:#b2b8c2;font-size:10px;padding:0 12px}main{max-width:none;margin-left:var(--sidebar-width);padding:32px;min-width:0}@media(min-width:1800px){main{padding-left:48px;padding-right:48px}}@media(max-width:800px){:root{--sidebar-width:124px}.sidebar{padding:20px 8px}.sidebar-caption{font-size:8px;letter-spacing:0;margin:0 6px 16px}.sidebar nav a{font-size:12px;padding:12px 10px}.sidebar-foot{padding:0 6px}main{padding:20px 12px}.section-heading{flex-wrap:wrap}.chart-actions{flex-wrap:wrap}.brand small{display:none}.chart-stage{min-width:400px}.chart-card{overflow:auto}}
.provider-status{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 14px;border:1px solid #e4e6ec;background:#fff;border-radius:8px;padding:12px 16px;margin:0 0 18px;font-size:12px}.provider-status [data-provider-label]{color:#b08b26}.provider-status [data-provider-detail]{font-size:11px;color:#8793a3;overflow-wrap:anywhere}.provider-status[data-phase=connected] [data-provider-label]{color:#159c76}.provider-status[data-phase=error] [data-provider-label]{color:#d15063}
.controls{flex-wrap:wrap;justify-content:flex-end;max-width:850px}.controls input{height:34px;width:190px;min-width:140px}.controls #symbol{max-width:350px}.instrument-summary{margin:-12px 0 18px;font-size:12px;line-height:1.8;color:#718093}.instrument-summary p{color:#8793a3;font-size:11px;overflow-wrap:anywhere}@media(max-width:800px){.controls{justify-content:flex-start}.controls input{width:100%;min-width:0}.controls #symbol{max-width:100%}.instrument-summary{margin:0 0 16px}}
