/* 天龙云控制台视觉层，保留魔方原生菜单与表单。 */
html[data-tly-member] {
  --tly-blue: #2f7bff;
  --tly-blue-dark: #1f66e5;
  --tly-blue-soft: #edf4ff;
  --tly-ink: #1d2b44;
  --tly-muted: #53627a;
  --tly-line: #e7ecf3;
  --tly-page: #f5f7fb;
  --tly-card: #fff;
}

html[data-tly-member][theme="default"],
html[data-tly-member][theme="default"] body {
  --color-primary: var(--tly-blue);
  --color-menu-bg: var(--tly-card);
  --color-menu-active-bg: var(--tly-blue-soft);
  --color-menu-hover-bg: var(--tly-page);
  --color-menu-text: var(--tly-muted);
  --color-menu-text-active: var(--tly-blue);
  color: var(--tly-ink);
  background: var(--tly-page);
}

[data-tly-member][theme="default"] .template > .el-container {
  background: var(--tly-page);
}

[data-tly-member][theme="default"] .el-header {
  border-bottom: 1px solid var(--tly-line);
  background: var(--tly-card);
  box-shadow: 0 4px 14px rgb(32 63 112 / 4%);
}

[data-tly-member][theme="default"] .el-header .header-left .el-input__inner {
  border: 1px solid var(--tly-line);
  border-radius: 8px;
  background-color: #f7f9fd;
}

[data-tly-member][theme="default"] .el-header .header-left .el-input__inner:focus {
  border-color: #b6d0ff;
  background-color: #fff;
}

[data-tly-member][theme="default"] .el-header .header-right-item {
  border-radius: 8px;
}

[data-tly-member][theme="default"] .el-header .header-right-item:hover {
  background: #f3f7ff;
}

[data-tly-member][theme="default"] .el-aside {
  border-inline-end: 1px solid var(--tly-line);
  box-shadow: 5px 0 22px rgb(42 64 105 / 5%);
}

[data-tly-member][theme="default"] .menu-top .el-menu-item,
[data-tly-member][theme="default"] .menu-top .el-submenu__title {
  border-radius: 8px;
}

[data-tly-member][theme="default"] .menu-top .el-menu-item.is-active {
  color: var(--tly-blue);
  background: var(--tly-blue-soft);
  font-weight: 600;
}

[data-tly-member][theme="default"] .menu-top .el-menu-item:not(.is-active):hover,
[data-tly-member][theme="default"] .menu-top .el-submenu__title:hover {
  color: var(--tly-blue);
  background: var(--tly-page);
}

[data-tly-member][theme="default"] .main-card,
[data-tly-member][theme="default"] .el-card {
  border-color: var(--tly-line);
  border-radius: 4px;
}

[data-tly-member][theme="default"] .main-card {
  box-shadow: 0 4px 16px rgb(31 45 78 / 3%);
}

[data-tly-member][theme="default"] .main-card-title {
  color: var(--tly-ink);
  font-weight: 600;
}

[data-tly-member][theme="default"] .el-dialog {
  border-radius: 8px;
}

[data-tly-member][theme="default"] .el-button--primary {
  border-color: var(--tly-blue);
  background-color: var(--tly-blue);
}

[data-tly-member][theme="default"] .el-button--primary:not(.is-disabled):hover,
[data-tly-member][theme="default"] .el-button--primary:not(.is-disabled):focus {
  border-color: var(--tly-blue-dark);
  background-color: var(--tly-blue-dark);
}

[data-tly-member][theme="default"] .el-button--primary.is-disabled {
  border-color: #a6bde9;
  background-color: #a6bde9;
}

[data-tly-member] :is(a, button, input, [role="button"]):focus-visible {
  outline: 2px solid var(--tly-blue);
  outline-offset: 3px;
}

.tly-auth-welcome { display: none; }

[data-tly-member][theme="default"] :is(#login, #regist, #forget) .container-back {
  background-color: #1a56db;
}

[data-tly-member][theme="default"] :is(#login, #regist, #forget) .login-btn {
  border-radius: 7px;
}

@media (min-width: 761px) {
  [data-tly-member] .el-aside .ali-logo {
    object-fit: contain;
  }
  [data-tly-member][theme="default"] .el-aside .menu-top .el-menu-item,
  [data-tly-member][theme="default"] .el-aside .menu-top .el-submenu__title {
    margin-block-end: 4px;
    min-height: 44px;
  }
  [data-tly-member][theme="default"] .el-aside .menu-top .el-menu-item > i,
  [data-tly-member][theme="default"] .el-aside .menu-top .el-submenu__title > i:first-child:not(.el-submenu__icon-arrow) {
    display: inline-grid;
    place-items: center;
    width: 27px;
    height: 27px;
    margin-inline-end: 7px;
    border-radius: 7px;
    background: #f2f5fa;
    color: #708099;
    vertical-align: middle;
  }
  [data-tly-member][theme="default"] .el-aside .menu-top .el-menu-item.is-active > i {
    background: #d9e9ff;
    color: var(--tly-blue);
  }
}

@media (max-width: 760px) {
  [data-tly-member] :is(#login, #regist, #forget) {
    display: block;
    width: 100%;
    min-height: 100dvh;
    height: auto;
    background: #f4f7fb;
  }
  [data-tly-member] :is(#login, #regist, #forget) .login-container {
    width: 100%;
    min-height: 100dvh;
    height: auto;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    background: #f4f7fb url("../img/tianlongyun-auth-mobile.png") center top / 100% auto no-repeat;
  }
  [data-tly-member] .tly-auth-welcome {
    display: grid;
    box-sizing: border-box;
    align-content: center;
    gap: 5px;
    min-height: 126px;
    padding: 14px 21px;
    color: #333;
  }
  [data-tly-member] .tly-auth-welcome strong { font-size: 31px; line-height: 1.1; font-weight: 650; }
  [data-tly-member] .tly-auth-welcome span { font-size: 17px; line-height: 1.4; font-weight: 600; }
  [data-tly-member] :is(#login, #regist, #forget) .container-back { display: none; }
  [data-tly-member] :is(#login, #regist, #forget) .container-before {
    width: 100%;
    min-width: 0;
    min-height: calc(100dvh - 126px);
    height: auto;
    flex: 1;
    position: relative;
    inset: auto;
    margin: 0;
    border: 0;
    border-radius: 22px 22px 0 0;
    background: #fff;
    box-shadow: none;
  }
  [data-tly-member] :is(#login, #regist, #forget) .login {
    padding: 28px 21px 26px;
    font-size: 14px;
    line-height: 1.5;
  }
  [data-tly-member] :is(#login, #regist, #forget) .login-text-title {
    font-size: 19px;
    line-height: 1.3;
  }
  [data-tly-member] :is(#login, #regist, #forget) .login .el-input__inner {
    min-height: 42px;
  }
  [data-tly-member] :is(#login, #regist, #forget) .login-btn {
    min-height: 43px;
  }
  [data-tly-member] .el-dialog {
    max-width: calc(100vw - 24px);
  }
  [data-tly-member] .new-pay-dialog .pay-footer {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    font-size: 14px;
  }
  [data-tly-member] .new-pay-dialog .pay-footer-left:empty {
    display: none;
  }
  [data-tly-member] .new-pay-dialog .pay-footer-left .el-select {
    flex: 1 1 auto;
    min-width: 0;
    max-width: 100%;
  }
  [data-tly-member] .new-pay-dialog .pay-footer-left .el-select > .el-input,
  [data-tly-member] .new-pay-dialog .pay-footer-left .el-select .el-input__inner {
    box-sizing: border-box;
    min-width: 0;
    width: 100%;
  }
  [data-tly-member] .new-pay-dialog .pay-footer-right {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
  }
  [data-tly-member] .new-pay-dialog .pay-footer-right .el-button + .el-button {
    margin-left: 0;
  }
}

@media (max-width: 750px) {
  [data-tly-member] .product .el-main > .main-card .main-card-search {
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
  }
  [data-tly-member] .product .el-main > .main-card .batch-op-btn {
    flex-wrap: wrap;
  }
  [data-tly-member] .product .el-main > .main-card .right-search {
    column-gap: 8px;
  }
  [data-tly-member] .product .el-main > .main-card .right-search > :is(.el-select, .el-input) {
    flex: 1 1 0;
    min-width: 0;
  }
  [data-tly-member] .product .el-main > .main-card .right-search .el-select .el-input {
    width: 100%;
  }
  [data-tly-member] .product .el-main > .main-card .right-search .search-btn {
    min-width: 44px;
    min-height: 36px;
  }
  [data-tly-member] .myPage {
    min-width: 0;
    max-width: 100%;
    flex-wrap: wrap;
    gap: 6px;
  }
  [data-tly-member] .myPage .el-pagination {
    min-width: 0;
    flex-wrap: wrap;
    gap: 4px;
    padding-inline: 0;
    white-space: normal;
  }
  [data-tly-member] .myPage .el-pagination :is(.btn-prev, .btn-next) {
    min-width: 28px;
    padding-inline: 0;
  }
  [data-tly-member] .myPage .el-pagination .el-pager li {
    min-width: 25px;
    height: 28px;
    line-height: 26px;
  }
  [data-tly-member] .myPage .el-pagination__jump {
    order: 1;
    margin-inline-start: 0;
  }
}
