:root{
  --bg:#0e0e0e; --bg2:#15132b; --card:#1a1830; --card2:#211d3d;
  --gold:#F0C060; --gold2:#d4af37; --text:#ffffff; --muted:#9A9A9A;
  --green:#34D399; --red:#F87171; --blue:#3B82F6;
  --line:rgba(240,192,96,.18);
}
*{box-sizing:border-box;}
body{background:var(--bg);color:var(--text);font-family:"PingFang SC",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;}
.wa-topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:10px;
  padding:10px 14px;background:linear-gradient(135deg,#1a1430,#241a4d 60%,#2c1f5e);
  border-bottom:1px solid var(--line);}
.wa-brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--text);}
.wa-logo{width:30px;height:30px;border-radius:8px;}
.wa-brand-text{font-weight:700;font-size:17px;color:#fff;}
.wa-brand-text .gold{color:var(--gold);}
.wa-slogan{margin-left:auto;font-size:11px;color:rgba(255,255,255,.55);}
.wa-main{padding-top:8px;padding-bottom:72px;min-height:100vh;}
.wa-page{max-width:480px;margin:0 auto;padding:12px;}

.wa-card{background:linear-gradient(160deg,var(--card),var(--card2));border:1px solid var(--line);
  border-radius:16px;padding:14px;margin-bottom:12px;box-shadow:0 6px 18px rgba(0,0,0,.35);}
.wa-card-title{font-size:14px;font-weight:600;color:var(--gold);margin-bottom:8px;display:flex;align-items:center;gap:6px;}
.wa-hero{text-align:center;background:linear-gradient(160deg,#241a4d,#15132b);}
.wa-hero-label{font-size:13px;color:var(--muted);}
.wa-hero-num{font-size:30px;font-weight:700;color:var(--gold);text-shadow:0 0 18px rgba(240,192,96,.35);margin:4px 0;}
.wa-hero-sub{font-size:12px;color:var(--muted);}
.wa-grid2{display:flex;flex-wrap:wrap;gap:10px;}
.wa-grid2>.wa-card{width:calc(50% - 5px);margin-bottom:0;}
.wa-stat-label{font-size:12px;color:var(--muted);}
.wa-stat-num{font-size:19px;font-weight:700;color:#fff;margin-top:2px;}
.wa-row{display:flex;justify-content:space-between;align-items:center;gap:10px;}
.wa-sub{font-size:12px;color:var(--muted);margin-top:4px;}
.wa-sub.center,.center{text-align:center;}
.wa-gold{color:var(--gold);font-weight:600;}
.wa-reg-entry{margin-top:16px;}
.wa-reg-link{text-decoration:none;font-weight:700;font-size:13px;}
.wa-reg-link:active{opacity:.8;}

.wa-progress{height:8px;background:#2a2547;border-radius:6px;overflow:hidden;margin-top:8px;}
.wa-progress-fill{height:100%;background:linear-gradient(90deg,var(--gold),#8b5cf6);transition:width .5s;}

.wa-tabbar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;
  background:rgba(16,14,30,.96);backdrop-filter:blur(8px);border-top:1px solid var(--line);}
.wa-tabbar a{flex:1;text-align:center;padding:8px 0 10px;text-decoration:none;color:var(--muted);
  font-size:11px;display:flex;flex-direction:column;align-items:center;gap:2px;transition:color .2s;}
.wa-tabbar a i{font-size:20px;}
.wa-tabbar a.active{color:var(--gold);}
.wa-tabbar a.active i{text-shadow:0 0 12px rgba(240,192,96,.5);}

.wa-toolbar{display:flex;align-items:center;justify-content:space-between;margin:4px 2px 10px;}
.wa-toolbar-title{font-size:16px;font-weight:700;}
.wa-list{display:flex;flex-direction:column;gap:10px;}
.wa-list-item{background:linear-gradient(160deg,var(--card),var(--card2));border:1px solid var(--line);
  border-radius:14px;padding:12px;text-decoration:none;color:var(--text);display:block;}
.wa-list-item:active{transform:scale(.98);}
.wa-li-top{display:flex;justify-content:space-between;align-items:baseline;}
.wa-li-name{font-weight:600;font-size:15px;}
.wa-li-code{font-size:11px;color:var(--muted);}
.wa-li-price{font-weight:700;color:var(--gold);}
.wa-li-sub{font-size:12px;color:var(--muted);margin-top:3px;display:flex;gap:10px;flex-wrap:wrap;}
.wa-li-tag{font-size:10px;padding:1px 6px;border-radius:6px;border:1px solid var(--line);color:var(--gold);}
.wa-empty{text-align:center;color:var(--muted);padding:30px 10px;}

.wa-btn-gold{display:inline-block;text-align:center;background:linear-gradient(90deg,var(--gold),var(--gold2));
  color:#1a1206;font-weight:700;border:none;border-radius:12px;padding:12px;width:100%;cursor:pointer;
  box-shadow:0 4px 14px rgba(240,192,96,.3);}
.wa-btn-gold.sm{padding:8px 12px;width:auto;font-size:13px;}
.wa-btn-gold:active{filter:brightness(1.08);}
.wa-btn{display:inline-block;text-align:center;background:#2a2547;color:#fff;border:1px solid var(--line);
  border-radius:12px;padding:11px;width:100%;cursor:pointer;text-decoration:none;}
.wa-btn.danger{color:var(--red);border-color:rgba(248,113,113,.4);}
.wa-actions{display:flex;gap:10px;margin-top:6px;}
.wa-actions .wa-btn{flex:1;}

.wa-form label{display:block;font-size:13px;color:var(--muted);margin:10px 0 4px;}
.wa-input{width:100%;padding:11px 12px;border-radius:10px;border:1px solid var(--line);
  background:#15132b;color:#fff;font-size:16px;}
.wa-form-row{display:flex;gap:12px;}
.wa-form-row .wa-form-col{flex:1;min-width:0;}
.wa-req{color:#ff6b6b;font-weight:700;}
.wa-input[readonly]{background:#1c1936;color:var(--muted);cursor:default;}
.wa-input.sm{flex:1;}
.wa-inline{display:flex;gap:8px;align-items:center;}
.wa-hint{margin-top:8px;font-size:11px;line-height:1.6;color:rgba(240,192,96,.8);
  background:rgba(240,192,96,.06);border-left:3px solid var(--gold);padding:8px 10px;border-radius:6px;}
.wa-hint strong{color:var(--gold);}

.wa-chips,.wa-seg{display:flex;gap:8px;flex-wrap:wrap;}
.wa-chip{padding:7px 16px;border-radius:20px;border:1px solid var(--line);color:var(--muted);font-size:13px;cursor:pointer;}
.wa-chip.on{background:linear-gradient(90deg,var(--gold),var(--gold2));color:#1a1206;font-weight:600;border:none;}
.wa-seg{background:#15132b;border:1px solid var(--line);border-radius:10px;padding:3px;}
.wa-seg-item{padding:6px 12px;border-radius:8px;font-size:13px;color:var(--muted);cursor:pointer;}
.wa-seg-item.on{background:linear-gradient(90deg,var(--gold),var(--gold2));color:#1a1206;font-weight:600;}

.wa-menu{display:flex;flex-direction:column;}
.wa-menu-item{display:flex;align-items:center;gap:10px;padding:12px 6px;color:#fff;text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.05);font-size:14px;}
.wa-menu-item:last-child{border-bottom:none;}
.wa-menu-item i{color:var(--gold);font-size:17px;}
.wa-menu-item .wa-gold{margin-left:auto;}

.wa-wallet{display:flex;gap:16px;justify-content:center;margin:8px 0;}
.wa-wallet-item{font-size:13px;color:var(--muted);}
.wa-wallet-item b{color:var(--gold);}
.wa-level{margin-top:6px;}

.wa-logo-lg{width:64px;height:64px;border-radius:16px;margin:0 auto;}
.wa-loading{text-align:center;color:var(--muted);padding:30px;}

/* 飞溅正反馈 */
.wa-toast{position:fixed;left:50%;top:42%;transform:translate(-50%,-50%);z-index:9999;
  background:rgba(20,16,40,.95);border:1px solid var(--gold);color:#fff;padding:12px 18px;border-radius:14px;
  font-size:14px;box-shadow:0 10px 40px rgba(0,0,0,.5);opacity:0;transition:opacity .25s,transform .25s;}
.wa-toast.show{opacity:1;transform:translate(-50%,-50%) scale(1);}

/* 首页专属 */
.wa-hero-top{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);}
.wa-nick{color:#fff;font-weight:600;}
.wa-sep{color:rgba(255,255,255,.4);}
.wa-eye{cursor:pointer;font-size:16px;margin-left:6px;filter:drop-shadow(0 0 4px rgba(240,192,96,.4));user-select:none;}
.wa-metrics2 .m{display:flex;flex-direction:column;gap:4px;padding:6px 0;}
.wa-metrics2 .wa-sub{font-size:12px;}
.wa-metrics2 .wa-stat-num{font-size:18px;}
/* 子页顶部返回栏（返回前页 / 研究工具 / 主页） */
.wa-topbar{display:flex;gap:16px;align-items:center;padding:6px 2px 12px;font-size:13px;}
.wa-topbar a{color:var(--gold);text-decoration:none;font-weight:600;}
.wa-topbar a:active{opacity:.6;}
.wa-freedom{background:linear-gradient(160deg,#241a4d,#15132b);}
.wa-tap{cursor:pointer;transition:transform .12s,box-shadow .12s;}
.wa-tap:active{transform:scale(.98);box-shadow:0 0 0 1px var(--gold);}
.wa-quote{background:linear-gradient(160deg,#1a1830,#211d3d);border-left:3px solid var(--gold);}
.wa-quote-label{font-size:12px;color:var(--gold);margin-bottom:6px;letter-spacing:1px;}
.wa-quote-text{font-size:16px;line-height:1.7;color:#fff;font-style:italic;}
.wa-footer-note{text-align:center;font-size:11px;color:rgba(255,255,255,.35);padding:14px 0 4px;}
.wa-row{display:flex;justify-content:space-between;align-items:center;gap:12px;}
.wa-stat-num{font-size:18px;font-weight:700;color:#fff;}

/* ============ 间距修正：按钮之间、卡片之间留出呼吸感 ============ */
.wa-btn-gold,.wa-btn,.wa-btn-ghost{margin-top:12px;}
.wa-row>.wa-btn-gold,.wa-row>.wa-btn,.wa-row>.wa-btn-ghost{margin-top:0;}
.wa-actions{display:flex;gap:14px;margin-top:18px;}     /* 编辑/删除等并列按钮间距 */
.wa-actions .wa-btn{flex:1;}
.wa-menu-item{margin:0;}                                 /* 菜单项之间靠内边距分隔 */

/* ============ 持仓列表 ============ */
.wa-summary-head{display:flex;align-items:center;gap:6px;}
.wa-sum-grid{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px;}
.wa-sum-grid .sc-cell{width:calc(33.333% - 7px);background:transparent;border:none;border-radius:0;padding:6px 0;}
.sc-lab{font-size:12px;color:var(--muted);}
.sc-val{font-size:18px;font-weight:700;margin-top:4px;}
.sc-val.pl-up{color:#c9a24a;}
.sc-val.pl-down{color:#ff5b5b;}
.wa-colhead{display:flex;padding:8px 12px;font-size:11px;color:var(--muted);gap:6px;}
.wa-colhead>div{flex:1;text-align:center;}
.h-row{display:flex;align-items:center;gap:6px;padding:12px;border-bottom:1px solid rgba(255,255,255,.05);text-decoration:none;color:#fff;cursor:grab;}
.h-row:active{background:rgba(240,192,96,.06);}
.h-row.dragging{opacity:.5;background:rgba(240,192,96,.12);border:1px dashed var(--gold);cursor:grabbing;}
.c-name{flex:1.1;min-width:0;}
.h-row .c-name{flex:1.6;min-width:0;}
.h-row .c-name .big-num{font-size:13px;}
.c-2{flex:1;text-align:center;display:flex;flex-direction:column;gap:3px;font-size:13px;}
.h-row .up{color:#c9a24a;}
.h-row .down{color:#ff5b5b;}
.big-num{font-size:16px;font-weight:600;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.sub{font-size:11px;color:var(--muted);}
.sub.gold{color:var(--gold);}
.code{margin-top:2px;}
.px-main{margin:2px 0;}
.src-tag{font-size:10px;color:var(--gold);}
.sub-price{font-size:10px;color:var(--muted);}
.up{color:var(--green);}
.down{color:var(--red);}
.wa-temp{margin-top:12px;}

/* ============ 持仓详情 ============ */
.wa-sticky-head{position:sticky;top:0;z-index:20;background:var(--bg);padding:14px 2px 10px;}
.wa-pool-btn,.wa-rec-btn{background:#2a2547;border:1px solid var(--line);color:var(--gold);padding:7px 12px;border-radius:20px;font-size:13px;text-decoration:none;white-space:nowrap;}
.wa-pill{background:rgba(240,192,96,.15);color:var(--gold);padding:3px 10px;border-radius:20px;font-size:12px;}
.wa-metrics{display:flex;flex-wrap:wrap;gap:8px;}
.wa-metrics .m{width:calc(33.333% - 6px);background:transparent;border:none;border-radius:0;padding:8px 0;}
.wa-metrics .m .wa-sub{font-size:11px;}
.wa-metrics .m div:last-child{font-size:17px;font-weight:700;color:#fff;margin-top:4px;}
.c-purple{color:#c4a3ff !important;}
.wa-gold-divider{height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:18px 0;opacity:.4;}
.wa-field{margin-top:6px;}
.wa-field-label{font-size:13px;color:var(--muted);margin-bottom:4px;}
input[type=range]{height:6px;border-radius:6px;background:#2a2547;}
.wa-emotion{font-size:13px;color:#9fd3ff;margin-top:12px;background:rgba(59,130,246,.08);border-radius:10px;padding:8px 10px;}
.wa-study-entry{display:flex;gap:10px;margin:14px 0;}
.wa-capsule{flex:1;text-align:center;padding:10px;border:1px solid var(--line);border-radius:12px;font-size:13px;color:#fff;background:#15132b;}
.wa-capsule.hot{border-color:var(--gold);color:var(--gold);}
.wa-hook{text-align:center;color:var(--gold);font-size:13px;margin-bottom:6px;}
.wa-consensus-btn{margin-top:12px;width:100%;background:linear-gradient(90deg,#8b5cf6,#3b82f6);color:#fff;border:none;border-radius:12px;padding:11px;font-weight:600;cursor:pointer;}

/* ============ 股票搜索自动补全（模糊+拼音） ============ */
.wa-ac{position:absolute;z-index:500;background:#1a1830;border:1px solid var(--line);border-radius:14px;
  padding:6px;max-height:300px;overflow:auto;box-shadow:0 12px 40px rgba(0,0,0,.5);}
.wa-ac-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;border-radius:10px;cursor:pointer;}
.wa-ac-item .nm{font-size:14px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.wa-ac-item .cd{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;flex:none;}
.wa-ac-item.on,.wa-ac-item:hover{background:rgba(240,192,96,.12);}
.wa-ac-item.on .cd,.wa-ac-item:hover .cd{color:var(--gold);}
.wa-ac-empty{padding:12px;text-align:center;color:var(--muted);font-size:13px;}

/* 原币角标（港股/美股等外币计价） */
.wa-ccy-badge{display:inline-block;font-size:10px;line-height:1;padding:2px 6px;border-radius:6px;
  background:rgba(59,130,246,.16);color:#93c5fd;border:1px solid rgba(59,130,246,.35);margin-left:6px;vertical-align:middle;}

/* 弹层 */
.wa-mask{position:fixed;inset:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:200;padding:20px;}
.wa-panel{background:linear-gradient(160deg,#1a1830,#211d3d);border:1px solid var(--line);border-radius:18px;padding:18px;width:100%;max-width:360px;}
.wa-panel-title{font-size:15px;font-weight:700;margin-bottom:12px;}
.wa-egg-tag{display:inline-block;background:rgba(240,192,96,.15);color:var(--gold);padding:4px 10px;border-radius:20px;font-size:12px;margin-bottom:10px;}
.wa-egg-line{font-size:14px;margin:6px 0;}
.wa-egg-line.sub{font-size:12px;color:var(--muted);}
.wa-consensus-stats{font-size:14px;line-height:1.9;}
.wa-consensus-disclaim{font-size:11px;color:var(--muted);margin-top:10px;}
.me-line{color:#c4a3ff;}
.wa-panel-close{margin-top:14px;width:100%;background:transparent;border:1px solid var(--line);color:#fff;border-radius:10px;padding:9px;cursor:pointer;}

/* ============ 分红日历 ============ */
.wa-seg{display:flex;gap:8px;margin:4px 2px 12px;}
.wa-seg-item{padding:7px 16px;border-radius:20px;border:1px solid var(--line);color:var(--muted);font-size:13px;cursor:pointer;}
.wa-seg-item.on{background:linear-gradient(90deg,var(--gold),var(--gold2));color:#1a1206;font-weight:600;border:none;}
.wa-rec-head{margin-bottom:10px;}
.wa-rec-sum{margin-bottom:10px;}
.wa-rec-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.05);}
.wa-rec-left{flex:1;min-width:0;}
.wa-rec-name{font-size:15px;display:flex;align-items:center;gap:6px;}
.pill-green{background:rgba(52,211,153,.15);color:var(--green);padding:1px 7px;border-radius:6px;font-size:11px;}
.wa-diff-table .wa-diff-row{display:flex;gap:8px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.05);align-items:center;}
.dc-name{flex:1.2;min-width:0;}
.dc-num{flex:1;text-align:right;}
.dc-name .big-num.sm,.big-num.sm{font-size:14px;}
.wa-diff-val{font-size:13px;font-weight:600;}

/* ============ 可选池 ============ */
.wa-cats{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 10px;}
.wa-cat{flex:none;padding:6px 14px;border-radius:20px;border:1px solid var(--line);color:var(--muted);font-size:13px;cursor:pointer;white-space:nowrap;}
.wa-cat.on{background:linear-gradient(90deg,var(--gold),var(--gold2));color:#1a1206;font-weight:600;border:none;}
.wa-cat.gear{margin-left:auto;}
.wa-mgmt{margin-bottom:12px;}
.wa-grp-new{display:flex;gap:8px;margin-top:10px;}
.wa-mgmt .wa-grp-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05);}
.wa-mini-btn{background:#2a2547;border:1px solid var(--line);color:#fff;border-radius:8px;padding:3px 10px;font-size:12px;cursor:pointer;}
.wa-mini-btn.danger{color:var(--red);border-color:rgba(248,113,113,.4);}
.wa-mini-btn.ghost{color:var(--muted);}
.wa-search-wrap{position:relative;margin-bottom:12px;}
.wa-search-pill{display:flex;align-items:center;gap:8px;background:#15132b;border:1px solid var(--line);border-radius:24px;padding:9px 14px;}
.wa-pill-ico{color:var(--gold);}
.wa-pill-input{flex:1;background:transparent;border:none;color:#fff;outline:none;font-size:14px;}
.wa-pill-clear{cursor:pointer;color:var(--muted);font-size:18px;}
.wa-dd{position:absolute;left:0;right:0;top:48px;z-index:30;background:#1a1830;border:1px solid var(--line);border-radius:14px;padding:8px;max-height:320px;overflow:auto;}
.wa-search-item{padding:10px 8px;border-bottom:1px solid rgba(255,255,255,.05);cursor:pointer;}
.wa-search-item:active{background:rgba(240,192,96,.08);}
.wa-search-wrap{position:relative;}
.wa-recent-chip{display:inline-block;padding:6px 12px;border-radius:16px;border:1px solid var(--line);color:var(--muted);font-size:12px;margin:0 6px 6px 0;cursor:pointer;}
.wa-recent-chip:hover{border-color:var(--gold);color:var(--gold);}
.wa-table .wa-t-head,.wa-t-row{display:flex;align-items:center;gap:6px;padding:12px 4px;}
.wa-t-head{font-size:11px;color:var(--muted);border-bottom:1px solid var(--line);}
.wa-t-row{border-bottom:1px solid rgba(255,255,255,.05);}
.wa-t-row .c-name{flex:1.4;min-width:0;}
.wa-t-row .c-num,.wa-t-row .c-yield{flex:1;text-align:right;font-size:13px;}
.wa-t-row .c-del{flex:.4;text-align:center;}
.wa-t-row .c-sub{font-size:11px;color:var(--muted);}
.wa-edit-row{display:flex;justify-content:center;}

/* ============ 我的 ============ */
.wa-adtip{background:linear-gradient(160deg,#241a4d,#15132b);}
.wa-copy-btn{margin-top:10px;background:transparent;border:1px solid var(--gold);color:var(--gold);border-radius:20px;padding:8px 14px;font-size:13px;cursor:pointer;}
/* ⚠️ 不能复用 .wa-brand：顶部栏 .wa-brand 也用了这个类名，会把金色竖条带到 logo 左侧 */
.wa-brand-quote{background:linear-gradient(160deg,#1a1830,#211d3d);border-left:3px solid var(--gold);}
.wa-wallet{display:flex;flex-direction:column;gap:4px;text-align:right;}
.wa-wallet-item{font-size:12px;color:var(--muted);}
.wa-wallet-item b{color:var(--gold);}
.wa-level{margin-top:10px;}
.wa-btn-ghost{background:#2a2547;border:1px solid var(--line);color:#fff;border-radius:12px;padding:11px;width:100%;cursor:pointer;}
.wa-menu-item i{width:22px;}
.wa-splash{position:fixed;inset:0;z-index:300;display:none;align-items:center;justify-content:center;flex-direction:column;pointer-events:none;}
.wa-splash.show .wa-splash-coin{animation:coinPop .8s ease;}
/* 金币：纯 CSS 绘制（径向渐变+边框+内阴影），不依赖任何 emoji 字体 */
.wa-splash-coin{width:88px;height:88px;border-radius:50%;box-sizing:border-box;
  background:radial-gradient(circle at 32% 28%,#FFF6D0 0%,#F6D98A 30%,#E8B44A 62%,#C0851A 100%);
  border:3px solid #F6E3A6;
  box-shadow:0 0 28px rgba(240,192,96,.75),inset 0 -8px 14px rgba(140,88,8,.45),inset 0 6px 12px rgba(255,255,255,.5);
  display:flex;align-items:center;justify-content:center;
  font-size:40px;font-weight:800;color:#8A5A0B;
  font-family:-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;
  text-shadow:0 1px 0 rgba(255,255,255,.55);}
.wa-splash-txt{margin-top:8px;font-size:20px;font-weight:700;color:var(--gold);text-shadow:0 0 12px rgba(240,192,96,.5);}
@keyframes coinPop{0%{transform:scale(.3) translateY(20px);opacity:0;}40%{transform:scale(1.2) translateY(-10px);opacity:1;}100%{transform:scale(1) translateY(0);opacity:1;}}

/* ============ 设计系统：对齐小程序（暗金 / 紫调 / 流光 / 渐变） ============ */
/* 暗金渐变文字（用户名、强调数字） */
.wa-grad-gold{background:linear-gradient(135deg,#F6E3A6,#E8B04A);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:800;}
/* 流光扫光（暗金高光周期扫过，复刻小程序 ad-tip 的 shine） */
.wa-shine{position:relative;overflow:hidden;}
.wa-shine::after{content:'';position:absolute;top:0;bottom:0;left:-60%;width:60%;
  background:linear-gradient(120deg,transparent,rgba(255,236,180,.35),transparent);
  transform:skewX(-20deg);animation:waSweep 3.4s ease-in-out infinite;pointer-events:none;}
@keyframes waSweep{0%{left:-60%;}60%{left:120%;}100%{left:120%;}}
/* 我的页 hero：流光紫背景（复刻小程序氛围） */
.wa-hero-flow{background:linear-gradient(160deg,#2c1f5e,#1a1430 55%,#15132b);}
/* 金色胶囊按钮（仿小程序 signin-btn）：小、圆、金色、可内联右侧 */
.wa-btn-pill{display:inline-block;text-align:center;border:none;cursor:pointer;white-space:nowrap;
  background:linear-gradient(135deg,#F6E3A6,#E8B04A);color:#1a1206;font-weight:700;font-size:14px;
  padding:11px 22px;border-radius:999px;box-shadow:0 6px 18px rgba(212,175,55,.32);}
.wa-btn-pill:active{transform:scale(.96);}
.wa-btn-pill.done{background:rgba(255,255,255,.08);color:var(--muted);box-shadow:none;border:1px solid rgba(255,255,255,.12);}
.wa-btn-pill.signed{background:#3a3a44;color:#9aa0aa;box-shadow:none;cursor:default;}
.wa-btn-pill.signed:active{transform:none;}
/* 紫色奖励按钮（仿小程序 reward-btn）：全宽、紫调渐变 */
.wa-btn-reward{display:block;width:100%;text-align:center;border:none;cursor:pointer;box-sizing:border-box;
  background:linear-gradient(135deg,#C4B5FD,#7C3AED);color:#fff;font-weight:700;font-size:14px;
  padding:12px;border-radius:12px;margin-top:14px;box-shadow:0 6px 18px rgba(124,58,237,.32);}
.wa-btn-reward:active{transform:scale(.98);}
.wa-btn-reward.disabled{background:rgba(255,255,255,.08);color:var(--muted);box-shadow:none;border:1px solid rgba(255,255,255,.12);}
/* 修复 .wa-row 内 reward 按钮错位：归零 margin-top（与 gold/btn/ghost 同处理，避免上下错位） */
.wa-row > .wa-btn-reward{margin-top:0;}

/* 可选池 / 持仓表格行：对齐日历页卡片观感（渐变底 + 圆角 + 间距 + 阴影） */
.wa-table.card-rows .wa-t-row{background:linear-gradient(160deg,var(--card),var(--card2));border:1px solid var(--line);border-radius:12px;margin-bottom:8px;padding:12px 10px;box-shadow:0 4px 12px rgba(0,0,0,.22);}
.h-row{background:linear-gradient(160deg,var(--card),var(--card2));border:1px solid var(--line);border-radius:12px;margin-bottom:10px;box-shadow:0 4px 12px rgba(0,0,0,.22);}

/* 数据加载遮罩 + 旋转 */
.wa-loading{position:fixed;inset:0;background:rgba(8,6,18,.55);display:flex;align-items:center;justify-content:center;z-index:9000;}
.wa-loading .wa-spin{width:42px;height:42px;border:4px solid rgba(255,255,255,.16);border-top-color:var(--gold);border-radius:50%;animation:wa-spin .8s linear infinite;}
.wa-loading .wa-loading-tip{position:absolute;bottom:calc(50% - 52px);color:var(--muted);font-size:13px;}
@keyframes wa-spin{to{transform:rotate(360deg);}}

/* 详情 / 研究入口胶囊 */
.wa-capsule{flex:1;text-align:center;padding:10px 6px;border:1px solid var(--gold);color:var(--gold);border-radius:10px;font-size:13px;font-weight:600;text-decoration:none;background:rgba(240,192,96,.08);}
.wa-capsule:active{transform:scale(.97);}
/* 签到卡：左文右金胶囊（复刻小程序 signin-row） */
.wa-signin-card{border:1px solid var(--line);}
.wa-signin-row{display:flex;justify-content:space-between;align-items:center;gap:12px;}
.wa-signin-left{flex:1;min-width:0;}
/* 奖励类卡片通用金边 */
.wa-reward-card{border:1px solid var(--line);}
/* L2 研究员：两档选项（复刻小程序 l2-row / l2-opt） */
.wa-l2-row{display:flex;gap:10px;margin-top:14px;}
.wa-l2-opt{flex:1;background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:14px;padding:14px;text-align:center;cursor:pointer;transition:transform .12s;}
.wa-l2-opt:active{transform:scale(.97);}
.wa-l2-opt.on{border-color:var(--gold);box-shadow:0 0 16px rgba(212,175,55,.35);background:rgba(240,192,96,.10);}
.wa-l2-opt .t{font-size:15px;color:var(--gold);font-weight:600;}
.wa-l2-opt .p{font-size:15px;margin-top:6px;}
.wa-l2-opt .pr{font-size:11px;color:#F1D27A;margin-top:4px;}
.wa-promo-tag{font-size:11px;color:#1a1206;background:linear-gradient(135deg,#F6E3A6,#E8B04A);border-radius:999px;padding:2px 10px;margin-left:8px;font-weight:700;}

/* ============ 可选池：表头与行对齐（列宽须与 .wa-t-row 完全一致） ============ */
.wa-t-head .c-name,.wa-t-row .c-name{flex:1.4;min-width:0;text-align:left;}
.wa-t-head .c-num,.wa-t-row .c-num{flex:1;text-align:right;}
.wa-t-head .c-yield,.wa-t-row .c-yield{flex:1;text-align:right;}
.wa-t-head .c-del,.wa-t-row .c-del{flex:.4;text-align:center;}
/* 同行矩阵：排名列 */
.wa-t-head .c-rk,.wa-t-row .c-rk{flex:.5;text-align:center;font-size:12px;}
/* 江湖地位分位条 */
.jh-bar{display:flex;align-items:center;gap:8px;margin:8px 0;}
.jh-bar-label{width:60px;font-size:12px;color:var(--muted);flex:none;}
.jh-bar-track{flex:1;height:8px;background:rgba(255,255,255,.08);border-radius:6px;overflow:hidden;}
.jh-bar-fill{height:100%;border-radius:6px;}
.jh-bar-fill.good{background:linear-gradient(90deg,#34D399,#10b981);}
.jh-bar-fill.bad{background:linear-gradient(90deg,#F87171,#ef4444);}
.jh-bar-val{width:64px;text-align:right;font-size:12px;flex:none;}
.jh-bar-val.good{color:#34D399;} .jh-bar-val.bad{color:#F87171;}
/* ============ DCF 参数网格 ============ */
.wa-sec-label{margin:16px 0 10px;font-size:13px;font-weight:600;color:var(--gold);display:flex;align-items:center;}
.wa-sec-label::before,.wa-sec-label::after{content:'';flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.4;}
.wa-sec-label span{margin:0 12px;}
.wa-pf-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;}
.wa-pf{background:transparent;border:none;border-radius:0;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.06);}
.wa-pf.hl{border-bottom-color:rgba(240,192,96,.4);}
.wa-pf-label{font-size:12px;color:var(--muted);margin-bottom:5px;}
.wa-pf-input{width:100%;background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:8px;color:#fff;font-size:14px;padding:8px;box-sizing:border-box;}
.wa-pf-input:focus{outline:none;border-color:var(--gold);}
.wa-pf-input.ro{color:var(--gold);font-weight:600;display:flex;align-items:center;}
.wa-hl-tip{margin-top:10px;font-size:11px;color:#F87171;}

/* ============ 首页：老鼠圈指数卡片居中、数字加粗 ============ */
.wa-freedom{text-align:center;}
.wa-freedom .wa-sub{text-align:center;}
.wa-freedom .wa-hero-num{font-weight:800;}

/* ============ DCF / 护城河 / 同行 复用类 ============ */
.big-num{font-size:22px;font-weight:800;line-height:1.2;}
.wa-table{display:block;margin-top:6px;}
.wa-mini-btn{border:none;cursor:pointer;background:rgba(255,255,255,.08);color:var(--muted);border-radius:10px;padding:6px 12px;font-size:13px;}
.wa-mini-btn.danger{color:#F87171;}
.wa-mini-btn:active{transform:scale(.96);}
.c-sub{font-size:11px;color:var(--muted);margin-top:2px;}
/* 研究页输入框 label */
label{display:block;margin:10px 0 4px;color:var(--muted);font-size:12px;}
