@font-face{font-family:Rollbox;src:url(/fonts/RollboxRegular.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Rollbox;src:url(/fonts/RollboxMedium.ttf) format("truetype");font-weight:500;font-display:swap}@font-face{font-family:Rollbox;src:url(/fonts/RollboxSemiBold.ttf) format("truetype");font-weight:600;font-display:swap}@font-face{font-family:Rollbox;src:url(/fonts/RollboxBold.ttf) format("truetype");font-weight:700;font-display:swap}@font-face{font-family:Rollbox;src:url(/fonts/RollboxBlack.ttf) format("truetype");font-weight:900;font-display:swap}@font-face{font-family:Metropolis;src:url(/fonts/Metropolis-Light.otf) format("opentype");font-weight:400;font-display:swap}@font-face{font-family:Metropolis;src:url(/fonts/Metropolis-Medium.otf) format("opentype");font-weight:500;font-display:swap}:root{--navy:#2a3647;--blue:#4c6a9e;--blue-mid:#607fb8;--blue-deep:#3f5c8c;--ice:#eaf6fd;--ice-bright:#bdebfe;--bg:#f2f3f5;--panel:#f7f8fa;--border:#dee2e8;--border-soft:#eaedf1;--hairline:#f1f3f6;--ink:#101215;--ink-soft:#5a616b;--ink-faint:#7c848f;--ink-ghost:#a6adb7;--red:#e11d2e;--red-bg:#fff3f4;--font-display:"Rollbox","Archivo Black",sans-serif;--font-body:Metropolis,Archivo,system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,monospace}*{box-sizing:border-box}html{scrollbar-gutter:stable}body,html{margin:0;padding:0;font-family:var(--font-body);color:var(--ink);background:var(--bg);font-size:14px}h1,h2,h3{font-family:var(--font-display);font-weight:900;letter-spacing:-.01em}h1{text-transform:uppercase}a{color:var(--blue-deep);text-decoration:none}a:hover{color:var(--blue)}img{max-width:100%}input[type=email],input[type=number],input[type=text],select{font-family:var(--font-body);color:var(--ink);padding:9px 11px;border:1px solid var(--border);border-radius:7px;background:#fff;font-size:13px}input[type=number]{font-family:var(--font-mono)}input:focus,select:focus{outline:2px solid var(--blue-mid);outline-offset:-1px}input[type=checkbox]{accent-color:var(--blue);width:15px;height:15px;margin:0;cursor:pointer}.btn{display:inline-block;padding:11px 20px;border:none;border-radius:8px;background:var(--blue-mid);color:#fff;font-family:var(--font-body);font-size:13px;font-weight:700;cursor:pointer;text-decoration:none}.btn:hover{background:var(--blue);color:#fff}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-dark{background:var(--navy)}.btn-dark:hover{background:var(--blue)}.btn-sm{padding:7px 14px;font-size:12px;border-radius:7px}.btn-ghost{background:var(--panel);color:var(--ink-faint);border:1px solid var(--border)}.btn-ghost:hover{border-color:var(--red);color:var(--red);background:var(--red-bg)}.card{padding:18px 22px}.card,.section-card{background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden}.section-head{display:flex;align-items:center;gap:12px;padding:15px 22px;border-bottom:1px solid var(--border-soft)}.accent-bar{width:4px;height:18px;background:linear-gradient(180deg,var(--blue),var(--ice));border-radius:2px;flex:none}.section-title{margin:0;font-family:var(--font-display);font-weight:900;font-size:14px;letter-spacing:.06em;text-transform:uppercase}.mono-label{font-size:9.5px;letter-spacing:.14em;text-transform:uppercase}.mono-label,.mono-note{font-family:var(--font-mono);color:var(--ink-faint)}.mono-note{font-size:10.5px}.mono-val{font-size:13px;font-weight:700}.mono-accent,.mono-val{font-family:var(--font-mono)}.mono-accent{font-size:11px;color:var(--blue-mid);letter-spacing:.04em}.wrap{max-width:1100px;margin:0 auto;padding:24px 28px}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:11px 12px;border-bottom:1px solid var(--hairline);font-size:13.5px}th{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-weight:500}.hint-wrap{position:relative;display:inline-block}.hint-wrap .hint{display:none;position:absolute;top:calc(100% + 8px);right:0;z-index:50;width:max-content;max-width:260px;background:var(--navy);color:#fff;font-family:var(--font-body);font-size:12px;font-weight:500;line-height:1.5;padding:9px 12px;border-radius:8px;box-shadow:0 6px 20px rgba(42,54,71,.35)}.hint-wrap .hint:before{content:"";position:absolute;top:-5px;right:22px;width:10px;height:10px;background:var(--navy);transform:rotate(45deg)}.hint-wrap:hover .hint{display:block}.side-rail{width:256px;flex:none;background:var(--navy);color:#b4becc;display:flex;flex-direction:column;padding:22px 0 16px;position:-webkit-sticky;position:sticky;top:0;height:100vh;transition:width .16s ease}.side-rail.collapsed{width:64px}.side-wordmark{font-family:var(--font-display);font-weight:900;font-size:20px;letter-spacing:.02em;background:linear-gradient(100deg,#eaf6fd,#bdebfe 45%,#ffffff);-webkit-background-clip:text;background-clip:text;color:transparent;width:-moz-fit-content;width:fit-content}.side-rail.collapsed .side-wordmark{margin:0 auto}.side-section-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;color:#8fa8cd;text-transform:uppercase;padding:22px 18px 8px}.side-link{display:block;padding:9px 18px;font-size:13.5px;color:#c3cbd6}.side-link:hover{color:#eaf6fd;background:rgba(189,235,254,.07)}.side-link.active{padding:9px 15px;font-weight:700;color:#bdebfe;background:rgba(189,235,254,.12);border-left:3px solid var(--blue-mid)}.side-icon{width:40px;height:40px;margin:4px auto;border-radius:9px;display:flex;align-items:center;justify-content:center;color:#c3cbd6;cursor:pointer}.flyout-wrap:hover .side-icon{color:#eaf6fd;background:rgba(189,235,254,.09)}.side-icon.active{color:#bdebfe;background:rgba(189,235,254,.14)}.flyout-wrap{position:relative}.flyout-wrap .flyout{display:none;position:absolute;left:calc(100% + 2px);top:0;z-index:60;min-width:168px;background:var(--navy);border:1px solid rgba(189,235,254,.16);border-radius:10px;box-shadow:6px 8px 24px rgba(16,18,21,.35);overflow:hidden}.flyout-wrap .flyout:before{content:"";position:absolute;left:-8px;top:0;bottom:0;width:8px}.flyout-wrap:hover .flyout{display:block}.side-toggle{display:flex;align-items:center;gap:8px;margin:0 12px 12px;padding:8px 10px;border:none;border-radius:8px;background:rgba(255,255,255,.05);color:#8b96a6;font-family:var(--font-body);font-size:12px;cursor:pointer;justify-content:center}.side-toggle:hover{color:#eaf6fd;background:rgba(189,235,254,.1)}.side-user{margin:0 18px;padding-top:14px;border-top:1px solid rgba(255,255,255,.09);gap:10px}.side-avatar,.side-user{display:flex;align-items:center}.side-avatar{width:28px;height:28px;border-radius:50%;background:var(--blue-mid);color:#fff;font-family:var(--font-display);font-weight:900;font-size:12px;justify-content:center;flex:none}.side-signout{background:none;border:none;padding:0;font-size:11.5px;color:#7d8899;cursor:pointer;font-family:var(--font-body)}.side-signout:hover{color:#eaf6fd}.present-fab{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:40;display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border-radius:999px;background:var(--navy);color:#bdebfe;font-weight:700;font-size:13.5px;box-shadow:0 8px 26px rgba(42,54,71,.4);border:1px solid rgba(189,235,254,.25)}.present-fab:hover{background:var(--blue-deep);color:#fff}.pill{padding:8px 14px;border-radius:20px;cursor:pointer;font-family:var(--font-body);font-size:12px;font-weight:600;background:#fff;color:var(--ink-soft);border:1px solid var(--border)}.pill.active{background:var(--ice);color:var(--navy);border:1px solid var(--blue-mid);font-weight:700}.pill:disabled{background:var(--panel);color:var(--ink-ghost);cursor:not-allowed}.side-scroll{overflow-y:auto;overflow-x:hidden}.side-rail .side-scroll{flex:0 1 auto}.nav-newquote{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 14px 10px;padding:11px 14px;width:calc(100% - 28px);border:none;border-radius:9px;cursor:pointer;background:var(--blue-mid);color:#fff;font-family:var(--font-body);font-size:13.5px;font-weight:700}.nav-newquote:hover{background:var(--blue)}.nav-search{display:flex;align-items:center;gap:8px;margin:0 14px 12px;padding:9px 12px;width:calc(100% - 28px);border:1px solid rgba(189,235,254,.16);border-radius:8px;cursor:pointer;background:rgba(255,255,255,.04);color:#8fa8cd;font-family:var(--font-body);font-size:12.5px;text-align:left}.nav-search:hover{color:#eaf6fd;border-color:rgba(189,235,254,.32)}.nav-trades{display:flex;gap:6px;margin:4px 14px 8px}.nav-trade-pill{flex:1 1;padding:7px 0;border:1px solid rgba(189,235,254,.16);border-radius:7px;cursor:pointer;background:transparent;color:#c3cbd6;font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.06em}.nav-trade-pill:hover{color:#eaf6fd;border-color:rgba(189,235,254,.32)}.nav-trade-pill.active{background:var(--blue-mid);color:#fff;border-color:var(--blue-mid)}.nav-count{font-family:var(--font-mono);font-size:10.5px;font-weight:700;color:#8fa8cd;background:rgba(189,235,254,.1);border-radius:20px;padding:1px 8px;min-width:20px;text-align:center}.side-link.active .nav-count{color:#bdebfe;background:rgba(189,235,254,.2)}.mobile-drawer-overlay,.mobile-topbar{display:none}@media (max-width:820px){.side-rail{display:none}.app-main{padding-top:calc(52px + env(safe-area-inset-top, 0px))}.mobile-topbar{display:flex;align-items:center;gap:12px;position:fixed;top:0;left:0;right:0;z-index:90;height:calc(52px + env(safe-area-inset-top, 0px));padding:env(safe-area-inset-top,0) 14px 0;background:var(--navy);color:#eaf6fd}.mobile-hamburger,.mobile-newquote{background:none;border:none;color:#eaf6fd;cursor:pointer;padding:6px;display:flex;align-items:center}.mobile-newquote{margin-left:auto;width:34px;height:34px;justify-content:center;background:var(--blue-mid);color:#fff;border-radius:9px;font-size:20px}.mobile-drawer-overlay{display:block;position:fixed;inset:0;z-index:100;background:rgba(16,18,21,.5)}.mobile-drawer{position:absolute;top:0;bottom:0;left:0;width:84%;max-width:320px;background:var(--navy);color:#b4becc;display:flex;flex-direction:column;padding:calc(18px + env(safe-area-inset-top, 0px)) 0 16px;box-shadow:6px 0 30px rgba(16,18,21,.5)}.mobile-drawer>div:first-child{padding-left:18px;padding-right:14px}.nav-newquote,.nav-search,.nav-trades{margin-left:14px;margin-right:14px}}.est-input::placeholder{color:var(--blue-mid);opacity:.85}