/* Jinke control terminal: graphite, titanium and ice. */
:root{
  --bg:#101214; --panel:#181b1e; --panel2:#131618;
  --bd:#343a3e; --bd2:#282d30;
  --tx:#edf1f1; --tx2:#b7c1c5; --tx3:#929fa5;
  --lime:#6ae2d1; --gold:#e1c181; --blue:#8dbfe6;
  --red:#fa8b89; --green:#66d9a0; --orange:#edc16d;
  --hover:#22292c; --sel:#203b38; --btn:#293033;
  --chartbg:#141719; --onacc:#102c28; --track:#3a454a;
}
/* 曜石：纯黑 + 银白 */
body[data-theme="yaoshi"]{
  --bg:#0b0c0d; --panel:#141617; --panel2:#101112;
  --bd:#363a3d; --bd2:#272b2e;
  --tx:#f1f3f6; --tx2:#bfc4c9; --tx3:#969ea5;
  --lime:#d3dce5;
  --hover:#232629; --sel:#2e3338; --btn:#272c30;
  --chartbg:#101213; --onacc:#171c21; --track:#3c4146;
}
/* 暗黑：深黑 + 金 */
body[data-theme="anhei"]{
  --bg:#0c0d0e; --panel:#161819; --panel2:#111314;
  --bd:#3a3b36; --bd2:#2a2d2a;
  --tx:#f2f1e9; --tx2:#c0c1b6; --tx3:#9b9f96;
  --lime:#e4cc90;
  --hover:#262a27; --sel:#363a2e; --btn:#2c302a;
  --chartbg:#121514; --onacc:#292719; --track:#44473d;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  background:var(--bg);color:var(--tx);
  font:16px/1.5 "Segoe UI","Microsoft YaHei","PingFang SC",system-ui,sans-serif;
  -webkit-font-smoothing:antialiased;
}
button{font-family:inherit}
a{color:inherit;text-decoration:none}
canvas{display:block}

/* ================= 登录 ================= */
.lp-wrap{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;
  background:radial-gradient(900px 480px at 50% -10%,#121a26 0%,#06090f 60%);z-index:60}
body[data-theme="yaoshi"] .lp-wrap{background:radial-gradient(900px 480px at 50% -10%,#141416 0%,#040405 60%)}
body[data-theme="anhei"] .lp-wrap{background:radial-gradient(900px 480px at 50% -10%,#181307 0%,#030303 60%)}
.lp-card{width:440px;padding:34px 34px 30px;border:1px solid var(--bd);border-radius:12px;
  background:linear-gradient(180deg,#0e141d 0%,#0a0e15 100%);box-shadow:0 24px 60px rgba(0,0,0,.55)}
body[data-theme="yaoshi"] .lp-card{background:linear-gradient(180deg,#111114 0%,#0a0a0c 100%)}
body[data-theme="anhei"] .lp-card{background:linear-gradient(180deg,#13100a 0%,#0a0806 100%)}
.lp-brand{display:flex;align-items:center;gap:12px;margin-bottom:20px}
.lp-brand>b{width:38px;height:38px;border-radius:8px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,#e6bd6b,#c2913c);color:#20160a;font-weight:800;font-size:16px}
.lp-brand>span{display:flex;flex-direction:column;line-height:1.25}
.lp-brand>span>strong{font-size:20px;letter-spacing:.5px}
.lp-brand small{color:var(--tx3);font-size:13px;letter-spacing:1px}
.lp-card h2{margin:0 0 6px;font-size:24px}
.lp-card p{margin:0 0 20px;color:var(--tx3);font-size:15px}
.lp-card input{width:100%;height:48px;margin-bottom:13px;padding:0 15px;border:1px solid var(--bd);
  border-radius:8px;background:var(--panel2);color:var(--tx);font-size:16px;outline:none}
.lp-card input:focus{border-color:#2c5c86}
.lp-card button.primary{width:100%;height:48px;border:0;border-radius:8px;cursor:pointer;
  background:var(--lime);color:var(--onacc);font-weight:700;font-size:16px}
.lp-card button.primary:hover{filter:brightness(1.06)}
.login-error{min-height:20px;margin-top:10px;color:var(--red);font-size:15px;text-align:center}
[hidden]{display:none !important}

/* ================= 骨架 ================= */
.app51{display:flex;min-height:100vh}

/* ================= 左侧栏 ================= */
.s51{width:244px;flex:0 0 244px;display:flex;flex-direction:column;
  background:var(--panel2);border-right:1px solid var(--bd)}
.s51-brand{display:flex;align-items:center;gap:10px;padding:16px 13px;border-bottom:1px solid var(--bd2)}
.logo51{width:32px;height:32px;border-radius:7px;flex:0 0 32px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,#e6bd6b,#c2913c);color:#20160a;font-weight:800;font-size:14px}
.s51-brand-t{display:flex;flex-direction:column;line-height:1.25;min-width:0}
.s51-brand-t strong{font-size:15px;white-space:nowrap}
.s51-brand-t small{color:var(--tx3);font-size:13px}
.s51-scroll{flex:1;overflow-y:auto;padding:12px 9px 4px}
.s51-sec{color:var(--tx3);font-size:13px;letter-spacing:1px;margin:12px 6px 6px}
.s51-nav a{display:flex;align-items:center;gap:9px;height:42px;padding:0 10px;margin:2px 0;
  border-radius:6px;color:var(--tx2);font-size:15px}
.s51-nav a:hover{background:var(--hover);color:var(--tx)}
.s51-nav a.active{background:var(--sel);color:var(--lime);border-left:2px solid var(--lime)}
.ni{width:15px;height:15px;flex:0 0 15px;border-radius:3px;background:#26313f;position:relative}
.ni-ov{border-radius:2px;background:#2b3a4d}
.ni-ac{background:#26384f}
.ni-rk{background:#4a2f2c}
.ni-hi{background:#2f3d33}
.ni-pf{background:#33354a}
.ni-lg{background:#3a3630}
.ni-hp{background:#2c3b4a}
.ni-mg{background:#2f4a44}
.ni-dp{background:#2a3f52}
/* 账户右键菜单 */
.ctx51{position:fixed;z-index:9999;min-width:240px;max-width:300px;background:var(--panel);border:1px solid var(--bd);border-radius:10px;box-shadow:0 14px 34px rgba(0,0,0,.55);padding:6px;font-size:13px;animation:ctxIn .12s ease;user-select:none}
@keyframes ctxIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.ctx-h{padding:7px 10px 6px;font-size:12px;color:var(--tx3);border-bottom:1px solid var(--bd2);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ctx-i{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:8px 10px;border-radius:7px;cursor:pointer;color:var(--tx)}
.ctx-i:hover{background:var(--hover)}
.ctx-i i{font-style:normal;font-size:11px;color:var(--tx3);max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ctx-i[data-ctx="group"] span::after{content:' ▸';color:var(--tx3);font-size:11px}
.ctx-sub{margin:2px 0 4px;padding:4px;background:var(--panel2);border:1px solid var(--bd2);border-radius:8px}
.ctx-g{padding:7px 10px;border-radius:6px;cursor:pointer;color:var(--tx2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ctx-g:hover{background:var(--hover);color:var(--tx)}
.ctx-g.on{color:var(--lime)}
.ctx-g.on::after{content:' ✓'}
.s51-themes{padding:12px 9px;border-top:1px solid var(--bd2)}
.s51-themes>span{display:block;color:var(--tx3);font-size:13px;margin:0 0 7px 4px}
.theme-pills{display:flex;gap:5px}
.tp{flex:1;height:29px;border:1px solid var(--bd);border-radius:4px;background:transparent;
  color:var(--tx3);font-size:13px;cursor:pointer}
.tp:hover{color:var(--tx);border-color:#26313f}
.tp.active{background:var(--lime);border-color:var(--lime);color:var(--onacc);font-weight:700}
.s51-foot{flex:0 0 auto;padding:10px 11px 12px;border-top:1px solid var(--bd2)}
.s51-card{border:1px solid var(--bd2);border-radius:6px;background:var(--panel);padding:9px 10px;margin-bottom:7px}
.vip-line{display:flex;align-items:center;justify-content:space-between;font-size:14px;color:var(--tx2)}
.vip-badge{background:linear-gradient(160deg,#e6bd6b,#c2913c);color:#20160a;border-radius:4px;
  padding:2px 8px;font-size:13px;font-weight:700}
.vip-badge.root{background:linear-gradient(160deg,#d3f45e,#a9cf38);color:#141c06}
.lic-line .lic-row{display:flex;justify-content:space-between;align-items:baseline;font-size:14px;color:var(--tx2)}
.lic-line .lic-row b{color:var(--lime);font-size:18px}
.lic-line small,.svc-line small{display:block;color:var(--tx3);font-size:13px;margin-top:3px;line-height:1.5}
.svc-line .svc-t{display:flex;align-items:center;gap:7px;font-size:14px;color:var(--tx2)}
.svc-line .svc-t i{width:7px;height:7px;border-radius:50%;background:var(--green)}
.s51-user{font-size:14px;color:var(--tx3);margin:8px 2px 5px}
.s51-user b{color:var(--tx2)}
.s51-foot>a{display:block;font-size:14px;color:var(--tx3);padding:3px}
.s51-foot>a:hover{color:var(--red)}
.s51-foot>a.quit-app{margin-top:6px;border:1px solid rgba(242,88,79,.45);border-radius:6px;
  padding:6px 9px;text-align:center;color:var(--red)}
.s51-foot>a.quit-app:hover{background:rgba(242,88,79,.12);color:var(--red)}
/* ================= 主区域 ================= */
.m51{flex:1;min-width:0;padding:14px 18px 22px;overflow-x:hidden}
.m51-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:14px}
.mh-left h1{margin:0;font-size:30px;font-weight:700;letter-spacing:.5px}
.mh-left p{margin:4px 0 0;color:var(--tx3);font-size:14px;display:flex;align-items:center;gap:7px}
.ok-dot{width:7px;height:7px;border-radius:50%;background:var(--green)}
.mh-left p em{font-style:normal;color:#33404f}
.mh-btns{display:flex;gap:9px}
.mh-btns button{height:38px;padding:0 17px;border:1px solid var(--bd);border-radius:6px;
  background:var(--panel);color:var(--tx2);font-size:15px;cursor:pointer}
.mh-btns button:hover{color:var(--tx);border-color:#26313f}

/* ================= 9 格统计条 ================= */
.stat-strip{display:grid;grid-template-columns:repeat(9,1fr);gap:8px;margin-bottom:12px}
.sc{border:1px solid var(--bd);border-radius:8px;background:var(--panel);padding:11px 13px;min-height:94px;
  display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.sc-lab{color:var(--tx3);font-size:14px;white-space:nowrap}
.sc-val{font-size:27px;font-weight:700;line-height:1.15;margin-top:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sc-val i{font-style:normal;color:var(--tx3);font-size:13px;font-weight:400;margin-right:4px}
.sc-sub{display:flex;gap:8px;font-size:13px;margin-top:4px}
.sc-sub span{color:var(--tx3)}
.up{color:var(--red)} .down{color:var(--green)} .zero{color:var(--tx)}
.sc-v3{color:#5b9cff}

/* ================= 工具行 ================= */
.tool-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}
.search-box{position:relative;width:350px}
.search-box i{position:absolute;left:12px;top:50%;width:14px;height:14px;margin-top:-7px;
  border:1.5px solid #54606f;border-radius:50%;
}
.search-box i::after{content:"";position:absolute;right:-5px;bottom:-3px;width:7px;height:1.5px;
  background:#54606f;transform:rotate(45deg)}
.search-box input{width:100%;height:39px;padding:0 14px 0 34px;border:1px solid var(--bd);border-radius:6px;
  background:var(--panel);color:var(--tx);font-size:15px;outline:none}
.search-box input:focus{border-color:#2c5c86}
.search-box input::placeholder{color:#5a6675}
.tool-right{display:flex;align-items:center;gap:10px}
.vw{height:37px;padding:0 15px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--bd);
  border-radius:6px;background:var(--panel);color:var(--tx3);font-size:15px;cursor:pointer}
.vw s{display:block;width:12px;height:12px;text-decoration:none}
#viewCards s{background:#3a4658;border-radius:2px}
#viewList s{height:9px;background:linear-gradient(180deg,#3a4658 0 2px,transparent 2px 3px,#3a4658 3px 5px,transparent 5px 6px,#3a4658 6px 9px)}
.vw:hover{color:var(--tx)}
.vw.active{background:var(--sel);color:var(--tx);border-color:#26313f}
.vw.active s{background:var(--lime)}
.zoom-lab{color:var(--tx3);font-size:14px;margin-left:5px}
.tool-right input[type=range]{width:130px;accent-color:var(--lime);background:transparent}
#zoomVal{color:var(--tx2);font-size:14px;width:40px;text-align:right}

/* ================= 主体两栏 ================= */
.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:14px;align-items:start}
.acct-live{display:flex;align-items:center;gap:7px;color:var(--tx2);font-size:14px;margin-bottom:9px}
.acct-live i{width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 6px rgba(198,242,78,.6)}
.acct-live b{color:var(--lime);font-weight:600}

/* ================= 账户卡片 ================= */
.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--cardw,439px),1fr));gap:10px}
.ac{border:1px solid var(--bd);border-radius:9px;background:var(--panel);padding:13px 14px 12px;cursor:pointer}
.ac:hover{border-color:#26313f}
.ac-head{display:flex;align-items:center;gap:8px}
.ac-name{font-size:18px;font-weight:700;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ac-mt{border:1px solid rgba(91,156,255,.55);color:var(--blue);border-radius:4px;padding:0 7px;
  font-size:13px;font-style:normal;line-height:21px}
.ac-grp{border:1px solid rgba(198,242,78,.4);color:var(--lime);border-radius:4px;padding:0 7px;
  font-size:12px;font-style:normal;line-height:21px;background:rgba(198,242,78,.06);
  max-width:96px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ac-st{border:1px solid rgba(63,207,122,.45);color:var(--green);border-radius:4px;padding:0 7px;
  font-size:13px;font-style:normal;line-height:21px;background:rgba(63,207,122,.08)}
.ac-st.off{border-color:rgba(242,88,79,.45);color:var(--red);background:rgba(242,88,79,.08)}
.ac-lots{color:var(--tx3);font-size:14px;margin:10px 0 3px}
.ac-lots b{color:var(--tx2);font-weight:600}
.ac-pnl{font-size:36px;font-weight:700;line-height:1.15;margin:5px 0 8px;letter-spacing:-.3px}
.ac-pnl i{font-style:normal;color:var(--tx3);font-size:14px;font-weight:400;margin-left:5px}
.ac-rows{border-top:1px solid var(--bd2);padding-top:7px}
.ac-row{display:flex;justify-content:space-between;align-items:baseline;height:27px;font-size:15px}
.ac-row span{color:var(--tx3)}
.ac-row b{font-weight:600;letter-spacing:.2px}
.ac-row b i{font-style:normal;color:var(--tx3);font-size:13px;font-weight:400;margin-left:3px}
.ac-foot{margin-top:10px;border:1px solid var(--bd2);border-radius:7px;background:var(--panel2);
  padding:9px 12px;display:flex;justify-content:space-between;font-size:14px;color:var(--tx3)}
.ac-foot b{color:var(--tx);font-weight:600}
.ac-foot b i{font-style:normal;color:var(--tx3);font-size:13px;font-weight:400;margin-left:3px}
.ac-empty{grid-column:1/-1;border:1px dashed var(--bd);border-radius:9px;padding:26px;text-align:center;color:var(--tx3)}

/* ================= 列表视图 ================= */
.list-wrap{border:1px solid var(--bd);border-radius:9px;background:var(--panel);overflow:hidden}
.lt{width:100%;border-collapse:collapse;font-size:15px}
.lt th{text-align:left;color:var(--tx3);font-weight:500;padding:11px 14px;border-bottom:1px solid var(--bd);
  background:var(--panel2);white-space:nowrap;font-size:14px}
.lt td{padding:11px 14px;border-bottom:1px solid var(--bd2);white-space:nowrap}
.lt tr:last-child td{border-bottom:0}
.lt td.right,.lt th.right{text-align:right}
.lt-empty{padding:28px;text-align:center;color:var(--tx3)}
/* ================= 右侧栏 ================= */
.rail51{position:sticky;top:12px;display:flex;flex-direction:column;gap:10px}
.rail-card{border:1px solid var(--bd);border-radius:9px;background:var(--panel);overflow:hidden}

/* 行情卡 */
.quote51{padding:10px 11px 8px}
.q-head{display:flex;align-items:flex-start;gap:8px}
.q-logo{width:27px;height:27px;flex:0 0 27px;border-radius:5px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,#e6bd6b,#c2913c);color:#20160a;font-weight:800;font-size:12px}
.q-t{flex:1;min-width:0}
.q-t strong{display:block;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.q-t small{display:block;color:var(--tx3);font-size:13px;margin-top:2px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tf-btns{display:flex;gap:4px;flex:0 0 auto}
.tf-btns button{height:27px;padding:0 8px;border:1px solid var(--bd);border-radius:4px;background:transparent;
  color:var(--tx3);font-size:13px;cursor:pointer}
.tf-btns button:hover{color:var(--tx)}
.tf-btns button.active{background:var(--lime);border-color:var(--lime);color:var(--onacc);font-weight:700}
.q-price-row{display:flex;align-items:flex-end;justify-content:space-between;margin:11px 0 8px}
.q-price{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}
.q-price b{font-size:34px;font-weight:700;color:var(--lime);letter-spacing:-.3px}
.q-price span{color:var(--tx3);font-size:14px}
.q-chg{font-size:14px;font-style:normal;margin-left:3px}
.q-hl{text-align:right;flex:0 0 auto}
.q-hl span{display:block;color:var(--tx3);font-size:13px;line-height:1.6}
.q-hl span b{color:var(--tx2);font-weight:600}
.q-live{display:inline-block;margin-top:4px;border:1px solid rgba(198,242,78,.35);color:var(--lime);
  border-radius:4px;padding:0 7px;font-size:13px;font-style:normal;line-height:21px}
.chart51{width:100%;height:280px;border:1px solid var(--bd2);border-radius:7px;background:var(--chartbg);margin-top:5px}
.q-foot{display:flex;justify-content:space-between;align-items:center;margin-top:7px;
  color:var(--tx3);font-size:13px}

/* 财经日历卡 */
.cal51{display:flex;flex-direction:column;max-height:470px}
.c-head{display:flex;align-items:flex-start;justify-content:space-between;padding:12px 13px 10px;
  border-bottom:1px solid var(--bd2)}
.c-head strong{display:block;font-size:17px}
.c-head small{display:block;color:var(--tx3);font-size:13px;margin-top:2px}
.c-ico{color:var(--tx3);font-size:15px}
.cal-list{flex:1;overflow-y:auto;padding:2px 0}
.cal-list::-webkit-scrollbar{width:6px}
.cal-list::-webkit-scrollbar-thumb{background:var(--bd);border-radius:3px}
.cal-list::-webkit-scrollbar-track{background:transparent}
.ci{padding:11px 13px;border-bottom:1px solid var(--bd2)}
.ci:last-child{border-bottom:0}
.ci-r1{display:flex;align-items:center;gap:8px}
.ci-date{color:var(--lime);font-size:14px;font-weight:600}
.ci-imp{background:var(--orange);color:#231604;border-radius:3px;padding:0 7px;font-size:13px;
  font-style:normal;font-weight:700;line-height:20px}
.ci-cd{margin-left:auto;color:var(--tx3);font-size:13px}
.ci-name{margin-top:6px;font-size:15px;line-height:1.4;color:var(--tx)}
.ci-meta{margin-top:4px;color:var(--tx3);font-size:13px}
.ci-meta em{font-style:normal;color:var(--tx2)}
.ci-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}
.ci-tags i{font-style:normal;border-radius:4px;padding:1px 7px;font-size:13px;line-height:21px;
  border:1px solid transparent}
.t-blue{border-color:rgba(91,156,255,.4) !important;color:#7db0ff}
.t-red{border-color:rgba(242,88,79,.4) !important;color:#f07a72}
.t-green{border-color:rgba(63,207,122,.4) !important;color:#5dd894}
.c-foot{padding:9px 13px;border-top:1px solid var(--bd2);color:var(--tx3);font-size:13px}
.cal-empty{padding:26px;text-align:center;color:var(--tx3);font-size:14px}
.cal-icon{width:32px;height:32px;flex:0 0 32px;padding:0;border:1px solid var(--bd);border-radius:4px;background:transparent;color:var(--tx2);font:20px/1 system-ui;cursor:pointer}
.cal-icon:hover{color:var(--lime);border-color:var(--lime)}
.cal-icon[hidden]{display:none}
.cal-icon:disabled{opacity:.5;cursor:wait}
.ci-r1{flex-wrap:wrap;gap:6px}
.ci-name,.ci-meta,.ci-tags i{overflow-wrap:anywhere}
.ci-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:8px}
.calendar-overlay .cal-editor{width:min(560px,calc(100% - 24px));max-height:90dvh;border-radius:8px}
.calendar-overlay .ov-head strong{font-size:17px}
.calendar-overlay .ov-head .cal-icon{width:32px;padding:0;font-size:22px}
.cal-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}
.cal-form-grid .mfield{display:flex;flex-direction:column;gap:6px;margin:0;min-width:0}
.cal-form-grid .mfield span{color:var(--tx2);font-size:13px}
.cal-form-grid input,.cal-form-grid select{box-sizing:border-box;width:100%;min-width:0;height:38px;padding:7px 9px;color:var(--tx);background:var(--bg);border:1px solid var(--bd);border-radius:4px;font:14px system-ui;color-scheme:dark}
.cal-form-grid input:focus,.cal-form-grid select:focus{outline:1px solid var(--lime);border-color:var(--lime)}
.cal-wide{grid-column:1/-1}
.cal-form-error{min-height:20px;margin-top:12px;color:var(--red);font-size:13px;overflow-wrap:anywhere}
.cal-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}
@media(max-width:420px){.cal-form-grid{grid-template-columns:minmax(0,1fr)}.calendar-overlay .ov-body{padding:12px}.ci-cd{font-size:12px}}

/* ================= 单子弹窗 ================= */
.ov{position:fixed;inset:0;background:rgba(3,6,10,.72);display:flex;align-items:center;
  justify-content:center;z-index:70}
.ov-box{width:min(860px,92vw);max-height:84vh;display:flex;flex-direction:column;
  border:1px solid var(--bd);border-radius:10px;background:var(--panel)}
.ov-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--bd)}
.ov-head strong{font-size:18px}
.ov-head button{border:1px solid var(--bd);background:transparent;color:var(--tx2);border-radius:5px;
  height:34px;padding:0 13px;cursor:pointer;font-size:15px}
.ov-body{overflow:auto;padding:12px 16px 16px}
.ov-tabs{display:flex;gap:7px;margin-bottom:12px}
.ov-tabs button{border:1px solid var(--bd);background:transparent;color:var(--tx3);border-radius:5px;
  height:34px;padding:0 15px;cursor:pointer;font-size:15px}
.ov-tabs button.active{background:var(--sel);color:var(--tx)}
.ov-body table{width:100%;border-collapse:collapse;font-size:15px}
.ov-body th{text-align:left;color:var(--tx3);font-weight:500;padding:9px 10px;border-bottom:1px solid var(--bd)}
.ov-body td{padding:9px 10px;border-bottom:1px solid var(--bd2)}
.ov-body td.right,.ov-body th.right{text-align:right}
.ov-empty{padding:24px;text-align:center;color:var(--tx3)}

/* ================= 提示 ================= */
.toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);background:var(--sel);
  border:1px solid var(--bd);border-radius:7px;padding:10px 20px;font-size:15px;color:var(--tx2);z-index:90}
.switch51{position:relative;width:42px;height:23px;flex:0 0 42px;cursor:pointer}
.switch51 input{opacity:0;width:0;height:0}
.switch51 em{position:absolute;inset:0;border-radius:12px;background:var(--track);transition:.15s}
.switch51 em::after{content:"";position:absolute;left:3px;top:3px;width:17px;height:17px;border-radius:50%;
  background:var(--tx3);transition:.15s}
.switch51 input:checked+em{background:var(--lime)}
.switch51 input:checked+em::after{left:22px;background:var(--onacc)}
@media (max-width:1500px){
  .stat-strip{grid-template-columns:repeat(5,1fr)}
}
@media (max-width:1180px){
  .content-layout{grid-template-columns:minmax(0,1fr)}
  .rail51{position:static}
}

/* ================= 功能模块页 ================= */
.module-panel{margin-top:2px}
.mod-card{border:1px solid var(--bd);border-radius:9px;background:var(--panel);padding:16px 18px;margin-bottom:14px}
.mod-card>h3{margin:0 0 6px;font-size:19px}
.mod-card>.mod-sub{margin:0 0 14px;color:var(--tx3);font-size:14px;line-height:1.6}
.mod-flex{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:1180px){.mod-flex{grid-template-columns:1fr}}
.mform{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}
.mfield{display:flex;flex-direction:column;gap:4px}
.mfield span{color:var(--tx3);font-size:14px}
.mform input[type=text],.mform input[type=password],.mform input[type=number],.mform select,
.mform input[type=date]{
  height:40px;min-width:170px;padding:0 12px;border:1px solid var(--bd);border-radius:6px;
  background:var(--panel2);color:var(--tx);font-size:15px;outline:none}
.mform input:focus,.mform select:focus{border-color:#2c5c86}
.btn51{height:38px;padding:0 17px;border:1px solid var(--bd);border-radius:6px;cursor:pointer;
  background:var(--btn);color:var(--tx);font-size:15px}
.btn51:hover{border-color:#2c5c86}
.btn51.lime{background:var(--lime);border-color:var(--lime);color:var(--onacc);font-weight:700}
.btn51.warn{background:transparent;border-color:rgba(242,88,79,.45);color:var(--red)}
.btn51.warn:hover{background:rgba(242,88,79,.08)}
.btn51.danger{background:var(--red);border-color:var(--red);color:#fff;font-weight:700}
.btn51.danger:hover{filter:brightness(1.15)}
.btn51:disabled{opacity:.45;cursor:not-allowed}
.mtable input[type=text],.mtable input[type=number],.mtable select{
  width:100%;min-width:80px;height:36px;padding:0 10px;border:1px solid var(--bd);border-radius:5px;
  background:var(--panel2);color:var(--tx);font-size:15px;outline:none}
.mtable input:focus,.mtable select:focus{border-color:#2c5c86}
.mtable input:disabled{opacity:.6}
.chips{display:flex;flex-wrap:wrap;gap:9px}
.chip{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(242,88,79,.45);color:var(--red);
  border-radius:6px;padding:6px 12px;font-size:15px;background:rgba(242,88,79,.06)}
.chip i{width:7px;height:7px;border-radius:50%;background:var(--red)}
.chip.ok{border-color:rgba(63,207,122,.4);color:var(--green);background:rgba(63,207,122,.06)}
.chip.ok i{background:var(--green)}
.help51 h4{margin:16px 0 8px;font-size:17px;color:var(--lime)}
.help51 p,.help51 li{color:var(--tx2);font-size:15px;line-height:1.8}
.help51 ol,.help51 ul{margin:5px 0 12px;padding-left:22px}
.help51 code{background:var(--hover);border:1px solid var(--bd2);border-radius:4px;padding:2px 7px;
  font-size:14px;color:#9fd0ff}
.mod-empty{padding:20px;text-align:center;color:var(--tx3);font-size:15px}
.mrow-actions{display:flex;gap:6px}
/* Lucide icon masks, bundled locally; ISC license. */
.ni-ov{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20width%3D%227%22%20height%3D%229%22%20x%3D%223%22%20y%3D%223%22%20rx%3D%221%22%2F%3E%3Crect%20width%3D%227%22%20height%3D%225%22%20x%3D%2214%22%20y%3D%223%22%20rx%3D%221%22%2F%3E%3Crect%20width%3D%227%22%20height%3D%229%22%20x%3D%2214%22%20y%3D%2212%22%20rx%3D%221%22%2F%3E%3Crect%20width%3D%227%22%20height%3D%225%22%20x%3D%223%22%20y%3D%2216%22%20rx%3D%221%22%2F%3E%3C%2Fsvg%3E")}
.ni-ac{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M19%207V4a1%201%200%200%200-1-1H5a2%202%200%200%200%200%204h15a1%201%200%200%201%201%201v4h-3a2%202%200%200%200%200%204h3a1%201%200%200%200%201-1v-2a1%201%200%200%200-1-1%22%2F%3E%3Cpath%20d%3D%22M3%205v14a2%202%200%200%200%202%202h15a1%201%200%200%200%201-1v-4%22%2F%3E%3C%2Fsvg%3E")}
.ni-mg{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M16%2021v-2a4%204%200%200%200-4-4H6a4%204%200%200%200-4%204v2%22%2F%3E%3Cpath%20d%3D%22M16%203.128a4%204%200%200%201%200%207.744%22%2F%3E%3Cpath%20d%3D%22M22%2021v-2a4%204%200%200%200-3-3.87%22%2F%3E%3Ccircle%20cx%3D%229%22%20cy%3D%227%22%20r%3D%224%22%2F%3E%3C%2Fsvg%3E")}
.ni-dp{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%2015V3%22%2F%3E%3Cpath%20d%3D%22M21%2015v4a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2v-4%22%2F%3E%3Cpath%20d%3D%22m7%2010%205%205%205-5%22%2F%3E%3C%2Fsvg%3E")}
.ni-rk{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2013c0%205-3.5%207.5-7.66%208.95a1%201%200%200%201-.67-.01C7.5%2020.5%204%2018%204%2013V6a1%201%200%200%201%201-1c2%200%204.5-1.2%206.24-2.72a1.17%201.17%200%200%201%201.52%200C14.51%203.81%2017%205%2019%205a1%201%200%200%201%201%201z%22%2F%3E%3Cpath%20d%3D%22M12%208v4%22%2F%3E%3Cpath%20d%3D%22M12%2016h.01%22%2F%3E%3C%2Fsvg%3E")}
.ni-hi{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2012a9%209%200%201%200%209-9%209.75%209.75%200%200%200-6.74%202.74L3%208%22%2F%3E%3Cpath%20d%3D%22M3%203v5h5%22%2F%3E%3Cpath%20d%3D%22M12%207v5l4%202%22%2F%3E%3C%2Fsvg%3E")}
.ni-pf{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14%2017H5%22%2F%3E%3Cpath%20d%3D%22M19%207h-9%22%2F%3E%3Ccircle%20cx%3D%2217%22%20cy%3D%2217%22%20r%3D%223%22%2F%3E%3Ccircle%20cx%3D%227%22%20cy%3D%227%22%20r%3D%223%22%2F%3E%3C%2Fsvg%3E")}
.ni-lg{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M15%2012h-5%22%2F%3E%3Cpath%20d%3D%22M15%208h-5%22%2F%3E%3Cpath%20d%3D%22M19%2017V5a2%202%200%200%200-2-2H4%22%2F%3E%3Cpath%20d%3D%22M8%2021h12a2%202%200%200%200%202-2v-1a1%201%200%200%200-1-1H11a1%201%200%200%200-1%201v1a2%202%200%201%201-4%200V5a2%202%200%201%200-4%200v2a1%201%200%200%200%201%201h3%22%2F%3E%3C%2Fsvg%3E")}
.ni-hp{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%2210%22%2F%3E%3Cpath%20d%3D%22M9.09%209a3%203%200%200%201%205.83%201c0%202-3%203-3%203%22%2F%3E%3Cpath%20d%3D%22M12%2017h.01%22%2F%3E%3C%2Fsvg%3E")}
.icon-logout{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m16%2017%205-5-5-5%22%2F%3E%3Cpath%20d%3D%22M21%2012H9%22%2F%3E%3Cpath%20d%3D%22M9%2021H5a2%202%200%200%201-2-2V5a2%202%200%200%201%202-2h4%22%2F%3E%3C%2Fsvg%3E")}
.icon-chart{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M9%205v4%22%2F%3E%3Crect%20width%3D%224%22%20height%3D%226%22%20x%3D%227%22%20y%3D%229%22%20rx%3D%221%22%2F%3E%3Cpath%20d%3D%22M9%2015v2%22%2F%3E%3Cpath%20d%3D%22M17%203v2%22%2F%3E%3Crect%20width%3D%224%22%20height%3D%228%22%20x%3D%2215%22%20y%3D%225%22%20rx%3D%221%22%2F%3E%3Cpath%20d%3D%22M17%2013v3%22%2F%3E%3Cpath%20d%3D%22M3%203v16a2%202%200%200%200%202%202h16%22%2F%3E%3C%2Fsvg%3E")}
.icon-refresh{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2012a9%209%200%200%201%209-9%209.75%209.75%200%200%201%206.74%202.74L21%208%22%2F%3E%3Cpath%20d%3D%22M21%203v5h-5%22%2F%3E%3Cpath%20d%3D%22M21%2012a9%209%200%200%201-9%209%209.75%209.75%200%200%201-6.74-2.74L3%2016%22%2F%3E%3Cpath%20d%3D%22M8%2016H3v5%22%2F%3E%3C%2Fsvg%3E")}
#viewCards s{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20width%3D%227%22%20height%3D%227%22%20x%3D%223%22%20y%3D%223%22%20rx%3D%221%22%2F%3E%3Crect%20width%3D%227%22%20height%3D%227%22%20x%3D%2214%22%20y%3D%223%22%20rx%3D%221%22%2F%3E%3Crect%20width%3D%227%22%20height%3D%227%22%20x%3D%2214%22%20y%3D%2214%22%20rx%3D%221%22%2F%3E%3Crect%20width%3D%227%22%20height%3D%227%22%20x%3D%223%22%20y%3D%2214%22%20rx%3D%221%22%2F%3E%3C%2Fsvg%3E")}
#viewList s{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%205h.01%22%2F%3E%3Cpath%20d%3D%22M3%2012h.01%22%2F%3E%3Cpath%20d%3D%22M3%2019h.01%22%2F%3E%3Cpath%20d%3D%22M8%205h13%22%2F%3E%3Cpath%20d%3D%22M8%2012h13%22%2F%3E%3Cpath%20d%3D%22M8%2019h13%22%2F%3E%3C%2Fsvg%3E")}
.search-box i{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m21%2021-4.34-4.34%22%2F%3E%3Ccircle%20cx%3D%2211%22%20cy%3D%2211%22%20r%3D%228%22%2F%3E%3C%2Fsvg%3E")}
.search-box i{width:15px;height:15px;border:0;border-radius:0;background:var(--tx3);mask-size:contain;mask-repeat:no-repeat}.search-box i::after{display:none}

/* Terminal layout. Existing IDs remain the contract for all account operations. */
*{letter-spacing:0!important}
body{font-family:"Segoe UI Variable Text","Microsoft YaHei UI","PingFang SC",sans-serif;font-size:14px;color-scheme:dark}
button,input,select{font:inherit}
button,a,input,select{ -webkit-tap-highlight-color:transparent}
button,a{transition:background-color .15s ease,border-color .15s ease,color .15s ease}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
button:disabled{opacity:.5;cursor:not-allowed}
::selection{background:var(--sel);color:var(--lime)}
::-webkit-scrollbar{width:6px;height:6px}
::-webkit-scrollbar-thumb{background:var(--track);border-radius:3px}
.app51{align-items:flex-start}
.s51{width:208px;flex-basis:208px;position:sticky;top:0;height:100dvh;background:var(--panel2)}
.s51-brand{height:92px;padding:20px 18px;gap:10px;border-bottom:1px solid var(--bd2)}
.logo51,.lp-brand>b{background:center/contain no-repeat url("data:image/png;base64,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");border-radius:0}
.logo51 img{width:34px;height:34px;object-fit:contain}
.s51-brand-t strong{font-size:17px;font-weight:650}
.s51-brand-t small{font-size:11px;margin-top:6px}
.s51-scroll{padding:12px 12px 0}
.s51-sec{font-size:10px;margin:18px 12px 8px;color:var(--tx3)}
.s51-nav a{height:42px;gap:12px;padding:0 12px;margin:3px 0;font-size:13px;border:1px solid transparent;border-radius:4px}
.s51-nav a.active{border-color:var(--bd);background:var(--sel);box-shadow:inset 2px 0 var(--lime);color:var(--lime)}
.s51-nav a.active .ni{opacity:1}
.ni,.ui-icon,.vw s{display:inline-block;width:18px;height:18px;flex:0 0 18px;border:0;border-radius:0;background:currentColor!important;mask-size:contain;mask-position:center;mask-repeat:no-repeat}
.ni{color:inherit;opacity:.75}
.s51-themes{margin-top:22px;padding:16px 10px;border-top:1px solid var(--bd2)}
.s51-themes>span{font-size:11px;margin:0 0 12px}
.theme-pills{gap:14px;align-items:center}
.tp{width:22px;flex:0 0 22px;height:22px;padding:0;font-size:0;border-radius:50%;background:#6ae2d1;border:3px solid var(--panel2);box-shadow:0 0 0 1px var(--bd)}
.tp:nth-child(2){background:#d3dce5}.tp:nth-child(3){background:#e4cc90}
.tp.active{background:#6ae2d1;border-color:var(--panel2);box-shadow:0 0 0 2px var(--lime)}
.tp:nth-child(2).active{background:#d3dce5}.tp:nth-child(3).active{background:#e4cc90}
.s51-foot{padding:14px 18px;border-top:1px solid var(--bd2)}
.s51-card{border:0;border-radius:0;background:transparent;padding:7px 0;margin:0}
.vip-line{font-size:11px}
.vip-badge,.vip-badge.root{background:var(--sel);color:var(--lime);border:1px solid var(--bd);font-size:10px;padding:2px 6px}
.lic-line .lic-row{font-size:12px}.lic-line .lic-row b{font-size:17px}
.lic-line small,.svc-line small{font-size:10px;line-height:1.7}
.svc-line .svc-t{font-size:12px}.svc-line .svc-t i{width:5px;height:5px}
.s51-user{font-size:11px;margin:12px 0 8px}
.s51-foot>a{display:flex;align-items:center;gap:8px;font-size:12px;padding:7px 0;color:var(--tx2)}
.s51-foot .ui-icon{width:14px;height:14px;flex-basis:14px}
.m51{padding:0 28px 32px;max-width:2200px;min-height:100dvh}
.terminal-bar{height:45px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--bd2);font:10px "Consolas",monospace;color:var(--tx3)}
.terminal-bar b{font-weight:400;color:var(--lime);margin:0 10px}
.m51-head{align-items:center;margin:25px 0 24px;gap:16px}
.mh-left h1{font-size:26px;font-weight:600;line-height:1.4}
.mh-left p{margin-top:7px;font-size:11px;color:var(--tx3);gap:7px}
.ok-dot{width:5px;height:5px;background:var(--lime);box-shadow:none}
.mh-btns{gap:8px}.mh-btns button{width:36px;height:36px;padding:8px;border-radius:4px;color:var(--tx2);display:grid;place-items:center}
.mh-btns button:hover{border-color:var(--lime);color:var(--lime);background:var(--hover)}
.stat-strip{grid-template-columns:repeat(20,minmax(0,1fr));gap:0;border:1px solid var(--bd);border-radius:6px;overflow:hidden;margin-bottom:25px;background:var(--panel)}
.sc{min-width:0;border:0;border-radius:0;background:transparent;padding:18px 18px 16px;grid-column:span 4;min-height:105px;border-right:1px solid var(--bd2);position:relative}
.sc:nth-child(9){border-right:0}
.sc[data-metric="count"]{grid-column:span 5;min-height:66px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:0 8px;border-bottom:1px solid var(--bd);background:var(--panel2);padding:13px 18px}
.sc[data-metric="count"] .sc-val{font-size:23px!important;margin:0;text-align:right;grid-column:2;grid-row:1/3}
.sc[data-metric="count"]:nth-child(4){border-right:0}
.sc-lab{font-size:12px;color:var(--tx2);font-weight:400;white-space:normal}
.sc-val{font-family:"Bahnschrift","DIN Alternate","Consolas",monospace;font-weight:500;margin-top:14px;font-variant-numeric:tabular-nums;line-height:1.25;text-overflow:clip}
.sc-val i{font:9px "Consolas",monospace;color:var(--tx3);margin-right:6px}
.sc-sub{font-size:9px;gap:5px;margin-top:2px}
.tool-row{gap:16px;margin:0 0 18px}.search-box{width:310px;max-width:100%}
.search-box input{height:38px;font-size:12px;background:var(--panel2);border-color:var(--bd2)}
.search-box input::placeholder{color:var(--tx3)}.search-box input:focus{border-color:var(--lime)}
.tool-right{gap:12px;flex-wrap:wrap;justify-content:flex-end}
.view-toggle{display:flex;padding:3px;gap:2px;background:var(--panel2);border:1px solid var(--bd);border-radius:5px}
.vw{width:32px;height:28px;padding:6px;border:0;border-radius:3px;justify-content:center;color:var(--tx3);background:transparent}
.vw.active{color:var(--lime);background:var(--sel)}.vw s{width:15px;height:15px;flex-basis:15px;margin:0}
.zoom-lab,#zoomVal{font-size:11px}.tool-right input[type=range]{width:76px;height:18px}.zoom-lab{margin:0}
.content-layout{grid-template-columns:minmax(0,1fr) 326px;gap:24px}
.acct-main51,.rail51{min-width:0}
.acct-live{height:25px;font-size:11px;margin-bottom:12px;color:var(--tx3)}
.acct-live i{background:var(--lime);box-shadow:none;width:5px;height:5px}.acct-live b{color:var(--tx2);font-weight:500}
.cards-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,var(--cardw,360px)),1fr));gap:14px}
.ac{border:1px solid var(--bd);border-radius:6px;background:var(--panel);padding:18px;min-width:0;transition:border-color .15s ease}
.ac:hover{border-color:var(--lime)}.ac-head{gap:7px;min-width:0}
.ac-name{font-size:15px;font-weight:600}.ac-mt,.ac-grp,.ac-st{font-size:9px;line-height:18px;padding:0 5px;border-radius:3px}
.ac-mt{color:var(--tx2);border-color:var(--bd)}.ac-grp{color:var(--lime);background:var(--sel);border-color:var(--bd);max-width:76px}
.ac-st{color:var(--green);background:transparent;border-color:#36594a}.ac-st.off{color:var(--tx3);background:transparent;border-color:var(--bd)}
.ac-id{font:10px/1.5 "Consolas",monospace;color:var(--tx2);margin-top:7px;overflow-wrap:anywhere}.ac-id span{color:var(--tx3)}
.ac-lots{display:flex;gap:8px;align-items:center;font-size:10px;margin:22px 0 7px;color:var(--tx3)}.ac-lots span{margin-left:auto;color:var(--tx3)}.ac-lots b{font-weight:400}
.ac-pnl{font:500 32px/1.3 "Bahnschrift","Consolas",monospace;font-variant-numeric:tabular-nums;margin:0 0 20px;overflow-wrap:anywhere}.ac-pnl i{font:10px "Consolas",monospace}
.ac-rows{padding-top:12px;border-color:var(--bd2);display:grid;grid-template-columns:1fr 1fr;gap:13px 14px}
.ac-row{height:auto;min-width:0;font-size:11px;display:flex;flex-direction:column;gap:4px;align-items:flex-start}
.ac-row b{font:500 13px/1.4 "Bahnschrift","Consolas",monospace;overflow-wrap:anywhere}
.ac-row:last-child{grid-column:1/-1;flex-direction:row;justify-content:space-between;border-top:1px solid var(--bd2);padding-top:11px}
.ac-row:last-child b{font-size:11px}
.ac-foot{margin-top:12px;border:0;border-radius:0;border-top:1px solid var(--bd2);background:none;padding:12px 0 0;font-size:10px;gap:12px}
.ac-foot b{font:500 12px "Consolas",monospace;overflow-wrap:anywhere}.ac-foot b i{font-size:9px}
.ac-empty{border-radius:4px;min-height:230px;display:grid;place-items:center;font-size:13px}
.list-wrap{border-radius:4px;overflow-x:auto}.lt{font-size:12px}.lt th{font-size:11px;background:var(--panel2)}.lt td,.lt th{padding:13px 14px}.lt tbody tr:hover{background:var(--hover)}
.rail51{gap:28px;top:20px;padding-top:1px;position:sticky}
.rail-card{border:0;border-radius:0;background:transparent;overflow:visible}
.quote51{padding:0}.q-head{align-items:center;flex-wrap:wrap;gap:10px;min-height:27px;margin-bottom:16px}
.q-logo{background:transparent;border:1px solid #635742;color:var(--gold);font:500 14px "Bahnschrift",sans-serif;width:30px;height:30px;flex-basis:30px;border-radius:4px}
.q-t strong{font-size:13px;font-weight:600}.q-t small{font-size:10px;margin-top:3px}
.tf-btns{width:100%;border-bottom:1px solid var(--bd2);padding:0 0 10px;gap:8px}
.tf-btns button{font-size:10px;border:0;border-radius:3px;padding:0 10px;height:25px;color:var(--tx3)}
.tf-btns button.active{background:var(--sel);color:var(--lime)}
.q-price-row{margin:10px 0 16px;gap:8px}.q-price{gap:6px;min-width:0}.q-price b{font:500 32px "Bahnschrift","Consolas",monospace;color:var(--gold)}
.q-price span{font-size:10px}.q-chg{font:11px "Consolas",monospace;flex-basis:100%;margin:0}
.q-hl span{font-size:10px}.q-live{font-size:9px;border:0;padding:0;color:var(--tx3)}
.chart51{height:230px;border:0;border-radius:0;background:var(--chartbg)}
.q-foot{font-size:9px;gap:10px;align-items:flex-start;margin-top:12px}.q-foot>span{overflow-wrap:anywhere}.q-foot small{font-size:9px;flex-shrink:0;color:var(--gold)}
.cal51{max-height:590px;border-top:1px solid var(--bd);padding-top:20px}
.c-head{padding:0 0 16px;border-color:var(--bd2);align-items:center}.c-head strong{font-size:14px;font-weight:600}.c-head small{font-size:10px;margin-top:5px}
.cal-icon{border-radius:4px;background:var(--panel);color:var(--lime)}
.cal-list{padding:0;min-height:70px}.ci{padding:16px 0;border-color:var(--bd2)}.ci-date{font:11px "Consolas",monospace;color:var(--tx2)}
.ci-imp{font-size:9px;line-height:17px;padding:0 5px;color:var(--orange);background:#393126;border:1px solid #61513a}
.ci-cd{font:10px "Consolas",monospace;color:var(--tx3)}.ci-name{font-size:12px;font-weight:500;margin-top:10px;line-height:1.6}.ci-meta{font-size:10px;margin-top:7px;line-height:1.7}
.ci-tags{gap:5px;margin-top:10px}.ci-tags i{font-size:9px;line-height:17px;padding:0 5px;border-radius:2px}.ci-actions{margin-top:10px}
.ci-actions .cal-icon{width:27px;height:27px;flex-basis:27px;font-size:15px;background:transparent}
.c-foot{font-size:9px;padding:12px 0 0;color:var(--tx3);border-color:var(--bd2)}.cal-empty{font-size:12px;padding:32px 10px}
.module-panel{min-width:0}.mod-card{border:0;border-top:1px solid var(--bd);border-radius:0;background:transparent;padding:22px 0;margin-bottom:12px;min-width:0}
.mod-card>h3{font-size:17px;font-weight:600;margin-bottom:10px}.mod-card>.mod-sub,.mod-sub{font-size:12px;line-height:1.8;color:var(--tx3)}
.mod-flex{gap:24px;min-width:0}.mform{gap:14px}.mfield{min-width:0;max-width:100%}.mfield span{font-size:11px;color:var(--tx2)}
.mform input[type=text],.mform input[type=password],.mform input[type=number],.mform select,.mform input[type=date]{height:38px;min-width:140px;max-width:100%;font-size:12px;border-radius:4px;background:var(--panel)}
.btn51{font-size:12px;height:36px;padding:0 14px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}
.btn51:hover{border-color:var(--lime)}.btn51.lime{background:var(--lime);color:var(--onacc)}
.mod-card{overflow-x:auto}
.mtable{width:100%;min-width:1020px;border-collapse:collapse;font-size:12px}.mtable th,.mtable td{padding:12px 10px;text-align:left;border-bottom:1px solid var(--bd2);white-space:nowrap}.mtable th{font-size:11px;font-weight:400;color:var(--tx3);background:var(--panel2)}
.mtable input:not([type]){width:100%;min-width:100px;height:34px;padding:0 10px;border:1px solid var(--bd);border-radius:4px;background:var(--panel2);color:var(--tx);font-size:12px}
#viewCards s,#viewList s{width:15px;height:15px;background:currentColor!important}
.mod-table-wrap{overflow-x:auto;max-width:100%}.mtable input[type=text],.mtable input[type=number],.mtable select{height:34px;font-size:12px;border-radius:4px}
.mrow-actions{flex-wrap:wrap}.chip{font-size:11px;border-radius:4px;padding:5px 9px}.chip i{width:5px;height:5px}.help51 h4{font-size:14px}.help51 p,.help51 li{font-size:12px}.help51 code{font-size:11px}
.ov{backdrop-filter:blur(8px);background:rgba(5,7,8,.76);padding:12px}.ov-box{border-radius:6px;border-color:var(--bd);box-shadow:0 24px 80px #0008;max-width:100%}
.ov-head{padding:18px 20px}.ov-head strong{font-size:16px;font-weight:600}.ov-head button{font-size:12px}.ov-body{padding:18px 20px;min-width:0}.ov-body table{font-size:12px;min-width:460px}.ov-body th{font-size:11px}.ov-tabs button{font-size:12px}
.calendar-overlay .cal-editor{width:540px;max-width:100%;max-height:90dvh;border-radius:6px}.calendar-overlay .ov-head strong{font-size:16px}.calendar-overlay .ov-body table{min-width:0}
.cal-form-grid input,.cal-form-grid select{height:40px;font:13px "Segoe UI",sans-serif;background:var(--panel2);border-color:var(--bd);border-radius:4px}
.cal-form-grid .mfield span{font-size:11px}.toast{font-size:12px;background:var(--panel);color:var(--tx);border-color:var(--lime);max-width:calc(100% - 24px);width:max-content;overflow-wrap:anywhere}
.ctx51{border-radius:5px;font-size:12px}.ctx-i{border-radius:3px}.ctx-sub{border-radius:4px}.ctx-g{border-radius:3px}
.lp-wrap,body[data-theme] .lp-wrap{background:var(--bg);background-image:linear-gradient(var(--bd2) 1px,transparent 1px),linear-gradient(90deg,var(--bd2) 1px,transparent 1px);background-size:80px 80px;padding:24px;overflow:auto}
.lp-card,body[data-theme] .lp-card{width:400px;max-width:100%;padding:36px 16px;background:var(--bg);border:0;border-radius:0;box-shadow:0 0 0 20px var(--bg)}
.lp-brand{gap:14px;margin-bottom:36px}.lp-brand>b{width:44px;height:44px}.lp-brand img{width:44px;height:44px}.lp-brand>span{font-size:24px;font-weight:600;gap:7px}.lp-brand small{font:9px "Consolas",monospace;color:var(--tx3)}
.lp-rule{display:flex;justify-content:space-between;border-bottom:1px solid var(--bd);padding-bottom:12px;margin-bottom:28px;font:10px "Consolas",monospace;color:var(--lime)}
.lp-rule span+span{color:var(--tx3)}.lp-card h2{font-size:19px;font-weight:500}.lp-card p{font-size:12px;color:var(--tx3);margin:7px 0 25px}
.lp-label{display:block;font-size:11px;color:var(--tx2);margin-bottom:9px}.lp-card input{border-radius:4px;font-size:13px;background:var(--panel);height:44px;padding:0 13px;margin-bottom:20px}.lp-card input:focus{border-color:var(--lime)}
.lp-card button.primary{height:44px;font-size:13px;border-radius:4px;margin-top:6px}.login-error{font-size:12px;text-align:left;margin-top:12px}
.lp-end{font-size:10px;color:var(--tx3);border-top:1px solid var(--bd2);padding-top:20px;display:flex;justify-content:space-between;margin-top:24px}.lp-end span{font-family:"Consolas",monospace}
@media(min-width:1700px){.s51{width:224px;flex-basis:224px}.m51{padding-left:36px;padding-right:36px}.content-layout{grid-template-columns:minmax(0,1fr) 360px;gap:32px}.cards-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,var(--cardw,360px)),1fr))}}
@media(max-width:1250px){.m51{padding-left:20px;padding-right:20px}.content-layout{grid-template-columns:minmax(0,1fr) 300px;gap:20px}.sc{padding:16px 12px}.sc[data-metric="count"]{padding:12px}.tool-right{gap:8px}.zoom-lab{display:none}}
@media(max-width:1100px){.content-layout{grid-template-columns:minmax(0,1fr)}.rail51{position:static;display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:18px}.cal51{border-top:0;padding-top:0}.sc{grid-column:span 4}.tool-right input[type=range]{width:70px}}
@media(max-width:760px){
  .app51{display:block}.s51{position:relative;top:auto;height:auto;width:100%;border:0;border-bottom:1px solid var(--bd)}
  .s51-brand{height:66px;padding:14px 20px;border:0}.s51-brand-t small{display:none}.s51-brand-t strong{font-size:17px}.logo51,.logo51 img{width:30px;height:30px}
  .s51-scroll{padding:0 12px 10px;overflow-x:auto;display:flex;gap:4px;align-items:center;flex:none;scrollbar-width:none}
  .s51-nav{display:flex;gap:4px;flex:0 0 auto}.s51-nav a{height:38px;padding:0 11px;gap:7px;font-size:12px;white-space:nowrap;margin:0}
  .s51-nav a .ni{width:15px;height:15px;flex-basis:15px}.s51-sec,.s51-themes{display:none}
  .s51-foot{position:absolute;top:13px;right:16px;display:flex;align-items:center;padding:0;border:0;gap:12px}
  .s51-foot .s51-card,.s51-user{display:none}.s51-foot>a{font-size:11px;padding:8px 0}.s51-foot>a.quit-app{display:none!important}
  .m51{padding:0 16px 24px;min-height:calc(100dvh - 114px)}.terminal-bar{height:36px;font-size:8px}.terminal-bar b{margin:0 6px}
  .m51-head{margin:20px 0}.mh-left h1{font-size:23px}.mh-left p{font-size:10px}.mh-btns button{width:34px;height:34px}
  .stat-strip{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:20px}
  .sc[data-metric="count"]{grid-column:span 1;display:flex;align-items:flex-start;min-height:85px;padding:12px 10px;justify-content:flex-start;gap:10px}
  .sc[data-metric="count"] .sc-val{font-size:22px!important;text-align:left}.sc-sub{display:none}.sc-lab{font-size:10px}
  .sc[data-metric="money"]{grid-column:span 2;min-height:92px;padding:14px;border-bottom:1px solid var(--bd2)}
  .sc[data-metric="money"]:nth-child(even){border-right:0}.sc[data-metric="money"]:last-child{grid-column:1/-1;min-height:72px;flex-direction:row;align-items:center;border-bottom:0}.sc[data-metric="money"]:last-child .sc-val{margin:0}.sc-val{margin-top:10px}.sc-val i{font-size:8px}
  .tool-row{flex-wrap:wrap;gap:12px;margin-bottom:15px}.search-box{width:100%}.tool-right{width:100%;justify-content:flex-end;gap:12px}.tool-right .view-toggle{margin-right:auto}.zoom-lab{display:block}
  .content-layout{gap:0}.cards-grid{gap:12px}.ac{padding:16px}.ac-name{font-size:15px}.ac-pnl{font-size:32px}.ac-rows{gap:14px 20px}
  .rail51{display:flex;gap:28px;margin-top:28px}.cal51{border-top:1px solid var(--bd);padding-top:22px}.chart51{height:240px}.q-t strong{font-size:14px}.q-head{margin-bottom:14px}
  .tf-btns{width:auto;margin-left:auto;border:0;padding:0;gap:3px}.tf-btns button{padding:0 7px}.q-price b{font-size:34px}
  .mod-flex{grid-template-columns:minmax(0,1fr)}.mform{gap:12px}.mfield{flex:1 1 150px}.mform input[type=text],.mform input[type=password],.mform input[type=number],.mform select,.mform input[type=date]{min-width:0;width:100%;height:44px;font-size:14px}
  .mform>.btn51{min-height:44px}.mod-card{padding:18px 0}.mod-card>h3{font-size:16px}.mod-table-wrap{width:100%}.mtable{font-size:12px}.mtable input{min-width:100px}.module-panel{overflow-x:hidden}
  .ov{padding:12px}.ov-box{width:100%;max-height:90dvh}.ov-head,.ov-body{padding:16px}.calendar-overlay .cal-editor{width:100%}.cal-form-grid{grid-template-columns:1fr}.cal-form-grid input,.cal-form-grid select{height:44px;font-size:14px}.cal-form-actions .btn51{height:44px}
  .lp-wrap,body[data-theme] .lp-wrap{padding:20px}.lp-card,body[data-theme] .lp-card{padding:28px 8px}.lp-brand>span{font-size:23px}
  .btn51,.cal-icon{min-height:36px}.c-head .cal-icon{width:40px;height:40px;flex-basis:40px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
