/* 星火寻迹后台管理统一皮肤：所有列表、弹窗、表单仍采用原 layui 组件 */
body.xh-back-shell,body.xh-back-page,body.xh-back-core{--xh-wine:#702a2d;--xh-wine2:#9e3e3d;--xh-gold:#d6ad73;--xh-paper:#f9f6f1;color:#332b28;background:#f6f3ee!important;font-family:"Noto Sans CJK SC","Microsoft YaHei",sans-serif}
.xh-back-shell .layui-header{background:#fffdf8!important;border-bottom:1px solid #e9ddcd;box-shadow:0 3px 20px rgba(50,25,19,.045)}
.xh-back-shell .layui-layout-right .layui-nav-item>a{color:#4d3834!important}
.xh-back-shell .layui-side-menu{background:linear-gradient(175deg,#482326,#692c2c 60%,#2d2021)!important;box-shadow:4px 0 24px rgba(34,22,22,.11)}
.xh-back-shell .layui-logo{background:transparent!important;border-bottom:1px solid rgba(250,215,163,.16);height:83px!important;line-height:83px!important}
.xh-back-shell .layui-logo span{color:#fff2d8!important;font-size:17px;font-weight:700;letter-spacing:2px}
.xh-back-shell .layui-side .layui-nav,.xh-back-shell .layui-side .layui-nav-item>a,.xh-back-shell .layui-side .layui-nav-title{background:transparent!important;color:#e3d1c1!important}
.xh-back-shell .layui-side .layui-nav-item>a:hover,.xh-back-shell .layui-side .layui-nav-child dd a:hover{background:rgba(255,228,180,.085)!important;color:#fff6e7!important}
.xh-back-shell .layui-side .layui-nav-child dd.layui-this,.xh-back-shell .layui-side .layui-nav-child dd.layui-this a{background:rgba(239,188,114,.16)!important;color:#ffddb0!important}
.xh-back-shell .layui-body{background:#f6f3ee}
.xh-back-shell .layui-tab{background:#fffdf9;border:1px solid #e9dfd0;border-radius:12px 12px 0 0;margin:19px 19px 0;overflow:hidden}
.xh-back-shell .layui-tab-title{background:#fffdf8;border-color:#e9decc!important}
.xh-back-shell .layui-tab-title .layui-this{color:#852d2d!important;font-weight:700}
.xh-back-shell .layui-tab-title .layui-this:after{border-bottom-color:#aa4040!important}
.xh-back-shell .layui-footer{background:#fffdf9!important;border-top:1px solid #e8dbcc!important;color:#877369!important}
.xh-back-page .back-container{padding:28px!important;background:transparent!important;min-height:100vh}
.xh-back-page .layui-panel,.xh-back-page .layui-elem-field,.xh-back-page .layui-form,.xh-back-page .layui-card{background:#fffdfa!important;border:1px solid #eaded0!important;border-radius:14px!important;box-shadow:0 12px 35px rgba(58,35,25,.055)!important;overflow:hidden}
.xh-back-page .layui-form{padding:24px 20px 16px}
.xh-back-page .layui-elem-field legend{color:#64292b!important;font-size:20px;font-weight:700;padding:0 15px}
.xh-back-page .layui-table-header{background:#f6eee5!important}
.xh-back-page .layui-table th{background:#f6eee5!important;color:#61483e!important;font-weight:700}
.xh-back-page .layui-table td{color:#51443e}
.xh-back-page .layui-input,.xh-back-page .layui-textarea,.xh-back-page .layui-select{border-color:#e1d3c5;border-radius:7px!important;background:#fffefc}
.xh-back-page .layui-input:focus,.xh-back-page .layui-textarea:focus{border-color:#ae5850!important}
.xh-back-page .layui-btn{background:#8d3435!important;border-color:#8d3435!important;border-radius:7px!important;box-shadow:none!important}
.xh-back-page .layui-btn:hover{background:#a84641!important}
.xh-back-page .layui-btn-primary{background:#fffaf3!important;color:#774c42!important;border:1px solid #e7d4be!important}
.xh-back-page .layui-btn-danger{background:#b44140!important}
.xh-back-page .layui-form-label{color:#61534a}
.xh-back-page .layui-laypage .layui-laypage-curr .layui-laypage-em{background:#9c3938!important}
.xh-back-page .queryList{width:min(1120px,calc(100% - 40px))!important;max-width:1120px;margin:95px auto 35px!important;background:#fffdf9!important;border-radius:14px;padding:32px!important;border:1px solid #ebdfd2;box-shadow:0 16px 38px rgba(58,29,21,.065)}
.xh-back-page .queryList .title_query{font:700 30px/1.5 "Noto Serif CJK SC",serif;color:#67292a}
.xh-back-page .queryList table{width:100%!important;table-layout:auto;border-collapse:collapse;margin-top:24px}
.xh-back-page .queryList td{padding:13px!important;border:1px solid #eee3d7;color:#584a42}
.xh-back-page .queryList tr:first-child{background:#f7e9dc}
.xh-back-core .xh-subnav,.xh-back-core .navbar-default{background:rgba(255,253,249,.97)!important;border-bottom:1px solid #eaded1!important;box-shadow:0 4px 20px rgba(55,26,23,.06)!important;min-height:75px!important}
.xh-back-core .xh-subnav .container{display:flex;align-items:center;justify-content:space-between;min-height:75px}
.xh-back-core .navbar-brand{padding:0!important;line-height:1!important}
.xh-back-core .navbar-brand img{background:transparent;border:0;width:144px!important}
.xh-back-core .navbar-nav>li>a{color:#803032!important;font-weight:700}
.xh-back-core .rems-flush{display:grid;place-items:center!important;height:100vh!important;background:radial-gradient(circle at 15% 10%,#f0e1cf,transparent 40%),#f8f4ee}
.xh-back-core .rems-span{width:auto!important;height:auto!important;margin:0!important;padding:35px 55px!important;border:1px solid #e6d7c5!important;border-radius:18px;background:#fffdfa;box-shadow:0 16px 42px rgba(62,32,24,.08);color:#6f2d30!important;font:700 32px/1.6 "Noto Serif CJK SC",serif!important;text-align:center}
@media(max-width:800px){.xh-back-page .back-container{padding:12px!important}.xh-back-page .queryList{width:calc(100% - 20px)!important;padding:14px!important;overflow:auto}.xh-back-shell .layui-tab{margin:10px 8px}}


/* ========================================================
   后台管理主框架布局修复 v13
   修复：Logo / 菜单重叠、Tab 列表文字裁切、iframe 内容显示不全
   只影响 body.xh-back-shell；其他后台业务表单不受影响。
   ======================================================== */
.xh-back-shell { --xh-side-width: 220px; --xh-top-height: 64px; --xh-footer-height: 44px; }
.xh-back-shell .layui-layout-admin .layui-header {
    height: var(--xh-top-height) !important;
    line-height: normal !important;
    box-sizing: border-box;
    padding-left: var(--xh-side-width);
    display: flex;
    align-items: center;
    justify-content: space-between;
    z-index: 1000;
}
.xh-back-shell .xh-header-caption {
    height: 100%; display: flex; align-items: center; gap: 11px;
    margin-left: 24px; color: #62453f; font-size: 14px;
    letter-spacing: .05em; white-space: nowrap;
}
.xh-back-shell .xh-header-caption strong { color: #81352f; font-size: 15px; }
.xh-back-shell .xh-header-caption-divider { color: #c9baac; }
.xh-back-shell .xh-header-caption-line { width: 3px; height: 18px; border-radius: 4px; background: #a9453a; }
.xh-back-shell .layui-layout-admin .layui-layout-right {
    position: static; height: var(--xh-top-height);
    display: flex; align-items: center; margin-left: auto;
    flex: none;
}
.xh-back-shell .layui-layout-admin .layui-header .layui-nav-item {
    height: var(--xh-top-height); line-height: var(--xh-top-height);
}
.xh-back-shell .layui-layout-admin .layui-header .layui-nav-child {top: var(--xh-top-height);}
.xh-back-shell .layui-layout-admin .layui-side {
    width: var(--xh-side-width) !important;
    top: 0 !important; bottom: 0; overflow-x: hidden;
}
.xh-back-shell .layui-layout-admin .layui-side-scroll {
    width: 100% !important; height: 100%; overflow-x: hidden; overflow-y: auto;
    scrollbar-width: thin; scrollbar-color: #88534d transparent;
}
.xh-back-shell .layui-layout-admin .layui-logo {
    position: sticky !important; top: 0 !important; left: 0 !important;
    width: 100% !important; height: 76px !important;
    line-height: 76px !important; padding: 0 16px !important;
    display: flex; align-items: center; gap: 11px;
    z-index: 4; white-space: nowrap; box-sizing: border-box;
    background: #482326 !important; box-shadow: 0 1px 0 rgba(255,228,180,.12);
}
.xh-back-shell .layui-logo .logo-img {
    width: 33px; height: 33px; padding: 0; flex: 0 0 33px;
}
.xh-back-shell .layui-logo span {letter-spacing: .04em !important; font-size: 17px !important; line-height: 1.35;}
.xh-back-shell .layui-side-menu .layui-nav {
    margin: 10px 0 22px !important;
    width: 100% !important; padding: 0 9px !important;
    box-sizing: border-box;
}
.xh-back-shell .layui-side .layui-nav-item {margin: 5px 0;}
.xh-back-shell .layui-side .layui-nav-item > a {
    display: flex; align-items: center; min-height: 45px;
    line-height: 22px !important; padding: 10px 22px 10px 15px !important;
    border-radius: 8px; white-space: nowrap;
    font-size: 14px; box-sizing: border-box;
}
.xh-back-shell .layui-side .layui-nav-item > a .layui-icon {font-size: 18px; flex: 0 0 18px;}
.xh-back-shell .layui-side .layui-nav-child {background: rgba(32, 13, 17, .17) !important; border-radius: 8px; margin: 3px 0 7px; padding: 5px 0;}
.xh-back-shell .layui-side .layui-nav-child dd > a {
    display: flex; align-items: center; padding: 0 16px 0 22px !important;
    min-height: 38px; line-height: 38px !important;
    font-size: 13px; border-radius: 7px; margin: 2px 5px;
    white-space: nowrap; box-sizing: border-box;
    color: #e1cfc6; text-decoration: none;
}
.xh-back-shell .layui-side .layui-nav-child dd > a:hover { color: #fff7e7 !important; }
.xh-back-shell .layui-side .layui-nav-child dd > a:focus-visible {outline: 2px solid #d8b47e;outline-offset: -2px;}
.xh-back-shell .layui-side .layui-nav-child .xh-nav-caption {
    color: #b9a49b; padding: 8px 14px 2px 25px;
    font-size: 11px; line-height: 1.6; letter-spacing: .1em;
}
.xh-back-shell .layui-side .layui-nav-child .xh-nav-third > a {padding-left: 36px !important;}
.xh-back-shell .layui-layout-admin .layui-body {
    top: var(--xh-top-height) !important;
    left: var(--xh-side-width) !important;
    bottom: var(--xh-footer-height) !important;
    right: 0; width: auto; padding: 0 !important;
    overflow: hidden;
    background: #f5f1ea !important;
}
/* 标签和内容区构成真正的纵向布局，不再使用 iframe 固定 top:41px */
.xh-back-shell .layui-body > .layui-tab {
    height: calc(100% - 32px); box-sizing: border-box;
    display: flex; flex-direction: column;
    margin: 16px 17px 16px !important;
    border: 1px solid #e7d8c7; border-radius: 13px;
    overflow: visible !important;
    background: #fffdf8;
    box-shadow: 0 12px 32px rgba(58, 35, 25, .07);
}
.xh-back-shell .layui-body .layui-tab-title {
    flex: 0 0 48px; height: 48px !important;
    width: 100%; white-space: nowrap;
    border-radius: 13px 13px 0 0;
    overflow-x: auto; overflow-y: hidden;
    scrollbar-width: thin;
    box-sizing: border-box;
}
.xh-back-shell .layui-body .layui-tab-title li {
    height: 47px; line-height: 47px !important;
    box-sizing: border-box; padding: 0 18px;
    font-size: 14px; vertical-align: top;
}
.xh-back-shell .layui-body .layui-tab-title .layui-this:after {height: 48px !important; top: 0; bottom: auto;}
.xh-back-shell .layui-body .layui-tab-content {
    min-height: 0; flex: 1 1 auto; height: auto !important;
    padding: 0 !important; overflow: hidden;
    position: relative;
    border-radius: 0 0 12px 12px;
    background: #fffdfa;
}
.xh-back-shell .layui-body .layui-tab-item {
    position: relative !important;
    height: 100% !important;
    box-sizing: border-box;
}
.xh-back-shell .layui-body iframe.xh-admin-frame,
.xh-back-shell .layui-body .layui-tab-item iframe {
    display: block; position: absolute !important;
    inset: 0 !important; top: 0 !important; left: 0 !important;
    width: 100% !important; height: 100% !important;
    border: none !important; background: #fffdfa;
}
.xh-back-shell .layui-layout-admin .layui-footer {
    left: var(--xh-side-width) !important;
    height: var(--xh-footer-height); line-height: var(--xh-footer-height);
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
    box-sizing: border-box; font-size: 12px;
}
@media (max-width: 700px) {
    .xh-back-shell { --xh-side-width: 172px; }
    .xh-back-shell .layui-layout-admin .layui-logo {padding: 0 10px !important; gap: 6px;}
    .xh-back-shell .layui-logo .logo-img {width: 26px; height: 26px; flex-basis: 26px;}
    .xh-back-shell .layui-logo span {font-size: 13px !important;}
    .xh-back-shell .xh-header-caption {margin-left: 12px; font-size: 12px; gap: 6px;}
    .xh-back-shell .xh-header-caption strong {font-size: 12px;}
    .xh-back-shell .layui-side-menu .layui-nav {padding: 0 4px !important;}
    .xh-back-shell .layui-body > .layui-tab {margin: 8px !important; height: calc(100% - 16px);}
    .xh-back-shell .layui-footer {font-size: 10px;}
}
