/* 画图狗 — two markets, one personal investment desk. */
:root{--bg:#122632;--panel:#193441;--line:#35505e;--text:#f1f3ee;--muted:#a1b3be;--blue:#e6aa73;--good:#73c4b0;--warn:#e6bb7b;--bad:#ef929c;--equity:#99b9e7;--sidebar:206px;--display:"Avenir Next","PingFang SC",sans-serif;--mono:"SFMono-Regular",Consolas,monospace}
body{background:var(--bg);font-size:14px;line-height:1.65}h1,h2,h3{font-family:var(--display)}button,a,input,select,summary{touch-action:manipulation}button{border-radius:9px;font-size:13px;transition:background .15s,border-color .15s}button:hover{filter:brightness(1.08)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--blue);outline-offset:4px}button.quiet{color:var(--text);border-color:var(--line);background:transparent}a{color:var(--blue)}.eyebrow{font:10px/1.6 var(--mono);letter-spacing:.14em;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.workspace-header{height:92px;padding:22px 36px 18px calc(var(--sidebar) + 36px);max-width:none;border-bottom:1px solid var(--line);gap:20px}.workspace-header .brand{position:fixed;left:22px;top:23px;z-index:5;display:flex;align-items:center;gap:11px;background:none;color:var(--text);text-align:left;padding:0;border:0}.brand img{width:42px;height:42px}.brand strong{display:block;font-size:18px;letter-spacing:.09em;line-height:1.3}.brand small{display:block;font-size:10px;letter-spacing:.12em;margin-top:3px}.header-context{display:flex;align-items:center;gap:20px}.header-context>span{font:10px var(--mono);letter-spacing:.13em;color:var(--muted)}.header-context>small{font-size:12px;color:var(--text)}.header-context i{font-style:normal;color:var(--line);padding:0 10px}.header-actions{display:flex;gap:18px;align-items:center;margin-left:auto}.header-actions a{color:var(--muted);text-decoration:none;font-size:12px}.header-actions button{min-height:34px;padding:4px 12px;font-size:12px}
#shell>main,#health{max-width:1800px;margin-left:var(--sidebar);padding-left:36px;padding-right:36px}#shell>main{padding-top:20px;padding-bottom:24px}#health{padding-top:13px;padding-bottom:0;gap:8px}#health span{border:none;padding:0;font-size:10px}#health span+span:before{content:"·";color:var(--line);padding-right:8px}
nav{position:fixed;top:92px;bottom:0;left:0;right:auto;width:var(--sidebar);display:flex;flex-direction:column;justify-content:flex-start;gap:5px;background:var(--bg);border-right:1px solid var(--line);border-top:0;padding:26px 16px 20px;backdrop-filter:none;overflow-y:auto}nav button{display:flex;align-items:center;gap:13px;flex:0 0 auto;max-width:none;width:100%;text-align:left;padding:11px 14px;min-height:56px;color:var(--muted);border-radius:9px}nav button svg{width:19px;height:19px;flex-shrink:0}nav button span{line-height:1.4}nav button small{display:block;font:9px var(--mono);margin-top:4px;letter-spacing:.01em}nav button.active{background:#254553;color:var(--text);border:1px solid #446574}nav button.active svg{color:var(--blue)}nav button:hover{background:#1b3542}.nav-caption{color:var(--muted);font-size:10px;padding:0 14px 17px;letter-spacing:.14em}.nav-foot{margin-top:auto;padding:26px 14px 0;font-size:11px;color:var(--muted)}.nav-foot small{display:block;font-size:10px;padding-left:13px;margin-top:5px}.desk-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--good);margin-right:5px}
.desk-page-head{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:7px 0 28px}.desk-page-head h1{font-family:var(--display);font-size:32px;letter-spacing:-.03em;margin:6px 0 7px;font-weight:600;line-height:1.35}.heading-dot{color:var(--blue);margin-left:2px}.desk-page-head p{color:var(--muted);font-size:12px;margin:0}.desk-page-actions{display:flex;gap:8px}.desk-page-actions button{font-size:11px;min-height:36px;padding:7px 13px}.desk-market-summaries{display:grid;grid-template-columns:1fr 1fr;gap:18px}.desk-summary{padding:22px 24px 0;background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden;position:relative}.desk-summary:before{content:"";position:absolute;left:24px;top:0;width:40px;height:3px;border-radius:0 0 2px 2px;background:var(--blue)}.equity-summary:before{background:var(--equity)}.desk-summary-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.market-label{display:flex;gap:8px;align-items:center;font:600 17px var(--display)}.market-label small{font:9px var(--mono);margin-left:5px;letter-spacing:.08em}.market-dot{width:7px;height:7px;border-radius:50%;background:var(--blue)}.equity-summary .market-dot{background:var(--equity)}.text-button{background:none;color:var(--blue);font-size:11px;border:0;padding:4px 0;min-height:32px;white-space:nowrap}.desk-summary-head .text-button{font-size:21px;color:var(--muted);min-width:32px}.desk-summary>small{font-size:11px}.desk-total{font:500 clamp(24px,2.7vw,42px)/1.4 var(--display);letter-spacing:-.045em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:6px 0 22px}.desk-total>span{font:11px var(--mono);letter-spacing:.02em;color:var(--muted);margin-left:5px}.desk-summary-stats{display:grid;grid-template-columns:1.2fr 1.2fr .7fr;gap:12px;padding-bottom:22px}.desk-summary-stats small{display:block;font-size:10px}.desk-summary-stats strong{display:block;font:500 12px/1.6 var(--mono);margin-top:5px;overflow-wrap:anywhere}.desk-summary-foot{border-top:1px solid var(--line);margin:0 -24px;padding:11px 24px;font-size:10px;color:var(--muted);background:#17303d}.desk-accounting-note{font-size:10px;color:var(--muted);margin:11px 0 27px;line-height:1.7}
.desk-columns{display:grid;grid-template-columns:minmax(0,1fr) 254px;gap:20px;align-items:start}.desk-primary,.desk-secondary{min-width:0;display:grid;gap:20px}.desk-panel{background:var(--panel);border:1px solid var(--line);border-radius:13px;overflow:hidden;min-width:0}.desk-panel-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:21px 22px 17px}.desk-panel-head h2{font-size:16px;letter-spacing:.01em;font-weight:600;margin:5px 0 0;line-height:1.4}.holding-count{font-size:10px;color:var(--muted);margin-left:7px;font-weight:400;white-space:nowrap}.position-filters{display:flex;gap:6px;border-bottom:1px solid var(--line);padding:0 22px 15px}.position-filters button{font-size:11px;padding:6px 10px;min-height:32px;background:transparent;border:1px solid transparent;color:var(--muted);font-weight:500}.position-filters button span{font:9px var(--mono);margin-left:8px;opacity:.7}.position-filters button.active{background:#2a4754;border-color:#42616e;color:var(--text)}.positions-wrap{width:100%;overflow-x:auto}.positions-table{width:100%;border-collapse:collapse;min-width:630px;font-size:11px}.positions-table thead{color:var(--muted);font-size:9px}.positions-table th{text-align:left;font-weight:400;padding:12px 12px;white-space:nowrap}.positions-table td{padding:19px 12px;border-top:1px solid #304b58;vertical-align:middle;font-family:var(--mono);font-size:10px;line-height:1.65}.positions-table th:first-child,.positions-table td:first-child{padding-left:22px}.positions-table td:last-child,.positions-table th:last-child{padding-right:22px}.positions-table td strong{font-weight:500;display:block;white-space:nowrap;font-size:10px}.positions-table td small{font:9px/1.6 var(--mono);display:block;margin-top:3px;white-space:nowrap}.positions-table tbody tr:hover{background:#1c3947}.position-identity{display:flex;align-items:center;gap:9px}.position-identity strong{font:600 12px var(--display)!important}.position-identity small{font:9px/1.6 -apple-system,"PingFang SC",sans-serif!important;max-width:105px;white-space:normal!important}.asset-monogram{width:30px;height:30px;flex-shrink:0;border-radius:9px;display:grid;place-items:center;font:600 10px var(--display)}.crypto-icon{background:#4b4239;color:#f2c299}.equity-icon{background:#2a455e;color:#b1cbed}.quote-pill{display:inline-block;font:9px/1.5 -apple-system,"PingFang SC",sans-serif;color:var(--good);border:1px solid #3f6a65;border-radius:5px;padding:2px 5px;white-space:nowrap}.quote-pill.quote-warning{color:var(--warn);border-color:#6e6048}.positions-note{padding:12px 22px;margin:0;font-size:9px;color:var(--muted);border-top:1px solid var(--line)}
.workspace-link{display:flex;align-items:center;gap:12px;background:transparent;width:100%;padding:12px 18px;color:var(--text);text-align:left;border-radius:0;font-weight:400}.workspace-link:hover{background:#203d4b}.workspace-symbol{width:32px;height:34px;display:grid;place-items:center;font:19px var(--display);border-radius:8px}.workspace-link>span:nth-child(2){flex:1}.workspace-link strong{display:block;font-size:13px;font-weight:500}.workspace-link small{display:block;font-size:9px;margin-top:3px}.workspace-link>span:last-child{color:var(--muted);font-size:17px}.desk-record-actions{display:flex;gap:7px;margin:13px 18px 19px}.desk-record-actions button{flex:1;min-height:34px;font-size:10px;white-space:nowrap;padding:4px 6px}.desk-attention{padding:14px 22px;border-top:1px solid var(--line)}.desk-attention>small{font-size:10px;display:block}.desk-attention>strong{font-size:12px;font-weight:500;display:block;margin:5px 0}.attention-dot{width:6px;height:6px;border-radius:50%;background:var(--blue)}.opportunity-panel .rank-line{margin:0 22px}.opportunity-panel>.text-button{margin:12px 22px 18px}.desk-activity{display:flex;align-items:center;gap:13px;border-top:1px solid var(--line);padding:16px 22px}.activity-side{background:#223e49;display:grid;place-items:center;width:30px;height:30px;flex-shrink:0;border-radius:50%;font-size:17px}.desk-activity strong{font-size:12px;font-weight:500;display:block}.desk-activity strong>span{font-size:10px;margin-left:7px}.desk-activity small{display:block;font-size:9px;margin-top:4px}.activity-amount{margin-left:auto;text-align:right}.activity-amount strong{font:11px var(--mono)}.activity-amount small{font:9px var(--mono)}.desk-footer{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:9px;padding:28px 0 4px}.desk-empty{text-align:center;padding:36px 20px 40px}.desk-empty>span{font-size:25px;color:var(--blue)}.desk-empty h3{font-size:15px;margin:10px 0}.desk-empty p{color:var(--muted);font-size:11px}.desk-empty button{font-size:11px}.desk-panel>.empty{padding:8px 22px 25px}
.summary,.card,.chart-panel{background:var(--panel);border-color:var(--line)}.stock-tabs button[aria-selected=true],.ranges button.active{background:#2a4b5a;color:var(--text)}.rotation-final{background:#193441}.home-section{background:var(--panel)}.page>h2,.page>.section-head h2{font-size:25px}.login{max-width:440px;margin:8vh auto;padding:32px 24px}.login-brand{display:flex;align-items:center;gap:14px}.login-brand img{width:56px;height:56px}.login-brand .eyebrow{font-size:9px}.login h1{font-family:var(--display);font-weight:500;font-size:42px;letter-spacing:-.04em;line-height:1.4;margin:37px 0 15px}.login>p{color:var(--muted);font-size:13px}.login form{margin-top:30px}.login input{background:#193441;border-color:var(--line);min-height:46px}.login label{font-size:12px}.login form>button{display:flex;align-items:center;justify-content:space-between;margin-top:24px;min-height:46px;background:var(--blue)}.login form>button span{font-size:20px}.login-foot{display:block;border-top:1px solid var(--line);padding-top:20px;margin-top:30px;font-size:10px}#notice{background:#e6aa73;color:#122632;box-shadow:0 8px 32px #0003}dialog{background:var(--bg)}
@media(min-width:1700px){.desk-columns{grid-template-columns:minmax(0,1fr) 290px}.positions-table td{font-size:12px}.positions-table td strong{font-size:12px}.positions-table td small{font-size:10px}.desk-summary-stats strong{font-size:14px}}
@media(max-width:1320px) and (min-width:901px){:root{--sidebar:180px}.workspace-header .brand{left:18px}.workspace-header,#shell>main,#health{padding-left:26px;padding-right:26px}.workspace-header{padding-left:calc(var(--sidebar) + 26px)}.header-context>span{display:none}.desk-columns{grid-template-columns:minmax(0,1fr)}.desk-secondary{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.desk-summary-stats strong{font-size:11px}.nav-caption{padding-left:10px}nav{padding-left:12px;padding-right:12px}nav button{padding-left:10px}.brand strong{font-size:17px}}
@media(max-width:900px){.workspace-header{height:80px;padding:16px 22px;max-width:none}.workspace-header .brand{position:static}.header-context{margin-left:auto}.header-context>span{display:none}.header-actions{margin-left:0}.header-actions a{display:none}#shell>main,#health{margin-left:0;padding-left:22px;padding-right:22px}#shell>main{padding-bottom:100px}#health{padding-top:10px}.desk-columns{grid-template-columns:1fr}.desk-secondary{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.desk-total{font-size:34px}nav{top:auto;bottom:0;left:0;right:0;width:auto;flex-direction:row;overflow-x:auto;overflow-y:hidden;border-right:0;border-top:1px solid var(--line);padding:8px 12px calc(8px + env(safe-area-inset-bottom));gap:4px;background:#122632f5;backdrop-filter:blur(15px);justify-content:flex-start}nav button{min-width:76px;width:auto;flex:1;flex-direction:column;justify-content:center;gap:5px;padding:7px 8px;text-align:center;font-size:10px;min-height:54px}nav button svg{width:17px;height:17px}nav button small,.nav-caption,.nav-foot{display:none}.desk-page-head{padding-bottom:23px}.desk-page-head h1{font-size:29px}}
@media(max-width:600px){.workspace-header{padding:15px 18px;height:76px;gap:10px}.brand img{width:37px;height:37px}.brand strong{font-size:17px}.brand small{font-size:9px}.header-context{display:none}.header-actions{margin-left:auto}.header-actions button{font-size:10px;min-height:32px}#shell>main,#health{padding-left:18px;padding-right:18px}#health span:first-child{display:none}#health{gap:5px}#health span{font-size:9px}#health span+span:before{padding-right:4px}#shell>main{padding-top:19px}.desk-page-head{align-items:flex-start;gap:12px;flex-wrap:wrap}.desk-page-head h1{font-size:29px;margin-top:5px}.desk-page-head .eyebrow{font-size:9px}.desk-page-head p{font-size:11px}.desk-page-actions{width:100%;margin-top:2px}.desk-page-actions button{font-size:10px;min-height:32px}.desk-market-summaries{grid-template-columns:1fr;gap:14px}.desk-summary{padding:20px 20px 0}.desk-summary:before{left:20px}.desk-summary-head{margin-bottom:15px}.desk-total{font-size:36px;margin-bottom:20px}.desk-summary-stats{gap:8px;grid-template-columns:1.2fr 1.2fr .65fr;padding-bottom:18px}.desk-summary-stats strong{font-size:10px}.desk-summary-foot{margin:0 -20px;padding:10px 20px;font-size:9px}.desk-accounting-note{margin-bottom:20px;font-size:9px}.desk-secondary{grid-template-columns:1fr}.desk-columns,.desk-primary,.desk-secondary{gap:16px}.desk-panel-head{padding:19px 18px 15px}.desk-panel-head h2{font-size:16px}.desk-panel-head .text-button{font-size:10px}.holding-count{display:block;margin:5px 0 0;font-size:9px}.position-filters{padding:0 18px 13px;gap:7px}.position-filters button{padding:5px 10px;font-size:11px}.positions-table{min-width:0;display:block}.positions-table thead{display:none}.positions-table tbody{display:block}.positions-table tr{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px;padding:19px 18px;border-bottom:1px solid var(--line)}.positions-table tbody tr:last-child{border-bottom:0}.positions-table td{border:0;padding:0!important;display:block;font-size:11px;min-width:0}.positions-table td:first-child{grid-column:1/-1;margin-bottom:2px}.positions-table td:before{content:attr(data-label);display:block;font:9px -apple-system,"PingFang SC",sans-serif;color:var(--muted);margin-bottom:4px}.positions-table td strong{font-size:11px;white-space:normal;overflow-wrap:anywhere}.positions-table td small{font-size:9px;white-space:normal}.positions-table td:last-child{grid-column:1/-1;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.positions-table td:last-child:before{display:none}.position-identity strong{font-size:15px!important}.position-identity small{max-width:none!important}.asset-monogram{width:34px;height:34px;font-size:12px}.quote-pill{font-size:9px}.positions-note{font-size:9px;padding:12px 18px}.desk-activity{padding:14px 18px;gap:10px}.activity-amount strong{font-size:10px}.desk-activity small{font-size:8px}.desk-activity strong{font-size:11px}.activity-side{width:27px;height:27px}.desk-footer{flex-direction:column;gap:4px;padding-top:23px}.login{margin:3vh auto;padding:28px 25px}.login h1{font-size:38px}.login-brand .eyebrow{font-size:8px}.login-brand img{width:48px;height:48px}.page>.section-head{flex-wrap:wrap}.cards{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

.position-unit{color:var(--muted);font-size:9px}.positions-table td strong{font-size:11px}.positions-table td{font-size:11px}
