:root{--navy:#122033;--navy-2:#1b2d46;--gold:#c4a35a;--gold-soft:#f3e6c5;--paper:#f6f3ec;--card:#fff;--ink:#1c2430;--muted:#6d7684;--line:#e6e0d4;--up:#1f7a4d;--down:#b42318;--shadow:0 10px 30px #1220330f;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}html,body,#app{min-height:100%;margin:0}html,body{overflow:hidden auto}body{background:var(--paper)}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit;color:inherit}select{color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 10px;font-family:inherit;font-size:13px;line-height:1.3}button{color:var(--ink)}button.primary{background:var(--navy);color:#fff;border:1px solid var(--navy);cursor:pointer;border-radius:10px;padding:10px 16px}.page-head button.primary{color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 10px;font-size:13px}.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.up{color:var(--up)}.down{color:var(--down)}.page-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;display:flex}.page-head h2{margin:0 0 4px;font-size:22px;font-weight:650}.page-head p{color:var(--muted);margin:0;font-size:13px}.card{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;overflow-x:auto}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.hero-grid{grid-template-columns:1.15fr 2fr}.stat-minis{grid-template-columns:1fr 1fr;gap:14px;display:grid}.stat{padding:18px 18px 16px}.stat .label{color:var(--muted);letter-spacing:.04em;font-size:12px}.stat .value{letter-spacing:-.03em;margin-top:8px;font-size:26px;font-weight:700}.stat .hint{color:var(--muted);margin-top:6px;font-size:12px}.stat .chg{margin-right:4px;font-size:10px}.stat.hero{background:linear-gradient(145deg,#fff8e6 0%,#fff 52%,#f6efdc 100%);border-color:#e4d3a4}.stat.hero .value{color:var(--navy)}.stat.hero .hint.up,.stat.hero .hint.down{border-radius:999px;align-items:center;margin-top:8px;padding:3px 8px;font-weight:650;display:inline-flex}.stat.hero .hint.up{background:#e8f6ee}.stat.hero .hint.down{background:#fdeceb}.section-title{justify-content:space-between;align-items:center;padding:16px 18px 0;font-weight:650;display:flex}.tag{border-radius:999px;padding:2px 8px;font-size:12px;display:inline-block}.tag.buy{color:var(--up);background:#e8f6ee}.tag.sell{color:var(--down);background:#fdeceb}.record-list{display:none}.phone-only{display:none!important}.filter-btn{display:none}.stat.hero .value{font-size:28px}.record-empty{text-align:center;color:var(--muted);padding:28px 14px;font-size:13px}.record-card{border:1px solid var(--line);text-align:left;cursor:pointer;width:100%;color:inherit;background:#fff;border-radius:12px;padding:14px 14px 12px}.record-card+.record-card{margin-top:10px}.rc-head{align-items:center;gap:8px;min-width:0;display:flex}.rc-head strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:15px;font-weight:650;overflow:hidden}.rc-meta{color:var(--muted);flex-shrink:0;margin-left:auto;font-size:12px}.rc-meta:after{content:" ›";color:#b7b1a4}.rc-grid{grid-template-columns:1fr 1fr;gap:10px 12px;margin-top:12px;display:grid}.rc-k span{color:var(--muted);margin-bottom:4px;font-size:12px;display:block}.rc-k b{font-size:15px;font-weight:650}.kv-list{margin-top:4px}.kv{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding:12px 0;display:flex}.kv span{color:var(--muted);flex-shrink:0;font-size:13px}.kv b{text-align:right;word-break:break-all;font-weight:650}.kv em{font-style:normal}.mask{z-index:40;-webkit-backdrop-filter:blur(8px);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#1018247a;padding:24px;animation:.18s mask-in;display:block;position:fixed;inset:0;overflow:auto}.dialog{box-sizing:border-box;background:#fff;border:1px solid #c4a35a47;border-radius:18px;width:min(460px,100% - 48px);max-width:calc(100% - 48px);max-height:min(720px,100% - 48px);padding:26px 26px 22px;animation:.2s dialog-in;position:absolute;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 28px 70px #1220333d}.dialog h3{color:var(--navy);margin:4px 0 14px;font-size:18px;font-weight:650}.dialog label{color:var(--muted);margin:12px 0 6px;font-size:12px;display:block}.dialog input,.dialog select{width:100%;color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 12px;font-family:inherit;font-size:13px;line-height:1.3}.dialog input:focus,.dialog select:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px #c4a35a33}.dialog .actions{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:16px;display:flex}.dialog .actions button{border:1px solid var(--line);min-width:88px;color:var(--ink);cursor:pointer;background:#fff;border-radius:10px;padding:9px 16px;transition:background .15s,border-color .15s,transform .15s}.dialog .actions button:hover{background:#f7f4ee;border-color:#d8d0c2}.dialog .actions button.primary{background:var(--navy);color:#fff;border-color:var(--navy)}.dialog .actions button.primary:hover{background:var(--navy-2);border-color:var(--navy-2)}.dialog .actions button.danger{background:var(--down);color:#fff;border-color:var(--down)}.dialog .actions button.danger:hover{background:#8f1c13;border-color:#8f1c13}.dialog input[type=file]{background:#faf8f3;padding:8px}.dialog-confirm{text-align:center;width:min(400px,100% - 48px);padding:28px 26px 22px}.dialog-icon{background:var(--gold-soft);color:#8a6d2b;border-radius:50%;place-items:center;width:44px;height:44px;margin:0 auto 12px;font-size:22px;font-weight:700;display:grid}.dialog-icon.warn{color:var(--down);background:#fdeceb}.dialog-msg{color:var(--ink);margin:0;font-size:14px;line-height:1.6}.dialog-confirm .actions{justify-content:center}@keyframes mask-in{0%{opacity:0}to{opacity:1}}@keyframes dialog-in{0%{opacity:0;transform:translate(-50%,calc(10px - 50%))scale(.98)}to{opacity:1;transform:translate(-50%,-50%)}}@media (width<=1100px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-grid{grid-template-columns:1fr}}@media (width<=768px){.page-head h2{font-size:20px}.stat-grid{grid-template-columns:1fr;gap:10px}.hero-grid,.stat-minis{gap:10px}.stat{padding:14px 16px 12px}.stat .value{font-size:22px}.stat.hero{padding:18px 16px 16px}.stat.hero .value{font-size:28px}.stat-minis .stat{padding:12px 14px 10px}.stat-minis .value{font-size:18px}.section-title{padding:14px 14px 0}.two{grid-template-columns:1fr!important}input,select,textarea,button{font-size:16px}.mask{padding:12px}.dialog{width:calc(100% - 24px);max-width:calc(100% - 24px);max-height:calc(100% - 24px - 76px - env(safe-area-inset-bottom,0px));top:calc(50% - (38px + env(safe-area-inset-bottom,0px) / 2));border-radius:16px}.mask-confirm{padding:16px}.mask-confirm .dialog{border-radius:18px;width:min(400px,100% - 32px);max-width:calc(100% - 32px);top:50%}}@media (width<=860px){.page-head{flex-direction:row;align-items:center;gap:10px;margin-bottom:12px}.page-head h2{margin-bottom:0;font-size:18px}.page-head p{display:none}.home-head{margin:0;display:none}.filter-btn{border:1px solid var(--line);max-width:46%;color:var(--navy);text-overflow:ellipsis;white-space:nowrap;background:#fff;border-radius:10px;flex-shrink:0;align-items:center;padding:7px 12px;font-weight:650;display:inline-flex;overflow:hidden;font-size:13px!important}.record-list{padding:0;display:block}.record-empty{padding:22px 14px}.record-card{border:0;border-bottom:1px solid var(--line);box-shadow:none;border-radius:0}.record-card+.record-card{margin-top:0}.record-card:last-child{border-bottom:0}.page-head>div:first-child{flex:1;min-width:0}.page-head .primary,.page-head>button.primary{flex-shrink:0;width:auto}.page-head select{width:auto;min-width:0;max-width:46%}.desk-only{display:none!important}.phone-only{display:block!important}.axis.phone-only{display:flex!important}.card{overflow:hidden}.mask{padding:12px}.dialog{width:calc(100% - 24px);max-width:calc(100% - 24px);max-height:calc(100% - 24px - 76px - env(safe-area-inset-bottom,0px));top:calc(50% - (38px + env(safe-area-inset-bottom,0px) / 2));border-radius:16px}.mask-confirm{padding:16px}.mask-confirm .dialog{border-radius:18px;width:min(400px,100% - 32px);max-width:calc(100% - 32px);top:50%}}
