*,*:before,*:after{box-sizing:border-box}html{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}#root{min-height:100vh}:root{--bg-primary: #0d1117;--bg-secondary: #161b22;--bg-tertiary: #21262d;--border-color: #30363d;--text-primary: #e6edf3;--text-secondary: #8b949e;--text-muted: #6e7681;--green: #3fb950;--green-bg: rgba(63, 185, 80, .15);--red: #f85149;--red-bg: rgba(248, 81, 73, .15);--blue: #58a6ff;--blue-bg: rgba(88, 166, 255, .15)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.5}.app{min-height:100vh;display:flex;flex-direction:column}.app-header{background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);padding:1rem 1.5rem;display:flex;align-items:baseline;gap:1rem}.app-header h1{font-size:1.5rem;font-weight:600;color:var(--text-primary)}.app-header .subtitle{color:var(--text-secondary);font-size:.875rem}.app-main{flex:1;display:grid;grid-template-columns:300px 1fr 320px;gap:1px;background-color:var(--border-color)}.sidebar,.content,.order-panel{background-color:var(--bg-primary);padding:1rem;overflow-y:auto}.market-view{display:flex;flex-direction:column;gap:12px;max-width:500px;margin:0 auto}.orderbook-row{display:flex;gap:12px;align-items:flex-start}.sidebar{max-height:calc(100vh - 60px)}.markets-list h2{font-size:1rem;font-weight:600;margin-bottom:1rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.markets-scroll{display:flex;flex-direction:column;gap:.5rem}.market-item{padding:.75rem;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:all .15s ease}.market-item:hover{border-color:var(--blue)}.market-item.selected{border-color:var(--blue);background-color:var(--blue-bg)}.market-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.market-name{font-weight:600;font-size:.9375rem;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.market-date{font-size:.75rem;color:var(--text-muted);background-color:var(--bg-tertiary);padding:.125rem .5rem;border-radius:3px}.market-matchup{font-size:.8125rem;color:var(--text-secondary);margin-bottom:.5rem}.market-prices{display:flex;gap:.75rem;font-size:.75rem;margin-bottom:.25rem}.yes-price{color:var(--green)}.no-price{color:var(--red)}.market-status{font-size:.6875rem;padding:.125rem .375rem;border-radius:3px;text-transform:uppercase}.status-open{background-color:var(--green-bg);color:var(--green)}.status-closed,.status-settled{background-color:var(--bg-tertiary);color:var(--text-muted)}.ob-container{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;font-family:SF Mono,Monaco,Cascadia Code,monospace;font-size:11px;max-width:280px;margin:0 auto;display:flex;flex-direction:column;height:calc(100vh - 120px);max-height:600px}.ob-container.ob-empty{justify-content:center;align-items:center;min-height:300px}.ob-empty-text{color:var(--text-muted);font-size:12px}.ob-empty-text.ob-error{color:var(--red)}.ob-header{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-bottom:1px solid var(--border-color);background-color:var(--bg-tertiary)}.ob-title{font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;gap:6px}.ob-live{font-size:9px;padding:1px 4px;background-color:var(--green);color:#000;border-radius:2px;font-weight:700;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.ob-spread{color:var(--text-muted);font-size:10px}.ob-col-headers{display:flex;justify-content:space-between;padding:4px 10px;color:var(--text-muted);font-size:10px;text-transform:uppercase;border-bottom:1px solid var(--border-color)}.ob-asks{flex:1;overflow-y:auto;display:flex;flex-direction:column;justify-content:flex-end;min-height:0}.ob-bids{flex:1;overflow-y:auto;min-height:0}.ob-row{position:relative;display:flex;justify-content:space-between;padding:2px 10px;cursor:pointer;transition:background-color .1s ease}.ob-row:hover{background-color:#ffffff0d}.ob-depth{position:absolute;top:0;bottom:0;right:0;opacity:.15;transition:width .15s ease}.ob-row.bid .ob-depth{background-color:var(--green)}.ob-row.ask .ob-depth{background-color:var(--red)}.ob-price,.ob-qty{position:relative;z-index:1}.ob-row.bid .ob-price{color:var(--green)}.ob-row.ask .ob-price{color:var(--red)}.ob-qty{color:var(--text-secondary)}.ob-mid{display:flex;justify-content:center;align-items:center;padding:6px 10px;background-color:var(--bg-primary);border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.ob-mid-price{font-size:13px;font-weight:600;color:var(--text-primary)}.ob-footer{display:flex;justify-content:space-around;padding:8px 10px;border-top:1px solid var(--border-color);background-color:var(--bg-tertiary)}.ob-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.ob-stat-label{font-size:9px;color:var(--text-muted);text-transform:uppercase}.ob-stat-value{font-size:12px;font-weight:600}.ob-stat-value.bid{color:var(--green)}.ob-stat-value.ask{color:var(--red)}.ob-no-data{padding:20px;text-align:center;color:var(--text-muted);font-size:10px}.ob-row.flash-up{animation:flash-green .4s ease-out}.ob-row.flash-down{animation:flash-red .4s ease-out}@keyframes flash-green{0%{background-color:#3fb95066}to{background-color:transparent}}@keyframes flash-red{0%{background-color:#f8514966}to{background-color:transparent}}.trade-feed{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;font-family:SF Mono,Monaco,monospace;font-size:11px;max-width:160px}.trade-feed-header{display:flex;justify-content:space-between;align-items:center;padding:6px 8px;border-bottom:1px solid var(--border-color);background-color:var(--bg-tertiary);color:var(--text-secondary);text-transform:uppercase;font-size:10px;font-weight:600}.trade-count{background-color:var(--bg-primary);padding:1px 5px;border-radius:3px;font-size:9px}.trade-feed-list{max-height:400px;overflow-y:auto}.trade-feed-empty{padding:20px 10px;text-align:center;color:var(--text-muted);font-size:10px}.trade-item{display:flex;align-items:center;gap:6px;padding:3px 8px;border-bottom:1px solid var(--border-color);animation:trade-fade-in .3s ease-out}.trade-item:last-child{border-bottom:none}@keyframes trade-fade-in{0%{background-color:#58a6ff33}to{background-color:transparent}}.trade-value{font-weight:600;min-width:45px}.trade-item.buy .trade-value{color:var(--green)}.trade-item.sell .trade-value{color:var(--red)}.trade-details{color:var(--text-muted);font-size:9px;flex:1}.trade-time{color:var(--text-muted);font-size:9px}.price-chart{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;overflow:hidden}.price-chart.dual{background-color:var(--bg-primary)}.price-chart-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-bottom:1px solid var(--border-color);background-color:var(--bg-secondary)}.price-chart-labels{display:flex;gap:20px}.price-label{display:flex;align-items:baseline;gap:8px}.price-label .label-name{font-size:12px;color:var(--text-secondary)}.price-label .label-value{font-size:18px;font-weight:700;font-family:SF Mono,Monaco,monospace}.price-label.yes .label-value{color:#3d7fff}.price-label.no .label-value{color:var(--red)}.price-chart-current{display:flex;align-items:baseline;gap:8px}.price-chart-value{font-size:14px;font-weight:600;font-family:SF Mono,Monaco,monospace;color:var(--text-primary)}.price-chart-change{font-size:10px;font-family:SF Mono,Monaco,monospace}.price-chart-change.up{color:var(--green)}.price-chart-change.down{color:var(--red)}.price-chart-timerange{display:flex;gap:2px}.price-chart-timerange button{padding:3px 8px;background:none;border:1px solid var(--border-color);border-radius:3px;color:var(--text-muted);font-size:10px;font-weight:500;cursor:pointer;transition:all .15s ease}.price-chart-timerange button:hover{border-color:var(--text-secondary);color:var(--text-secondary)}.price-chart-timerange button.active{background-color:var(--bg-tertiary);border-color:var(--text-secondary);color:var(--text-primary)}.price-chart-container{width:100%;height:100px;background-color:var(--bg-primary)}.price-chart-container.dual{height:150px}.price-chart-canvas{display:block;width:100%;height:100%}.ob-asks::-webkit-scrollbar,.ob-bids::-webkit-scrollbar{width:4px}.ob-asks::-webkit-scrollbar-track,.ob-bids::-webkit-scrollbar-track{background:transparent}.ob-asks::-webkit-scrollbar-thumb,.ob-bids::-webkit-scrollbar-thumb{background-color:var(--border-color);border-radius:2px}.ob-asks::-webkit-scrollbar-thumb:hover,.ob-bids::-webkit-scrollbar-thumb:hover{background-color:var(--text-muted)}.order-form h2{font-size:1rem;font-weight:600;margin-bottom:1rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.form-notice{padding:1rem;background-color:var(--bg-secondary);border-radius:6px;color:var(--text-muted);text-align:center;margin-bottom:1rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.75rem;color:var(--text-muted);margin-bottom:.375rem;text-transform:uppercase}.form-group input{width:100%;padding:.625rem .75rem;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.875rem}.form-group input:focus{outline:none;border-color:var(--blue)}.form-group input:disabled{opacity:.6;cursor:not-allowed}.button-group{display:flex;gap:.5rem}.button-group button{flex:1;padding:.625rem;border:1px solid var(--border-color);border-radius:6px;background-color:var(--bg-secondary);color:var(--text-secondary);font-size:.875rem;cursor:pointer;transition:all .15s ease}.button-group button:hover{border-color:var(--text-muted)}.button-group button.active{border-color:var(--blue);background-color:var(--blue-bg);color:var(--blue)}.side-btn.yes.active{border-color:var(--green);background-color:var(--green-bg);color:var(--green)}.side-btn.no.active{border-color:var(--red);background-color:var(--red-bg);color:var(--red)}.order-summary{padding:.75rem;background-color:var(--bg-secondary);border-radius:6px;margin-bottom:1rem}.summary-row{display:flex;justify-content:space-between;font-size:.875rem}.summary-row span:first-child{color:var(--text-muted)}.submit-btn{width:100%;padding:.875rem;background-color:var(--blue);border:none;border-radius:6px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:opacity .15s ease}.submit-btn:hover:not(:disabled){opacity:.9}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.form-error{margin-top:1rem;padding:.75rem;background-color:var(--red-bg);border:1px solid var(--red);border-radius:6px;color:var(--red);font-size:.875rem}.form-success{margin-top:1rem;padding:.75rem;background-color:var(--green-bg);border:1px solid var(--green);border-radius:6px;color:var(--green);font-size:.875rem}.last-order{margin-top:1rem;padding:.75rem;background-color:var(--bg-secondary);border-radius:6px;font-size:.8125rem}.last-order h3{font-size:.75rem;color:var(--text-muted);margin-bottom:.5rem;text-transform:uppercase}.last-order div{color:var(--text-secondary);margin-bottom:.25rem}.trading-panel{display:flex;flex-direction:column;height:100%}.panel-tabs{display:flex;gap:0;border-bottom:1px solid var(--border-color);margin-bottom:1rem}.panel-tab{flex:1;padding:.75rem .5rem;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;gap:.375rem}.panel-tab:hover{color:var(--text-secondary)}.panel-tab.active{color:var(--blue);border-bottom-color:var(--blue)}.tab-badge{background-color:var(--blue);color:#fff;font-size:.625rem;padding:.125rem .375rem;border-radius:10px;min-width:1.25rem;text-align:center}.panel-content{flex:1;overflow-y:auto}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.tab-header h2{font-size:1rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0}.refresh-btn{padding:.375rem .75rem;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:.75rem;cursor:pointer;transition:all .15s ease}.refresh-btn:hover:not(:disabled){border-color:var(--blue);color:var(--blue)}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.empty-state{padding:2rem;text-align:center;color:var(--text-muted);font-size:.875rem}.session-orders{margin-top:1.5rem;border-top:1px solid var(--border-color);padding-top:1rem}.session-orders h3{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.balance-card{background-color:var(--bg-secondary);border-radius:8px;padding:1rem}.balance-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--border-color)}.balance-item:last-child{border-bottom:none}.balance-item.total{margin-top:.5rem;padding-top:1rem;border-top:1px solid var(--border-color);border-bottom:none}.balance-label{font-size:.875rem;color:var(--text-secondary)}.balance-value{font-size:1.125rem;font-weight:600;color:var(--text-primary);font-family:SF Mono,Monaco,monospace}.balance-item.total .balance-value{color:var(--green);font-size:1.25rem}.orders-stats{display:flex;gap:.75rem;margin-bottom:1rem}.orders-stats .stat-item{flex:1;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;padding:.75rem;display:flex;flex-direction:column;gap:.25rem}.orders-stats .stat-label{font-size:.6875rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.orders-stats .stat-value{font-size:1.125rem;font-weight:600;color:var(--green);font-family:SF Mono,Monaco,monospace}.orders-stats .stat-value.pending{color:var(--blue)}.orders-stats .stat-sub{font-size:.6875rem;color:var(--text-muted)}.market-volume-stats{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;padding:.75rem;margin-bottom:1rem}.market-volume-stats .stat-row{display:flex;justify-content:space-between;align-items:center;padding:.375rem 0}.market-volume-stats .stat-row:first-child{padding-top:0}.market-volume-stats .stat-row:last-child{padding-bottom:0}.market-volume-stats .stat-label{font-size:.75rem;color:var(--text-muted)}.market-volume-stats .stat-value{font-size:.875rem;font-weight:500;color:var(--text-primary);font-family:SF Mono,Monaco,monospace}.orders-section{margin-bottom:1.5rem}.orders-section:last-child{margin-bottom:0}.orders-section-title{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.orders-list h3{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.orders-scroll{display:flex;flex-direction:column;gap:.5rem;max-height:300px;overflow-y:auto}.order-item{padding:.75rem;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px}.order-item.cancelled{opacity:.5}.order-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.order-side{font-size:.6875rem;font-weight:600;padding:.125rem .375rem;border-radius:3px;text-transform:uppercase}.order-side.yes{background-color:var(--green-bg);color:var(--green)}.order-side.no{background-color:var(--red-bg);color:var(--red)}.order-status{font-size:.6875rem;padding:.125rem .375rem;border-radius:3px;text-transform:uppercase}.order-status.open{background-color:var(--blue-bg);color:var(--blue)}.order-status.filled{background-color:var(--green-bg);color:var(--green)}.order-status.cancelled{background-color:var(--bg-tertiary);color:var(--text-muted)}.order-details{margin-bottom:.5rem}.order-ticker{font-size:.75rem;color:var(--text-secondary);margin-bottom:.25rem;word-break:break-all}.order-info{display:flex;gap:.5rem;font-size:.8125rem;color:var(--text-primary)}.cancel-btn{width:100%;padding:.375rem;background-color:transparent;border:1px solid var(--red);border-radius:4px;color:var(--red);font-size:.75rem;cursor:pointer;transition:all .15s ease}.cancel-btn:hover:not(:disabled){background-color:var(--red-bg)}.cancel-btn:disabled{opacity:.5;cursor:not-allowed}.loading,.error,.empty{color:var(--text-muted)}.error{color:var(--red)}@media(max-width:1024px){.app-main{grid-template-columns:1fr}.sidebar,.content,.order-panel{max-height:none}}
