:root{--page:#eef0f2;--surface:#f3f4f6;--inner-line:#ebedef;--canvas:#f8f9fa;--panel:#ffffff;--line:#e8eaed;--row-line:#f1f2f4;--hover:#f6f7f8;--active:#f4f5f6;--text:#16181c;--dim:#697077;--faint:#98a1a8;--ink:#16181c;--ink-hover:#2c2f34;--green:#16a34a;--green-bg:#e9f7ef;--red:#dc2626;--red-bg:#fdecec;--r-xl:18px;--r-lg:14px;--r-md:10px;--r-sm:8px}*{box-sizing:border-box;margin:0;padding:0}body,html{background:var(--page);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}a,body,html{color:var(--text)}a{text-decoration:none}.page{padding:14px;min-height:100vh}.frame{display:grid;grid-template-columns:236px 1fr;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-xl);overflow:hidden;min-height:calc(100vh - 28px)}aside.side{background:var(--canvas);border-right:1px solid var(--line);padding:18px 14px;display:flex;flex-direction:column;min-height:0}.logo-row{gap:10px;padding:2px 8px 18px}.logo-row,.mark{display:flex;align-items:center}.mark{width:28px;height:28px;border-radius:8px;background:var(--ink);color:#fff;justify-content:center;font-size:13px;font-weight:600}.logo-row b{font-size:15px;font-weight:600;letter-spacing:.01em}.nav-lbl{font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);margin:16px 10px 8px}nav.tabs{display:flex;flex-direction:column;gap:2px}nav.tabs a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r-sm);border:1px solid transparent;color:var(--dim);font-size:13.5px;font-weight:500}nav.tabs a svg{width:16px;height:16px;stroke-width:1.6}nav.tabs a:hover{background:#f0f1f3;color:var(--text);text-decoration:none}nav.tabs a.on{background:var(--panel);border-color:var(--line);color:var(--text);font-weight:550}.user-card{margin-top:auto;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-md);padding:9px 10px;gap:9px}.avatar,.user-card{display:flex;align-items:center}.avatar{width:28px;height:28px;border-radius:999px;background:var(--ink);color:#fff;justify-content:center;font-size:10.5px;font-weight:600;flex:none}.user-card .who{min-width:0}.user-card .who b{display:block;font-size:12.5px;font-weight:550}.user-card .who span{display:block;font-size:10.5px;color:var(--faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-card button{margin-left:auto;background:none;border:none;cursor:pointer;color:var(--faint);padding:4px;border-radius:6px;display:flex}.user-card button:hover{color:var(--text);background:var(--hover)}.content{flex-direction:column;min-width:0}.content,.topbar{background:var(--panel);display:flex}.topbar{border-bottom:1px solid var(--line);padding:11px 24px;justify-content:space-between;gap:12px}.crumb,.topbar{align-items:center}.crumb{font-size:12.5px;color:var(--faint);display:flex;gap:7px}.crumb b{color:var(--text);font-weight:550}.topmeta{font-size:12px;color:var(--dim);border:1px solid var(--line);background:var(--panel);border-radius:999px;padding:4px 12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.body{padding:22px 24px 44px;overflow-y:auto}.greet{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px;flex-wrap:wrap}.greet h1{font-size:21px;font-weight:600;letter-spacing:-.015em}.greet p{font-size:12.5px;color:var(--dim);margin-top:3px}.stats3{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));grid-gap:14px;gap:14px}.scard{background:repeating-linear-gradient(115deg,rgba(22,24,28,.022) 0,rgba(22,24,28,.022) 1px,transparent 1px,transparent 11px),var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:6px}.scard .k{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:500;color:var(--dim);padding:5px 9px 9px}.scard .k svg{width:15px;height:15px;stroke-width:1.6;color:var(--faint)}.scard-in{background:var(--panel);border:1px solid var(--inner-line);border-radius:var(--r-md);padding:13px 15px 12px}.scard .row{display:flex;align-items:center;justify-content:space-between;gap:12px}.scard .big{font-size:27px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.02em}.scard .sub{font-size:11.5px;color:var(--faint);margin-top:6px}.delta{font-weight:550}.delta.pos{color:var(--green)}.delta.neg{color:var(--red)}.main-grid{display:grid;grid-template-columns:2fr 1fr;grid-gap:14px;gap:14px;margin-top:14px;align-items:start}.ccard{background:repeating-linear-gradient(115deg,rgba(22,24,28,.022) 0,rgba(22,24,28,.022) 1px,transparent 1px,transparent 11px),var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:6px}.ccard-head{padding:6px 10px 9px;justify-content:space-between;gap:12px}.ccard-head,.ccard-head .t{display:flex;align-items:center}.ccard-head .t{gap:9px;font-size:13.5px;font-weight:550}.ccard-head .t svg{width:15px;height:15px;stroke-width:1.6;color:var(--faint)}.ccard-head .m{font-size:12px;color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ccard-body{background:var(--panel);border:1px solid var(--inner-line);border-radius:var(--r-md);padding:14px 16px}.ccard-num{font-size:24px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.02em;display:flex;align-items:center;gap:10px}.pillchip{font-size:11.5px;font-weight:550;padding:2px 9px;border-radius:999px}.pillchip.pos{background:var(--green-bg);color:var(--green)}.pillchip.neg{background:var(--red-bg);color:var(--red)}.chart-note{font-size:11.5px;color:var(--faint);margin-top:8px}.feed{display:flex;flex-direction:column}.feed-item{display:flex;align-items:center;gap:11px;padding:10px 2px;border-bottom:1px solid var(--row-line)}.feed-item:last-child{border-bottom:none}.tile{width:30px;height:30px;border-radius:var(--r-sm);flex:none;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.tile.pos{color:var(--green);background:var(--green-bg)}.tile.neg,.tile.pos{border-color:transparent}.tile.neg{color:var(--red);background:var(--red-bg)}.feed-item .fx{min-width:0}.feed-item .fx b{display:block;font-size:13px;font-weight:550;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.feed-item .fx span{display:block;font-size:11px;color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.feed-item .when{margin-left:auto;font-size:11.5px;color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tcard{background:repeating-linear-gradient(115deg,rgba(22,24,28,.022) 0,rgba(22,24,28,.022) 1px,transparent 1px,transparent 11px),var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);margin-top:14px;padding:6px}.tcard .ccard-head{padding:6px 10px 9px}.tcard-in{background:var(--panel);border:1px solid var(--inner-line);border-radius:var(--r-md);overflow:hidden}.tcard table,.tcard-in table{border:none;border-radius:0;background:transparent}table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}th{text-align:left;font-size:11.5px;color:var(--dim);font-weight:550;padding:10px 18px;background:#fbfcfc;white-space:nowrap}td,th{border-bottom:1px solid var(--row-line)}td{padding:11px 18px}tr:last-child td{border-bottom:none}tbody tr:hover td{background:#fafbfc}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.mono-av{width:24px;height:24px;border-radius:7px;flex:none;background:var(--ink);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:600}.tk{display:flex;gap:9px}.badge,.tk{align-items:center;font-weight:550}.badge{display:inline-flex;gap:6px;padding:3px 10px;border-radius:999px;font-size:11.5px;white-space:nowrap}.badge:before{content:"";width:5px;height:5px;border-radius:999px;background:currentColor}.badge.long{background:var(--green-bg);color:var(--green)}.badge.research{background:var(--row-line);color:var(--dim)}.badge.ok{background:var(--green-bg);color:var(--green)}.badge.bad{background:var(--red-bg);color:var(--red)}.xbars{display:inline-flex;align-items:flex-end;gap:2px;height:12px}.xbars i{width:3px;border-radius:2px;background:var(--line)}.xbars i.f{background:var(--text)}.xbars i:first-child{height:5px}.xbars i:nth-child(2){height:8px}.xbars i:nth-child(3){height:12px}.banner{border:1px solid var(--line);background:var(--panel);padding:11px 16px;border-radius:var(--r-md);font-size:13px;color:var(--dim);margin-bottom:16px}.banner a{font-weight:550}code{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;background:var(--canvas);border:1px solid var(--line);padding:1px 6px;border-radius:5px}.note{font-size:12.5px;margin-top:10px}.dim,.note{color:var(--dim)}.faint{color:var(--faint)}.up{color:var(--green)}.down{color:var(--red)}h2.sec{font-size:15px;font-weight:550;margin:26px 0 10px;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}h2.sec:first-child{margin-top:0}h2.sec small{font-weight:400;font-size:12px;color:var(--faint)}.page-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:18px;flex-wrap:wrap}.page-head h1{font-size:21px;font-weight:600;letter-spacing:-.015em}.page-head .meta{font-size:12px;color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.lbl{font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);margin-bottom:10px;display:flex;align-items:baseline;gap:10px}.lbl small{font-size:11px;font-weight:400;letter-spacing:0;text-transform:none}.sleeve{display:flex;flex-wrap:wrap;gap:7px}.chip{border:1px solid var(--line);border-radius:var(--r-sm);padding:4px 11px;font-size:12.5px;font-weight:550;background:var(--panel)}.chip.short{color:var(--faint);font-weight:450}input,select,textarea{width:100%;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:var(--r-sm);padding:8px 12px;font:inherit;font-size:13.5px;margin-bottom:10px}input::placeholder{color:var(--faint)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--dim)}input[type=checkbox]{accent-color:var(--ink);width:15px;height:15px}button.go{width:100%;background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:var(--r-sm);padding:9px 18px;font:inherit;font-size:13px;font-weight:550;cursor:pointer}button.go:hover{background:var(--ink-hover)}button.go:disabled{opacity:.4;cursor:default}.err{color:var(--red)}.err,.ok{font-size:12.5px;margin-top:8px}.ok{color:var(--green)}form.decide{display:grid;grid-template-columns:110px 110px 130px 1fr auto;grid-gap:8px;gap:8px;align-items:start}form.decide button,form.decide input,form.decide select{margin-bottom:0}form.decide button.go{width:auto;padding:9px 20px}.login-wrap{max-width:384px;margin:0 auto;padding:18vh 20px 0}.login-box{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:32px 30px 28px}.login-box h1{font-size:20px;font-weight:600;margin-bottom:3px}.login-box>p{font-size:12.5px;color:var(--faint);margin-bottom:22px}@media (max-width:1060px){.main-grid{grid-template-columns:1fr}}@media (max-width:880px){.page{padding:0}.frame{grid-template-columns:1fr;border-radius:0;border:none;min-height:100vh}aside.side{flex-direction:row;align-items:center;border-right:none;border-bottom:1px solid var(--line);padding:12px 16px;gap:14px}.logo-row{padding:0}.logo-row b,.nav-lbl,.user-card .who{display:none}nav.tabs{flex-direction:row;overflow-x:auto}.user-card{margin:0 0 0 auto;border:none;padding:0}.body{padding:16px 14px 60px}form.decide{grid-template-columns:1fr 1fr}}