/* =========================================================
   智能管理平台 · 品牌皮肤
   在 layuiAdmin 原生样式之后加载，覆盖为更清爽的后台视觉
   ========================================================= */
:root {
    --brand: #1677ff;
    --brand-2: #36cfc9;
    --ink: #0b1f3a;
    --muted: #6e7887;
    --bg: #f3f6fb;
    --line: #e7edf6;
    --card: #ffffff;
    --radius: 12px;
    --shadow: 0 8px 28px rgba(17, 45, 85, .06);
}

body {
    font-family: "Microsoft YaHei", "PingFang SC", "Helvetica Neue", Arial, sans-serif !important;
    color: #263447;
    background: var(--bg);
}

/* ---------- 顶部 ---------- */
.coreshop-admin .layui-header {
    background: #fff !important;
    box-shadow: 0 2px 14px rgba(17, 45, 85, .06);
    border-bottom: 1px solid #eef3fa;
}
.coreshop-admin .layui-header .layui-nav .layui-nav-item > a {
    color: #4a5a70 !important;
}
.coreshop-admin .layui-header .layui-nav .layui-nav-item > a:hover {
    color: var(--brand) !important;
    background: #f4f8ff !important;
}
.coreshop-admin .layui-header .layui-nav .layui-nav-item > a .layui-icon {
    font-size: 17px;
}

/* ---------- 左侧导航 ---------- */
.coreshop-admin .layui-side,
.coreshop-admin .layui-side-scroll {
    background: linear-gradient(180deg, #0b1f3a 0%, #102b4d 55%, #0c2340 100%) !important;
}
.coreshop-admin .layui-side-scroll {
    padding-top: 74px;
    box-sizing: border-box;
}
.coreshop-admin .layui-side {
    box-shadow: 6px 0 24px rgba(9, 28, 55, .12);
}
.coreshop-admin .layui-logo {
    background: transparent !important;
    height: 74px !important;
    line-height: 74px !important;
    box-shadow: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
    display: flex;
    align-items: center;
    justify-content: center;
}
.coreshop-admin .layui-logo img {
    width: 190px !important;
    height: 48px !important;
    object-fit: contain;
}
.coreshop-admin .layui-nav-tree {
    background: transparent !important;
    padding: 0 8px 24px !important;
}
.coreshop-admin .layui-side-menu .layui-nav {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
.coreshop-admin .layui-nav-tree .layui-nav-item {
    margin: 3px 0;
}
.coreshop-admin .layui-nav-tree .layui-nav-item > a {
    color: #c7d6e9 !important;
    border-radius: 9px;
    margin: 0 4px;
    padding: 0 14px;
    transition: .2s;
}
.coreshop-admin .layui-nav-tree .layui-nav-item > a:hover {
    background: rgba(255, 255, 255, .08) !important;
    color: #fff !important;
}
.coreshop-admin .layui-nav-tree .layui-this > a,
.coreshop-admin .layui-nav-tree .layui-nav-itemed > a {
    background: linear-gradient(90deg, #1677ff, #36cfc9) !important;
    color: #fff !important;
    box-shadow: 0 6px 16px rgba(22, 119, 255, .28);
}
.coreshop-admin .layui-nav-tree .layui-nav-child {
    background: transparent !important;
    padding: 2px 0 6px;
}
.coreshop-admin .layui-nav-tree .layui-nav-child a {
    color: #9fb3ce !important;
    border-radius: 7px;
    margin: 2px 4px 2px 14px;
    padding-left: 36px;
}
.coreshop-admin .layui-nav-tree .layui-nav-child a:hover,
.coreshop-admin .layui-nav-tree .layui-nav-child .layui-this a {
    color: #fff !important;
    background: rgba(255, 255, 255, .08) !important;
}
.coreshop-admin .layui-nav-tree .layui-nav-more {
    border-top-color: #8ea7c4 !important;
}

/* ---------- 内容区 ---------- */
.coreshop-admin .layui-body {
    background: var(--bg) !important;
}
.coreshop-admin .layui-fluid {
    padding: 18px !important;
}
.coreshop-admin .layui-card {
    background: var(--card);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    overflow: hidden;
}
.coreshop-admin .layui-card-header {
    height: auto;
    min-height: 52px;
    line-height: 52px;
    padding: 0 20px;
    color: var(--ink);
    font-size: 14px;
    font-weight: 700;
    background: #fff;
    border-bottom: 1px solid #eef3fa;
}
.coreshop-admin .layui-card-header .layui-icon {
    color: var(--brand);
    margin-right: 6px;
}
.coreshop-admin .layui-card-body {
    padding: 18px 20px;
}

/* ---------- 按钮 / 表单 ---------- */
.layui-btn {
    border-radius: 8px !important;
    font-weight: 500;
}
.layui-btn-normal {
    background: linear-gradient(135deg, #1677ff, #2f8bff) !important;
    border: 0;
    box-shadow: 0 6px 14px rgba(22, 119, 255, .22);
}
.layui-btn-primary {
    border-color: #dce6f3 !important;
    color: #42536a !important;
    background: #fff !important;
}
.layui-btn-primary:hover {
    border-color: #9cc3ff !important;
    color: var(--brand) !important;
}
.layui-input, .layui-textarea, .layui-select {
    border-radius: 8px !important;
    border-color: #dfe8f3 !important;
    background: #fff !important;
    transition: .2s;
}
.layui-input:focus, .layui-textarea:focus {
    border-color: #7eb0ff !important;
    box-shadow: 0 0 0 3px rgba(22, 119, 255, .10);
}
.layui-form-label {
    color: #4f6076;
    font-weight: 500;
}
.layui-form-select dl {
    border-radius: 10px;
    border-color: #e4ecf7;
    box-shadow: 0 10px 30px rgba(17, 45, 85, .10);
}
.layui-form-select dl dd.layui-this {
    background: #eef5ff;
    color: var(--brand);
}

/* ---------- 表格 ---------- */
.layui-table-view {
    border-radius: 10px;
    border-color: #e7eef8;
    margin: 8px 0;
}
.layui-table thead tr {
    background: #f7f9fd;
}
.layui-table th {
    color: #5c6c80;
    font-weight: 600;
    font-size: 12.5px;
}
.layui-table tbody tr:hover {
    background: #f7fbff !important;
}
.layui-table-cell {
    height: auto;
    line-height: 26px;
}
.layui-table-page {
    background: #fff;
    border-top: 1px solid #eef3fa;
}

/* ---------- 首页快捷方式 / 待办 ---------- */
.layadmin-shortcut li {
    padding: 8px 4px;
}
.layadmin-shortcut li a {
    display: block;
    padding: 16px 8px 14px;
    border-radius: 12px;
    background: #f8fbff;
    border: 1px solid #eaf1fb;
    color: #41526a !important;
    transition: .2s;
}
.layadmin-shortcut li a:hover {
    background: #fff;
    border-color: #cfe2ff;
    box-shadow: 0 8px 20px rgba(22, 119, 255, .08);
    transform: translateY(-1px);
}
.layadmin-shortcut li .layui-icon {
    display: inline-flex;
    width: 42px;
    height: 42px;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    background: linear-gradient(135deg, #1677ff, #36cfc9);
    color: #fff;
    font-size: 20px;
    margin-bottom: 8px;
    box-shadow: 0 6px 14px rgba(22, 119, 255, .20);
}
.layadmin-backlog-body {
    display: block;
    padding: 16px 18px;
    border-radius: 12px;
    background: #f8fbff;
    border: 1px solid #eaf1fb;
}
.layadmin-backlog-body h3 {
    color: #6b7a8f;
    font-size: 12px;
}
.layadmin-backlog-body p cite {
    color: var(--brand);
    font-size: 30px;
    font-weight: 700;
}

/* ---------- 标签页 / 面包屑 ---------- */
.layui-tab-title {
    background: #fff;
    border-radius: 10px;
    border: 1px solid #e9eff8;
    padding: 4px;
}
.layui-tab-title li {
    border-radius: 7px;
}
.layui-breadcrumb a {
    color: #718096 !important;
}
.layui-breadcrumb a:hover {
    color: var(--brand) !important;
}
.layui-elem-quote {
    border-left: 4px solid var(--brand);
    background: #f4f8ff;
    border-radius: 0 8px 8px 0;
}

/* ---------- 登录页 ---------- */
.brand-login {
    min-height: 100vh;
}
.brand-login .gradient-brand-color {
    background: linear-gradient(140deg, #081a31 0%, #0e2e55 48%, #125fba 100%) !important;
    position: relative;
    overflow: hidden;
}
.brand-login .gradient-brand-color::before {
    content: "";
    position: absolute;
    width: 520px;
    height: 520px;
    border-radius: 50%;
    background: rgba(54, 207, 201, .16);
    top: -180px;
    left: -160px;
    filter: blur(2px);
}
.brand-login .gradient-brand-color::after {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    background: rgba(22, 119, 255, .20);
    bottom: -180px;
    right: -120px;
}
.brand-login .brand-hero {
    position: relative;
    z-index: 2;
}
.brand-login .brand-hero-title {
    color: #fff;
    font-size: 44px;
    line-height: 1.3;
    font-weight: 700;
    letter-spacing: 1px;
}
.brand-login .brand-hero-sub {
    color: #a9d2ff;
    font-size: 15px;
    letter-spacing: 2px;
    margin-top: 12px;
    text-transform: uppercase;
}
.brand-login .brand-hero-line {
    width: 54px;
    height: 4px;
    border-radius: 4px;
    background: linear-gradient(90deg, #36cfc9, #1677ff);
    margin: 26px 0;
}
.brand-login .super-lead {
    color: #fff !important;
    font-size: 19px !important;
    line-height: 1.8 !important;
    font-weight: 400 !important;
    opacity: .92;
}
.brand-login .background--light {
    background: linear-gradient(180deg, #ffffff 0%, #f5f9ff 100%) !important;
}
.brand-login .background--light .w-75 {
    background: #fff;
    border-radius: 22px;
    padding: 36px 32px 28px;
    box-shadow: 0 18px 50px rgba(17, 45, 85, .08);
    border: 1px solid #edf3fb;
    margin-top: 18px;
}
.brand-login header img {
    width: 210px !important;
    height: auto !important;
}
.brand-login .form-control {
    height: 50px;
    border-radius: 10px;
    border: 1px solid #dfe8f5;
    background: #f8fbff;
    padding: 0 16px;
    font-size: 14px;
    color: #263447;
    transition: .2s;
}
.brand-login .form-control:focus {
    border-color: #7eb0ff;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(22, 119, 255, .10);
}
.brand-login .btn-info {
    height: 50px;
    border: 0;
    border-radius: 10px;
    background: linear-gradient(135deg, #1677ff, #36cfc9) !important;
    color: #fff !important;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 2px;
    box-shadow: 0 10px 22px rgba(22, 119, 255, .25);
}
.brand-login .btn-info:hover {
    opacity: .92;
}
.brand-login footer small,
.brand-login footer span {
    color: #9aa8ba;
    font-size: 12px;
}
.brand-login footer a {
    color: #1677ff;
}

/* 侧栏收起时使用品牌图标，避免露出 layuiAdmin 默认 logo */
.layadmin-side-shrink .layui-layout-admin .layui-logo {
    background-image: url('/static/images/common/brand-mark.png') !important;
    background-size: 40px 40px !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}
.layadmin-side-shrink .layui-layout-admin .layui-logo img {
    display: none !important;
}

/* 主菜单：给图标留出固定左侧空间，避免图标与文字重叠 */
.coreshop-admin .coreshop-nav-tree .layui-nav-item > a {
    padding: 0 16px 0 52px !important;
    position: relative;
}
.coreshop-admin .coreshop-nav-tree .layui-nav-item > a .layui-icon:first-child {
    left: 18px !important;
    top: 50% !important;
    margin-top: -9px !important;
    font-size: 17px !important;
    width: 20px !important;
    height: 20px !important;
    line-height: 20px !important;
    text-align: center;
    display: block !important;
    color: inherit !important;
}

/* 快捷方式：重置 layuiAdmin 的 60px 行高，避免图标被裁切 */
.layadmin-shortcut li .layui-icon {
    display: inline-flex !important;
    width: 48px !important;
    height: 48px !important;
    line-height: 1 !important;
    align-items: center;
    justify-content: center;
    font-size: 23px !important;
    border-radius: 14px;
    overflow: visible !important;
}
.layadmin-shortcut li a {
    padding: 18px 6px 14px !important;
}
.layadmin-shortcut li cite {
    top: 0 !important;
    margin-top: 9px;
    font-size: 13px !important;
}

/* 首页快捷方式轮播高度：保证两行图标完整显示 */
.layadmin-carousel {
    height: 290px !important;
}
.layadmin-shortcut li a {
    padding: 12px 6px 10px !important;
}

/* 关于弹窗：居中大尺寸，展示系统功能 */
.about-wrap {
    padding: 26px 28px 22px;
    background: linear-gradient(180deg, #f7faff 0%, #ffffff 55%);
}
.about-hero {
    display: flex;
    align-items: center;
    gap: 14px;
    padding-bottom: 18px;
    border-bottom: 1px solid #eaf1fb;
}
.about-logo {
    width: 52px;
    height: 52px;
    border-radius: 15px;
    background: linear-gradient(135deg, #1677ff, #36cfc9);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 18px rgba(22, 119, 255, .22);
    flex: 0 0 auto;
}
.about-logo .layui-icon {
    font-size: 26px;
    color: #fff;
}
.about-title { flex: 1; min-width: 0; }
.about-title h2 {
    margin: 0;
    color: #0b1f3a;
    font-size: 24px;
    font-weight: 700;
    letter-spacing: 1px;
}
.about-title p {
    margin: 5px 0 0;
    color: #6e7887;
    font-size: 12px;
}
.about-version {
    flex: 0 0 auto;
    padding: 5px 10px;
    border-radius: 20px;
    background: #eef5ff;
    color: #1677ff;
    font-size: 11px;
}
.about-desc {
    margin: 16px 0 18px;
    color: #5b6b80;
    font-size: 12.5px;
    line-height: 1.8;
}
.about-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}
.about-card {
    background: #fff;
    border: 1px solid #eaf1fb;
    border-radius: 12px;
    padding: 14px 14px 12px;
    min-height: 108px;
    box-sizing: border-box;
}
.about-card .layui-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 10px;
    background: #eef5ff;
    color: #1677ff;
    font-size: 18px;
    margin-bottom: 8px;
}
.about-card h3 {
    margin: 0 0 4px;
    color: #0b1f3a;
    font-size: 13px;
    font-weight: 700;
}
.about-card p {
    margin: 0;
    color: #7a8798;
    font-size: 11px;
    line-height: 1.55;
}
.about-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 26px;
    margin-top: 16px;
    padding: 12px 14px;
    border-radius: 10px;
    background: #f5f9ff;
}
.about-meta div { font-size: 11.5px; }
.about-meta span { color: #8a97a8; margin-right: 6px; }
.about-meta b { color: #263447; font-weight: 600; }
.about-footer {
    margin-top: 14px;
    text-align: center;
    color: #a0aaba;
    font-size: 10.5px;
}

/* 小屏适配 */
@media (max-width: 768px) {
    .coreshop-admin .layui-fluid { padding: 12px !important; }
    .brand-login .background--light .w-75 { padding: 24px 20px; }
    .brand-login .brand-hero-title { font-size: 34px; }
}


/* ==== 智控DMP 右上角面板（more.html） ==== */
.abp{background:#f5f7fb;min-height:100%;max-height:100vh;overflow-y:auto;font-size:13px;color:#344054;}
.abp-hero{position:relative;padding:20px 18px 18px;color:#fff;background:linear-gradient(135deg,#0b2545 0%,#124b74 52%,#1a8a9a 100%);overflow:hidden;}
.abp-hero:after{content:"";position:absolute;right:-40px;top:-40px;width:150px;height:150px;border-radius:50%;background:rgba(255,255,255,.07);}
.abp-hero:before{content:"";position:absolute;right:20px;bottom:-60px;width:110px;height:110px;border-radius:50%;background:rgba(255,255,255,.05);}
.abp-x{position:absolute;top:10px;right:10px;z-index:2;width:24px;height:24px;border-radius:6px;background:rgba(255,255,255,.16);color:#fff;border:none;cursor:pointer;font-size:13px;line-height:1;}
.abp-x:hover{background:rgba(255,255,255,.3);}
.abp-logo{position:relative;z-index:1;width:40px;height:40px;border-radius:12px;background:rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;font-size:20px;margin-bottom:10px;}
.abp-hero h3{position:relative;z-index:1;margin:0;font-size:17px;font-weight:600;letter-spacing:.5px;}
.abp-hero .en{position:relative;z-index:1;margin:4px 0 0;font-size:11px;color:rgba(255,255,255,.6);letter-spacing:1.2px;text-transform:uppercase;}
.abp-hero .tags{position:relative;z-index:1;display:flex;gap:6px;flex-wrap:wrap;margin-top:12px;}
.abp-hero .tags span{font-size:11px;padding:3px 9px;border-radius:20px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);}

.abp-body{padding:14px 14px 20px;}
.abp-card{background:#fff;border:1px solid #edf1f6;border-radius:10px;padding:14px;margin-bottom:12px;box-shadow:0 1px 2px rgba(16,24,40,.03);}
.abp-h{display:flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;color:#1d2939;margin-bottom:8px;}
.abp-h:before{content:"";width:3px;height:13px;border-radius:2px;background:#1677ff;}
.abp-desc{font-size:12.2px;line-height:1.85;color:#667085;margin:0;}
.abp-desc b{color:#344054;font-weight:600;}

.abp-feat{display:flex;gap:9px;padding:9px 0;border-bottom:1px dashed #f2f5f9;}
.abp-feat:last-child{border-bottom:none;padding-bottom:0;}
.abp-feat:first-child{padding-top:0;}
.abp-feat .ic{flex:0 0 28px;width:28px;height:28px;border-radius:8px;background:#eef5ff;color:#1677ff;display:flex;align-items:center;justify-content:center;font-size:14px;}
.abp-feat .tx{flex:1;}
.abp-feat .tx .n{font-size:12.5px;color:#1d2939;font-weight:500;}
.abp-feat .tx .d{font-size:11.5px;color:#98a2b3;margin-top:2px;line-height:1.6;}

.abp-meta{font-size:12px;}
.abp-meta .r{display:flex;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:1px dashed #f2f5f9;}
.abp-meta .r:last-child{border-bottom:none;}
.abp-meta .r span:first-child{color:#98a2b3;}
.abp-meta .r span:last-child{color:#475467;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:62%;}

.abp-copy{margin-top:2px;background:#fff;border:1px solid #edf1f6;border-radius:10px;padding:13px 14px;text-align:center;}
.abp-copy .cp{font-size:11.5px;color:#98a2b3;line-height:1.8;}
.abp-copy .cp b{color:#667085;font-weight:500;}
.abp-copy .ln{height:1px;background:linear-gradient(90deg,transparent,#e8eef7,transparent);margin:9px 0;}
.abp-foot{display:flex;gap:8px;margin-top:12px;}
.abp-btn{flex:1;height:32px;border-radius:7px;border:1px solid #dfe5ee;background:#fff;color:#475467;font-size:12.5px;cursor:pointer;transition:.2s;}
.abp-btn:hover{border-color:#1677ff;color:#1677ff;}
.abp-btn.primary{background:#1677ff;border-color:#1677ff;color:#fff;}
.abp-btn.primary:hover{background:#0f61d6;color:#fff;}
