.portfolio-page{gap:var(--space-5);display:grid}.portfolio-page>header{margin-bottom:var(--space-2)}.portfolio-page .panel>p{color:var(--color-muted);margin:0}.portfolio-page .panel li{align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--color-line);flex-wrap:wrap;display:flex}.portfolio-page .panel li:last-child{border-bottom:0}.portfolio-page .panel li>span:first-child{font-family:var(--font-display);font-size:var(--type-md)}.portfolio-page .panel li>span:not(:first-child){color:var(--color-muted);font-size:var(--type-sm)}.portfolio-page .panel li>button{min-height:2rem;font-size:var(--type-sm);margin-left:auto}@media (width>=1024px){.portfolio-page{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-page>header,.portfolio-page>section:first-of-type{grid-column:1/-1}}.instrument-search label{margin-top:0}.instrument-search input{font-family:var(--font-body);font-size:var(--type-body)}.instrument-list{gap:var(--space-1);margin-top:var(--space-3);max-height:34rem;display:grid;overflow-y:auto}.instrument-list li{align-items:center;gap:var(--space-2);display:flex}.instrument-list li>button{column-gap:var(--space-3);min-height:3.5rem;padding:var(--space-2) var(--space-3);text-align:left;border-radius:var(--radius-md);background:0 0;flex:1;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"market name""market symbol";align-items:center;display:grid}.instrument-list li>button:hover{background:var(--color-surface-raised)}.instrument-list li>button.is-selected{background:var(--color-down-soft)}.instrument-market{color:#a9c4ec;width:2.125rem;height:2.125rem;font-size:var(--type-xs);background:#26364c;border-radius:50%;grid-area:market;place-items:center;display:grid}.instrument-name{text-overflow:ellipsis;white-space:nowrap;font-size:var(--type-body);grid-area:name;overflow:hidden}.instrument-symbol{color:var(--color-muted);font-family:var(--font-body);font-size:var(--type-sm);grid-area:symbol}.instrument-list .status-badge{color:var(--color-muted);background:var(--color-surface-sunken)}.quote-panel.is-empty{min-height:12rem;color:var(--color-muted);place-items:center;display:grid}.quote-header{align-items:center;gap:var(--space-3);display:flex}.quote-header h2{color:var(--color-muted);font-size:var(--type-body);margin:0}.quote-price{margin:var(--space-2) 0 var(--space-1);font-family:var(--font-display);font-size:var(--type-price);letter-spacing:-.03em;line-height:1.1}.quote-asof{margin:0 0 var(--space-5);color:var(--color-muted);font-size:var(--type-sm)}.order-book{box-shadow:none;background:0 0;border-radius:0;padding:0}.order-book h2{margin-bottom:var(--space-3)}.book-sides{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.book-side{gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);display:grid}.book-side-ask{background:var(--color-up-soft)}.book-side-bid{background:var(--color-down-soft)}.book-level{justify-content:space-between;gap:var(--space-3);padding:var(--space-1) 0 var(--space-2);font-variant-numeric:tabular-nums;display:flex;position:relative}.book-price{font-family:var(--font-display);font-size:var(--type-md)}.book-side-ask .book-price{color:var(--color-up)}.book-side-bid .book-price{color:var(--color-down)}.book-size{color:var(--color-muted)}.depth-bar{opacity:.35;background:currentColor;border-radius:1px;height:2px;position:absolute;bottom:0;left:0}.book-side-ask .depth-bar{color:var(--color-up)}.book-side-bid .depth-bar{color:var(--color-down)}.book-empty{color:var(--color-muted);font-size:var(--type-sm)}.order-ticket h2{margin-bottom:var(--space-3)}.side-toggle legend{margin-top:0}.side-toggle-options{gap:var(--space-1);padding:var(--space-1);background:var(--color-surface-sunken);border-radius:var(--radius-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.side-toggle-options label{padding:var(--space-3);color:var(--color-muted);border-radius:var(--radius-sm);font-family:var(--font-display);font-size:var(--type-body);text-align:center;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);margin:0;position:relative}.side-toggle-radio{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.side-toggle-options label:has(input:checked){background:var(--color-surface-raised)}.side-toggle-options label:has(input:focus-visible){outline:3px solid var(--color-focus);outline-offset:2px}.side-toggle-options label.is-buy:has(input:checked){color:var(--color-up)}.side-toggle-options label.is-sell:has(input:checked){color:var(--color-down)}.order-ticket button[type=submit]{margin-top:var(--space-5)}.order-ticket.is-sell button[type=submit]{background:var(--color-down)}.order-ticket.is-sell button[type=submit]:hover:not(:disabled){background:#5f9bff}.wallet-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.wallet-grid article{min-width:0;padding:var(--space-3) var(--space-4);background:var(--color-surface-sunken);border-radius:var(--radius-md)}.wallet-grid h3{margin:0 0 var(--space-2);color:var(--color-muted);font-size:var(--type-xs);letter-spacing:.08em}.wallet-grid dl{gap:var(--space-2);margin:0;display:grid}.wallet-grid dt{color:var(--color-muted);font-size:var(--type-xs)}.wallet-grid dd{margin:0 0 var(--space-1);overflow-wrap:anywhere;font-family:var(--font-display);font-size:var(--type-body)}.wallet-grid dd:first-of-type{font-size:var(--type-md)}@media (width<=420px){.wallet-grid{grid-template-columns:minmax(0,1fr)}}.fx-ticket label{margin-top:0}.fx-ticket>button{width:100%;margin-top:var(--space-3);min-height:2.75rem}.fx-quote{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--color-surface-sunken);border-radius:var(--radius-md);font-size:var(--type-sm)}.fx-quote p{justify-content:space-between;gap:var(--space-3);margin:0 0 var(--space-1);color:var(--color-muted);display:flex}.fx-quote button{width:100%;margin-top:var(--space-3);color:var(--color-on-accent);background:var(--color-accent)}.trade-page{gap:var(--space-5);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.trade-col{gap:var(--space-5);min-width:0;display:grid}@media (width>=1024px){.trade-page{grid-template-columns:var(--col-side) minmax(0, 1fr) var(--col-ticket)}}@media (width>=768px) and (width<=1023.98px){.trade-page{grid-template-columns:repeat(2,minmax(0,1fr))}.trade-col-main{order:-1;grid-column:1/-1}}:root{--color-canvas:#101419;--color-surface:#17202a;--color-surface-sunken:#0f151d;--color-surface-raised:#1e2a3a;--color-line:#243040;--color-line-strong:#2f3f52;--color-ink:#eef2f6;--color-muted:#8b98a8;--color-up:#ff5d6c;--color-up-soft:#2a1c22;--color-down:#4a8df8;--color-down-soft:#1a2638;--color-ok:#3ddc97;--color-ok-soft:#123326;--color-warning:#f2c46d;--color-warning-soft:#33290f;--color-danger:#ff5d6c;--color-danger-soft:#2a1c22;--color-accent:#4a8df8;--color-focus:#f6d365;--color-on-accent:#fff;--font-display:"BM Hanna Pro", "BM Hanna Air", -apple-system, "Apple SD Gothic Neo", system-ui, sans-serif;--font-body:"BM Hanna Air", -apple-system, "Apple SD Gothic Neo", system-ui, sans-serif;--font-mono:"SF Mono", ui-monospace, Menlo, Consolas, monospace;--type-xs:.75rem;--type-sm:.8125rem;--type-body:.9375rem;--type-md:1.0625rem;--type-lg:1.375rem;--type-xl:2rem;--type-price:clamp(2.25rem, 4vw, 2.75rem);--type-display:clamp(2.5rem, 6vw, 4.5rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--radius-sm:.5rem;--radius-md:.75rem;--radius-lg:1.125rem;--radius-pill:999px;--shadow-card:inset 0 1px 0 #ffffff08, 0 12px 32px -18px #000000b3;--duration-fast:.12s;--duration-normal:.22s;--ease-out:cubic-bezier(.16, 1, .3, 1);--layout-max:80rem;--col-side:18.75rem;--col-ticket:22.5rem}@font-face{font-family:BM Hanna Pro;src:url(/fonts/bm-hanna-pro.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:BM Hanna Air;src:url(/fonts/bm-hanna-air.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}*,:before,:after{box-sizing:border-box}html{background:var(--color-canvas);-webkit-text-size-adjust:100%}body{min-width:320px;color:var(--color-ink);background:var(--color-canvas);font-family:var(--font-body);font-size:var(--type-body);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}a{color:inherit}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.01em;font-weight:400}p{margin:0 0 var(--space-2)}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.num,dd,td,.quote-price,.wallet-grid dd{font-variant-numeric:tabular-nums}label{margin:var(--space-4) 0 var(--space-2);color:var(--color-muted);font-size:var(--type-sm);display:block}input,select{width:100%;min-height:3rem;padding:0 var(--space-4);color:var(--color-ink);background:var(--color-surface-sunken);border-radius:var(--radius-md);font:inherit;font-family:var(--font-display);font-size:var(--type-md);font-variant-numeric:tabular-nums;transition:border-color var(--duration-fast) var(--ease-out);border:1px solid #0000;display:block}input::placeholder{color:var(--color-muted);font-family:var(--font-body);font-size:var(--type-body)}input:hover,select:hover{border-color:var(--color-line-strong)}input:focus,select:focus{border-color:var(--color-accent);outline:none}select{appearance:none;padding-right:var(--space-8);background-image:linear-gradient(45deg, transparent 50%, var(--color-muted) 50%), linear-gradient(135deg, var(--color-muted) 50%, transparent 50%);background-position:calc(100% - 1.15rem),calc(100% - .85rem);background-repeat:no-repeat;background-size:.3rem .3rem}button{padding:0 var(--space-4);min-height:2.5rem;color:var(--color-ink);background:var(--color-surface-raised);border-radius:var(--radius-md);font:inherit;font-family:var(--font-display);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out), opacity var(--duration-fast) var(--ease-out);border:1px solid #0000}button:hover{background:var(--color-line-strong)}button:active{transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.45;transform:none}button[type=submit]{width:100%;min-height:3.25rem;color:var(--color-on-accent);background:var(--color-up);font-size:var(--type-md)}button[type=submit]:hover:not(:disabled){background:#ff7581}fieldset{border:0;min-width:0;margin:0;padding:0}legend{margin:var(--space-4) 0 var(--space-2);color:var(--color-muted);font-size:var(--type-sm);padding:0}ul{margin:0;padding:0;list-style:none}table{border-collapse:collapse;width:100%}th,td{padding:var(--space-3) var(--space-2);text-align:right;border-bottom:1px solid var(--color-line)}th{color:var(--color-muted);font-size:var(--type-sm);font-weight:400}th:first-child,td:first-child{text-align:left;font-family:var(--font-display)}tbody tr:last-child td{border-bottom:0}dialog{color:var(--color-ink);background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-6)}[role=alert]{margin:var(--space-3) 0 0;padding:var(--space-3) var(--space-4);color:var(--color-danger);background:var(--color-danger-soft);border-radius:var(--radius-md);font-size:var(--type-sm)}p[role=status]{margin:var(--space-3) 0 0;padding:var(--space-3) var(--space-4);color:var(--color-warning);background:var(--color-warning-soft);border-radius:var(--radius-md);font-size:var(--type-sm)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto;transition-duration:.01ms;animation-duration:.01ms;animation-iteration-count:1}}.app-shell{min-height:100vh}.site-header{align-items:center;gap:var(--space-8);min-height:3.75rem;padding:0 clamp(var(--space-4), 3vw, var(--space-8));background:var(--color-surface);border-bottom:1px solid var(--color-line);display:flex}.brand{align-items:center;gap:var(--space-2);font-family:var(--font-display);font-size:var(--type-lg);text-decoration:none;display:inline-flex}.brand-mark{width:1.75rem;height:1.75rem;color:var(--color-on-accent);background:var(--color-accent);border-radius:var(--radius-sm);font-size:var(--type-sm);place-items:center;display:grid;transform:rotate(-8deg)}nav{gap:var(--space-5);display:flex}.nav-link{padding:var(--space-2) 0;color:var(--color-muted);font-family:var(--font-display);font-size:var(--type-md);transition:color var(--duration-fast) var(--ease-out);text-decoration:none;position:relative}.nav-link:hover,.nav-link.active{color:var(--color-ink)}.nav-link.active:after{content:"";background:var(--color-accent);border-radius:1px;height:2px;position:absolute;bottom:-.25rem;left:0;right:0}.environment-label{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);color:var(--color-ok);background:var(--color-ok-soft);border-radius:var(--radius-pill);font-family:var(--font-display);font-size:var(--type-xs);letter-spacing:.08em;margin-left:auto;display:inline-flex}.environment-label:before{content:"";background:currentColor;border-radius:50%;width:.4rem;height:.4rem;box-shadow:0 0 .6rem}main{max-width:var(--layout-max);padding:var(--space-6) clamp(var(--space-4), 3vw, var(--space-8)) var(--space-16);margin:0 auto}.panel{min-width:0;padding:var(--space-5);background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.panel h2{margin:0 0 var(--space-4);font-size:var(--type-md)}.panel h2+label{margin-top:0}.status-badge{padding:.15rem var(--space-2);color:var(--color-ok);background:var(--color-ok-soft);border-radius:var(--radius-pill);font-family:var(--font-display);font-size:var(--type-xs);letter-spacing:.06em;vertical-align:middle;display:inline-block}.status-DEGRADED{color:var(--color-warning);background:var(--color-warning-soft)}.status-RECOVERING{color:var(--color-danger);background:var(--color-danger-soft)}.system-banner{align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);padding:var(--space-3) var(--space-4);color:var(--color-warning);background:var(--color-warning-soft);border-radius:var(--radius-md);font-size:var(--type-sm);display:flex}.system-banner button{min-height:2rem;margin-left:auto}.error-notice{align-items:center;gap:var(--space-4);display:flex}.eyebrow{color:var(--color-accent);font-family:var(--font-display);font-size:var(--type-xs);letter-spacing:.16em;margin:0}h1{margin:var(--space-2) 0 var(--space-6);font-size:var(--type-display);letter-spacing:-.03em;line-height:1}@media (width<=600px){.site-header{gap:var(--space-4);padding:var(--space-3) var(--space-4);flex-wrap:wrap}nav{gap:var(--space-4);order:3;width:100%}main{padding:var(--space-4) var(--space-4) var(--space-12)}}@media (width<=360px){.environment-label{overflow-wrap:anywhere;max-width:6rem}}
