:root{--app-bg:#0a0b0d;--app-surface:#131519;--app-surface-2:#1a1d22;--app-border:#24272d;--app-ink:#e8e9ec;--app-ink-muted:#8b909c;--app-up:#22c55e;--app-down:#ef4444;--app-warn:#eab308;--app-accent:#4f8fef;--app-locked:#5b6068;--app-on-accent:#0a0b0d;--app-radius:10px;--app-font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}@media (prefers-color-scheme:light){:root{--app-bg:#f7f8fa;--app-surface:#fff;--app-surface-2:#f1f2f4;--app-border:#e3e5e9;--app-ink:#16181c;--app-ink-muted:#6b7280;--app-up:#16a34a;--app-down:#dc2626;--app-warn:#ca8a04;--app-accent:#2563eb;--app-locked:#9ca3af;--app-on-accent:#fff}}.tabular-nums{font-variant-numeric:tabular-nums}.app-shell{background:var(--app-bg);min-height:100dvh;color:var(--app-ink);display:flex}.app-shell__sidebar{border-right:1px solid var(--app-border);flex-direction:column;flex:none;gap:1.5rem;width:15rem;padding:1.5rem 1rem;display:flex}.app-shell__brand{color:var(--app-ink);letter-spacing:-.01em;margin:0;padding:0 .5rem;font-weight:600}.app-shell__nav{flex-direction:column;gap:.15rem;display:flex}.app-shell__nav-link{color:var(--app-ink-muted);border-radius:8px;justify-content:space-between;align-items:center;gap:.5rem;padding:.55rem .6rem;font-size:.9rem;text-decoration:none;display:flex}.app-shell__nav-link:hover,.app-shell__nav-link[aria-current=page]{background:var(--app-surface-2);color:var(--app-ink)}.app-shell__account{border-top:1px solid var(--app-border);flex-direction:column;gap:.6rem;margin-top:auto;padding:.75rem .5rem 0;display:flex}.app-shell__account-email{color:var(--app-ink-muted);overflow-wrap:break-word;margin:0;font-size:.8rem}.app-shell__main{flex:1;min-width:0;max-width:none;margin:0;padding:2rem 2.5rem 6rem}.app-shell__bottom-nav,.app-shell__mobile-topbar{display:none}@media (max-width:768px){.app-shell{flex-direction:column}.app-shell__sidebar{display:none}.app-shell__mobile-topbar{border-bottom:1px solid var(--app-border);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.25rem;display:flex}.app-shell__mobile-topbar .app-shell__account-email{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-shell__main{padding:1.5rem 1.25rem 5.5rem}.app-shell__bottom-nav{background:var(--app-surface);border-top:1px solid var(--app-border);padding:.4rem .25rem calc(.4rem + env(safe-area-inset-bottom));z-index:10;gap:.25rem;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-x:auto}.app-shell__bottom-nav-link{min-width:3.5rem;color:var(--app-ink-muted);border-radius:8px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:.15rem;min-height:44px;padding:.35rem .5rem;font-size:.65rem;text-decoration:none;display:flex}.app-shell__bottom-nav-link[aria-current=page]{color:var(--app-ink)}}.card{background:var(--app-surface);border:1px solid var(--app-border);border-radius:var(--app-radius);padding:1.25rem 1.4rem}.card__title{color:var(--app-ink);justify-content:space-between;align-items:center;gap:.75rem;margin:0 0 .15rem;font-size:.95rem;font-weight:600;display:flex}.card__body{color:var(--app-ink-muted);margin:.5rem 0 0;font-size:.875rem;line-height:1.5}.card-grid{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:1rem;display:grid}.badge{letter-spacing:.01em;white-space:nowrap;border-radius:999px;align-items:center;gap:.35rem;padding:.2rem .55rem;font-size:.7rem;font-weight:600;display:inline-flex}.badge__dot{border-radius:50%;flex:none;width:.4rem;height:.4rem}.badge--ok{background:color-mix(in srgb, var(--app-up) 16%, transparent);color:var(--app-up)}.badge--warn{background:color-mix(in srgb, var(--app-warn) 18%, transparent);color:var(--app-warn)}.badge--down{background:color-mix(in srgb, var(--app-down) 16%, transparent);color:var(--app-down)}.badge--locked{background:color-mix(in srgb, var(--app-locked) 20%, transparent);color:var(--app-ink-muted)}.badge--sim{background:color-mix(in srgb, var(--app-accent) 16%, transparent);color:var(--app-accent)}.field{flex-direction:column;gap:.35rem;display:flex}.field__label{color:var(--app-ink-muted);font-size:.8rem}.field__input{background:var(--app-surface-2);border:1px solid var(--app-border);color:var(--app-ink);border-radius:8px;min-height:44px;padding:.6rem .7rem;font-family:inherit;font-size:.95rem}.field__input:focus-visible{outline:2px solid var(--app-accent);outline-offset:1px}.field__input[aria-invalid=true]{border-color:var(--app-down)}.field__error{color:var(--app-down);margin:0;font-size:.8rem}.button{cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;min-height:44px;padding:.6rem 1.1rem;font-family:inherit;font-size:.95rem;font-weight:600;display:inline-flex}.button:disabled{cursor:not-allowed;opacity:.6}.button--primary{background:var(--app-accent);color:var(--app-on-accent)}.button:focus-visible{outline:2px solid var(--app-accent);outline-offset:2px}.button--secondary{border-color:var(--app-border);color:var(--app-ink);background:0 0}.auth-shell{background:var(--app-bg);min-height:100dvh;color:var(--app-ink);justify-content:center;align-items:center;padding:1.5rem;display:flex}.auth-shell__card{flex-direction:column;gap:1rem;width:100%;max-width:22rem;display:flex}.auth-shell__form{flex-direction:column;gap:.9rem;display:flex}.auth-shell__title{color:var(--app-ink);margin:0}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.75rem 1rem;margin-bottom:1.25rem;display:flex}.page-header h1{margin:0}.page-header__actions{flex-wrap:wrap;gap:.5rem;display:flex}.page-section{margin-top:2rem}.page-section__title{color:var(--app-ink);margin:0 0 .75rem;font-size:1.05rem;font-weight:600}.stack{flex-direction:column;gap:1rem;display:flex}.muted{color:var(--app-ink-muted)}.text-link{color:var(--app-accent);text-underline-offset:2px}.text-link:focus-visible,.button-link:focus-visible{outline:2px solid var(--app-accent);outline-offset:2px;border-radius:4px}.button-link{text-decoration:none}.prose-text{color:var(--app-ink);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.55}.field__hint{color:var(--app-ink-muted);margin:0;font-size:.78rem}.field__textarea{resize:vertical;min-height:7rem;line-height:1.5}.field__select{appearance:auto}.field__counter--ok{color:var(--app-up)}.field__range{width:100%;min-height:44px;accent-color:var(--app-accent)}.field__range:focus-visible{outline:2px solid var(--app-accent);outline-offset:2px}.checkbox-row{min-height:44px;color:var(--app-ink);cursor:pointer;align-items:center;gap:.6rem;font-size:.875rem;display:flex}.checkbox-row__input{width:1.15rem;height:1.15rem;accent-color:var(--app-accent);flex:none}.checkbox-row__input:focus-visible{outline:2px solid var(--app-accent);outline-offset:2px}.form-grid{grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.9rem 1rem;display:grid}.form-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.chip-group{border:0;flex-direction:column;gap:.45rem;min-width:0;margin:0;padding:0;display:flex}.chip-group__options{flex-wrap:wrap;gap:.4rem;display:flex}.chip{display:inline-flex;position:relative}.chip__input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.chip__label{border:1px solid var(--app-border);background:var(--app-surface-2);min-height:44px;color:var(--app-ink-muted);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:999px;align-items:center;padding:.4rem .85rem;font-size:.85rem;display:inline-flex}.chip__input:checked+.chip__label{border-color:var(--app-accent);background:color-mix(in srgb, var(--app-accent) 18%, transparent);color:var(--app-ink);font-weight:600}.chip__input:focus-visible+.chip__label{outline:2px solid var(--app-accent);outline-offset:2px}.chip__input:disabled+.chip__label{cursor:not-allowed;opacity:.55}.badge--neutral{background:var(--app-surface-2);color:var(--app-ink-muted);border:1px solid var(--app-border)}.badge--neutral .badge__dot{background:var(--app-ink-muted)}.button--ghost{color:var(--app-accent);background:0 0;border-color:#0000;padding-inline:.6rem}.button--ghost:hover{background:var(--app-surface-2)}.notice{border:1px solid var(--app-border);background:var(--app-surface-2);color:var(--app-ink);border-radius:8px;padding:.7rem .9rem;font-size:.875rem}.notice ul{margin:.35rem 0 0;padding-left:1.1rem}.notice--error{border-color:color-mix(in srgb, var(--app-down) 55%, var(--app-border))}.notice--success{border-color:color-mix(in srgb, var(--app-up) 55%, var(--app-border))}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.75rem;display:grid}.stat{border-radius:var(--app-radius);border:1px solid var(--app-border);background:var(--app-surface);flex-direction:column;gap:.2rem;min-width:0;padding:.85rem 1rem;display:flex}.stat__label{color:var(--app-ink-muted);font-size:.75rem}.stat__value{color:var(--app-ink);font-size:1.3rem;font-weight:600}.stat__value--up{color:var(--app-up)}.stat__value--down{color:var(--app-down)}.stat__detail{color:var(--app-ink-muted);font-size:.75rem}.value--up{color:var(--app-up)}.value--down{color:var(--app-down)}.table-scroll{border:1px solid var(--app-border);border-radius:var(--app-radius);background:var(--app-surface);overflow-x:auto}.table-scroll:focus-visible{outline:2px solid var(--app-accent);outline-offset:2px}.table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.85rem}.table th,.table td{text-align:left;border-bottom:1px solid var(--app-border);white-space:nowrap;color:var(--app-ink);padding:.6rem .75rem}.table th{color:var(--app-ink-muted);font-size:.75rem;font-weight:600}.table tbody tr:last-child td{border-bottom:0}.table .num{text-align:right}.filter-bar{grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));align-items:end;gap:.75rem;margin-bottom:1rem;display:grid}.pagination{justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;display:flex}.position-list{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.position{border-radius:var(--app-radius);border:1px solid var(--app-border);background:var(--app-surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;padding:.85rem 1rem;display:flex}.position__main{flex-direction:column;gap:.15rem;min-width:0;display:flex}.position__symbol{color:var(--app-ink);font-weight:600}.position__meta{color:var(--app-ink-muted);font-size:.8rem}.ticket{flex-direction:column;gap:1.25rem;display:flex}.ticket__section{border:1px solid var(--app-border);border-radius:var(--app-radius);background:var(--app-surface);flex-direction:column;gap:.9rem;min-width:0;margin:0;padding:1rem 1.1rem;display:flex}.ticket__section>legend{color:var(--app-ink);padding:0 .35rem;font-size:.95rem;font-weight:600}.ticket__leg{border-top:1px dashed var(--app-border);flex-direction:column;gap:.9rem;padding-top:.9rem;display:flex}.ticket__leg:first-of-type{border-top:0;padding-top:0}.ticket__leg-header{color:var(--app-ink-muted);justify-content:space-between;align-items:center;gap:.5rem;font-size:.8rem;display:flex}.ticket__submit{flex-direction:column;gap:.6rem;padding:.25rem 0 .75rem;display:flex}.detail-grid{grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));gap:.75rem 1rem;margin:0;display:grid}.detail-grid dt{color:var(--app-ink-muted);font-size:.75rem}.detail-grid dd{color:var(--app-ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:.1rem 0 0}.modal{border:1px solid var(--app-border);border-radius:var(--app-radius);background:var(--app-surface);width:min(40rem,100vw - 1.5rem);max-height:calc(100dvh - 1.5rem);color:var(--app-ink);padding:0}.modal::backdrop{background:color-mix(in srgb, var(--app-bg) 75%, transparent)}.modal__header{border-bottom:1px solid var(--app-border);background:var(--app-surface);z-index:1;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.1rem;display:flex;position:sticky;top:0}.modal__title{color:var(--app-ink);margin:0;font-size:1.05rem}.modal__close{min-width:44px;min-height:44px;color:var(--app-ink-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;font-size:1.5rem}.modal__close:focus-visible{outline:2px solid var(--app-accent)}.modal__body{flex-direction:column;gap:1rem;padding:1rem 1.1rem 1.25rem;display:flex}.tooltip{display:inline-flex;position:relative}.tooltip__bubble{z-index:5;border:1px solid var(--app-border);background:var(--app-surface-2);width:max-content;max-width:16rem;color:var(--app-ink);opacity:0;pointer-events:none;border-radius:6px;padding:.35rem .6rem;font-size:.75rem;transition:opacity .12s ease-out;position:absolute;bottom:calc(100% + .4rem);left:0}.tooltip:hover .tooltip__bubble,.tooltip:focus-within .tooltip__bubble{opacity:1}@media (prefers-reduced-motion:reduce){.tooltip__bubble{transition:none}}.equity-curve{border:1px solid var(--app-border);border-radius:var(--app-radius);background:var(--app-surface);margin:0;padding:.75rem}.equity-curve__svg{width:100%;height:14rem;display:block}.equity-curve__zero{stroke:var(--app-border);stroke-width:1px;stroke-dasharray:4 4;vector-effect:non-scaling-stroke}.equity-curve__line{fill:none;stroke-width:2px;stroke-linejoin:round;stroke:var(--app-accent)}.equity-curve__line--up{stroke:var(--app-up)}.equity-curve__line--down{stroke:var(--app-down)}.equity-curve__axis{color:var(--app-ink-muted);justify-content:space-between;margin-top:.35rem;font-size:.75rem;display:flex}
