/* Modern workspace layer. Loaded after legacy styles so existing pages keep their behavior. */
:root {
    --ui-primary: #1687d9;
    --ui-primary-dark: #0969a9;
    --ui-primary-soft: #eaf6ff;
    --ui-navy: #102d48;
    --ui-navy-2: #173e60;
    --ui-cyan: #2fc3d4;
    --ui-success: #20a66a;
    --ui-warning: #e59a24;
    --ui-danger: #df4b55;
    --ui-bg: #f3f7fa;
    --ui-surface: #ffffff;
    --ui-surface-soft: #f8fbfd;
    --ui-border: #dce6ed;
    --ui-text: #172b3a;
    --ui-text-2: #607487;
    --ui-text-3: #8b9aa8;
    --ui-radius: 12px;
    --ui-radius-sm: 8px;
    --ui-shadow: 0 8px 24px rgba(16, 45, 72, .08);
    --ui-shadow-lg: 0 18px 44px rgba(16, 45, 72, .15);
    --ui-header: 64px;
    --ui-sidebar: 248px;
}

* { box-sizing: border-box; }

html,
body {
    min-width: 320px;
    min-height: 100%;
    margin: 0;
    color: var(--ui-text);
    background: var(--ui-bg) !important;
    font-family: Inter, "PingFang SC", "Microsoft YaHei", system-ui, -apple-system, sans-serif !important;
    -webkit-font-smoothing: antialiased;
}

[v-cloak] { display: none !important; }

html.ui-network-busy::before { position: fixed; top: 0; left: 0; z-index: 99999; width: 30%; height: 2px; content: ""; background: linear-gradient(90deg, var(--ui-primary), var(--ui-cyan)); box-shadow: 0 0 8px rgba(47, 195, 212, .55); animation: ui-loading 1.35s ease-in-out infinite; }
@keyframes ui-loading { from { transform: translateX(-100%); } to { transform: translateX(390%); } }

button,
input,
select,
textarea { font: inherit; }

a { text-decoration: none; }

/* Application shell */
#headTop {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: 0 !important;
    background: transparent !important;
}

#rrapp.wrapper,
#rrapp {
    position: fixed !important;
    inset: 0 0 auto 0 !important;
    z-index: 1200 !important;
    width: 100% !important;
    height: var(--ui-header) !important;
    min-height: var(--ui-header) !important;
    margin: 0 !important;
    padding: 0 !important;
    background: rgba(255, 255, 255, .96) !important;
    border-bottom: 1px solid var(--ui-border);
    box-shadow: 0 2px 12px rgba(16, 45, 72, .05) !important;
    backdrop-filter: blur(14px);
}

#top.main-header,
#top {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    height: var(--ui-header) !important;
    min-height: var(--ui-header) !important;
    padding: 0 24px !important;
    background: transparent !important;
}

.platform-brand {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    gap: 10px;
}

.platform-brand::before {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    border-radius: 10px;
    content: "≈";
    color: #fff;
    background: linear-gradient(135deg, var(--ui-primary), var(--ui-cyan));
    box-shadow: 0 6px 16px rgba(22, 135, 217, .24);
    font-size: 21px;
    font-weight: 800;
}

.platform-brand__logo {
    display: block;
    max-width: 132px;
    max-height: 38px;
    object-fit: contain;
}

.platform-brand__name {
    max-width: 220px;
    overflow: hidden;
    color: var(--ui-text);
    font-size: 16px;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.platform-brand__divider {
    width: 1px;
    height: 22px;
    background: var(--ui-border);
}

.platform-brand__product {
    color: var(--ui-text-2);
    font-size: 13px;
}

#title,
#headTittle { display: none !important; }

#app {
    position: fixed !important;
    top: var(--ui-header) !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 1150 !important;
    width: var(--ui-sidebar) !important;
    height: auto !important;
    margin: 0 !important;
    padding: 18px 12px !important;
    overflow: auto;
    background: linear-gradient(180deg, var(--ui-navy), var(--ui-navy-2)) !important;
    box-shadow: inset -1px 0 rgba(255, 255, 255, .05);
}

#app::before {
    display: block;
    margin: 2px 12px 12px;
    color: rgba(221, 236, 248, .48);
    content: "工作台";
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .14em;
}

#app .el-menu,
#app .el-menu.el-menu--horizontal {
    width: 100% !important;
    height: auto !important;
    border: 0 !important;
    background: transparent !important;
}

#app .el-menu--horizontal > .el-menu-item,
#app .el-menu--horizontal > .el-submenu,
#app .el-menu--horizontal > .el-submenu .el-submenu__title {
    display: flex !important;
    float: none !important;
    align-items: center;
    width: 100% !important;
    height: 44px !important;
    margin: 3px 0 !important;
    padding: 0 13px !important;
    border: 0 !important;
    border-radius: 9px;
    color: rgba(235, 244, 252, .78) !important;
    background: transparent !important;
    font-family: inherit !important;
    font-size: 14px !important;
    line-height: 44px !important;
    text-align: left !important;
    transition: background .18s ease, color .18s ease, transform .18s ease;
}

#app .el-menu--horizontal > .el-submenu {
    display: block !important;
    height: auto !important;
    padding: 0 !important;
}

#app .el-menu--horizontal > .el-menu-item:hover,
#app .el-menu--horizontal > .el-menu-item.is-active,
#app .el-menu--horizontal > .el-submenu.is-active .el-submenu__title,
#app .el-menu--horizontal > .el-submenu .el-submenu__title:hover {
    color: #fff !important;
    background: rgba(255, 255, 255, .12) !important;
    box-shadow: inset 3px 0 0 #55b7ff;
}

#app .el-menu-item i,
#app .el-submenu__title i {
    width: 20px;
    margin-right: 8px !important;
    color: inherit !important;
    font-size: 17px !important;
}

#app .el-menu-item span,
#app .el-submenu__title span {
    position: static !important;
    left: auto !important;
    font-family: inherit !important;
    font-size: inherit !important;
}

#a {
    position: fixed !important;
    top: 0 !important;
    right: 18px !important;
    bottom: auto !important;
    z-index: 1210 !important;
    display: flex !important;
    align-items: center !important;
    width: auto !important;
    height: var(--ui-header) !important;
    padding: 0 !important;
    background: transparent !important;
}

#a .el-dropdown {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center;
    width: 36px !important;
    height: 36px !important;
    margin-left: 4px;
    border-radius: 9px;
    color: var(--ui-text-2) !important;
    transform: none !important;
    transition: background .18s ease;
}

#a .el-dropdown:hover { background: var(--ui-primary-soft); }
#a .MyImg,
#a .MyImg2 { width: 21px !important; height: 21px !important; object-fit: contain; }

/* Content canvas */
#apps {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    width: calc(100% - var(--ui-sidebar)) !important;
    min-height: calc(100vh - var(--ui-header)) !important;
    height: auto !important;
    margin: var(--ui-header) 0 0 var(--ui-sidebar) !important;
    padding: 24px !important;
    overflow: visible !important;
    background: var(--ui-bg) !important;
}

body.page-map #apps,
body[style*="overflow: hidden"] #apps {
    height: calc(100vh - var(--ui-header)) !important;
    overflow: hidden !important;
}

.ui-page { width: 100%; max-width: 1680px; margin: 0 auto; }

.ui-page-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 18px;
}

.ui-page-header__eyebrow {
    margin: 0 0 5px;
    color: var(--ui-primary);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.ui-page-header h1 {
    margin: 0;
    color: var(--ui-text);
    font-size: 25px;
    font-weight: 700;
    letter-spacing: -.02em;
}

.ui-page-header__description {
    margin: 7px 0 0;
    color: var(--ui-text-2);
    font-size: 13px;
}

.ui-card {
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background: var(--ui-surface);
    box-shadow: var(--ui-shadow);
}

.ui-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 14px;
    padding: 14px 16px;
}

.ui-toolbar__group { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
.ui-toolbar__search { width: min(360px, 78vw); }

.ui-data-card { padding: 4px 0 0; overflow: hidden; }

.ui-status {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-width: 66px;
    color: var(--ui-text-2);
    font-size: 13px;
}

.ui-status::before {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    content: "";
    background: var(--ui-text-3);
    box-shadow: 0 0 0 3px rgba(139, 154, 168, .14);
}

.ui-status--online { color: var(--ui-success); }
.ui-status--online::before { background: var(--ui-success); box-shadow: 0 0 0 3px rgba(32, 166, 106, .13); }
.ui-status--offline { color: var(--ui-text-3); }
.ui-status--warning { color: var(--ui-warning); }
.ui-status--warning::before { background: var(--ui-warning); box-shadow: 0 0 0 3px rgba(229, 154, 36, .13); }
.ui-status--danger { color: var(--ui-danger); }
.ui-status--danger::before { background: var(--ui-danger); box-shadow: 0 0 0 3px rgba(223, 75, 85, .13); }

.ui-metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(150px, 1fr));
    gap: 14px;
    margin-bottom: 18px;
}

.ui-metric {
    position: relative;
    min-height: 104px;
    padding: 18px 20px;
    overflow: hidden;
}

.ui-metric::after {
    position: absolute;
    right: -18px;
    bottom: -32px;
    width: 92px;
    height: 92px;
    border-radius: 50%;
    content: "";
    background: var(--ui-primary-soft);
}

.ui-metric__label { color: var(--ui-text-2); font-size: 13px; }
.ui-metric__value { margin-top: 9px; color: var(--ui-text); font-size: 28px; font-weight: 700; line-height: 1; }
.ui-metric__unit { margin-left: 3px; color: var(--ui-text-3); font-size: 12px; font-weight: 500; }

/* Element UI normalization */
.el-button {
    min-height: 36px;
    border-radius: var(--ui-radius-sm) !important;
    font-weight: 600 !important;
}

.el-button--primary {
    border-color: var(--ui-primary) !important;
    background: var(--ui-primary) !important;
    box-shadow: 0 4px 10px rgba(22, 135, 217, .18) !important;
}

.el-button--primary:hover,
.el-button--primary:focus { border-color: var(--ui-primary-dark) !important; background: var(--ui-primary-dark) !important; }

.el-input__inner,
.el-textarea__inner {
    border-color: var(--ui-border) !important;
    border-radius: var(--ui-radius-sm) !important;
    color: var(--ui-text) !important;
}

.el-input__inner:focus,
.el-textarea__inner:focus {
    border-color: var(--ui-primary) !important;
    box-shadow: 0 0 0 3px rgba(22, 135, 217, .10);
}

.el-table {
    border-radius: 0 !important;
    box-shadow: none !important;
    color: var(--ui-text) !important;
}

.el-table::before { display: none; }
.el-table th { background: var(--ui-surface-soft) !important; color: var(--ui-text-2) !important; font-weight: 700 !important; }
.el-table th,
.el-table td { padding: 13px 0 !important; border-color: #edf2f5 !important; }
.el-table__body tr:hover > td { background: #f1f8fd !important; }

.el-pagination { padding: 18px 16px !important; }
.el-pagination .el-pager li.active { color: #fff !important; background: var(--ui-primary) !important; }

.el-dialog {
    max-width: calc(100vw - 32px);
    border-radius: 14px !important;
    box-shadow: var(--ui-shadow-lg) !important;
}

.el-dialog__header { padding: 19px 22px !important; background: var(--ui-surface) !important; }
.el-dialog__body { padding: 22px !important; }
.el-dialog__footer { padding: 14px 22px 20px !important; background: var(--ui-surface) !important; }
.el-message { border-radius: 10px !important; box-shadow: var(--ui-shadow-lg) !important; }

/* Map workspace */
#apps #container {
    width: 100% !important;
    height: 100% !important;
    min-height: 540px;
    border: 1px solid var(--ui-border);
    border-radius: 14px;
    box-shadow: var(--ui-shadow);
}

.map-page-toolbar {
    position: absolute;
    top: 42px;
    left: 42px;
    z-index: 100;
    display: flex;
    align-items: center;
    gap: 18px;
    min-width: 306px;
    padding: 14px 15px 14px 18px;
    border: 1px solid rgba(220, 230, 237, .92);
    border-radius: 12px;
    background: rgba(255, 255, 255, .94);
    box-shadow: var(--ui-shadow-lg);
    backdrop-filter: blur(12px);
}

.map-page-toolbar__eyebrow { margin: 0 0 4px; color: var(--ui-text-3); font-size: 11px; font-weight: 700; letter-spacing: .08em; }
.map-page-toolbar h2 { margin: 0; color: var(--ui-text); font-size: 18px; font-weight: 700; }
.map-summary { display: flex; gap: 12px; margin-top: 9px; color: var(--ui-text-2); font-size: 11px; }
.map-summary strong { color: var(--ui-text); font-size: 13px; }
.map-summary__online strong { color: var(--ui-success); }
.map-summary__alarm strong { color: var(--ui-danger); }
.map-page-toolbar__button {
    height: 36px;
    padding: 0 12px;
    border: 1px solid #b9dcf6;
    border-radius: 8px;
    color: var(--ui-primary);
    background: var(--ui-primary-soft);
    cursor: pointer;
    font-size: 13px;
    font-weight: 600;
}

.map-page-toolbar__button:hover { color: #fff; border-color: var(--ui-primary); background: var(--ui-primary); }

#navList {
    top: 112px !important;
    left: 42px !important;
    width: 326px !important;
    height: calc(100% - 136px) !important;
    max-height: 650px;
    border: 1px solid rgba(220, 230, 237, .94);
    border-radius: 14px;
    background: rgba(255, 255, 255, .96);
    box-shadow: var(--ui-shadow-lg);
    backdrop-filter: blur(12px);
}

/* Detail/chart page compatibility */
#titt {
    position: relative !important;
    top: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
    margin-bottom: 12px;
    padding: 17px 20px !important;
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background: var(--ui-surface);
    box-shadow: var(--ui-shadow);
}

#titt h3 { margin: 0 0 10px; color: var(--ui-text); font-size: 22px; }
#dayTittle { position: relative !important; top: 0 !important; left: 0 !important; display: flex; flex-wrap: wrap; gap: 8px 22px; color: var(--ui-text-2); }
#dayTittle h5 { margin: 0; font-size: 13px; }
#c {
    position: relative !important;
    top: auto !important;
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    width: 100% !important;
    margin-bottom: 14px;
    padding: 14px 16px !important;
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background: var(--ui-surface);
    box-shadow: var(--ui-shadow);
}

#graph {
    position: relative !important;
    top: auto !important;
    left: 0 !important;
    display: flex !important;
    gap: 14px !important;
    width: 100% !important;
    height: auto !important;
    min-height: 600px;
}

#dayGraph,
#dayGraphBu {
    position: relative !important;
    left: auto !important;
    min-width: 0;
    height: calc(100vh - 300px) !important;
    min-height: 520px;
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background: var(--ui-surface);
    box-shadow: var(--ui-shadow);
}

#dayGraph { flex: 1 1 66%; width: auto !important; max-width: none !important; }
#dayGraphBu { flex: 1 1 34%; }
#export { position: relative !important; top: auto !important; right: auto !important; float: right; margin: 10px 10px 0; }

/* Login */
body.modern-login {
    min-height: 100vh;
    overflow: auto !important;
    background:
        radial-gradient(circle at 10% 15%, rgba(47, 195, 212, .16), transparent 28%),
        radial-gradient(circle at 88% 85%, rgba(22, 135, 217, .18), transparent 30%),
        linear-gradient(135deg, #0e2942 0%, #154d70 55%, #0d7690 100%) !important;
}

.login-shell { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(380px, .8fr); min-height: 100vh; }
.login-shell, .login-shell * { box-sizing: border-box; }
.login-brand { position: relative; overflow: hidden; }
.login-visual { position: absolute; inset: 0; overflow: hidden; }
.login-visual::before,
.login-visual::after { position: absolute; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; content: ""; }
.login-visual::before { width: 62vw; height: 62vw; top: -34vw; left: -20vw; }
.login-visual::after { width: 42vw; height: 42vw; right: -16vw; bottom: -23vw; }
.login-visual__orb { position: absolute; display: block; border-radius: 50%; filter: blur(2px); }
.login-visual__orb--one { width: 18vw; height: 18vw; left: 18%; top: 22%; background: rgba(90, 218, 226, .13); box-shadow: 0 0 90px rgba(90, 218, 226, .18); }
.login-visual__orb--two { width: 10vw; height: 10vw; right: 20%; bottom: 24%; background: rgba(255,255,255,.08); box-shadow: 0 0 70px rgba(255,255,255,.1); }
.login-visual__line { position: absolute; left: 12%; right: 10%; top: 50%; height: 1px; background: linear-gradient(90deg, transparent, rgba(255,255,255,.28), transparent); transform: rotate(-12deg); }
.login-brand__identity { position: relative; z-index: 1; display: flex; min-height: 100%; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(42px, 8vw, 120px); color: #fff; }
.login-brand__mark { display: grid; place-items: center; width: 56px; height: 56px; margin-bottom: 30px; border: 1px solid rgba(255,255,255,.28); border-radius: 16px; background: rgba(255,255,255,.12); box-shadow: 0 16px 42px rgba(0,0,0,.12); backdrop-filter: blur(10px); font-size: 32px; font-weight: 800; }
.login-brand__identity p { margin: 0 0 12px; color: rgba(239,249,255,.72); font-size: 15px; letter-spacing: .18em; }
.login-brand__identity h1 { margin: 0; color: #fff; font-size: clamp(34px, 4vw, 56px); font-weight: 700; letter-spacing: -.02em; line-height: 1.2; }
.login-panel { display: flex; align-items: center; justify-content: center; padding: 36px; background: rgba(247, 251, 253, .96); }
.login-card { width: min(420px, 100%); }
.login-card__eyebrow { margin: 0 0 9px; color: var(--ui-primary); font-size: 12px; font-weight: 800; letter-spacing: .12em; }
.login-card h2 { margin: 0; color: var(--ui-text); font-size: 30px; }
.login-card__lead { margin: 10px 0 30px; color: var(--ui-text-2); }
.login-field { margin-bottom: 18px; }
.login-field label { display: block; margin-bottom: 8px; color: var(--ui-text-2); font-size: 13px; font-weight: 600; }
.login-field__control { position: relative; }
.login-field__control i { position: absolute; top: 50%; left: 14px; z-index: 2; color: var(--ui-text-3); transform: translateY(-50%); }
.login-field input { width: 100%; height: 46px; padding: 0 44px 0 42px; border: 1px solid var(--ui-border); border-radius: 10px; color: var(--ui-text) !important; background: #fff !important; outline: none; transition: border .18s, box-shadow .18s; }
.login-field input:focus { border-color: var(--ui-primary); box-shadow: 0 0 0 4px rgba(22, 135, 217, .10); }
.login-password-toggle { position: absolute; top: 50%; right: 9px; display: grid; place-items: center; width: 32px; height: 32px; padding: 0; border: 0; border-radius: 8px; color: var(--ui-text-3); background: transparent; cursor: pointer; transform: translateY(-50%); }
.login-password-toggle:hover { color: var(--ui-primary); background: var(--ui-primary-soft); }
.login-options { display: flex; align-items: center; margin: 4px 0 24px; color: var(--ui-text-2); font-size: 13px; }
.login-submit { width: 100%; height: 46px; border: 0; border-radius: 10px; color: #fff; background: linear-gradient(135deg, var(--ui-primary), #14a6c2); box-shadow: 0 10px 22px rgba(22, 135, 217, .22); cursor: pointer; font-weight: 700; }
.login-submit:hover { filter: brightness(.96); transform: translateY(-1px); }
.login-alert { margin-bottom: 18px; padding: 10px 12px; border-radius: 9px; font-size: 13px; }
.login-alert--error { color: #a62b34; background: #fff0f1; border: 1px solid #ffd4d7; }
.login-alert--success { color: #13734a; background: #ecfbf4; border: 1px solid #c9f0dd; }

@media (max-width: 1100px) {
    .ui-metrics { grid-template-columns: repeat(2, 1fr); }
    #graph { flex-direction: column !important; }
    #dayGraph, #dayGraphBu { flex: none; width: 100% !important; height: 480px !important; min-height: 480px; }
}

@media (max-width: 760px) {
    :root { --ui-header: 56px; --ui-sidebar: 60px; }
    #top.main-header, #top { padding: 0 14px !important; }
    .platform-brand__name { max-width: 145px; font-size: 14px; }
    .platform-brand__product, .platform-brand__divider { display: none; }
    #app { padding: 12px 7px !important; }
    #app::before, #app .el-menu-item span, #app .el-submenu__title span, #app .el-submenu__icon-arrow { display: none !important; }
    #app .el-menu--horizontal > .el-menu-item, #app .el-menu--horizontal > .el-submenu .el-submenu__title { justify-content: center; padding: 0 !important; }
    #app .el-menu-item i, #app .el-submenu__title i { width: auto; margin: 0 !important; }
    #a { right: 7px !important; }
    #a .el-dropdown:not(:last-child) { display: none !important; }
    #apps { padding: 12px !important; }
    .ui-page-header { align-items: flex-start; flex-direction: column; }
    .ui-page-header h1 { font-size: 21px; }
    .ui-metrics { grid-template-columns: 1fr 1fr; gap: 10px; }
    .ui-metric { min-height: 90px; padding: 14px; }
    .ui-metric__value { font-size: 23px; }
    .ui-toolbar { align-items: stretch; flex-direction: column; }
    .ui-toolbar__group, .ui-toolbar__search { width: 100%; }
    .map-page-toolbar { top: 26px; right: 26px; left: 26px; min-width: 0; justify-content: space-between; }
    .map-page-toolbar__eyebrow { display: none; }
    .map-page-toolbar__button { width: 36px; padding: 0; overflow: hidden; font-size: 0; }
    .map-page-toolbar__button i { font-size: 16px; }
    #navList { top: 88px !important; right: 26px !important; left: 26px !important; width: auto !important; height: calc(100% - 112px) !important; }
    .login-shell { grid-template-columns: 1fr; }
    .login-brand { display: none; }
    .login-panel { min-height: 100vh; padding: 24px; }
}
/* Workspace refinements */
#app .el-menu--horizontal .el-menu {
    position: static !important;
    display: block;
    width: 100% !important;
    margin: 0 !important;
    padding: 4px 0 6px !important;
    border: 0 !important;
    box-shadow: none !important;
    background: rgba(0, 0, 0, .14) !important;
}

#app .el-menu--horizontal .el-menu .el-menu-item {
    height: 38px !important;
    margin: 2px 0 !important;
    padding: 0 12px 0 42px !important;
    border-radius: 7px !important;
    color: rgba(235, 244, 252, .68) !important;
    font-size: 13px !important;
    line-height: 38px !important;
}

#app .el-menu--horizontal .el-menu .el-menu-item:hover,
#app .el-menu--horizontal .el-menu .el-menu-item.is-active {
    color: #fff !important;
    background: rgba(85, 183, 255, .18) !important;
}

body.page-map #apps {
    background: #cbd9e1 !important;
}

body.page-form #apps {
    padding: 30px 36px !important;
}

body.page-form #apps #c {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    width: min(920px, 100%) !important;
    margin: 0 auto !important;
    padding: 30px 36px !important;
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background: var(--ui-surface);
    box-shadow: var(--ui-shadow);
}

body.page-form #apps .demo-ruleForm {
    width: 100%;
    max-width: 720px;
    margin: 0 auto;
}

body.page-form #apps .el-form-item:last-child {
    margin-bottom: 0;
    text-align: right;
}

body.page-form #apps .el-form-item:last-child .el-button:first-child {
    left: auto !important;
}
#app .el-menu--vertical > .el-menu-item,
#app .el-menu--vertical > .el-submenu > .el-submenu__title {
    display: flex !important;
    float: none !important;
    align-items: center;
    width: 100% !important;
    height: 44px !important;
    margin: 3px 0 !important;
    padding: 0 13px !important;
    border-radius: 9px;
    color: rgba(235, 244, 252, .78) !important;
    line-height: 44px !important;
}

#app .el-menu--vertical > .el-submenu {
    height: auto !important;
    padding: 0 !important;
}

#app .el-menu--vertical .el-menu {
    position: static !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 4px 0 6px !important;
    border: 0 !important;
    box-shadow: none !important;
    background: rgba(0, 0, 0, .14) !important;
}

#app .el-menu--vertical .el-menu .el-menu-item {
    height: 38px !important;
    margin: 2px 0 !important;
    padding: 0 12px 0 42px !important;
    border-radius: 7px !important;
    color: rgba(235, 244, 252, .68) !important;
    font-size: 13px !important;
    line-height: 38px !important;
}
/* Sidebar interaction refinements */
#app { padding: 14px 10px !important; background: linear-gradient(180deg, #0d263e 0%, #123957 100%) !important; transition: width .22s ease, padding .22s ease; }
#app::before { display: none !important; }
.workspace-nav-head { display:flex; align-items:center; justify-content:space-between; height:40px; margin:0 2px 12px; padding:0 8px 0 12px; border:1px solid rgba(168,215,244,.14); border-radius:10px; color:rgba(235,244,252,.82); background:rgba(255,255,255,.06); }
.workspace-nav-head__label { font-size:12px; font-weight:700; letter-spacing:.16em; }
.workspace-nav-head__toggle { display:grid; place-items:center; width:28px; height:28px; padding:0; border:0; border-radius:7px; color:rgba(235,244,252,.72); background:transparent; cursor:pointer; transition:color .18s ease,background .18s ease; }
.workspace-nav-head__toggle:hover { color:#fff; background:rgba(85,183,255,.2); }
#app .el-menu-item i, #app .el-submenu__title i { position:static !important; left:auto !important; }
#app .el-menu--vertical .el-submenu > .el-menu { display:none !important; position:static !important; width:100% !important; margin:2px 0 5px !important; padding:4px 0 6px !important; border:1px solid rgba(168,215,244,.12) !important; border-radius:9px; box-shadow:none !important; background:rgba(0,0,0,.14) !important; }
#app:not(.is-collapsed) .el-menu--vertical .el-submenu:hover > .el-menu { display:block !important; }
#app .el-menu--vertical .el-submenu > .el-menu .el-menu-item { display:flex !important; align-items:center; gap:9px; padding-left:18px !important; color:rgba(235,244,252,.7) !important; }
#app .el-menu--vertical .el-submenu > .el-menu .el-menu-item i { width:16px; margin:0 !important; color:rgba(154,211,245,.86) !important; font-size:15px !important; }
#app.is-collapsed { padding-right:8px !important; padding-left:8px !important; }
#app.is-collapsed .workspace-nav-head { justify-content:center; margin-right:0; margin-left:0; padding:0; }
#app.is-collapsed .workspace-nav-head__label, #app.is-collapsed .el-menu-item span, #app.is-collapsed .el-submenu__title span, #app.is-collapsed .el-submenu__icon-arrow { display:none !important; }
#app.is-collapsed .el-menu--vertical > .el-menu-item, #app.is-collapsed .el-menu--vertical > .el-submenu > .el-submenu__title { justify-content:center; padding:0 !important; }
#app.is-collapsed .el-menu--vertical .el-submenu > .el-menu { display:none !important; }
body.sidebar-collapsed { --ui-sidebar:68px; }
#app, #apps { transition:width .22s ease, margin-left .22s ease, padding .22s ease; }
@media (max-width:760px) { .workspace-nav-head__label { display:none; } .workspace-nav-head { justify-content:center; margin-right:0; margin-left:0; padding:0; } body.sidebar-collapsed { --ui-sidebar:60px; } }
/* Sidebar visual refinement */
#app .el-menu--vertical { text-align: left !important; }
#app .el-menu--vertical > .el-menu-item,
#app .el-menu--vertical > .el-submenu > .el-submenu__title {
    justify-content: flex-start !important;
    font-size: 14px !important;
    text-align: left !important;
}
#app .el-menu--vertical > .el-menu-item span,
#app .el-menu--vertical > .el-submenu > .el-submenu__title span {
    position: static !important;
    left: auto !important;
    font-size: 14px !important;
    font-family: inherit !important;
}
#app .el-menu--vertical > .el-menu-item:hover,
#app .el-menu--vertical > .el-menu-item.is-active,
#app .el-menu--vertical > .el-submenu:hover > .el-submenu__title,
#app .el-menu--vertical > .el-submenu.is-active > .el-submenu__title {
    color: #fff !important;
    background: rgba(79, 159, 199, .2) !important;
    box-shadow: inset 3px 0 0 #70c8ed;
}
#app .el-menu--vertical .el-submenu > .el-menu {
    border-color: rgba(112, 200, 237, .18) !important;
    background: #173c56 !important;
}
#app .el-menu--vertical .el-submenu > .el-menu .el-menu-item {
    justify-content: flex-start !important;
    font-size: 13px !important;
    text-align: left !important;
}
#app.is-collapsed .el-menu--vertical > .el-menu-item,
#app.is-collapsed .el-menu--vertical > .el-submenu > .el-submenu__title {
    justify-content: center !important;
    align-items: center !important;
    height: 48px !important;
    line-height: 48px !important;
}
#app.is-collapsed .el-menu--vertical > .el-menu-item i,
#app.is-collapsed .el-menu--vertical > .el-submenu > .el-submenu__title i {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    margin: 0 !important;
    line-height: 1 !important;
}
/* Reference menu visual */
:root { --ui-sidebar: 300px; }
#app {
    padding: 24px 18px !important;
    background: #153a58 !important;
}
#app > .el-menu,
#app > .el-menu.el-menu--vertical {
    background: transparent !important;
    text-align: left !important;
}
#app .workspace-nav-head {
    height: 42px;
    margin: 0 10px 18px;
    padding: 0 12px;
    border: 0;
    border-radius: 0;
    color: #7e9eb8;
    background: transparent;
}
#app .workspace-nav-head__label {
    font-family: "STSong", "SimSun", "Songti SC", serif;
    font-size: 19px;
    font-weight: 500;
    letter-spacing: .16em;
}
#app .workspace-nav-head__toggle {
    color: #aac7da;
}
#app > .el-menu > .el-menu-item,
#app > .el-menu > .el-submenu > .el-submenu__title {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    height: 64px !important;
    margin: 3px 0 !important;
    padding: 0 22px !important;
    border-radius: 17px !important;
    color: #bdd5e6 !important;
    background: transparent !important;
    font-family: "STSong", "SimSun", "Songti SC", serif !important;
    font-size: 20px !important;
    line-height: 64px !important;
    text-align: left !important;
}
#app > .el-menu > .el-menu-item span,
#app > .el-menu > .el-submenu > .el-submenu__title span {
    position: static !important;
    left: auto !important;
    font-family: inherit !important;
    font-size: 20px !important;
}
#app > .el-menu > .el-menu-item i,
#app > .el-menu > .el-submenu > .el-submenu__title i {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    margin: 0 18px 0 0 !important;
    color: #c3d9e7 !important;
    font-size: 23px !important;
    line-height: 1 !important;
}
#app > .el-menu > .el-menu-item:hover,
#app > .el-menu > .el-menu-item.is-active,
#app > .el-menu > .el-submenu:hover > .el-submenu__title,
#app > .el-menu > .el-submenu.is-active > .el-submenu__title {
    color: #fff !important;
    background: #365b7b !important;
    box-shadow: inset 5px 0 0 #53b8f2 !important;
}
#app > .el-menu > .el-submenu > .el-submenu__title .el-submenu__icon-arrow {
    right: 20px;
    color: #c3d9e7 !important;
    font-size: 20px;
}
#app .el-menu--vertical .el-submenu > .el-menu {
    margin: -1px 0 6px 20px !important;
    padding: 6px 0 !important;
    border: 0 !important;
    border-left: 1px solid rgba(146, 201, 232, .26) !important;
    border-radius: 0 !important;
    background: rgba(10, 35, 55, .42) !important;
}
#app .el-menu--vertical .el-submenu > .el-menu .el-menu-item {
    height: 44px !important;
    padding: 0 16px 0 28px !important;
    border-radius: 0 10px 10px 0 !important;
    color: #a9c9dc !important;
    font-family: "STSong", "SimSun", "Songti SC", serif !important;
    font-size: 16px !important;
    line-height: 44px !important;
}
#app .el-menu--vertical .el-submenu > .el-menu .el-menu-item span {
    font-size: 16px !important;
}
#app .el-menu--vertical .el-submenu > .el-menu .el-menu-item i {
    width: 18px;
    margin: 0 10px 0 0 !important;
    color: #8ec9e8 !important;
    font-size: 16px !important;
}
#app.is-collapsed {
    padding: 24px 10px !important;
}
#app.is-collapsed .workspace-nav-head {
    margin: 0 0 18px;
    padding: 0;
}
#app.is-collapsed > .el-menu > .el-menu-item,
#app.is-collapsed > .el-menu > .el-submenu > .el-submenu__title {
    justify-content: center !important;
    height: 56px !important;
    padding: 0 !important;
    line-height: 56px !important;
}
#app.is-collapsed > .el-menu > .el-menu-item i,
#app.is-collapsed > .el-menu > .el-submenu > .el-submenu__title i {
    width: 28px;
    height: 28px;
    margin: 0 !important;
    font-size: 22px !important;
}
#app.is-collapsed > .el-menu > .el-submenu:hover > .el-menu {
    display: none !important;
}
/* Inline submenu behavior */
#app .el-menu--vertical .el-submenu > .el-menu,
#app .el-menu--vertical .el-submenu > .el-menu .el-menu-item {
    background: #153a58 !important;
}
#app .el-menu--vertical .el-submenu > .el-menu {
    border-left-color: rgba(183, 213, 230, .24) !important;
}
#app .el-menu--vertical .el-submenu > .el-menu .el-menu-item:hover,
#app .el-menu--vertical .el-submenu > .el-menu .el-menu-item.is-active {
    background: #365b7b !important;
}
#app .el-menu--vertical .el-submenu:hover > .el-menu {
    display: block !important;
}
#app.is-collapsed .el-menu--vertical .el-submenu:hover > .el-menu {
    display: block !important;
    width: 100% !important;
    margin: -1px 0 6px !important;
    padding: 4px 0 !important;
    border-left: 1px solid rgba(183, 213, 230, .24) !important;
}
#app.is-collapsed .el-menu--vertical .el-submenu:hover > .el-menu .el-menu-item {
    justify-content: center !important;
    height: 44px !important;
    padding: 0 !important;
}
#app.is-collapsed .el-menu--vertical .el-submenu:hover > .el-menu .el-menu-item i {
    width: 22px;
    height: 22px;
    margin: 0 !important;
    font-size: 18px !important;
}

/* Stable workspace navigation and data-list layout */
:root { --ui-sidebar: 248px; }
#app { padding: 18px 12px !important; background: #153a58 !important; }
#app .workspace-nav-head { height: 38px; margin: 0 6px 12px; padding: 0 10px; }
#app .workspace-nav-head__label { font: 600 13px/1 Inter, "PingFang SC", "Microsoft YaHei", sans-serif; letter-spacing: .12em; }
#app > .el-menu > .el-menu-item,
#app .workspace-submenu__title { display:flex !important; align-items:center !important; justify-content:flex-start !important; width:100% !important; height:50px !important; margin:2px 0 !important; padding:0 16px !important; border-radius:10px !important; color:#bdd5e6 !important; background:transparent !important; font:500 15px/50px Inter,"PingFang SC","Microsoft YaHei",sans-serif !important; text-align:left !important; cursor:pointer; }
#app > .el-menu > .el-menu-item span,
#app .workspace-submenu__title span { position:static !important; left:auto !important; font:inherit !important; }
#app > .el-menu > .el-menu-item i,
#app .workspace-submenu__title > i:first-child { display:inline-flex !important; align-items:center; justify-content:center; width:22px; height:22px; margin:0 12px 0 0 !important; color:#c3d9e7 !important; font-size:19px !important; line-height:1 !important; }
#app > .el-menu > .el-menu-item:hover,
#app > .el-menu > .el-menu-item.is-active,
#app .workspace-submenu:hover > .workspace-submenu__title,
#app .workspace-submenu.is-active > .workspace-submenu__title { color:#fff !important; background:#365b7b !important; box-shadow:inset 3px 0 0 #53b8f2 !important; }
#app .workspace-submenu { display:block; width:100%; list-style:none; }
#app .workspace-submenu__arrow { margin-left:auto !important; color:#a9c9dc !important; font-size:13px !important; transition:transform .18s ease; }
#app .workspace-submenu__items { display:none; margin:0 0 4px 18px; padding:3px 0 3px 10px; border-left:1px solid rgba(183,213,230,.24); background:#153a58; list-style:none; }
#app:not(.is-collapsed) .workspace-submenu:hover > .workspace-submenu__items { display:block; }
#app:not(.is-collapsed) .workspace-submenu:hover > .workspace-submenu__title .workspace-submenu__arrow { transform:rotate(180deg); }
#app .workspace-submenu__items li { display:flex; align-items:center; height:40px; padding:0 12px; border-radius:8px; color:#abc9da; background:#153a58; cursor:pointer; font-size:14px; }
#app .workspace-submenu__items li:hover { color:#fff; background:#294f6d; }
#app .workspace-submenu__items li i { width:18px; margin-right:9px; color:#8ec9e8; font-size:15px; text-align:center; }
body.sidebar-collapsed { --ui-sidebar:72px; }
#app.is-collapsed { padding:18px 10px !important; overflow-x:hidden; }
#app.is-collapsed .workspace-nav-head { justify-content:center; margin:0 0 12px; padding:0; }
#app.is-collapsed .workspace-nav-head__label,
#app.is-collapsed > .el-menu > .el-menu-item span,
#app.is-collapsed .workspace-submenu__title span,
#app.is-collapsed .workspace-submenu__arrow,
#app.is-collapsed .workspace-submenu__items { display:none !important; }
#app.is-collapsed > .el-menu > .el-menu-item,
#app.is-collapsed .workspace-submenu__title { justify-content:center !important; height:48px !important; padding:0 !important; line-height:48px !important; }
#app.is-collapsed > .el-menu > .el-menu-item i,
#app.is-collapsed .workspace-submenu__title > i:first-child { width:22px; height:22px; margin:0 !important; font-size:19px !important; }
body.page-form #apps #c.data-list-layout { display:block !important; width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important; overflow:hidden !important; }
.data-list-toolbar { display:flex !important; align-items:center; gap:10px; width:min(440px,100%) !important; margin:0 0 0 auto !important; padding:16px !important; float:none !important; position:static !important; }
.data-list-toolbar .el-input { min-width:0; flex:1; }
.data-list-toolbar #search { position:static !important; width:40px !important; height:40px !important; padding:0 !important; float:none !important; flex:0 0 40px; transform:none !important; }
.data-list-table { width:100% !important; margin:0 !important; }
.data-list-table .el-table__body-wrapper { overflow-x:auto !important; }
.data-list-table .cell .el-button + .el-button { margin-left:6px; }
.data-list-pagination { display:flex; justify-content:center; width:100%; margin:0 !important; padding:4px 10px 8px; overflow-x:auto; border-top:1px solid #edf2f5; background:#fff; }
.data-list-pagination .el-pagination { flex:0 0 auto; white-space:nowrap; }
@media (max-width:760px) { body.sidebar-collapsed { --ui-sidebar:60px; } .data-list-toolbar { width:100% !important; } }
/* Header action visibility and compact icon-only navigation */
#a .el-dropdown { border:1px solid #d4e2ec !important; color:#173e60 !important; background:#eef5fa !important; box-shadow:0 2px 7px rgba(16,45,72,.08); }
#a .el-dropdown:hover { border-color:#b9d9ef !important; color:var(--ui-primary) !important; background:#e2f2fd !important; }
#a .MyImg,
#a .MyImg2 { opacity:.82; filter:brightness(0) saturate(100%) invert(21%) sepia(24%) saturate(1450%) hue-rotate(164deg) brightness(91%); }
#app.is-collapsed > .el-menu > .el-menu-item,
#app.is-collapsed .workspace-submenu__title { width:40px !important; height:40px !important; margin:4px auto !important; border-radius:6px !important; background:transparent !important; box-shadow:none !important; line-height:40px !important; }
#app.is-collapsed > .el-menu > .el-menu-item.is-active,
#app.is-collapsed .workspace-submenu.is-active > .workspace-submenu__title { color:#8fd6f5 !important; background:transparent !important; box-shadow:none !important; }
#app.is-collapsed > .el-menu > .el-menu-item:hover,
#app.is-collapsed .workspace-submenu:hover > .workspace-submenu__title { color:#fff !important; background:rgba(255,255,255,.08) !important; box-shadow:none !important; }

/* Give header actions comfortable spacing and hit targets */
#a { right: 24px !important; gap: 10px; }
#a .el-dropdown { width: 42px !important; height: 42px !important; margin-left: 0 !important; }


#a .account-menu { width: auto !important; min-width: 154px; padding: 0 12px !important; }
#a .account-menu__trigger { display:flex; align-items:center; gap:8px; width:100%; color:#173e60; cursor:pointer; }
#a .account-menu__trigger .MyImg { width:23px !important; height:23px !important; flex:0 0 23px; }
#a .account-menu__name { max-width:96px; overflow:hidden; color:#173e60; font-size:13px; font-weight:600; text-overflow:ellipsis; white-space:nowrap; }
#a .account-menu__trigger > i { margin-left:auto; color:#6b8598; font-size:12px; }

/* Softer account profile trigger */
#a .account-menu { min-width:0 !important; padding:4px 8px !important; border-color:transparent !important; background:transparent !important; box-shadow:none !important; }
#a .account-menu:hover { border-color:transparent !important; background:#f1f7fb !important; box-shadow:none !important; }
#a .account-menu__trigger { gap:9px; }
#a .account-menu__trigger .MyImg { width:30px !important; height:30px !important; padding:6px; border:1px solid #cfe4f1; border-radius:50%; background:#eaf6ff; flex-basis:30px; }
#a .account-menu__name { max-width:170px; font-size:14px; font-weight:600; }
#a .account-menu__name small { margin-left:2px; font-size:12px; font-weight:500; }
#a .account-menu__avatar { display:grid; place-items:center; width:30px; height:30px; border:1px solid #cfe4f1; border-radius:50%; color:#2c7098; background:#eaf6ff; flex:0 0 30px; font-size:16px; }
/* Customer reference: airy light-blue workspace navigation */
#app {
    border-right: 1px solid #bad6e8;
    background: linear-gradient(180deg, #e7f3fb 0%, #d5e9f6 58%, #c4e0f1 100%) !important;
    box-shadow: 8px 0 24px rgba(48, 101, 138, .12);
}
#app .workspace-nav-head { color: #617f94 !important; }
#app > .el-menu > .el-menu-item,
#app .workspace-submenu__title { color: #365f7b !important; }
#app > .el-menu > .el-menu-item i,
#app .workspace-submenu__title > i:first-child { color: #4f86ab !important; }
#app .workspace-submenu__arrow { color: #6f95ad !important; }
#app > .el-menu > .el-menu-item:hover,
#app > .el-menu > .el-menu-item.is-active,
#app .workspace-submenu:hover > .workspace-submenu__title,
#app .workspace-submenu.is-active > .workspace-submenu__title {
    color: #216b9e !important;
    background: rgba(174, 215, 241, .82) !important;
    box-shadow: inset 3px 0 0 #58abe0 !important;
}
#app .workspace-submenu__items {
    border-left-color: #abcddd !important;
    background: transparent !important;
}
#app .workspace-submenu__items li {
    color: #4c7087 !important;
    background: transparent !important;
}
#app .workspace-submenu__items li i { color: #5791b5 !important; }
#app .workspace-submenu__items li:hover {
    color: #216b9e !important;
    background: rgba(174, 215, 241, .74) !important;
}
/* Customer reference: layered sidebar background shapes */
#app {
    position: relative;
    isolation: isolate;
    overflow: hidden;
}
#app::before {
    content: "";
    display: block !important;
    position: absolute;
    z-index: 0;
    left: -28%;
    right: -24%;
    bottom: -11%;
    height: 42%;
    border-radius: 54% 46% 0 0 / 28% 22% 0 0;
    background: linear-gradient(155deg, rgba(125, 188, 222, .18), rgba(81, 153, 199, .08));
    transform: rotate(-5deg);
    pointer-events: none;
}
#app::after {
    content: "";
    display: block;
    position: absolute;
    z-index: 0;
    left: -22%;
    right: -35%;
    bottom: -18%;
    height: 38%;
    border-radius: 48% 52% 0 0 / 34% 26% 0 0;
    background: radial-gradient(ellipse at 68% 28%, rgba(255, 255, 255, .34), transparent 60%), rgba(99, 173, 215, .12);
    transform: rotate(7deg);
    pointer-events: none;
}
#app > * { position: relative; z-index: 1; }
/* Customer reference: layered sidebar pattern */
#app::before {
    left: -34%;
    right: -26%;
    bottom: -15%;
    height: 54%;
    border-radius: 52% 48% 0 0 / 30% 24% 0 0;
    background:
        radial-gradient(ellipse at 12% 82%, rgba(255, 255, 255, .34) 0 9%, transparent 31%),
        radial-gradient(ellipse at 84% 94%, rgba(67, 145, 194, .18) 0 15%, transparent 41%),
        linear-gradient(154deg, rgba(127, 190, 222, .24), rgba(79, 151, 198, .08));
    transform: rotate(-6deg);
}
#app::after {
    left: -18%;
    right: -30%;
    bottom: -3%;
    height: 46%;
    border-radius: 0;
    background:
        radial-gradient(circle at 24% 34%, rgba(255, 255, 255, .25) 0 2px, transparent 3px) 0 0 / 22px 22px,
        linear-gradient(148deg, transparent 0 38%, rgba(74, 152, 199, .14) 39% 40%, transparent 41%),
        linear-gradient(164deg, transparent 0 56%, rgba(255, 255, 255, .18) 57% 58%, transparent 59%),
        rgba(90, 165, 208, .12);
    clip-path: polygon(0 54%, 17% 43%, 36% 56%, 55% 37%, 74% 50%, 100% 28%, 100% 100%, 0 100%);
    transform: none;
}
#app > .el-menu { position: relative; z-index: 1; }
#app > .el-menu::after {
    content: "";
    position: absolute;
    left: 9%;
    right: 9%;
    bottom: 4px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(100, 166, 204, .34), transparent);
    pointer-events: none;
}
/* Customer reference: header right-side decoration */
#top.main-header,
#top {
    position: relative !important;
    overflow: hidden;
}
#top::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: -58%;
    right: 12%;
    width: 42%;
    height: 210%;
    border-radius: 44% 56% 48% 52%;
    background:
        radial-gradient(ellipse at 64% 44%, rgba(108, 183, 222, .18) 0 19%, transparent 54%),
        linear-gradient(135deg, transparent 0 36%, rgba(189, 224, 243, .38) 37% 48%, transparent 49%);
    transform: rotate(-10deg);
    pointer-events: none;
}
#top::after {
    content: "";
    position: absolute;
    z-index: 0;
    top: 8px;
    right: 19%;
    width: 22%;
    height: 48px;
    opacity: .42;
    background: radial-gradient(circle, rgba(87, 157, 198, .45) 0 1.5px, transparent 2px) 0 0 / 18px 18px;
    mask-image: linear-gradient(90deg, transparent, #000 22%, #000 78%, transparent);
    pointer-events: none;
}
#top > * { position: relative; z-index: 1; }
/* Refine submenu typography and password visibility control */
#app .workspace-submenu__items li,
#app .workspace-submenu__items li span {
    font-family: Inter, "PingFang SC", "Microsoft YaHei", sans-serif !important;
    font-weight: 500 !important;
    letter-spacing: .01em;
}
.login-password-toggle {
    display: flex !important;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}
.login-password-toggle i {
    position: static !important;
    top: auto !important;
    left: auto !important;
    display: block;
    width: 18px;
    height: 18px;
    line-height: 18px;
    text-align: center;
    transform: none !important;
}