.app-shell{max-width:1200px;margin:0 auto;padding:2.5rem 1.5rem 4rem;display:flex;flex-direction:column;gap:2rem}.app-shell--centered{min-height:100vh;display:flex;align-items:center;justify-content:center}.login-card{background:#141922d9;border:1px solid rgba(93,109,157,.25);border-radius:16px;padding:3rem;width:min(400px,90vw);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 20px 60px #030a1973;display:flex;flex-direction:column;gap:1.5rem}.app-title{margin:0;font-size:1.75rem;letter-spacing:.02em;color:#f5f7fb}.app-subtitle{margin:0;color:#e2ebffb3;font-size:.95rem}.login-form{display:flex;flex-direction:column;gap:.75rem}.form-label{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:#c7d1e9cc}.password-input{width:100%;border-radius:10px;border:1px solid rgba(93,109,157,.4);background:#0d121ccc;color:#f2f5ff;padding:.85rem 1rem;font-size:1rem;transition:border-color .2s ease,transform .2s ease}.password-input:focus{outline:none;border-color:#6293ff;transform:translateY(-1px);box-shadow:0 0 0 3px #6293ff40}.primary-button,.ghost-button{border:none;border-radius:10px;padding:.75rem 1.2rem;font-size:.95rem;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.primary-button{background:linear-gradient(135deg,#5fa1ff,#3968ff);color:#0a1020;box-shadow:0 14px 35px #3f70ff59}.primary-button:disabled{background:#658cff66;cursor:not-allowed;box-shadow:none}.primary-button:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 18px 38px #3f70ff73}.ghost-button{background:#191f2dd9;color:#ebf2ffe6;border:1px solid rgba(93,109,157,.35)}.refresh-button{position:relative;overflow:hidden;isolation:isolate}.refresh-button .timer-track{display:block;position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#6293ff66,#3356c140);transform-origin:left;transform:scaleX(var(--timer-progress, 0));transition:transform .3s ease-out;opacity:.5;z-index:0}.refresh-button:hover:not(:disabled) .timer-track{opacity:.7}.refresh-button:disabled .timer-track{opacity:.35}.refresh-button .refresh-label{position:relative;z-index:1;display:inline-flex;align-items:center;gap:.5rem}.refresh-label__icon{font-size:1rem;line-height:1}.ghost-button:hover:not(:disabled){transform:translateY(-1px);border-color:#78a1ffb3;box-shadow:0 8px 20px #2337784d}.ghost-button:disabled{opacity:.6;cursor:not-allowed}.form-error,.error-banner{margin:0;background:#ff57701a;border:1px solid rgba(255,87,112,.45);border-radius:10px;padding:.75rem 1rem;color:#ffb3c1;font-size:.9rem}.top-bar{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.top-bar__title{margin:0;font-size:1.5rem;color:#f5f8ff}.top-bar__meta{margin:0;color:#cbd8f5b3;font-size:.9rem}.top-bar__actions{display:flex;align-items:center;gap:.75rem}.content-section,.pair-grid{display:flex;flex-direction:column;gap:1.5rem}.pair-card{background:#121721f2;border-radius:18px;border:1px solid rgba(92,109,158,.2);padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem;box-shadow:0 16px 40px #030a1959;width:100%;min-width:0;position:relative}.pair-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.pair-title-group{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.pair-body{display:flex;gap:1.25rem;align-items:stretch;flex-wrap:wrap}.pair-title-block{display:flex;flex-direction:column;gap:.35rem}.pair-title-line{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.pair-id-label{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#c6d1edb3}.pair-id-value{font-family:Fira Code,SFMono-Regular,Consolas,monospace;font-size:1.05rem;color:#f2f5ff;word-break:break-all}.pair-subtitle{margin:.25rem 0 0;font-size:.85rem;color:#b8c6e6b3}.pair-metadata{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem;min-width:0}.label{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#c6d1edbf}.mono{font-family:Fira Code,SFMono-Regular,Consolas,monospace;font-size:.8rem;color:#89a6ff;word-break:break-all}.pair-section{display:flex;flex-direction:column;gap:.85rem;flex:1 1 260px;min-width:220px}.snapshot-section{display:flex;flex-direction:column;gap:1rem}.data-grid--meta{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.network-panels{display:flex;flex-wrap:wrap;gap:1rem}.network-panel{flex:1 1 250px;display:flex;flex-direction:column;gap:.65rem}.network-panel__title{margin:0;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#b9c6e9bf}.data-grid--stacked{display:grid;grid-template-columns:1fr;gap:.75rem}.data-grid--stacked div{min-width:0}.section-title{margin:0;font-size:.95rem;letter-spacing:.05em;font-weight:600;text-transform:uppercase;color:#c6d2f0d9}.data-grid{margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}.data-grid div{background:#1a212ecc;border-radius:12px;padding:.75rem;border:1px solid rgba(83,102,150,.2);display:flex;flex-direction:column;gap:.45rem}dt{margin:0;font-size:.75rem;color:#afbde2bf;text-transform:uppercase;letter-spacing:.05em}dd{margin:.2rem 0 0;font-size:.95rem;color:#eef3ff}.badge{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;background:#7295ff2e;color:#a6beff;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.copyable-value{display:inline-flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%}.pair-metadata .copyable-value{justify-content:flex-end}.pair-metadata .value-text{text-align:right}.value-text{font-family:Fira Code,SFMono-Regular,Consolas,monospace;font-size:.82rem;color:#d9e4ff;word-break:break-all;flex:1;min-width:0}.value-text--numeric{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.95rem;color:#eef3ff;flex:initial}.muted{color:#c4d2ef8c}.value-with-secondary{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem}.value-secondary{font-size:.78rem;color:#b9c6e9bf}.copy-button{border:1px solid rgba(120,161,255,.45);background:#48669e33;color:#dfe8ffd9;border-radius:8px;padding:.3rem .65rem;font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease;flex-shrink:0}.copy-button:hover{background:#7b9eff40;border-color:#a4beffb3;transform:translateY(-1px)}.copy-button:focus-visible{outline:2px solid rgba(164,190,255,.9);outline-offset:2px}.copy-button.is-copied{background:#5fffab2e;border-color:#5fffab8c;color:#c6ffe5}.copy-button--inline{padding:.25rem .55rem;font-size:.7rem}.status-dot{display:inline-block;width:12px;height:12px;border-radius:50%;margin-top:.3rem}.status-active{background:radial-gradient(circle at 30% 30%,#9affc7,#3be38a);box-shadow:0 0 12px #5fffaba6}.status-inactive{background:radial-gradient(circle at 30% 30%,#ff9a9a,#ff4d4d);box-shadow:0 0 12px #ff636399}.empty-state,.empty-subsection{margin:0;font-size:.95rem;color:#c4d2efb3;padding:1rem 1.25rem;background:#1a212ea6;border-radius:12px;border:1px dashed rgba(89,110,165,.3)}.top-bar__content{display:flex;flex-direction:column;gap:1rem}.view-tabs{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem;border-radius:999px;border:1px solid rgba(93,109,157,.35);background:#131926d9;align-self:flex-start}.view-tab{border:none;background:transparent;color:#cbd8f5bf;font-size:.9rem;font-weight:600;padding:.4rem .95rem;border-radius:999px;cursor:pointer;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.view-tab.is-active{background:#6293ff33;color:#f5f8ff;box-shadow:inset 0 0 0 1px #8cb2ff66}.trades-page{display:flex;flex-direction:column;gap:1.5rem}.trades-page__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.filters-panel{background:#121721e6;border-radius:16px;border:1px solid rgba(93,109,157,.35);padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.filters-field{display:flex;flex-direction:column;gap:.4rem}.filters-actions{display:flex;gap:.75rem;flex-wrap:wrap}.trades-table-wrapper{background:#121721f2;border-radius:18px;border:1px solid rgba(92,109,158,.25);padding:1rem 1.2rem;overflow-x:auto}.trades-loading{margin:0 0 .75rem;color:#c4d2efcc;font-size:.95rem}.trades-table{width:100%;border-collapse:collapse;min-width:920px}.trades-table th:first-child,.trades-table td:first-child{width:35%;min-width:240px}.trades-table th:nth-child(2),.trades-table td:nth-child(2){width:25%;min-width:200px}.trades-table th:nth-child(3),.trades-table td:nth-child(3),.trades-table th:nth-child(4),.trades-table td:nth-child(4){width:12%;min-width:100px}.trades-table th{text-align:left;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#c6d2f0bf;padding:.65rem .5rem;border-bottom:1px solid rgba(92,109,158,.4)}.trades-table td{padding:.85rem .5rem;border-bottom:1px solid rgba(92,109,158,.2);color:#eef3ff;font-size:.95rem}.trades-table tbody tr:last-of-type td{border-bottom:none}.trade-id{font-size:.85rem;color:#d9e4ff;word-break:break-all}.trade-id-row{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.trade-subtext{margin-top:.25rem;font-size:.8rem;color:#b9c6e9bf}.numeric{text-align:right;font-family:Fira Code,SFMono-Regular,Consolas,monospace}.direction-chip{display:inline-flex;align-items:center;padding:.25rem .6rem;border-radius:999px;background:#8cb2ff26;color:#bcd0ff;font-size:.78rem;letter-spacing:.03em}.status-badge{display:inline-flex;align-items:center;padding:.25rem .65rem;border-radius:999px;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;border:1px solid transparent}.status-badge--completed{background:#5fffab26;border-color:#5fffab73;color:#c6ffe5}.status-badge--failed{background:#ff6f6f26;border-color:#ff6f6f73;color:#ffb5b5}.status-badge--in_progress{background:#ffc15e26;border-color:#ffc15e73;color:#ffe2b5}.status-badge--pending{background:#8cb2ff26;border-color:#8cb2ff66;color:#d6e3ff}.status-badge--partial{background:#ffa07a33;border-color:#ffa07a73;color:#ffd5c7}.pagination-bar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;background:#121721e6;border:1px solid rgba(92,109,158,.3);border-radius:14px;padding:.85rem 1.2rem}.pagination-summary{margin:0;color:#c4d2efd9;font-size:.9rem}.pagination-controls{display:flex;gap:.5rem}.sides-container{display:flex;gap:.75rem;align-items:stretch;flex-wrap:wrap;margin-bottom:.5rem}.side-panel{flex:1 1 280px;min-width:240px;background:#161c28e6;border-radius:14px;border:1px solid rgba(92,109,158,.3);padding:1rem;display:flex;flex-direction:column;gap:.85rem}.side-panel__header{display:flex;flex-direction:column;gap:.5rem}.side-panel__label-row{display:flex;align-items:center;gap:.5rem}.side-panel__label{font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#c6d2f0d9}.side-panel__details{display:flex;flex-direction:column;gap:.5rem;margin:0}.side-panel__row{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.35rem 0;border-bottom:1px solid rgba(92,109,158,.15)}.side-panel__row:last-child{border-bottom:none}.side-panel__row dt{font-size:.72rem;color:#afbde2b3;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0}.side-panel__row dd{margin:0;text-align:right;min-width:0}.sides-connector{display:flex;align-items:center;justify-content:center;padding:0 .25rem}.sides-connector__icon{font-size:1.5rem;color:#8cb2ff99;font-weight:300}.exchange-badge{display:inline-flex;align-items:center;padding:.25rem .6rem;border-radius:999px;background:#8cb2ff1f;border:1px solid rgba(140,178,255,.3);color:#bcd0ff;font-size:.72rem;font-weight:600;letter-spacing:.04em}.chain-indicator{display:inline-flex;align-items:center;padding:.15rem .45rem;border-radius:6px;font-size:.65rem;font-weight:700;letter-spacing:.08em;border:1px solid}.pattern-badge{display:inline-flex;align-items:center;padding:.3rem .75rem;border-radius:999px;background:linear-gradient(135deg,#5fa1ff26,#3968ff1a);border:1px solid rgba(120,161,255,.4);color:#c5daff;font-size:.75rem;font-weight:600;letter-spacing:.03em}.pair-header-badges{display:flex;gap:.5rem;align-items:center}.pair-description{margin:.25rem 0 0;font-size:.85rem;color:#b8c6e6cc;font-style:italic}.pair-section--params{flex:1 1 100%}.params-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(130px,1fr))!important;gap:.65rem!important}.params-grid div{padding:.65rem}@media (max-width: 720px){.app-shell{padding:1.5rem 1rem 3rem}.top-bar{flex-direction:column;align-items:flex-start}.top-bar__actions{width:100%;justify-content:flex-start}.top-bar__content{width:100%}.view-tabs{width:100%;justify-content:space-between}.view-tab,.ghost-button{flex:1;text-align:center}.pair-body{flex-direction:column}.pair-section{flex:1 1 auto}.pagination-bar{flex-direction:column;align-items:flex-start}.sides-container{flex-direction:column}.sides-connector{transform:rotate(90deg);padding:.25rem 0}.side-panel{min-width:0}}:root{color-scheme:dark;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:#0f141c;color:#f2f4f8}body{margin:0;min-height:100vh;background:linear-gradient(145deg,#0b1118,#151b24)}*{box-sizing:border-box}a{color:inherit}
