:root{font-family:Inter,"Microsoft YaHei",system-ui,sans-serif;background:#071019;color:#e8f0f7}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top right,#13283b 0,#071019 35%,#050b11 100%);min-height:100vh}.hidden{display:none!important}.center-card{width:390px;margin:11vh auto;padding:36px;background:#0d1925eF;border:1px solid #20374d;border-radius:20px;box-shadow:0 24px 90px #0009}.brand,.logo{color:#f0bd5f;font-weight:900;letter-spacing:1.5px}.logo small{font-size:10px;background:#d5a84e;color:#071019;padding:2px 5px;border-radius:4px}.center-card h1{margin:8px 0 4px}.center-card input,label input,label select,textarea,.search{width:100%;padding:11px 12px;margin:6px 0 12px;background:#08131e;color:#fff;border:1px solid #28425a;border-radius:9px;outline:none}.center-card input:focus,label input:focus,label select:focus,.search:focus{border-color:#c79a47}.center-card button{width:100%}button{background:#d6a64c;color:#071018;border:0;border-radius:9px;padding:10px 15px;font-weight:800;cursor:pointer}button:hover{filter:brightness(1.08)}.secondary{background:#24384a;color:#dce9f4}.warn{background:#553719;color:#ffd494}.danger{margin-top:auto;background:#351922!important;color:#ffadb7!important}.danger-btn{background:#49202b;color:#ffb0ba}.muted{color:#899dae}.app{display:grid;grid-template-columns:230px 1fr;min-height:100vh}aside{padding:22px 14px;background:#07111b;border-right:1px solid #1c3041;display:flex;flex-direction:column;gap:5px;position:sticky;top:0;height:100vh}.logo{font-size:20px;padding:10px 12px 20px}.nav{background:transparent;color:#b4c4d1;text-align:left;padding:11px 13px}.nav:hover,.nav.active{background:#132538;color:#fff}main{padding:25px;min-width:0}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}header h2{margin:0}header p{margin:5px 0;color:#7f94a7}.status-dot{background:#12382b;color:#70dda9;padding:7px 11px;border-radius:999px;font-size:12px;font-weight:800}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.stat,.panel{background:#0c1a27;border:1px solid #1f374b;border-radius:14px;padding:18px;box-shadow:0 8px 25px #0002}.stat span{color:#8ca1b3;font-size:13px}.stat strong{display:block;font-size:30px;margin-top:8px;color:#f0c36a}.panel{margin-top:15px}.hero{padding:24px}.hero h3{margin-top:0}.toolbar{display:flex;gap:9px;align-items:center;margin-bottom:12px;flex-wrap:wrap}.search{width:300px;margin:0 0 0 auto}.table-wrap{overflow:auto;padding:0}table{width:100%;border-collapse:collapse;min-width:1120px}th,td{padding:12px 11px;border-bottom:1px solid #1d3346;text-align:left;font-size:13px;vertical-align:middle}th{color:#89a0b3;background:#091722;position:sticky;top:0}tr:hover td{background:#10202e}.badge{padding:4px 8px;border-radius:999px;font-size:11px;white-space:nowrap}.ok{background:#143a2c;color:#74dfad}.bad{background:#43202a;color:#ff9faa}.off{background:#29343f;color:#aab8c4}code{color:#f0c36a}.actions{white-space:nowrap}.mini{padding:6px 8px;font-size:11px;margin:1px}dialog{border:1px solid #2d4a63;border-radius:14px;background:#0c1925;color:#fff;width:min(680px,92vw);box-shadow:0 30px 90px #000c}dialog::backdrop{background:#000b}dialog h3{margin-top:5px}.form-grid,.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 14px}.form-grid label,.settings-grid label{font-size:12px;color:#9baebe}.wide{grid-column:1/-1}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:12px}#batchResult{height:300px;resize:none;font-family:monospace}.settings-grid{margin-top:0}.settings-grid label input,.settings-grid label select{margin-bottom:4px}@media(max-width:1050px){.stats{grid-template-columns:1fr 1fr}.app{grid-template-columns:190px 1fr}}@media(max-width:760px){.app{grid-template-columns:1fr}aside{position:static;height:auto;display:grid;grid-template-columns:1fr 1fr}.logo{grid-column:1/-1}.danger{margin:0}main{padding:14px}.stats{grid-template-columns:1fr 1fr}.form-grid,.settings-grid{grid-template-columns:1fr}.wide{grid-column:auto}.search{width:100%;margin:0}}
.panel-title-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.panel-title-row h3{margin:0 0 5px}.panel-title-row p{margin:0}.account-filters{display:grid;grid-template-columns:minmax(240px,1.6fr) minmax(160px,.7fr) minmax(160px,.7fr);gap:10px;margin-top:15px}.account-filters .search,.account-filters select{width:100%;margin:0;padding:10px 12px;background:#08131e;color:#fff;border:1px solid #28425a;border-radius:9px}.batch-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:12px 0}.batch-bar .muted{margin-right:auto}.embedded-table{margin-top:8px;border:1px solid #1d3346;border-radius:10px}.embedded-table table{min-width:980px}.embedded-table input[type=checkbox]{width:16px;height:16px;accent-color:#d6a64c}.confirm-dialog{width:min(520px,92vw)}.confirm-meta{margin:14px 0;padding:12px 14px;background:#08131e;border:1px solid #243d52;border-radius:10px;color:#b8c7d3;line-height:1.8}.confirm-meta b{color:#f0c36a}.confirm-dialog p{line-height:1.7}@media(max-width:900px){.account-filters{grid-template-columns:1fr}.batch-bar .muted{width:100%;margin-right:0}}

.account-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;flex-wrap:wrap}.pagination-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pagination-actions label{display:flex;align-items:center;gap:6px;color:#b8c7d3}.pagination-actions select{width:auto;min-width:72px;margin:0;padding:8px 10px;background:#08131e;color:#fff;border:1px solid #28425a;border-radius:8px}.pagination-actions button:disabled{opacity:.45;cursor:not-allowed}

/* ===== 永恒量化登录页 ===== */
body:has(#loginView:not(.hidden)){display:flex;align-items:flex-start;justify-content:center;background:radial-gradient(circle at 50% 3%,#1c2b38 0,#0b1118 32%,#030608 78%);}
.login-card{width:min(520px,92vw);margin:8vh auto 0;padding:36px 58px 42px;text-align:center;background:linear-gradient(180deg,rgba(18,26,34,.98),rgba(7,12,17,.99));border:1px solid rgba(216,166,76,.82);border-radius:22px;box-shadow:0 0 0 1px rgba(240,195,106,.08) inset,0 22px 90px #000c,0 0 34px rgba(207,158,70,.10);position:relative;overflow:hidden}
.login-card:before{content:"";position:absolute;inset:0;border-radius:22px;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(255,221,149,.05),transparent)}
.login-logo{width:86px;height:86px;margin:0 auto 14px;border:2px solid #d8a64c;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 0 16px rgba(216,166,76,.18),inset 0 0 13px rgba(216,166,76,.08);position:relative}
.login-logo:after{content:"";position:absolute;inset:7px;border:1px solid rgba(240,195,106,.35);border-radius:50%}
.login-logo span{font-size:34px;line-height:1;font-weight:900;font-style:italic;letter-spacing:-2px;color:#efc06c;text-shadow:0 1px 0 #6e4c17,0 0 12px rgba(240,192,108,.18);position:relative;z-index:1}
.login-brand{font-size:31px;line-height:1.15;font-weight:900;letter-spacing:3px;color:#efc06c;text-shadow:0 1px 0 #6f4c18;margin-top:4px}
.login-card h1{margin:10px 0 12px;font-size:17px;letter-spacing:1.6px;color:#f4e9d4;font-weight:800}
.login-divider{display:flex;align-items:center;justify-content:center;gap:8px;margin:8px 0 8px}.login-divider span{height:1px;width:105px;background:linear-gradient(90deg,transparent,#c9994d)}.login-divider span:last-child{background:linear-gradient(90deg,#c9994d,transparent)}.login-divider i{font-style:normal;color:#e0ad53;font-size:9px}
.login-subtitle{margin:0 0 22px;color:#9ba8b4;font-size:13px;letter-spacing:.2px}
.login-card input{height:46px;margin:7px 0;padding:0 15px;background:#070d12;border:1px solid #5d4a28;border-radius:9px;color:#f5f5f5;text-align:left;box-shadow:inset 0 0 0 1px rgba(217,165,75,.05)}
.login-card input:focus{border-color:#d8a64c;box-shadow:0 0 0 2px rgba(216,166,76,.10)}
.login-card button{height:46px;margin-top:14px;background:linear-gradient(180deg,#efd080,#c89234);border:1px solid #f6da90;color:#17110a;font-size:14px;letter-spacing:1px;box-shadow:0 8px 22px rgba(184,126,35,.18),inset 0 1px 0 rgba(255,255,255,.42)}
.login-msg{min-height:18px;margin:10px 0 0}
@media(max-width:620px){.login-card{padding:30px 24px 34px;margin-top:5vh}.login-brand{font-size:27px}.login-card h1{font-size:15px}.login-divider span{width:72px}}
/* ===== 永恒量化登录页：按最终参考图同步 ===== */
body:has(#loginView:not(.hidden)){display:flex;align-items:flex-start;justify-content:center;background:radial-gradient(circle at 50% 4%,#172636 0,#09121c 38%,#020507 82%);}
.login-card{width:min(560px,92vw);margin:4.7vh auto 0;padding:58px 62px 54px;text-align:center;background:linear-gradient(180deg,rgba(13,27,41,.985),rgba(5,12,18,.995));border:1.2px solid #e7bb61;border-radius:22px;box-shadow:0 0 0 1px rgba(255,226,159,.06) inset,0 30px 100px #000d,0 0 34px rgba(219,169,72,.08);position:relative;overflow:hidden}
.login-card:before{content:"";position:absolute;inset:0;border-radius:22px;pointer-events:none;background:radial-gradient(circle at 50% 0,rgba(255,210,118,.10),transparent 20%),linear-gradient(90deg,transparent,rgba(255,255,255,.018),transparent)}
.login-card:after{content:"";position:absolute;left:43%;right:43%;top:-1px;height:2px;background:#ffd985;box-shadow:0 0 11px 3px rgba(255,190,65,.55);pointer-events:none}
.login-logo{width:126px;height:126px;margin:3px auto 24px;border:2px solid #e5b85b;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 0 18px rgba(224,172,74,.16),inset 0 0 15px rgba(224,172,74,.04);position:relative;background:radial-gradient(circle,rgba(25,32,39,.42),rgba(3,8,12,.16))}
.login-logo:after{content:"";position:absolute;width:11px;height:11px;left:8px;top:21px;border-radius:50%;background:#ffd66f;box-shadow:0 0 15px 5px rgba(255,181,52,.78)}
.login-logo span{font-family:Georgia,"Times New Roman",serif;font-size:52px;line-height:1;font-weight:700;font-style:italic;letter-spacing:-8px;padding-right:9px;color:#edbe63;background:linear-gradient(180deg,#fff0b8 0,#e8af46 52%,#9b671a 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 1px #3a260b);position:relative;z-index:1}
.login-brand{font-size:43px;line-height:1.08;font-weight:900;letter-spacing:6px;color:#f0c169;background:linear-gradient(180deg,#ffe89a 0,#dca23a 72%,#946018 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 3px 1px #39250c);margin:0 0 16px}
.login-card h1{margin:0 0 17px;font-size:22px;letter-spacing:3px;color:#f8ead1;font-weight:800;text-shadow:0 1px 0 #6a4a1d}
.login-divider{display:flex;align-items:center;justify-content:center;gap:9px;margin:3px 0 15px}.login-divider span{height:1px;width:120px;background:linear-gradient(90deg,transparent,#b98a3b)}.login-divider span:last-child{background:linear-gradient(90deg,#b98a3b,transparent)}.login-divider i{font-style:normal;color:#dfac50;font-size:9px}
.login-subtitle{margin:0 0 36px;color:#a5b1bf;font-size:17px;letter-spacing:.35px}
.login-field{height:58px;margin:0 0 18px;display:flex;align-items:center;gap:15px;padding:0 18px;background:rgba(4,11,17,.74);border:1px solid #536272;border-radius:11px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.012);transition:.18s ease}
.login-field:focus-within{border-color:#d9a84d;box-shadow:0 0 0 2px rgba(216,166,76,.08),inset 0 0 0 1px rgba(255,212,124,.04)}
.login-field svg{width:25px;height:25px;stroke:#a5afba;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
.login-card .login-field input{height:100%;margin:0;padding:0;background:transparent;border:0!important;border-radius:0;box-shadow:none!important;color:#f4f5f6;font-size:16px;text-align:left;outline:none}
.login-card .login-field input::placeholder{color:#737f8b}
.login-submit{width:100%;height:58px;margin-top:5px;background:linear-gradient(105deg,#f8d47e 0,#e5ad49 55%,#c98e2d 100%)!important;border:1px solid #f5d37d!important;border-radius:10px!important;color:#17120a!important;font-size:17px!important;font-weight:900!important;letter-spacing:2px!important;box-shadow:0 10px 28px rgba(190,127,30,.20),inset 0 1px 0 rgba(255,255,255,.46)!important}
.login-msg{min-height:18px;margin:10px 0 0}
#accountsPage .account-panel{margin-top:0}
@media(max-width:620px){.login-card{padding:42px 25px 38px;margin-top:3.5vh}.login-logo{width:104px;height:104px}.login-logo span{font-size:43px}.login-brand{font-size:34px}.login-card h1{font-size:18px}.login-subtitle{font-size:14px}.login-divider span{width:82px}}

/* ===== 分组管理：参考图统一样式 ===== */
#groupsPage .groups-panel{margin-top:0;padding:0;overflow:hidden;border-radius:14px;background:linear-gradient(180deg,#0b1722 0%,#09131d 100%);border:1px solid #22384b;box-shadow:0 14px 38px rgba(0,0,0,.22)}
.groups-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:28px 30px 24px;border-bottom:1px solid #223346}.groups-header h3{margin:0 0 8px;color:#e7b754;font-size:27px;line-height:1.15}.groups-header p{margin:0;color:#b1bdc8;font-size:14px}.groups-add-btn{min-width:132px;height:46px;border-radius:8px;background:linear-gradient(180deg,#efc264,#d9a23b);border:1px solid #ffd578;color:#111820;font-size:15px;box-shadow:inset 0 1px rgba(255,255,255,.32)}.groups-add-btn .plus{font-size:21px;font-weight:500;vertical-align:-1px}.groups-body{padding:22px 30px 24px}.group-search-wrap{position:relative;width:min(410px,100%);margin-bottom:18px}.group-search-icon{position:absolute;left:17px;top:50%;transform:translateY(-50%);font-size:24px;color:#90a2b2;pointer-events:none}.group-search{width:100%;height:46px;margin:0;padding:0 14px 0 48px;background:#08141f;border:1px solid #31475a;border-radius:8px;color:#e7edf2;font-size:14px;outline:none}.group-search:focus{border-color:#d6a64c;box-shadow:0 0 0 2px rgba(214,166,76,.08)}.group-table-shell{overflow:hidden;border:1px solid #24394b;border-radius:9px;background:#0a1621}.group-table{min-width:0;width:100%;table-layout:fixed}.group-table th{position:static;background:#0d1c29;color:#e7b754;font-size:14px;padding:15px 18px}.group-table th:first-child{width:70%}.group-table th:last-child{width:30%}.group-table td{padding:15px 18px;font-size:14px;color:#e6edf3;background:transparent}.group-table tbody tr:last-child td{border-bottom:0}.group-table tbody tr:hover td{background:#0f2030}.group-name-cell{font-weight:500}.group-actions{white-space:nowrap}.group-edit-btn,.group-delete-btn{height:38px;padding:0 14px;border-radius:7px;font-size:13px;font-weight:700;margin-right:10px}.group-edit-btn{background:#162635;color:#e3ebf2;border:1px solid #1d3041}.group-delete-btn{background:#331b24;color:#ff6f73;border:1px solid #43232c}.group-edit-btn span,.group-delete-btn span{margin-right:5px}.group-empty{text-align:center!important;color:#75899b!important;padding:32px!important}.group-pagination{display:flex;align-items:center;justify-content:space-between;margin-top:20px;color:#d3dde5;font-size:14px}.group-page-actions{display:flex;align-items:center;gap:9px}.group-page-btn{width:40px;height:40px;padding:0;background:#091521;color:#9eafbd;border:1px solid #24384a;border-radius:8px;font-size:22px;line-height:1}.group-page-btn:disabled{opacity:.35;cursor:not-allowed}.group-page-current{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid #d3a03f;border-radius:7px;color:#f0bd5f;background:#0a1621}.group-page-size{height:40px;padding:0 36px 0 13px;background:#0a1621;color:#e4edf4;border:1px solid #2d4254;border-radius:8px}.groups-panel + *{margin-top:0}@media(max-width:760px){.groups-header{padding:22px 18px;align-items:flex-start}.groups-header h3{font-size:23px}.groups-body{padding:18px}.group-table th:first-child{width:58%}.group-table th:last-child{width:42%}.group-pagination{align-items:flex-start;gap:12px}.group-page-actions{flex-wrap:wrap;justify-content:flex-end}}

/* ===== 参考图一致的后台骨架 ===== */
#appView.app{
  min-height:100vh;
  display:grid;
  grid-template-columns:272px minmax(0,1fr);
  grid-template-rows:108px minmax(0,1fr);
  background:
    radial-gradient(circle at 65% 15%,rgba(17,45,69,.20),transparent 34%),
    linear-gradient(145deg,#03080d 0%,#07111a 52%,#09141e 100%);
  border:1px solid rgba(224,170,68,.78);
  border-radius:16px;
  overflow:hidden;
  box-shadow:inset 0 0 36px rgba(0,0,0,.35);
}
#appView.hidden{display:none!important}
.app-topbar{
  grid-column:1/-1;
  grid-row:1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 30px 0 42px;
  border-bottom:1px solid #233241;
  background:linear-gradient(180deg,rgba(4,10,15,.97),rgba(4,11,17,.92));
}
.top-brand{display:flex;align-items:center;gap:18px}
.top-yh{
  width:66px;height:66px;border:2px solid #d7a63d;border-radius:50%;
  display:grid;place-items:center;color:#e1af42;font-family:Georgia,serif;
  font-size:28px;font-style:italic;font-weight:800;letter-spacing:-5px;
  box-shadow:0 0 18px rgba(225,175,66,.12),inset 0 0 0 1px rgba(255,225,147,.15);
}
.top-brand-name{font-size:26px;font-weight:900;color:#dfad3f;letter-spacing:1px;line-height:1.15}
.top-brand-sub{margin-top:7px;font-size:15px;color:#aab3bc;letter-spacing:.4px}
.top-actions{display:flex;align-items:center;gap:12px;color:#b8c0c8}
.top-bell{width:22px;height:22px;display:grid;place-items:center}
.top-bell svg,.logout-icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.top-divider{width:1px;height:18px;background:#263541}
.top-logout{display:flex;align-items:center;gap:8px;background:transparent!important;border:0!important;color:#d8dde2!important;font-size:14px!important;padding:7px 2px!important;box-shadow:none!important;cursor:pointer}
.top-logout:hover{color:#f0bd45!important}
.logout-icon{color:#aeb6be}
#appView aside{
  grid-column:1;grid-row:2;position:relative;min-height:calc(100vh - 108px);
  padding:18px 0 118px;background:linear-gradient(180deg,rgba(5,12,18,.98),rgba(4,11,17,.98));
  border-right:1px solid #273746;
}
.side-nav{display:flex;flex-direction:column;gap:4px}
#appView .nav{
  width:100%;height:58px;border:0!important;border-radius:0!important;background:transparent!important;
  color:#dbe2e9!important;display:flex;align-items:center;gap:18px;padding:0 30px!important;
  font-size:17px!important;font-weight:600!important;text-align:left;box-shadow:none!important;position:relative;
}
#appView .nav:hover{background:rgba(29,43,55,.54)!important}
#appView .nav.active{
  color:#f2c34e!important;background:linear-gradient(90deg,rgba(185,132,27,.16),rgba(50,42,25,.26))!important;
}
#appView .nav.active:after{content:"";position:absolute;right:0;top:0;bottom:0;width:3px;background:#e2b342;box-shadow:0 0 10px rgba(226,179,66,.55)}
.nav-icon{width:24px;text-align:center;font-size:22px;color:#c6ced5;font-weight:400}
#appView .nav.active .nav-icon{color:#e5b643}
.admin-card{
  position:absolute;left:18px;right:18px;bottom:20px;min-height:88px;border:1px solid #2a3948;border-radius:10px;
  display:grid;grid-template-columns:52px 1fr 20px;align-items:center;gap:10px;padding:12px 14px;background:#09131d;color:#fff;
}
.admin-shield{width:42px;height:50px;display:grid;place-items:center;color:#d6a43c;font-size:30px;text-shadow:0 0 16px rgba(214,164,60,.22)}
.admin-card strong{display:block;font-size:16px}.admin-card small{display:block;margin-top:5px;color:#e6b541;font-size:13px;font-weight:700}.admin-chevron{color:#aeb8c0}
#appView main{grid-column:2;grid-row:2;min-width:0;padding:24px 24px 40px;background:transparent}
#appView main>header{min-height:76px;margin:0 0 14px;padding:4px 4px 16px;border-bottom:0;background:transparent}
#appView main>header h2{font-size:28px;color:#e4b445;margin:0 0 8px;font-weight:800}
#appView main>header p{color:#99a7b3;margin:0;font-size:14px}
.status-dot{border:1px solid rgba(80,191,126,.35);background:rgba(26,105,60,.22);color:#63df99;border-radius:18px;padding:7px 12px;font-weight:700;font-size:12px}
#appView .panel{background:linear-gradient(180deg,rgba(10,23,34,.92),rgba(8,19,29,.94));border:1px solid #294051;border-radius:12px;box-shadow:none}
#appView table thead th{color:#e3b341;background:#0b1721;border-bottom:1px solid #2b3b49}
#appView table td{border-bottom:1px solid #22323f}
#appView .toolbar button:not(.secondary),#appView button.groups-add-btn{background:linear-gradient(180deg,#efc55d,#dba840)!important;color:#151a1f!important;border:1px solid #f4cf73!important;box-shadow:0 3px 12px rgba(222,170,62,.16)!important}
#appView input,#appView select,#appView textarea{background:#081521;border-color:#294459;color:#f2f5f7}
#appView dialog{background:#0b1925;border:1px solid #36536a;color:#eef3f7;box-shadow:0 30px 80px rgba(0,0,0,.55)}

/* 分组管理参考图细节 */
.groups-panel{padding:0!important;overflow:hidden}
.groups-header{padding:26px 28px 24px!important;border-bottom:1px solid #263947!important}
.groups-header h3{font-size:27px!important;color:#e5b440!important;margin:0 0 12px!important}
.groups-header p{font-size:15px!important;color:#a9b4bd!important}
.groups-body{padding:22px 28px 28px!important}
.group-search-wrap{max-width:405px!important}
.group-table-shell{border-radius:10px!important;overflow:hidden;border:1px solid #2a3e4e!important}
.group-table th:first-child{width:auto!important}.group-table th:last-child{width:245px!important}
.group-pagination{margin-top:20px!important}

@media (max-width:900px){
  #appView.app{grid-template-columns:210px minmax(0,1fr);grid-template-rows:92px minmax(0,1fr)}
  .app-topbar{padding-left:24px}.top-yh{width:54px;height:54px;font-size:23px}.top-brand-name{font-size:22px}.top-brand-sub{font-size:12px}
  #appView aside{min-height:calc(100vh - 92px)}#appView .nav{padding:0 18px!important;font-size:15px!important}.nav-icon{font-size:18px}
}

/* ===== 2026-08 最终确认：登录Logo / 控制中心 / 分组代理商 ===== */
.login-logo-img{display:block;width:210px;height:auto;margin:0 auto 10px;object-fit:contain;mix-blend-mode:screen}
.top-yh-img{width:70px;height:66px;object-fit:cover;object-position:center;border-radius:50%;mix-blend-mode:screen}
.groups-add-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;line-height:1!important;padding-top:0!important;padding-bottom:0!important;height:48px!important}
.groups-add-btn .plus{display:inline-flex;align-items:center;justify-content:center;line-height:1!important}
.group-table th:nth-child(2){width:32%!important}.group-table th:last-child{width:245px!important}
.dashboard-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.dashboard-heading h2{margin:0;color:#f0f3f5;font-size:25px}.dashboard-heading p{margin:7px 0 0;color:#8797a5}.dashboard-heading span{color:#aeb8c1;font-size:13px}
.dashboard-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.metric-card,.dash-chart-card,.recent-card{background:linear-gradient(180deg,rgba(10,23,34,.96),rgba(8,18,27,.96));border:1px solid #263b4b;border-radius:12px}.metric-card{padding:20px}.metric-card span{display:block;color:#c5ced5;font-size:14px}.metric-card strong{display:block;font-size:30px;margin:10px 0 8px;color:#f3f5f6}.metric-card small{color:#8494a2}.metric-green{color:#55c878!important}.metric-red{color:#ef646a!important}
.dashboard-charts{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.dash-chart-card{padding:20px}.dash-chart-card h3,.recent-card h3{margin:0;color:#eef2f4;font-size:18px}.chart-layout{display:flex;align-items:center;justify-content:center;gap:36px;min-height:245px}.donut{width:158px;height:158px;border-radius:50%;position:relative;display:grid;place-items:center}.donut:after{content:"";position:absolute;inset:24px;background:#091722;border-radius:50%;border:1px solid #203544}.donut>div{position:relative;z-index:1;text-align:center}.donut span{display:block;color:#8f9ca7;font-size:12px}.donut b{display:block;color:#f3f5f6;font-size:22px;margin-top:5px}.chart-legend{min-width:160px}.chart-legend>div{display:grid;grid-template-columns:12px 1fr auto;gap:8px;align-items:center;margin:12px 0;color:#cbd3d9;font-size:13px}.chart-legend b{color:#f0f2f4;font-weight:600}.dot{width:9px;height:9px;border-radius:50%;display:block}.dot.green{background:#55c878}.dot.gold{background:#e2b341}.dot.red{background:#ef5b62}.dot.orange{background:#ef8a39}.dot.blue{background:#3988e8}
.recent-card{margin-top:14px;padding:20px}.recent-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.link-button{background:transparent!important;color:#e3b341!important;padding:4px!important;box-shadow:none!important}.recent-table{min-width:760px!important}.recent-table th{position:static!important}
@media(max-width:1050px){.dashboard-metrics{grid-template-columns:1fr 1fr}.dashboard-charts{grid-template-columns:1fr}.chart-layout{gap:22px}}

/* ===== 左侧菜单：严格按用户参考图 ===== */
#appView.app{grid-template-columns:146px minmax(0,1fr)!important}
#appView aside{padding:0 0 94px!important;background:#06111a!important;border-right:1px solid #172936!important;min-height:calc(100vh - 108px)!important}
.side-nav{gap:0!important;padding-top:0!important}
#appView .nav{
  height:52px!important;min-height:52px!important;padding:0 10px!important;gap:11px!important;
  font-size:14px!important;font-weight:500!important;letter-spacing:.1px!important;color:#d7dde2!important;
  border-radius:0!important;justify-content:flex-start!important;
}
#appView .nav:hover{background:#0b1a25!important}
#appView .nav.active{color:#f0b62e!important;background:#0d1c27!important}
#appView .nav.active:after{display:none!important}
.nav-icon{width:18px!important;height:18px!important;flex:0 0 18px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;color:#cbd3d9!important}
.nav-icon svg{width:18px!important;height:18px!important;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#appView .nav.active .nav-icon{color:#f0b62e!important}
.admin-card{
  left:0!important;right:0!important;bottom:0!important;min-height:94px!important;height:94px!important;border:0!important;border-top:1px solid #172936!important;border-radius:0!important;
  grid-template-columns:42px 1fr 16px!important;gap:8px!important;padding:13px 10px!important;background:#06111a!important;
}
.admin-shield{width:38px!important;height:46px!important;font-size:0!important;display:flex!important;align-items:center!important;justify-content:center!important;filter:drop-shadow(0 0 8px rgba(222,166,48,.30))}
.admin-shield svg{width:38px!important;height:46px!important;display:block!important}
.admin-card strong{font-size:14px!important;line-height:1.15!important;font-weight:600!important;color:#f0f2f4!important}
.admin-card small{margin-top:5px!important;font-size:12px!important;line-height:1!important;font-weight:800!important;color:#e8ae29!important;white-space:nowrap!important}
.admin-chevron{font-size:14px!important;color:#8f9ca7!important;align-self:center!important}
@media(max-width:900px){#appView.app{grid-template-columns:138px minmax(0,1fr)!important}#appView .nav{padding:0 9px!important;font-size:13px!important;gap:10px!important}.nav-icon,.nav-icon svg{width:17px!important;height:17px!important}.nav-icon{flex-basis:17px!important}}

/* Dashboard compact typography: keep layout sizes unchanged */
#dashboardPage{font-size:13px}
#dashboardPage .dashboard-heading h2{font-size:22px}
#dashboardPage .dashboard-heading p{font-size:13px}
#dashboardPage .metric-card span{font-size:13px}
#dashboardPage .metric-card strong{font-size:27px}
#dashboardPage .metric-card small{font-size:12px}
#dashboardPage .dash-chart-card h3,#dashboardPage .recent-card h3{font-size:16px}
#dashboardPage .chart-legend>div{font-size:12px}
#dashboardPage table{font-size:12px}
#dashboardPage input,#dashboardPage select,#dashboardPage button{font-size:12px}

/* ===== 手机版响应式布局（不影响桌面版） ===== */
.mobile-menu-btn,.mobile-nav-overlay{display:none}
@media (max-width:768px){
  html,body{max-width:100%;overflow-x:hidden}
  body{min-width:0}
  #loginView.login-card{width:calc(100vw - 28px)!important;max-width:430px!important;margin:14px auto!important;padding:28px 20px!important;border-radius:20px!important}
  .login-logo-img{width:150px!important;margin-bottom:4px!important}
  .login-brand{font-size:34px!important}
  #loginView h1{font-size:18px!important;letter-spacing:2px!important}
  .login-subtitle{font-size:13px!important}
  .login-field{height:52px!important}
  .login-submit{height:52px!important;font-size:17px!important}

  #appView.app{display:block!important;min-height:100vh!important;padding-top:66px!important}
  .app-topbar{position:fixed!important;z-index:1200!important;top:0!important;left:0!important;right:0!important;height:66px!important;min-height:66px!important;padding:0 12px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;background:#06111a!important;border-bottom:1px solid #172936!important}
  .top-brand{gap:8px!important;min-width:0!important}
  .top-yh-img{width:40px!important;height:40px!important;flex:0 0 40px!important}
  .top-brand-name{font-size:17px!important;line-height:1.1!important}
  .top-brand-sub{font-size:10px!important;white-space:nowrap!important}
  .top-actions{margin-left:auto!important}
  .top-logout{padding:7px 5px!important;gap:5px!important;font-size:12px!important}
  .logout-icon{width:17px!important;height:17px!important}
  .mobile-menu-btn{display:inline-flex!important;order:-1;width:38px;height:38px;padding:0!important;margin-right:7px!important;align-items:center;justify-content:center;background:transparent!important;border:0!important;color:#d7dde2!important;box-shadow:none!important;flex:0 0 38px}
  .mobile-menu-btn svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}

  #appView aside{position:fixed!important;z-index:1300!important;top:66px!important;bottom:0!important;left:0!important;width:238px!important;min-height:0!important;height:calc(100vh - 66px)!important;transform:translateX(-102%)!important;transition:transform .22s ease!important;box-shadow:12px 0 32px rgba(0,0,0,.38)!important;padding-bottom:88px!important;overflow-y:auto!important}
  #appView.mobile-nav-open aside{transform:translateX(0)!important}
  .mobile-nav-overlay{display:block!important;position:fixed!important;z-index:1250!important;inset:66px 0 0 0!important;background:rgba(0,0,0,.50)!important;opacity:0!important;visibility:hidden!important;transition:.2s ease!important}
  #appView.mobile-nav-open .mobile-nav-overlay{opacity:1!important;visibility:visible!important}
  #appView .nav{height:48px!important;min-height:48px!important;padding:0 18px!important;font-size:14px!important;gap:13px!important}
  .nav-icon,.nav-icon svg{width:18px!important;height:18px!important}.nav-icon{flex-basis:18px!important}
  .admin-card{min-height:82px!important;height:82px!important;grid-template-columns:38px 1fr 14px!important;padding:10px 14px!important}
  .admin-shield,.admin-shield svg{width:34px!important;height:42px!important}

  #appView main{display:block!important;width:100%!important;min-width:0!important;padding:12px 10px 28px!important;margin:0!important}
  #appView main>header{min-height:54px!important;margin-bottom:8px!important;padding:2px 2px 8px!important;display:flex!important;align-items:center!important}
  #appView main>header h2{font-size:21px!important;margin-bottom:4px!important}
  #appView main>header p{font-size:11px!important}
  .status-dot{font-size:10px!important;padding:5px 8px!important}

  #appView .panel{border-radius:10px!important;padding:14px!important}
  .panel-title-row,.toolbar,.account-filters,.batch-bar,.account-pagination,.pagination-actions{gap:8px!important}
  .panel-title-row{align-items:flex-start!important;flex-wrap:wrap!important}
  .toolbar,.batch-bar{display:flex!important;flex-wrap:wrap!important}
  .toolbar button,.batch-bar button{min-height:38px!important;padding:8px 10px!important;font-size:12px!important}
  .account-filters{display:grid!important;grid-template-columns:1fr!important}
  .account-filters>*{width:100%!important;max-width:none!important}
  .account-pagination{display:flex!important;flex-direction:column!important;align-items:stretch!important}
  .pagination-actions{display:flex!important;flex-wrap:wrap!important;justify-content:flex-start!important}

  .dashboard-heading{margin-bottom:10px!important}.dashboard-heading h2{font-size:20px!important}.dashboard-heading p{font-size:11px!important}.dashboard-heading span{font-size:10px!important}
  .dashboard-metrics{grid-template-columns:1fr 1fr!important;gap:8px!important}.metric-card{padding:12px!important}.metric-card span{font-size:11px!important}.metric-card strong{font-size:23px!important;margin:6px 0 5px!important}.metric-card small{font-size:10px!important}
  .dashboard-charts{grid-template-columns:1fr!important;gap:8px!important;margin-top:8px!important}.dash-chart-card{padding:13px!important}.chart-layout{min-height:185px!important;gap:16px!important}.donut{width:122px!important;height:122px!important}.donut:after{inset:19px!important}.donut b{font-size:18px!important}.chart-legend{min-width:0!important;flex:1!important}.chart-legend>div{font-size:11px!important;margin:8px 0!important;grid-template-columns:10px 1fr auto!important;gap:6px!important}
  .recent-card{margin-top:8px!important;padding:13px!important}.recent-head{margin-bottom:8px!important}.recent-table{min-width:650px!important}

  .table-wrap{width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}.table-wrap table{min-width:720px!important}.table-wrap::-webkit-scrollbar{height:5px}.table-wrap::-webkit-scrollbar-thumb{background:#34495a;border-radius:10px}
  table th,table td{padding:10px 8px!important;font-size:12px!important;white-space:nowrap!important}

  .groups-header{padding:17px 15px!important}.groups-header h3{font-size:21px!important;margin-bottom:7px!important}.groups-header p{font-size:12px!important}.groups-body{padding:14px!important}.group-search-wrap{max-width:none!important}.group-table-shell{overflow-x:auto!important}.group-table{min-width:560px!important}.group-table th:last-child{width:170px!important}.groups-add-btn{height:40px!important;font-size:12px!important;padding:0 12px!important}

  dialog{width:calc(100vw - 20px)!important;max-width:520px!important;max-height:88vh!important;padding:16px!important;margin:auto!important;overflow:auto!important;border-radius:14px!important}
  dialog::backdrop{background:rgba(0,0,0,.72)!important}
  dialog h3{font-size:19px!important}
  .form-grid{grid-template-columns:1fr!important;gap:10px!important}
  .form-grid .wide{grid-column:auto!important}
  dialog input,dialog select,dialog textarea{font-size:16px!important;min-height:44px!important}
  dialog textarea{min-height:130px!important}
  .dialog-actions{position:sticky!important;bottom:-16px!important;background:#0b1925!important;padding:12px 0 2px!important;z-index:2!important}
  .dialog-actions button{min-height:42px!important;font-size:13px!important}

  .settings-grid{grid-template-columns:1fr!important}
}
@media (max-width:390px){
  .top-brand-sub{display:none!important}
  .top-brand-name{font-size:16px!important}
  .top-logout span{display:none!important}
  .dashboard-metrics{grid-template-columns:1fr!important}
  .chart-layout{align-items:flex-start!important}
}

/* ===== Mobile hidden state fix ===== */
#loginView.hidden,
#appView.hidden {
    display: none !important;
}

/* 去除登录框四角金色装饰 */
.login-card{
  border-color:#223346 !important;
  box-shadow:none !important;
}

.login-card::before,
.login-card::after{
  display:none !important;
}


/* 去除后台金色边框/装饰线 */
#appView .nav .active:after{
    display:none !important;
    content:none !important;
    box-shadow:none !important;
}


/* 去除后台主界面最外围金色边框、四角和底部金线 */
#appView,
#appView.app {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

#appView::before,
#appView::after,
#appView.app::before,
#appView.app::after {
    content: none !important;
    display: none !important;
    border: 0 !important;
    box-shadow: none !important;
}


/* ===== 手机端侧边栏优化 ===== */
@media (max-width:760px){

    /* 侧栏从 238px 缩窄到 200px */
    #appView aside{
        width:200px !important;
    }

    /* 隐藏状态下同步移动 200px */
    #appView aside{
        transform:translateX(-102%) !important;
    }

    /* 打开侧栏 */
    #appView.mobile-nav-open aside{
        transform:translateX(0) !important;
    }

    /* 菜单项 */
    #appView .nav{
        width:100% !important;
    }

    #appView .nav button{
        width:100% !important;
        min-width:0 !important;
        padding:0 16px !important;
        white-space:nowrap !important;
        flex-wrap:nowrap !important;
        justify-content:flex-start !important;
    }

    /* 菜单文字禁止换行 */
    #appView .nav button span{
        white-space:nowrap !important;
        word-break:keep-all !important;
    }
}


/* ===== 手机端侧边栏最终优化 ===== */
@media (max-width:760px){

    /* 侧栏宽度适中 */
    #appView aside{
        width:220px !important;
        transform:translateX(-102%) !important;
    }

    #appView.mobile-nav-open aside{
        transform:translateX(0) !important;
    }

    /* 菜单整体 */
    #appView .nav{
        width:100% !important;
        padding:8px 0 !important;
    }

    /* 每个菜单按钮 */
    #appView .nav button{
        width:100% !important;
        height:52px !important;
        min-height:52px !important;
        padding:0 16px !important;
        display:flex !important;
        align-items:center !important;
        justify-content:flex-start !important;
        gap:14px !important;
        white-space:nowrap !important;
        flex-wrap:nowrap !important;
        text-align:left !important;
        font-size:16px !important;
        line-height:1 !important;
    }

    /* 图标固定宽度，避免挤文字 */
    #appView .nav button svg,
    #appView .nav button .nav-icon{
        flex:0 0 24px !important;
        width:24px !important;
        min-width:24px !important;
        height:24px !important;
    }

    /* 所有菜单文字强制单行 */
    #appView .nav button span{
        display:block !important;
        flex:1 1 auto !important;
        min-width:0 !important;
        white-space:nowrap !important;
        word-break:keep-all !important;
        overflow:visible !important;
        line-height:1.2 !important;
    }

    /* 管理员底部区域也跟随220px */
    #appView aside .admin-card{
        width:100% !important;
    }
}


/* 手机端侧栏宽度微调 */
@media (max-width:760px){
    #appView aside{
        width:200px !important;
    }
}


/* 手机端侧栏进一步缩窄 */
@media (max-width:760px){
    #appView aside{
        width:180px !important;
    }
}




/* 手机端侧栏进一步缩窄 */

@media (max-width:760px){

    #appView aside{

        width:160px !important; 

    }

}






/* 手机端侧栏进一步缩窄 */

@media (max-width:760px){

    #appView aside{

        width:120px !important; 

    }

}




/* ===== 修复手机侧栏文字重叠 ===== */
@media (max-width:760px){

    #appView aside{
        width:200px !important;
    }

    #appView .nav button{
        width:100% !important;
        padding:0 10px !important;
        gap:9px !important;
        font-size:15px !important;
        white-space:nowrap !important;
        flex-wrap:nowrap !important;
    }

    #appView .nav button span{
        display:inline-block !important;
        width:auto !important;
        min-width:max-content !important;
        max-width:none !important;
        white-space:nowrap !important;
        word-break:keep-all !important;
        overflow:visible !important;
    }

    #appView .nav button svg,
    #appView .nav button .nav-icon{
        flex:0 0 22px !important;
        width:22px !important;
        min-width:22px !important;
        height:22px !important;
    }
}


/* ===== 登录页手机端底部背景统一 ===== */
html,
body{
    min-height:100%;
    background:#071019 !important;
}

body{
    min-height:100vh !important;
    min-height:100dvh !important;
}

/* 登录界面整屏背景统一 */
#loginView{
    min-height:100vh !important;
    min-height:100dvh !important;
    background:#071019 !important;
}

/* 手机端 Safari 额外处理 */
@media (max-width:760px){
    html,
    body,
    #loginView{
        background:#071019 !important;
    }

    #loginView{
        min-height:100dvh !important;
    }
}


/* ===== 修复浏览器自动填充/历史记录导致输入框白底 ===== */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill {
    -webkit-text-fill-color:#eef3f7 !important;
    caret-color:#eef3f7 !important;

    -webkit-box-shadow:0 0 0 1000px #081521 inset !important;
    box-shadow:0 0 0 1000px #081521 inset !important;

    background-color:#081521 !important;
    border-color:#294459 !important;

    transition:background-color 9999s ease-out 0s !important;
}

/* 普通输入状态也统一深色 */
#appView input,
#appView textarea,
#appView select,
#loginView input {
    background:#081521 !important;
    color:#eef3f7 !important;
}

/* Safari / Chrome 选择历史内容后的文字颜色 */
#appView input::selection,
#loginView input::selection {
    background:#294459 !important;
    color:#ffffff !important;
}


/* ===== 登录页 Logo 重新布局 ===== */

#loginView .login-logo{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    margin:8px auto 18px !important;
}

#loginView .login-logo-img{
    display:block !important;
    width:150px !important;
    height:150px !important;
    object-fit:contain !important;
    margin:0 auto !important;
}

/* 删除品牌文字后不再占空间 */
#loginView .login-brand{
    display:none !important;
    margin:0 !important;
    height:0 !important;
}

/* Logo 与副标题之间重新控制间距 */
#loginView .login-subtitle{
    margin-top:4px !important;
}


/* 后台顶部品牌标题：字体沿用登录页 login-subtitle */
#appView .top-brand-title{
    margin:0 !important;
    padding:0 !important;
    text-align:left !important;
    white-space:nowrap !important;
}


/* ===== 后台顶部 EA 商业授权管理中心：匹配登录页标题风格 ===== */
#appView .top-brand-title{
    margin:0 !important;
    padding:0 !important;
    text-align:left !important;
    white-space:nowrap !important;

    font-family:Inter,"Microsoft YaHei",system-ui,sans-serif !important;
    font-size:13px !important;
    font-weight:800 !important;
    letter-spacing:2px !important;
    line-height:1.35 !important;

    color:#ffd66f !important;
    text-shadow:0 1px 8px rgba(255,190,65,.25) !important;
}


/* ===== 后台顶部品牌：Logo 上方，标题下方 ===== */
#appView .top-brand{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:3px !important;
}

/* Logo */
#appView .top-yh-img{
    width:40px !important;
    height:40px !important;
    flex:0 0 40px !important;
    object-fit:contain !important;
}

/* EA 商业授权管理中心 */
#appView .top-brand-title{
    margin:0 !important;
    padding:0 !important;

    font-family:Inter,"Microsoft YaHei",system-ui,sans-serif !important;
    font-size:15px !important;
    font-weight:800 !important;
    letter-spacing:2px !important;
    line-height:1.2 !important;

    color:#ffd66f !important;
    text-shadow:0 1px 8px rgba(255,190,65,.25) !important;

    text-align:center !important;
    white-space:nowrap !important;
}


#appView .top-yh-img{
    width:34px !important;
    height:34px !important;
    flex-basis:34px !important;
}

#appView .top-brand-title{
    font-size:15px !important;
    margin-top:-2px !important;
}


/* ===== 恢复后台顶部 Logo 原尺寸 ===== */
#appView .top-yh-img{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    min-height:40px !important;
    flex:0 0 40px !important;
    object-fit:contain !important;
}


/* ===== 后台左上角品牌最终样式 ===== */

/* 品牌整体：左上角横向排列 */
#appView .top-brand{
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:18px !important;
    min-width:0 !important;
    margin-left:22px !important;
}

/* YH Logo：放大突出 */
#appView .top-yh-img{
    width:68px !important;
    height:68px !important;
    min-width:68px !important;
    min-height:68px !important;
    flex:0 0 68px !important;
    object-fit:contain !important;
    filter:drop-shadow(0 0 10px rgba(240,195,90,.20)) !important;
}

/* EA 商业授权管理中心 */
#appView .top-brand-title{
    margin:0 !important;
    padding:0 !important;

    font-family:Inter,"Microsoft YaHei",system-ui,sans-serif !important;
    font-size:22px !important;
    font-weight:900 !important;
    line-height:1.15 !important;
    letter-spacing:2px !important;

    color:#ffd66f !important;
    text-align:left !important;
    white-space:nowrap !important;

    text-shadow:
        0 1px 0 rgba(255,255,255,.12),
        0 0 12px rgba(240,190,70,.22) !important;
}

/* 顶部高度配合放大的品牌 */
#appView .app-topbar{
    height:94px !important;
    min-height:94px !important;
}


/* ===== 后台左上角品牌最终调整 ===== */

/* Logo + 标题整体往左 */
#appView .top-brand{
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:16px !important;

    margin-left:4px !important;
    padding-left:0 !important;
}

/* Logo 放大到 80px */
#appView .top-yh-img{
    width:80px !important;
    height:80px !important;
    min-width:80px !important;
    min-height:80px !important;
    flex:0 0 80px !important;
    object-fit:contain !important;

    filter:drop-shadow(0 0 12px rgba(240,195,90,.28)) !important;
}

/* 标题大小保持不变 */
#appView .top-brand-title{
    margin:0 !important;
    padding:0 !important;

    font-family:Inter,"Microsoft YaHei",system-ui,sans-serif !important;
    font-size:22px !important;
    font-weight:900 !important;
    line-height:1.15 !important;
    letter-spacing:2px !important;

    color:#ffd66f !important;
    text-align:left !important;
    white-space:nowrap !important;

    text-shadow:
        0 1px 0 rgba(255,255,255,.12),
        0 0 12px rgba(240,190,70,.22) !important;
}

/* 顶部高度适配 80px Logo */
#appView .app-topbar{
    height:100px !important;
    min-height:100px !important;
}


/* ===== 左上角品牌位置最终调整 ===== */
#appView .top-brand{
    margin-left:0 !important;
    padding-left:18px !important;
    gap:16px !important;
}

/* Logo 保持大尺寸 */
#appView .top-yh-img{
    width:80px !important;
    height:80px !important;
    min-width:80px !important;
    min-height:80px !important;
    flex:0 0 80px !important;
    object-fit:contain !important;
}

/* 授权管理中心字体保持当前大小 */
#appView .top-brand-title{
    font-size:22px !important;
    margin:0 !important;
    white-space:nowrap !important;
}


/* ===== 抵消 app-topbar 原来的 12px 左右内边距 ===== */
#appView .app-topbar{
    padding-left:0 !important;
    padding-right:12px !important;
}

/* 品牌左侧最终间距 */
#appView .top-brand{
    margin-left:0 !important;
    padding-left:18px !important;
}


/* ==================================================
   手机端顶部品牌栏优化
   PC端不受影响
   ================================================== */
@media (max-width:760px){

    /* 顶部栏 */
    #appView .app-topbar{
        height:82px !important;
        min-height:82px !important;
        padding:0 14px 0 8px !important;
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
    }

    /* 左侧：菜单按钮 + 品牌区域 */
    #appView .top-brand{
        margin-left:0 !important;
        padding-left:0 !important;
        gap:10px !important;
        display:flex !important;
        flex-direction:row !important;
        align-items:center !important;
        min-width:0 !important;
    }

    /* 手机端 Logo
       PC 是 80px，手机缩到 58px，避免顶部太拥挤 */
    #appView .top-yh-img{
        width:58px !important;
        height:58px !important;
        min-width:58px !important;
        min-height:58px !important;
        flex:0 0 58px !important;
        object-fit:contain !important;
    }

    /* 授权管理中心 */
    #appView .top-brand-title{
        font-size:18px !important;
        font-weight:900 !important;
        line-height:1.15 !important;
        letter-spacing:1px !important;
        white-space:nowrap !important;
        margin:0 !important;
        padding:0 !important;
    }

    /* 汉堡菜单 */
    #appView .mobile-menu-btn{
        width:38px !important;
        height:38px !important;
        min-width:38px !important;
        flex:0 0 38px !important;
        margin-right:4px !important;
        padding:0 !important;
    }

    /* 退出按钮 */
    #appView .top-logout{
        margin-left:auto !important;
        padding-left:8px !important;
        flex-shrink:0 !important;
    }

    /* 手机隐藏“退出登录”文字，只保留图标 */
    #appView .top-logout span{
        display:none !important;
    }
}


/* ===== 手机端顶部品牌栏进一步缩小 ===== */
@media (max-width:760px){

    /* 整个顶部栏降低高度，避免挡住下面标题 */
    #appView .app-topbar{
        height:68px !important;
        min-height:68px !important;
        padding-top:0 !important;
        padding-bottom:0 !important;
    }

    /* 手机 Logo 缩小 */
    #appView .top-yh-img{
        width:46px !important;
        height:46px !important;
        min-width:46px !important;
        min-height:46px !important;
        flex:0 0 46px !important;
    }

    /* Logo 与标题距离稍微收紧 */
    #appView .top-brand{
        gap:8px !important;
    }

    /* 标题保持清晰，但稍微缩一点 */
    #appView .top-brand-title{
        font-size:17px !important;
        line-height:1.1 !important;
        margin:0 !important;
    }
}


/* ===== 登录界面卡片与背景完全融合 ===== */
#loginView .login-card{
    background:transparent !important;
    border:none !important;
    border-radius:0 !important;
    box-shadow:none !important;
    outline:none !important;
}

/* 删除登录框四周/四角装饰 */
#loginView .login-card::before,
#loginView .login-card::after{
    content:none !important;
    display:none !important;
    border:none !important;
    box-shadow:none !important;
    background:none !important;
}

/* 防止内部容器还有独立边框 */
#loginView .login-card-inner{
    background:transparent !important;
    border:none !important;
    box-shadow:none !important;
}


/* ===== 登录界面卡片与背景完全融合 ===== */
#loginView .login-card{
    background:transparent !important;
    border:none !important;
    border-radius:0 !important;
    box-shadow:none !important;
    outline:none !important;
}

/* 删除登录框四周/四角装饰 */
#loginView .login-card::before,
#loginView .login-card::after{
    content:none !important;
    display:none !important;
    border:none !important;
    box-shadow:none !important;
    background:none !important;
}

/* 防止内部容器还有独立边框 */
#loginView .login-card-inner{
    background:transparent !important;
    border:none !important;
    box-shadow:none !important;
}


/* ===== 登录页面彻底取消外围大圆角卡片 ===== */
#loginView,
#loginView.center-card,
#loginView.login-card,
#loginView.center-card.login-card{
    background:transparent !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    outline:none !important;
}

#loginView::before,
#loginView::after,
#loginView.center-card::before,
#loginView.center-card::after{
    content:none !important;
    display:none !important;
    background:none !important;
    border:0 !important;
    box-shadow:none !important;
}


/* ===== 登录输入框内部颜色统一 ===== */

/* 整个输入框外层 */
#loginView .login-field{
    background:#071522 !important;
}

/* 实际 input 区域跟外层完全同色 */
#loginView .login-field input{
    background:#071522 !important;
    background-color:#071522 !important;
    box-shadow:none !important;
    border:0 !important;
}

/* 浏览器自动填充账号/密码时也保持同色 */
#loginView .login-field input:-webkit-autofill,
#loginView .login-field input:-webkit-autofill:hover,
#loginView .login-field input:-webkit-autofill:focus,
#loginView .login-field input:-webkit-autofill:active{
    -webkit-text-fill-color:#eef3f7 !important;
    -webkit-box-shadow:0 0 0 1000px #071522 inset !important;
    box-shadow:0 0 0 1000px #071522 inset !important;
    transition:background-color 9999s ease-out 0s !important;
}

/* 图标区域也统一 */
#loginView .login-field svg{
    background:transparent !important;
}


/* ===== 手机端侧边栏比例优化 ===== */
@media (max-width:760px){

    /* 侧边栏宽度：避免太宽，也避免文字挤成竖排 */
    #appView aside{
        width:190px !important;
        min-width:190px !important;
        max-width:190px !important;
    }

    /* 菜单按钮 */
    #appView .side-nav .nav{
        width:100% !important;
        min-width:0 !important;
        padding:0 14px !important;
        gap:12px !important;
        box-sizing:border-box !important;
        justify-content:flex-start !important;
    }

    /* 菜单图标固定大小 */
    #appView .side-nav .nav-icon{
        width:22px !important;
        min-width:22px !important;
        flex:0 0 22px !important;
    }

    #appView .side-nav .nav-icon svg{
        width:22px !important;
        height:22px !important;
    }

    /* 菜单文字 */
    #appView .side-nav .nav > span:last-child{
        font-size:16px !important;
        line-height:1.2 !important;
        white-space:nowrap !important;
        word-break:keep-all !important;
        overflow-wrap:normal !important;
        flex:1 1 auto !important;
    }

    /* 底部管理员区域同步侧边栏宽度 */
    #appView aside .aside-footer{
        width:190px !important;
        box-sizing:border-box !important;
    }
}


/* ===== 删除副标题后，后台页面整体向上收紧 ===== */
#appView main header{
    padding-top:8px !important;
    padding-bottom:8px !important;
    min-height:0 !important;
}

#appView main .content,
#appView .main-content{
    margin-top:0 !important;
    padding-top:10px !important;
}

/* 手机端同步收紧 */
@media (max-width:760px){
    #appView main header{
        padding-top:5px !important;
        padding-bottom:5px !important;
    }

    #appView main .content,
    #appView .main-content{
        padding-top:6px !important;
    }
}


/* ===== 删除后台副标题后收紧页面顶部 ===== */
#appView main header > div{
    gap:0 !important;
}

#appView main header h2{
    margin-top:0 !important;
    margin-bottom:0 !important;
}

#appView main header{
    padding-top:8px !important;
    padding-bottom:8px !important;
    min-height:0 !important;
}


/* ==================================================
   删除右侧页面重复标题，并整体向上收紧
   左侧菜单名称保持不变
   ================================================== */

/* 隐藏：仪表盘 / 账号列表 / 授权管理 等重复页面标题 */
#appView #pageTitle{
    display:none !important;
}

/* 标题外层不再占空间 */
#appView main > header > div{
    display:none !important;
}

/* 顶部只保留“在线”状态，压缩原标题区域高度 */
#appView main > header{
    min-height:30px !important;
    height:30px !important;
    padding:2px 14px !important;
    margin:0 0 4px 0 !important;

    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
}

/* 在线状态保持右上角 */
#appView main > header .status-dot{
    margin:0 !important;
}

/* 页面主体紧接顶部 */
#appView main > section{
    margin-top:0 !important;
}

/* 手机端进一步收紧 */
@media (max-width:760px){

    #appView main > header{
        min-height:26px !important;
        height:26px !important;
        padding:1px 10px !important;
        margin-bottom:3px !important;
    }

    #appView main > section{
        margin-top:0 !important;
    }
}


/* ===== 仪表盘统计卡最终布局 ===== */

/* PC：一行4个 */
@media (min-width:761px){
    #dashboardPage .metrics,
    #dashboardPage .metric-grid{
        display:grid !important;
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
        gap:12px !important;
    }
}

/* 手机：一行2个 */
@media (max-width:760px){
    #dashboardPage .metrics,
    #dashboardPage .metric-grid{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:10px !important;
    }

    #dashboardPage .metric-card{
        width:100% !important;
        min-width:0 !important;
    }
}


/* ===== 仪表盘统计卡最终响应式排列 ===== */

/* PC：一行4个 */
@media (min-width:761px){
    #dashboardPage .dashboard-metrics{
        display:grid !important;
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
        gap:12px !important;
    }
}

/* 手机：一行2个 */
@media (max-width:760px){
    #dashboardPage .dashboard-metrics{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:10px !important;
    }

    #dashboardPage .metric-card{
        width:100% !important;
        min-width:0 !important;
        box-sizing:border-box !important;
    }
}


/* ===== 仪表盘4张统计卡排序 ===== */

/* 账号数量 */
#dashboardPage .metric-card:has(#dAccounts){
    order:1 !important;
}

/* 今日新增 */
#dashboardPage .metric-card:has(#dTodayNew){
    order:2 !important;
}

/* 已授权账号 */
#dashboardPage .metric-card:has(#dAuthorized){
    order:3 !important;
}

/* 未授权账号 */
#dashboardPage .metric-card:has(#dUnauthorized){
    order:4 !important;
}

/* PC：一行4个 */
@media (min-width:761px){
    #dashboardPage .dashboard-metrics{
        display:grid !important;
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
        gap:12px !important;
    }
}

/* 手机：一行2个 */
@media (max-width:760px){
    #dashboardPage .dashboard-metrics{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:10px !important;
    }
}


/* ===== 仪表盘顶部标题与在线状态水平对齐 ===== */
#dashboardPage .dashboard-heading{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    margin-top:0 !important;
    padding-top:0 !important;
}

/* 控制中心 + 系统运行数据概览 改为横向并居中 */
#dashboardPage .dashboard-heading > div:first-child{
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
    margin:0 !important;
    padding:0 !important;
}

#dashboardPage .dashboard-heading h2{
    margin:0 !important;
    padding:0 !important;
    line-height:1.2 !important;
}

#dashboardPage .dashboard-heading p{
    margin:0 !important;
    padding:0 !important;
    line-height:1.2 !important;
}

/* 右侧状态同步居中 */
#dashboardPage #dashboardNow{
    margin:0 !important;
    align-self:center !important;
}


/* ===== 仪表盘顶部：标题 / 在线 / 时间全部同一水平线 ===== */

/* 整个仪表盘顶部 */
#dashboardPage .dashboard-heading{
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:space-between !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
}

/* 左边：控制中心 + 系统运行数据概览 */
#dashboardPage .dashboard-heading > div:first-child{
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    gap:12px !important;
    margin:0 !important;
    padding:0 !important;
}

#dashboardPage .dashboard-heading h2,
#dashboardPage .dashboard-heading p{
    margin:0 !important;
    padding:0 !important;
}

/* 右边：在线 + 时间 */
#dashboardPage .dashboard-heading > div:last-child{
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:12px !important;
    margin:0 !important;
    padding:0 !important;
}

/* 时间 */
#dashboardPage #dashboardNow{
    display:inline-flex !important;
    align-items:center !important;
    margin:0 !important;
    padding:0 !important;
    line-height:1 !important;
    white-space:nowrap !important;
}


/* ===== 顶部最终对齐：控制中心 / 概览 / 在线 / 时间 ===== */

/* 顶部在线和时间 */
#appView main > header{
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:12px !important;
}

/* 在线 */
#appView main > header .status-dot{
    margin:0 !important;
    white-space:nowrap !important;
}

/* 时间紧跟在线 */
#appView main > header #dashboardNow{
    display:inline-flex !important;
    align-items:center !important;
    margin:0 !important;
    padding:0 !important;
    white-space:nowrap !important;
    line-height:1 !important;
}

/* 仪表盘标题向上移动到顶部同一水平线 */
#dashboardPage .dashboard-heading{
    position:absolute !important;
    top:0 !important;
    left:20px !important;
    height:30px !important;

    display:flex !important;
    align-items:center !important;

    margin:0 !important;
    padding:0 !important;
    z-index:2 !important;
}

/* 控制中心 + 系统运行数据概览 */
#dashboardPage .dashboard-heading > div{
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    gap:12px !important;
    margin:0 !important;
    padding:0 !important;
}

#dashboardPage .dashboard-heading h2,
#dashboardPage .dashboard-heading p{
    margin:0 !important;
    padding:0 !important;
    line-height:1 !important;
}

/* 给统计卡留正常间距 */
#dashboardPage .dashboard-metrics{
    margin-top:12px !important;
}


/* ===== 修复控制中心标题跑到Logo区域 ===== */
#dashboardPage{
    position:relative !important;
}

#dashboardPage .dashboard-heading{
    position:static !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;

    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;

    margin:-26px 0 8px 0 !important;
    padding:0 !important;
    height:auto !important;
    z-index:auto !important;
}

#dashboardPage .dashboard-heading > div{
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
    margin:0 !important;
    padding:0 !important;
}

#dashboardPage .dashboard-heading h2,
#dashboardPage .dashboard-heading p{
    margin:0 !important;
    padding:0 !important;
    line-height:1.1 !important;
}


/* ===== 修复控制中心标题跑到Logo区域 ===== */
#dashboardPage{
    position:relative !important;
}

#dashboardPage .dashboard-heading{
    position:static !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;

    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;

    margin:-26px 0 8px 0 !important;
    padding:0 !important;
    height:auto !important;
    z-index:auto !important;
}

#dashboardPage .dashboard-heading > div{
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
    margin:0 !important;
    padding:0 !important;
}

#dashboardPage .dashboard-heading h2,
#dashboardPage .dashboard-heading p{
    margin:0 !important;
    padding:0 !important;
    line-height:1.1 !important;
}

 
/* ===== 修复控制中心标题跑到Logo区域 ===== */ 
#dashboardPage{ 
    position:relative !important; 
} 
 
#dashboardPage .dashboard-heading{ 
    position:static !important; 
    top:auto !important; 
    left:auto !important; 
    right:auto !important; 
 
    display:flex !important; 
    align-items:center !important; 
    justify-content:flex-start !important; 
 
    margin:-30px 0 8px 0 !important; 
    padding:0 !important; 
    height:auto !important; 
    z-index:auto !important; 
} 
 
#dashboardPage .dashboard-heading > div{ 
    display:flex !important; 
    align-items:center !important; 
    gap:12px !important; 
    margin:0 !important; 
    padding:0 !important; 
} 
 
#dashboardPage .dashboard-heading h2, 
#dashboardPage .dashboard-heading p{ 
    margin:0 !important; 
    padding:0 !important; 
    line-height:1.1 !important; 
} 
 

/* ===== 控制中心标题：PC / 手机最终优化 ===== */

/* PC端 */
@media (min-width:761px){

    #dashboardPage .dashboard-heading h2{
        font-size:24px !important;
        font-weight:700 !important;
        line-height:1.2 !important;
        white-space:nowrap !important;
    }

    #dashboardPage .dashboard-heading p{
        font-size:15px !important;
        line-height:1.2 !important;
        white-space:nowrap !important;
    }

    #dashboardPage .dashboard-heading > div{
        gap:14px !important;
    }
}


/* 手机端：防止标题重叠、重字 */
@media (max-width:760px){

    #dashboardPage .dashboard-heading{
        position:static !important;
        margin:0 0 10px 0 !important;
        padding:0 !important;
        height:auto !important;
        transform:none !important;
    }

    #dashboardPage .dashboard-heading > div{
        display:flex !important;
        flex-direction:row !important;
        align-items:center !important;
        gap:8px !important;
        width:100% !important;
    }

    #dashboardPage .dashboard-heading h2{
        font-size:18px !important;
        font-weight:700 !important;
        line-height:1.25 !important;
        margin:0 !important;
        white-space:nowrap !important;
    }

    #dashboardPage .dashboard-heading p{
        font-size:12px !important;
        line-height:1.25 !important;
        margin:0 !important;
        white-space:nowrap !important;
    }

    #dashboardPage .dashboard-metrics{
        margin-top:0 !important;
    }
}


/* ===== PC端仪表盘整体上移，与其他菜单页面统一 ===== */
@media (min-width:761px){

    /* 整个仪表盘内容上移 */
    #dashboardPage{
        position:relative !important;
        top:-14px !important;
    }

    /* 标题区域保持正常 */
    #dashboardPage .dashboard-heading{
        position:static !important;
        margin:0 0 10px 0 !important;
        padding:0 !important;
        transform:none !important;
    }

    /* 统计卡不要额外产生顶部空隙 */
    #dashboardPage .dashboard-metrics{
        margin-top:0 !important;
    }
}

/* 手机端绝对不跟随PC上移 */
@media (max-width:760px){
    #dashboardPage{
        top:0 !important;
        transform:none !important;
    }
}


/* ===== 顶部在线状态：退出登录前 ===== */
.top-actions{
    display:flex !important;
    align-items:center !important;
    gap:14px !important;
}

.top-online{
    display:inline-flex !important;
    align-items:center !important;
    gap:6px !important;
    white-space:nowrap !important;

    font-size:13px !important;
    font-weight:600 !important;
    color:#45e6a6 !important;
}

/* 绿色状态圆点 */
.top-online-dot{
    width:7px !important;
    height:7px !important;
    border-radius:50% !important;
    background:#45e6a6 !important;
    box-shadow:0 0 7px rgba(69,230,166,.55) !important;
    flex:0 0 7px !important;
}

/* 手机端稍微缩小 */
@media (max-width:760px){
    .top-actions{
        gap:8px !important;
    }

    .top-online{
        font-size:12px !important;
        gap:5px !important;
    }

    .top-online-dot{
        width:6px !important;
        height:6px !important;
        flex-basis:6px !important;
    }
}


/* ===== 在线 与 退出登录：字体大小、垂直位置统一 ===== */

.top-actions{
    display:flex !important;
    align-items:center !important;
    gap:14px !important;
}

/* 在线 */
.top-online{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    font-size:14px !important;
    font-weight:500 !important;
    line-height:20px !important;

    margin:0 !important;
    padding:0 !important;
    height:20px !important;
}

/* 退出登录 */
.top-actions .top-logout{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    font-size:14px !important;
    line-height:20px !important;
    margin:0 !important;
}

/* 在线前面的绿色圆点 */
.top-online-dot{
    align-self:center !important;
}


/* ===== 在线字体与退出登录完全一致 ===== */
.top-online{
    font-family:inherit !important;
    font-size:inherit !important;
    font-weight:inherit !important;
    line-height:inherit !important;
}

/* 统一由右上角容器控制字体 */
.top-actions{
    font-size:14px !important;
    font-weight:400 !important;
    line-height:20px !important;
}

.top-actions .top-logout{
    font-size:inherit !important;
    font-weight:inherit !important;
    line-height:inherit !important;
}


/* ===== 手机端：控制中心标题整体靠左 ===== */
@media (max-width:760px){

    #dashboardPage .dashboard-heading{
        width:100% !important;
        margin-left:0 !important;
        padding-left:0 !important;
        justify-content:flex-start !important;
        text-align:left !important;
    }

    #dashboardPage .dashboard-heading > div{
        width:auto !important;
        margin-left:0 !important;
        padding-left:0 !important;
        justify-content:flex-start !important;
        text-align:left !important;
        gap:8px !important;
    }

    #dashboardPage .dashboard-heading h2,
    #dashboardPage .dashboard-heading p{
        margin-left:0 !important;
        padding-left:0 !important;
        text-align:left !important;
    }
}

EOFcat >> /opt/eternal-quant/frontend/style.css <<'EOF'

/* ===== 手机端：控制中心标题整体靠左 ===== */
@media (max-width:760px){

    #dashboardPage .dashboard-heading{
        width:100% !important;
        margin-left:0 !important;
        padding-left:0 !important;
        justify-content:flex-start !important;
        text-align:left !important;
    }

    #dashboardPage .dashboard-heading > div{
        width:auto !important;
        margin-left:0 !important;
        padding-left:0 !important;
        justify-content:flex-start !important;
        text-align:left !important;
        gap:8px !important;
    }

    #dashboardPage .dashboard-heading h2,
    #dashboardPage .dashboard-heading p{
        margin-left:0 !important;
        padding-left:0 !important;
        text-align:left !important;
    }
}


/* ===== 在线 + 退出登录 字体统一加粗 ===== */
.top-actions{
    font-weight:600 !important;
}

.top-online,
.top-actions .top-logout{
    font-weight:600 !important;
}


/* ===== 在线 / 退出登录 字体完全统一 ===== */
.top-actions .top-online,
.top-actions .top-logout{
    font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif !important;
    font-size:14px !important;
    font-weight:600 !important;
    line-height:20px !important;
    letter-spacing:0 !important;
    font-style:normal !important;
}

/* 在线 */
.top-actions .top-online{
    display:inline-flex !important;
    align-items:center !important;
    height:32px !important;
    margin:0 !important;
}

/* 退出登录按钮 */
.top-actions .top-logout{
    display:inline-flex !important;
    align-items:center !important;
    height:32px !important;
    margin:0 !important;
}

/* 退出登录按钮里面的文字也强制继承 */
.top-actions .top-logout span{
    font-family:inherit !important;
    font-size:inherit !important;
    font-weight:inherit !important;
    line-height:inherit !important;
    letter-spacing:inherit !important;
}


/* ===== 到期时间：右侧日期/时间选择图标改成白色 ===== */
input[type="datetime-local"]::-webkit-calendar-picker-indicator{
    filter:invert(1) brightness(2) !important;
    opacity:1 !important;
    cursor:pointer !important;
}

/* 鼠标经过保持白色清晰 */
input[type="datetime-local"]::-webkit-calendar-picker-indicator:hover{
    filter:invert(1) brightness(2) !important;
    opacity:1 !important;
}


/* ===== 授权弹窗：隐藏授权码、交易服务器输入项 ===== */
#fKey,
#fServer{
    display:none !important;
}

/* 连同对应 label 整项隐藏 */
label:has(#fKey),
label:has(#fServer){
    display:none !important;
}


/* ===== 刷新页面时防止默认仪表盘闪现 ===== */
#appView.app-restoring{
    visibility:hidden !important;
}


/* ============================================================
   [仪表盘时间最右侧定位 - 2026-08-29]
   PC端：控制中心保持左侧，时间固定到内容区域最右侧
   ============================================================ */
@media (min-width:761px){

    #dashboardPage .dashboard-heading{
        position:relative !important;
        display:block !important;
        width:100% !important;
        box-sizing:border-box !important;
    }

    #dashboardClock{
        position:absolute !important;
        right:0 !important;
        top:0 !important;
        margin:0 !important;
        padding:0 !important;
        width:auto !important;
        text-align:right !important;
        white-space:nowrap !important;
    }
}


/* ============================================================
   [手机版仪表盘时间最右侧 - 2026-08-29]
   控制中心保持左侧，时间固定在内容区域最右侧
   ============================================================ */
@media (max-width:760px){

    #dashboardPage .dashboard-heading{
        position:relative !important;
        display:block !important;
        width:100% !important;
        box-sizing:border-box !important;
        padding-right:0 !important;
    }

    #dashboardClock{
        position:absolute !important;
        right:0 !important;
        top:0 !important;
        margin:0 !important;
        padding:0 !important;
        width:auto !important;
        max-width:55% !important;
        text-align:right !important;
        white-space:nowrap !important;
        font-size:12px !important;
        line-height:22px !important;
    }
}


/* ============================================================
   [手机版仪表盘时间最终定位 - 2026-08-29]
   时间以整个 dashboardPage 为基准固定到最右侧
   ============================================================ */
@media (max-width:760px){

    #dashboardPage{
        position:relative !important;
        width:100% !important;
    }

    /* 不再让标题区域成为时间的定位基准 */
    #dashboardPage .dashboard-heading{
        position:static !important;
        display:block !important;
        width:100% !important;
        box-sizing:border-box !important;
    }

    /* 时间直接相对整个仪表盘定位 */
    #dashboardPage #dashboardClock{
        position:absolute !important;
        top:0 !important;
        right:0 !important;
        left:auto !important;

        margin:0 !important;
        padding:0 !important;

        width:auto !important;
        max-width:none !important;

        text-align:right !important;
        white-space:nowrap !important;

        font-size:12px !important;
        line-height:22px !important;

        transform:none !important;
    }
}


/* ============================================================
   [手机版时间贴屏幕内容最右侧 - 2026-08-29]
   ============================================================ */
@media (max-width:760px){

    #dashboardPage #dashboardClock{
        position:absolute !important;

        /* main 手机版左右 padding 是 10px */
        right:10px !important;
        left:auto !important;
        top:0 !important;

        margin:0 !important;
        padding:0 !important;

        width:auto !important;
        max-width:none !important;

        display:block !important;
        text-align:right !important;
        white-space:nowrap !important;

        font-size:12px !important;
        line-height:22px !important;

        transform:none !important;
    }
}


/* ============================================================
   [手机端新建授权-分组独立选择窗口 2026-08-29]
   ============================================================ */

.mobile-license-group-dialog{
    border:0;
    padding:0;
    background:transparent;
    width:min(430px,calc(100vw - 24px));
    max-width:430px;
}

.mobile-license-group-dialog::backdrop{
    background:rgba(0,0,0,.70);
}

.mobile-license-group-box{
    background:#0b1925;
    border:1px solid #28425a;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 18px 60px rgba(0,0,0,.58);
}

.mobile-license-group-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:14px;
    border-bottom:1px solid #20384c;
}

.mobile-license-group-head h3{
    margin:0 !important;
    font-size:18px !important;
}

.mobile-license-group-head button{
    width:auto !important;
    min-width:64px;
    margin:0 !important;
}

.mobile-license-group-options{
    max-height:58vh;
    overflow-y:auto;
    padding:8px;
}

.mobile-license-group-option{
    width:100%;
    min-height:46px;
    margin:0 0 6px;
    padding:10px 14px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    text-align:left;
    background:#0d1d2a;
    border:1px solid #20394e;
    border-radius:8px;
    color:#e7edf3;
    font-size:15px;
    box-shadow:none;
}

.mobile-license-group-option:last-child{
    margin-bottom:0;
}

.mobile-license-group-option.selected{
    border-color:#c99b48;
    background:#142333;
}

.mobile-license-group-option.selected b{
    color:#e4b85e;
    font-size:17px;
}

@media (min-width:761px){
    #mobileLicenseGroupDialog{
        display:none !important;
    }
}

/* ============================================================
   [手机端日期时间独立窗口 - 2026-08-29]
   ============================================================ */

.mobile-datetime-dialog{
    border:0;
    padding:0;
    background:transparent;
    width:min(440px,calc(100vw - 24px));
    max-width:440px;
}

.mobile-datetime-dialog::backdrop{
    background:rgba(0,0,0,.70);
}

.mobile-datetime-box{
    background:#0b1925;
    border:1px solid #28425a;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 18px 60px rgba(0,0,0,.58);
}

.mobile-datetime-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:14px;
    border-bottom:1px solid #20384c;
}

.mobile-datetime-head h3{
    margin:0!important;
    font-size:18px!important;
}

.mobile-datetime-head button{
    width:auto!important;
    min-width:64px;
    margin:0!important;
}

.mobile-datetime-body{
    padding:14px;
}

.mobile-datetime-section-title{
    margin:2px 0 9px;
    color:#9eb0bf;
    font-size:13px;
}

.mobile-datetime-section-title:not(:first-child){
    margin-top:18px;
}

.mobile-datetime-grid{
    display:grid;
    gap:9px;
}

.mobile-datetime-date-grid{
    grid-template-columns:1.2fr 1fr 1fr;
}

.mobile-datetime-time-grid{
    grid-template-columns:1fr 1fr;
}

.mobile-datetime-grid label{
    margin:0;
    font-size:12px;
    color:#9eb0bf;
}

.mobile-datetime-grid select{
    width:100%;
    min-height:46px;
    margin-top:5px;
    background:#0d1d2a;
    border:1px solid #28425a;
    border-radius:8px;
    color:#e7edf3;
    font-size:15px;
}

.mobile-datetime-actions{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:12px 14px 14px;
    border-top:1px solid #20384c;
}

.mobile-datetime-actions>div{
    display:flex;
    gap:8px;
}

.mobile-datetime-actions button{
    width:auto!important;
    min-width:64px;
    margin:0!important;
}

@media (min-width:761px){
    #mobileDateTimeDialog{
        display:none!important;
    }
}

/* ============================================================
   [手机端到期时间输入框尺寸统一 - 2026-08-29]
   与普通input/select保持一致高度
   ============================================================ */

@media (max-width:760px){

    #fExpires,
    #baExpires,
    #batchAuthorizeExpires{
        height:44px !important;
        min-height:44px !important;
        max-height:44px !important;
        padding:0 12px !important;
        line-height:44px !important;
        box-sizing:border-box !important;
        appearance:none !important;
        -webkit-appearance:none !important;
    }

    #fExpires::-webkit-date-and-time-value,
    #baExpires::-webkit-date-and-time-value,
    #batchAuthorizeExpires::-webkit-date-and-time-value{
        text-align:left !important;
        margin:0 !important;
        padding:0 !important;
        min-height:0 !important;
    }

    #fExpires::-webkit-calendar-picker-indicator,
    #baExpires::-webkit-calendar-picker-indicator,
    #batchAuthorizeExpires::-webkit-calendar-picker-indicator{
        display:none !important;
    }
}

/* ============================================================
   [账号列表手机选择HTML级接管 - 2026-08-29]
   ============================================================ */

/* PC：保持原生select，隐藏手机按钮 */
.account-mobile-select-btn{
    display:none;
}

@media (max-width:760px){

    /* 手机：原生select彻底不显示、不接受触摸 */
    select.account-mobile-real-select{
        display:none !important;
        pointer-events:none !important;
        visibility:hidden !important;
        position:absolute !important;
        width:0 !important;
        height:0 !important;
        min-height:0 !important;
        opacity:0 !important;
        margin:0 !important;
        padding:0 !important;
    }

    /* 手机实际点击的是普通button */
    .account-mobile-select-btn{
        display:flex !important;
        width:100% !important;
        height:44px !important;
        min-height:44px !important;
        margin-top:4px !important;
        padding:0 12px !important;

        align-items:center !important;
        justify-content:flex-start !important;

        background:#08131e !important;
        border:1px solid #28425a !important;
        border-radius:9px !important;

        color:#fff !important;
        font-size:16px !important;
        font-weight:400 !important;
        text-align:left !important;

        box-shadow:none !important;
    }

    .account-mobile-select-btn::after{
        content:'▾';
        margin-left:auto;
        color:#8fa2b2;
        font-size:14px;
    }
}

/* ============================================================
   [用户管理密码输入框金色边框 - 2026-08-29]
   PC端 + 手机端
   仅修改密码相关输入框，不影响其他表单
============================================================ */

/* 默认状态保持后台原来的输入框边框 */
#adminResetPassword,
#adminResetPasswordConfirm,
#pwdCurrent,
#pwdNew,
#pwdConfirm {
    border-color: #28425a !important;
}

/* ============================================================
   [密码输入框选中金色高亮 - 2026-08-29]
   只有当前获得焦点的输入框显示金色边框
============================================================ */
#adminResetPassword:focus,
#adminResetPasswordConfirm:focus,
#pwdCurrent:focus,
#pwdNew:focus,
#pwdConfirm:focus {
    border-color: #d8b85a !important;
    outline: none !important;
    box-shadow: 0 0 0 1px rgba(216,184,90,.18) !important;
}

/* ============================================================
   [账号列表手机选择框选中金色高亮 - 2026-08-29]
   默认保持原边框，当前点击的选择框显示金色
============================================================ */
@media (max-width:760px){

    .account-mobile-select-btn:focus,
    .account-mobile-select-btn:focus-visible {
        border-color:#d8b85a !important;
        outline:none !important;
        box-shadow:0 0 0 1px rgba(216,184,90,.18) !important;
    }

}


/* ============================================================
   [账号列表批量操作大窗口取消蓝色外框 - 2026-08-29]
   仅手机端：
   批量授权 / 批量设置分组
   取消最外围蓝色边框和蓝色光圈
============================================================ */
@media (max-width:760px){

    #batchAuthorizeDialog,
    #batchAssignGroupDialog{
        /* [批量窗口边框统一 - 2026-08-29] */
        border:1px solid #28425a !important;
        outline:none !important;
        box-shadow:0 18px 60px rgba(0,0,0,.58) !important;
    }

}


/* ============================================================
   [手机端所有Select彻底接管 - 2026-08-30]
   iPhone不再直接接触任何用户可操作原生select
============================================================ */

@media (max-width:760px){

    /* --------------------------------------------------------
       真实select只负责保存value
       Safari没有任何原生选择器点击入口
    --------------------------------------------------------- */
    select.mobile-global-real-select{
        display:none !important;
        visibility:hidden !important;
        pointer-events:none !important;

        position:absolute !important;

        width:0 !important;
        height:0 !important;
        min-width:0 !important;
        min-height:0 !important;

        margin:0 !important;
        padding:0 !important;

        border:0 !important;
        opacity:0 !important;

        overflow:hidden !important;
    }


    /* --------------------------------------------------------
       手机实际显示的普通选择按钮
    --------------------------------------------------------- */
    .mobile-global-select-btn{
        display:flex;

        width:100%;
        min-width:0;
        height:44px;
        min-height:44px;

        margin-top:4px;
        padding:0 12px;

        align-items:center;
        justify-content:space-between;

        background:#08131e !important;
        border:1px solid #28425a !important;
        border-radius:9px !important;

        color:#fff !important;

        font-size:16px !important;
        font-weight:400 !important;
        line-height:1 !important;

        text-align:left !important;

        box-shadow:none !important;

        appearance:none !important;
        -webkit-appearance:none !important;
    }


    .mobile-global-select-text{
        min-width:0;

        overflow:hidden;
        white-space:nowrap;
        text-overflow:ellipsis;
    }


    .mobile-global-select-arrow{
        flex:0 0 auto;

        margin-left:10px;

        color:#8fa2b2;

        font-size:14px;
        font-weight:400;
    }


    /* 当前点中的选择框金色 */
    .mobile-global-select-btn:focus,
    .mobile-global-select-btn:focus-visible{
        border-color:#d8b85a !important;
        outline:none !important;

        box-shadow:
          0 0 0 1px rgba(216,184,90,.18) !important;
    }


    /* 分页里的每页数量保持小尺寸 */
    .mobile-global-select-btn-compact{
        display:inline-flex;

        width:auto !important;
        min-width:82px !important;

        margin-top:0 !important;

        vertical-align:middle;
    }


    /* 日期时间独立窗口里的年月日时分填满网格 */
    .mobile-datetime-grid .mobile-global-select-btn{
        width:100% !important;
        margin-top:5px !important;
    }

}


/* PC端绝不显示手机代理按钮 */
@media (min-width:761px){

    .mobile-global-select-btn{
        display:none !important;
    }

}

/* ============================================================
   [全局独立窗口取消外围边框 - 2026-08-30]
   ------------------------------------------------------------
   仅取消独立窗口最外围边框
   保留：
   - 输入框边框
   - 选择框边框
   - 按钮边框
   - 窗口圆角
   - 窗口阴影
   ============================================================ */

/* 所有普通独立 dialog 窗口 */
dialog{
    border:none !important;
    outline:none !important;
}

/* 手机端深色选择独立窗口 */
.mobile-license-group-dialog{
    border:none !important;
    outline:none !important;
}

.mobile-license-group-box{
    border:none !important;
    outline:none !important;
}

/* 手机端日期时间独立窗口 */
.mobile-datetime-dialog{
    border:none !important;
    outline:none !important;
}

.mobile-datetime-box{
    border:none !important;
    outline:none !important;
}

/* 昨天单独处理的两个批量窗口也统一取消 */
#batchAuthorizeDialog,
#batchAssignGroupDialog{
    border:none !important;
    outline:none !important;
}


/* ============================================================
   [全局独立窗口边框统一修正 - 2026-08-30]
   ------------------------------------------------------------
   所有独立窗口统一为后台标准深蓝灰 1px 细边框
   不使用亮蓝色外框 / 不使用蓝色光圈
   ============================================================ */

dialog{
    border:1px solid #28425a !important;
    outline:none !important;
}

/* 手机端选择独立窗口：外层dialog透明，不重复画边框 */
.mobile-license-group-dialog,
.mobile-datetime-dialog{
    border:none !important;
    outline:none !important;
}

/* 真正显示的深色窗口保留标准细边框 */
.mobile-license-group-box,
.mobile-datetime-box{
    border:1px solid #28425a !important;
    outline:none !important;
}

/* 批量授权 / 批量设置分组统一 */
#batchAuthorizeDialog,
#batchAssignGroupDialog{
    border:1px solid #28425a !important;
    outline:none !important;
    box-shadow:0 18px 60px rgba(0,0,0,.58) !important;
}


/* ============================================================
   [独立窗口按钮取消蓝色焦点框 - 2026-08-30]
   ------------------------------------------------------------
   仅处理 dialog 内按钮：
   - 完成
   - 取消
   - 确认
   - 删除
   - 保存
   等按钮获得焦点后的 Safari 蓝色边框/光圈

   不影响：
   - 普通页面按钮
   - 输入框
   - 选择框
   - 金色输入焦点效果
   ============================================================ */

dialog button:focus,
dialog button:focus-visible,
dialog button:active{
    outline:none !important;
    box-shadow:none !important;
    -webkit-tap-highlight-color:transparent !important;
}

