*{box-sizing:border-box}:root{--bg-app: #0b0e11;--bg-panel: #151a1f;--bg-header: #151a1f;--bg-hover: #262c33;--border-color: #262b31;--bg: var(--bg-app);--bg-elevated: var(--bg-panel);--card: var(--bg-panel);--border: var(--border-color);--border-subtle: #2b3139;--text: #eaecef;--text-secondary: #848e9c;--text-primary: #eaecef;--text-muted: #5e6673;--primary: #f5a623;--primary-hover: #d48e1b;--blue: #f5a623;--blue-soft: rgba(245, 166, 35, .15);--color-buy: #2ebd85;--color-sell: #f6465d;--green: var(--color-buy);--red: var(--color-sell);--green-soft: rgba(46, 189, 133, .15);--red-soft: rgba(246, 70, 93, .15);--yellow: #f0b90b;--yellow-soft: rgba(240, 185, 11, .15);--header-height: 56px;--ticker-height: 48px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--radius: 8px;--radius-sm: 4px;--shadow: 0 2px 4px rgba(0, 0, 0, .2);--font-family: "Inter", system-ui, -apple-system, sans-serif}html,body{margin:0;padding:0;font-family:var(--font-family);background:var(--bg-app);color:var(--text-primary);font-size:13px;direction:ltr;height:100%;overflow:hidden}.card{background:var(--bg-panel);border:1px solid var(--border-color);color:var(--text-primary)}.table-wrap{border-color:var(--border-color)}table.data-table th,table.data-table td{text-align:left}a{text-decoration:none;color:inherit}ul,li{list-style:none;padding:0;margin:0}#root{display:flex;flex-direction:column;min-height:100vh}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#3b434d;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#4a5461}.app-shell{display:flex;flex-direction:column;height:100vh;width:100vw;overflow:hidden;background-color:var(--bg-app)}.app-header{height:var(--header-height);position:relative;z-index:100;background:var(--bg-header);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 24px}.app-brand{display:flex;align-items:center;gap:12px}.app-logo{font-size:18px;font-weight:700;color:var(--primary);letter-spacing:.5px}.app-nav{display:flex;gap:24px;margin-right:32px}.nav-item{color:var(--text-secondary);font-weight:500;cursor:pointer;transition:color .2s;padding:6px 0;position:relative}.nav-item:hover,.nav-item.active{color:var(--text-primary)}.nav-item.active:after{content:"";position:absolute;bottom:-18px;left:0;width:100%;height:2px;background:var(--primary)}.app-user-actions{display:flex;align-items:center;gap:16px}.btn{border:none;border-radius:4px;padding:6px 16px;font-family:inherit;font-weight:500;cursor:pointer;transition:all .2s;font-size:13px}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover)}.btn-green{background:var(--color-buy);color:#fff}.btn-green:hover{background:#35d899}.btn-red{background:var(--color-sell);color:#fff}.btn-red:hover{background:#ff5f74}.btn-outline{background:transparent;border:1px solid var(--text-secondary);color:var(--text-primary)}.btn-outline:hover{border-color:var(--text-primary)}.text-green{color:var(--color-buy)!important}.text-red{color:var(--color-sell)!important}.text-white{color:var(--text-primary)!important}.text-muted{color:var(--text-secondary)!important}.bg-green-soft{background-color:var(--color-buy-soft)}.bg-red-soft{background-color:var(--color-sell-soft)}.exchange-layout{display:grid;height:calc(100vh - var(--header-height));width:100%;background:var(--bg-app);color:var(--text);gap:4px;padding:4px;overflow:hidden;grid-template-columns:240px 1fr 320px;grid-template-rows:50px 1fr 280px;grid-template-areas:"ticker ticker ticker" "book   chart  right" "history history history"}.ex-ticker{grid-area:ticker}.ex-book{grid-area:book}.ex-chart{grid-area:chart}.ex-history{grid-area:history}.exchange-layout{grid-template-rows:50px 1fr auto 280px;grid-template-areas:"ticker ticker ticker" "book   chart  trades" "book   chart  form" "history history history"}.ex-trades{grid-area:trades}.ex-form{grid-area:form}.panel{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:4px;overflow:hidden;display:flex;flex-direction:column}.panel-header{padding:8px 12px;font-size:12px;font-weight:600;border-bottom:1px solid var(--border-color);background:var(--bg-panel);color:var(--text-secondary);display:flex;justify-content:space-between}@media (max-width: 1200px){.exchange-layout{display:flex;flex-direction:column;height:auto;overflow-y:auto}.ex-chart,.ex-book{min-height:400px}.ex-trades{min-height:300px}}.ticker-bar{display:flex;align-items:center;padding:0 16px;height:100%}.ticker-item{display:flex;flex-direction:column;margin-left:24px;justify-content:center}.ticker-label{font-size:11px;color:var(--text-secondary);margin-bottom:2px}.ticker-value{font-size:13px;font-weight:500;color:var(--text-primary)}.ob-header{padding:8px 12px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between}.ob-table{width:100%;border-collapse:collapse;font-size:12px;table-layout:fixed}.ob-table th{color:var(--text-secondary);font-weight:400;padding:4px 8px;text-align:left}.ob-table th:first-child{text-align:right}.ob-table td{padding:2px 8px;text-align:left;position:relative;z-index:1}.ob-table td:first-child{text-align:right}.ob-row{cursor:pointer}.ob-row:hover{background:var(--bg-hover)}.depth-bar{position:absolute;top:0;bottom:0;right:0;z-index:-1;opacity:.15}.depth-bar.ask{background:var(--color-sell);left:0}.depth-bar.bid{background:var(--color-buy);left:0}.order-form-tabs{display:flex;background:#1e2329;padding:2px;margin:12px;border-radius:4px}.order-form-tab{flex:1;text-align:center;padding:8px;cursor:pointer;border-radius:4px;font-weight:500;color:var(--text-secondary)}.order-form-tab.active.buy{background:var(--color-buy);color:#fff}.order-form-tab.active.sell{background:var(--color-sell);color:#fff}.form-inputs{padding:0 12px 12px;display:flex;flex-direction:column;gap:12px}.input-group{position:relative}.input-group label{display:block;font-size:12px;color:var(--text-secondary);margin-bottom:6px}.input-field{width:100%;background:#2b3139;border:1px solid transparent;color:#fff;padding:10px;border-radius:4px;text-align:left;direction:ltr}.input-field:focus{border-color:var(--primary);outline:none}.input-suffix{position:absolute;right:10px;top:32px;color:var(--text-secondary);font-size:11px}.history-tabs{display:flex;border-bottom:1px solid var(--border-color);padding:0 12px}.h-tab{padding:12px 16px;cursor:pointer;color:var(--text-secondary);font-weight:500;border-bottom:2px solid transparent}.h-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.history-content{padding:0;overflow:auto}.data-table{width:100%;border-collapse:collapse;font-size:12px}.data-table th,.data-table td{padding:8px 16px;text-align:right;border-bottom:1px solid var(--border-color)}.data-table th{color:var(--text-secondary);font-weight:400;position:sticky;top:0;background:var(--bg-panel)}.resize-handle-v{width:4px;background:transparent;cursor:col-resize;transition:background .2s;z-index:100;margin:0 -2px}.resize-handle-v:hover,.resize-handle-v[data-resize-handle-active]{background:var(--primary)}.resize-handle-h{height:4px;background:transparent;cursor:row-resize;transition:background .2s;z-index:100;margin:-2px 0}.resize-handle-h:hover,.resize-handle-h[data-resize-handle-active]{background:var(--primary)}.input-rtl{direction:rtl;text-align:right}body{margin:0;font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}#root{min-height:100vh}.app-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-4);padding:var(--space-3) var(--space-6);border-bottom:1px solid var(--border);background:var(--bg-elevated)}.app-header__title{margin:0;font-size:1.125rem;font-weight:600;color:var(--text);letter-spacing:-.02em}.app-header__nav{display:flex;gap:var(--space-1);flex-wrap:wrap}.app-header__tab{padding:var(--space-2) var(--space-3);font-size:13px;font-weight:500;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--text-secondary)}.app-header__tab:hover{color:var(--text);background:var(--bg-hover)}.app-header__tab--active{background:var(--blue-soft);color:var(--blue);border-color:var(--blue)}.app-main{flex:1;padding:var(--space-6);max-width:1600px;margin:0 auto;width:100%}.page{max-width:1600px;margin:0 auto;padding:24px;height:100%;overflow-y:auto}.page-title{font-size:1.5rem;font-weight:600;margin:0 0 var(--space-6);color:var(--text);letter-spacing:-.02em}.section-title{font-size:1rem;font-weight:600;margin:0 0 var(--space-3);color:var(--text)}.section-title--muted{color:var(--text-secondary);font-weight:500}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-4);margin-bottom:var(--space-4);box-shadow:var(--shadow);transition:border-color .15s ease,box-shadow .15s ease}.card:hover{border-color:var(--border-subtle)}.card--compact{padding:var(--space-3);margin-bottom:var(--space-3)}.card--no-margin{margin-bottom:0}button{cursor:pointer;font:inherit;font-size:13px;font-weight:500;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text);padding:var(--space-2) var(--space-3);transition:background .15s ease,border-color .15s ease}button:hover{background:var(--bg-hover);border-color:var(--text-muted)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--blue);border-color:var(--blue);color:#fff}button.primary:hover:not(:disabled){filter:brightness(1.1)}button.success{background:var(--green);border-color:var(--green);color:#fff}button.danger{background:var(--red);border-color:var(--red);color:#fff}button.danger:hover:not(:disabled){filter:brightness(1.1)}input,select{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font:inherit;font-size:13px;transition:border-color .15s ease}input:focus,select:focus{outline:none;border-color:var(--blue)}input::placeholder{color:var(--text-muted)}.badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500}.badge.passed{background:var(--green-soft);color:var(--green)}.badge.failed{background:var(--red-soft);color:var(--red)}.badge.running{background:var(--yellow-soft);color:var(--yellow)}.table-wrap{overflow-x:auto;border-radius:var(--radius-sm);border:1px solid var(--border)}table.data-table{width:100%;border-collapse:collapse;font-size:13px}table.data-table th,table.data-table td{padding:var(--space-2) var(--space-3);text-align:right;border-bottom:1px solid var(--border-subtle)}table.data-table th{color:var(--text-muted);font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.03em}table.data-table tr:last-child td{border-bottom:none}table.data-table tbody tr:hover{background:var(--bg-hover)}.muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.exchange-layout{display:grid;grid-template-columns:minmax(340px,1.1fr) minmax(360px,1fr);gap:var(--space-6);align-items:stretch}@media (max-width: 1000px){.exchange-layout{grid-template-columns:1fr}}.exchange-layout__market{min-height:0;display:flex;flex-direction:column}.exchange-layout__trade .card{margin-bottom:var(--space-4)}.exchange-layout__trade .card:last-child{margin-bottom:0}.exchange-page{--orange: #e67e22;--orange-light: #f39c12;--orange-soft: rgba(230, 126, 34, .15);display:flex;flex-direction:column;height:100%;min-height:0}.exchange-header{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--bg-elevated);border-bottom:1px solid var(--border);margin:calc(-1 * var(--space-6)) calc(-1 * var(--space-6)) var(--space-4);padding:var(--space-3) var(--space-6)}.exchange-header__symbol,.exchange-header__price{font-weight:700;font-size:1.1rem;color:var(--text)}.exchange-header__price--up{color:var(--green)}.exchange-header__price--down{color:var(--red)}.exchange-header__stats{display:flex;flex-wrap:wrap;gap:var(--space-4);font-size:12px;color:var(--text-secondary)}.exchange-header__stats span{white-space:nowrap}.exchange-header__actions{margin-right:auto;display:flex;gap:var(--space-2)}.exchange-header .btn--orange{background:var(--orange);border-color:var(--orange);color:#fff}.exchange-header .btn--orange:hover:not(:disabled){filter:brightness(1.1)}.exchange-main{display:grid;grid-template-columns:minmax(200px,240px) minmax(280px,320px) minmax(300px,1fr);gap:0;flex:1;min-height:420px;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--card);align-items:stretch}@media (max-width: 1000px){.exchange-main{grid-template-columns:1fr}}.exchange-panel{border-left:1px solid var(--border);display:flex;flex-direction:column;min-height:0}.exchange-panel:first-child{border-left:none}.exchange-panel--orderbook{display:flex;flex-direction:column;min-height:0}.exchange-orderlist-section{flex:1;overflow:visible;min-height:0;display:flex;flex-direction:column}.exchange-orderlist-section .exchange-panel__body{overflow:visible}.exchange-panel--depth{display:flex;flex-direction:column;min-height:0}.exchange-panel--depth .exchange-panel__body{flex:1;min-height:240px}.exchange-panel__title{padding:var(--space-2) var(--space-3);font-size:12px;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border);background:var(--bg-elevated)}.exchange-panel__body{flex:1;overflow:auto;padding:var(--space-2)}.exchange-panel__body--no-scroll{overflow:visible;flex:0 0 auto}.exchange-bottom{margin-top:var(--space-4);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--card)}.exchange-form-tabs{display:flex;gap:0;border-bottom:1px solid var(--border);padding:0 var(--space-3);background:var(--bg-elevated)}.exchange-form-tabs button{padding:var(--space-2) var(--space-4);border:none;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--text-secondary);font-size:13px}.exchange-form-tabs button.active{color:var(--orange);border-bottom-color:var(--orange);font-weight:600}.exchange-form-options{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border);background:var(--bg-elevated);flex-wrap:wrap}.exchange-form-options .form-label{margin:0}.exchange-form-options select{padding:var(--space-1) var(--space-2);font-size:12px;min-width:88px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text)}.exchange-form-row{display:grid;grid-template-columns:1fr 1fr;gap:0;min-height:0}.exchange-form-half{padding:var(--space-4);border-left:1px solid var(--border)}.exchange-form-half:first-child{border-left:none}.exchange-form-half--sell .form-label{color:var(--red)}.exchange-form-half--buy .form-label{color:var(--green)}.exchange-form-half h3{margin:0 0 var(--space-3);font-size:14px}.exchange-form-half--sell h3{color:var(--red)}.exchange-form-half--buy h3{color:var(--green)}.exchange-form-half>div{display:flex;flex-direction:column;gap:var(--space-2);max-width:100%}.exchange-form-half input{width:100%;box-sizing:border-box;padding:var(--space-2) var(--space-3);font-size:13px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text)}.form-label{display:block;margin-bottom:2px;color:var(--text-secondary)}.exchange-order-tabs{display:flex;gap:0;border-top:1px solid var(--border);padding:var(--space-2) var(--space-3);background:var(--bg-elevated);flex-wrap:wrap}.exchange-order-tabs button{padding:var(--space-2) var(--space-3);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);font-size:12px}.exchange-order-tabs button.active{background:var(--blue-soft);color:var(--blue)}
