/* Shoujia 首家 · 后台品牌皮肤（覆盖 layui / layuiAdmin 默认蓝色主题） */
:root { --sj-ink:#121412; --sj-paper:#fff8ea; --sj-bg:#f6f1e6; --sj-yellow:#ffd83d; --sj-coral:#f95340; --sj-cyan:#54d4de; --sj-green:#22c554; --sj-blue:#2b4fd4; --sj-line:#e6dfcf; --sj-muted:#6b6a62; --sj-font:"Geist",-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",Helvetica,Arial,sans-serif; }
html body { font-family: var(--sj-font); color: var(--sj-ink); background: var(--sj-bg); }
html body .layui-layout-body { background: var(--sj-bg); }

/* ---- 顶栏 ---- */
html body .layui-layout-admin .layui-header { background: var(--sj-paper) !important; border-bottom: 1.5px solid var(--sj-ink); box-shadow: none; }
html body .layui-layout-admin .layui-header .layui-nav .layui-nav-item a, html body .layui-layout-admin .layui-header .layui-nav .layui-nav-item a cite, html body .layui-layout-admin .layui-header .layui-icon { color: var(--sj-ink) !important; }
html body .layui-layout-admin .layui-header .layui-nav .layui-nav-item a:hover { background: rgba(18,20,18,.06); }
html body .layui-layout-admin .layui-header .layui-nav .layui-nav-bar { display: none !important; }
html body .layui-layout-admin .layui-logo { background: var(--sj-ink) !important; border-bottom: 1.5px solid var(--sj-ink); }
html body .layui-layout-admin .layui-logo span { color: var(--sj-yellow) !important; font-weight: 900; letter-spacing: -0.02em; }

/* ---- 一级侧栏（深色） ---- */
html body .layui-layout-admin .layui-side.layui-side-menu, html body .layui-layout-admin .layui-side-menu .layui-side-scroll { background: var(--sj-ink) !important; }
html body .layui-side-menu .layui-nav .layui-nav-item a { color: rgba(255,248,234,.8) !important; font-weight: 600; border-radius: 6px; margin: 2px 8px; }
html body .layui-side-menu .layui-nav .layui-nav-item a:hover { background: rgba(255,255,255,.08) !important; color: #fff !important; }
html body .layui-side-menu .layui-nav .layui-nav-item.layui-this > a, html body .layui-side-menu .layui-nav .layui-nav-item.layui-this a, html body .layui-side-menu .layui-nav .layui-this > a { background: var(--sj-yellow) !important; color: var(--sj-ink) !important; }
html body .layui-side-menu .layui-nav .layui-nav-item a .my-icon, html body .layui-side-menu .layui-nav .layui-nav-item a .layui-icon, html body .layui-side-menu .layui-nav .layui-nav-item a .fa { color: inherit !important; }
html body .layui-side-menu .layui-nav-tree .layui-nav-child a { color: rgba(255,248,234,.75) !important; }
html body .layui-side-menu .layui-nav-tree .layui-nav-child dd.layui-this a { background: var(--sj-yellow) !important; color: var(--sj-ink) !important; }
html body .layui-nav .layui-nav-more { border-top-color: rgba(255,255,255,.6); }

/* ---- 二级侧栏 ---- */
html body .wb-subnav { background: var(--sj-paper) !important; border-right: 1.5px solid var(--sj-ink) !important; color: var(--sj-ink) !important; }
html body .wb-subnav .menu-header { border-top: 1px solid var(--sj-line) !important; font-weight: 700; color: var(--sj-ink) !important; }
html body .wb-subnav .menu-header.active, html body .wb-subnav .menu-header:hover { background: rgba(255,216,61,.35) !important; color: var(--sj-ink) !important; }
html body .wb-subnav .menu-icon { color: var(--sj-muted) !important; }
html body .wb-subnav ul li a { color: var(--sj-ink) !important; font-size: 13px; }
html body .wb-subnav ul li:hover { background: rgba(18,20,18,.05) !important; }
html body .wb-subnav ul li.active { background: var(--sj-yellow) !important; }
html body .wb-subnav ul li.active a { color: var(--sj-ink) !important; font-weight: 700; }
html body .wb-subnav ul.single li a:hover { color: var(--sj-ink) !important; }
html body .wb-subnav .subnav-scene { color: var(--sj-muted) !important; border-bottom: 1px solid var(--sj-line) !important; }
html body .wb-subnav .wb-subnav-fold { background: var(--sj-paper) !important; border-top: 1px solid var(--sj-line) !important; color: var(--sj-ink) !important; }

/* ---- 内容区 / 卡片 ---- */
html body .layui-fluid { padding: 18px 20px; }
html body .layui-card { border: 1.5px solid var(--sj-ink); border-radius: 8px; box-shadow: 3px 3px 0 var(--sj-ink); background: #fff; }
html body .layui-card-header { border-bottom: 1.5px solid var(--sj-ink); font-weight: 900; font-size: 14px; color: var(--sj-ink); border-radius: 8px 8px 0 0; }
html body .layuiadmin-big-font { font-weight: 900; letter-spacing: -0.03em; color: var(--sj-ink); }
html body .layuiadmin-span-color { color: var(--sj-muted); }
html body .layui-elem-quote { border-left: 4px solid var(--sj-yellow); background: #fffaea; border-radius: 6px; }
html body .layui-tab-brief > .layui-tab-title .layui-this { color: var(--sj-ink); font-weight: 800; }
html body .layui-tab-brief > .layui-tab-more li.layui-this:after, html body .layui-tab-brief > .layui-tab-title .layui-this:after { border-bottom: 3px solid var(--sj-ink); }
html body .layui-tab-title li { color: var(--sj-muted); }
html body .layui-breadcrumb a { color: var(--sj-muted) !important; }
html body .layui-breadcrumb a cite { color: var(--sj-ink) !important; font-weight: 700; }

/* ---- 按钮 ---- */
html body .layui-btn { background: var(--sj-yellow); color: var(--sj-ink); border: 1.5px solid var(--sj-ink); border-radius: 6px; box-shadow: 2px 2px 0 var(--sj-ink); font-weight: 700; transition: transform .12s, box-shadow .12s; }
html body .layui-btn:hover { opacity: 1; transform: translate(1px,1px); box-shadow: 1px 1px 0 var(--sj-ink); color: var(--sj-ink); }
html body .layui-btn-primary { background: #fff; color: var(--sj-ink); border-color: var(--sj-ink); }
html body .layui-btn-primary:hover { border-color: var(--sj-ink); color: var(--sj-ink); }
html body .layui-btn-normal { background: var(--sj-cyan); color: var(--sj-ink); }
html body .layui-btn-warm { background: var(--sj-coral); color: #fff; }
html body .layui-btn-danger { background: var(--sj-coral); color: #fff; }
html body .layui-btn-disabled, html body .layui-btn-disabled:hover { background: #eee; color: #aaa; border-color: #ccc; box-shadow: none; transform: none; }
html body .layui-btn-xs, html body .layui-btn-sm { box-shadow: 1.5px 1.5px 0 var(--sj-ink); }
html body .layui-btn-group .layui-btn { border-left: 1.5px solid var(--sj-ink); }
html body .table-btn { margin: 2px; }

/* ---- 表单 ---- */
html body .layui-input, html body .layui-textarea, html body .layui-select { border: 1.5px solid var(--sj-ink); border-radius: 6px; color: var(--sj-ink); }
html body .layui-input:focus, html body .layui-textarea:focus { border-color: var(--sj-blue) !important; box-shadow: 0 0 0 3px rgba(43,79,212,.18); }
html body .layui-form-label { font-weight: 700; color: var(--sj-ink); }
html body .layui-form-select dl { border: 1.5px solid var(--sj-ink); border-radius: 6px; box-shadow: 3px 3px 0 var(--sj-ink); }
html body .layui-form-select dl dd.layui-this { background: var(--sj-yellow); color: var(--sj-ink); }
html body .layui-form-checked[lay-skin=primary] i { border-color: var(--sj-ink) !important; background: var(--sj-yellow); color: var(--sj-ink); }
html body .layui-form-checkbox[lay-skin=primary] i { border: 1.5px solid var(--sj-ink); border-radius: 4px; }
html body .layui-form-checkbox[lay-skin=primary]:hover i { border-color: var(--sj-ink); }
html body .layui-form-onswitch { border-color: var(--sj-ink); background-color: var(--sj-green); }
html body .layui-form-switch { border: 1.5px solid var(--sj-ink); }
html body .layui-form-radio > i:hover, html body .layui-form-radioed > i { color: var(--sj-ink); }
html body .layui-word-aux { color: var(--sj-muted); }
html body .layui-form-search .layui-btn { background: var(--sj-yellow); }

/* ---- 表格 ---- */
html body .layui-table { border-color: var(--sj-line); color: var(--sj-ink); }
html body .layui-table thead tr, html body .layui-table-header, html body .layui-table th { background: #fff; }
html body .layui-table th { font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; color: var(--sj-muted); border-bottom: 1.5px solid var(--sj-ink); }
html body .layui-table td, html body .layui-table th { border-color: var(--sj-line); }
html body .layui-table tbody tr:hover, html body .layui-table-hover { background: #fffaea; }
html body .layui-table-view { border: 1.5px solid var(--sj-ink); border-radius: 8px; box-shadow: 3px 3px 0 var(--sj-ink); overflow: hidden; }
html body .layui-table-view .layui-table { border: 0; }
html body .layui-table-tool { background: #fff; border-bottom: 1.5px solid var(--sj-ink); }
html body .layui-table-page { border-top: 1.5px solid var(--sj-ink); background: #fff; }
html body .layui-laypage .layui-laypage-curr .layui-laypage-em { background: var(--sj-ink); }
html body .layui-laypage a, html body .layui-laypage span { border-color: var(--sj-line); color: var(--sj-ink); }
html body .layui-badge, html body .layui-badge-rim { border-radius: 999px; font-weight: 700; }
html body .layui-badge { background: var(--sj-coral); }
html body .layui-bg-blue { background: var(--sj-blue) !important; }
html body .layui-bg-green { background: var(--sj-green) !important; color: var(--sj-ink) !important; }
html body .layui-bg-orange { background: var(--sj-yellow) !important; color: var(--sj-ink) !important; }
html body .layui-bg-red { background: var(--sj-coral) !important; }
html body .layui-bg-cyan { background: var(--sj-cyan) !important; color: var(--sj-ink) !important; }
html body a { color: var(--sj-blue); }
html body .layui-text a { color: var(--sj-blue); }

/* ---- 弹层 ---- */
html body .layui-layer { border: 1.5px solid var(--sj-ink) !important; border-radius: 10px !important; box-shadow: 5px 5px 0 var(--sj-ink) !important; overflow: hidden; }
html body .layui-layer-title { background: var(--sj-paper) !important; border-bottom: 1.5px solid var(--sj-ink) !important; color: var(--sj-ink) !important; font-weight: 800; }
html body .layui-layer-btn .layui-layer-btn0 { background: var(--sj-yellow) !important; border: 1.5px solid var(--sj-ink) !important; color: var(--sj-ink) !important; border-radius: 6px; box-shadow: 2px 2px 0 var(--sj-ink); font-weight: 700; }
html body .layui-layer-btn a { border-radius: 6px; border: 1.5px solid var(--sj-ink) !important; color: var(--sj-ink) !important; background: #fff; }
html body .layui-layer-tips .layui-layer-content { background: var(--sj-ink) !important; }
html body .layui-layer-tips i.layui-layer-TipsT, html body .layui-layer-tips i.layui-layer-TipsB { border-right-color: var(--sj-ink) !important; }
html body .layui-layer-msg { background: var(--sj-ink) !important; color: #fff !important; }

/* ---- 页签 / 其他 ---- */
html body .layadmin-pagetabs .layui-tab-title li.layui-this { background: var(--sj-yellow); color: var(--sj-ink); font-weight: 700; }
html body .layadmin-pagetabs { border-bottom: 1.5px solid var(--sj-ink); background: var(--sj-paper); }
html body .layadmin-setTheme-color[data-color="0"] { background: var(--sj-ink) !important; }
html body ::selection { background: rgba(255,216,61,.7); }
html body ::-webkit-scrollbar-thumb { background: #cfc7b4 !important; border-radius: 4px; }

/* ---- 登录页 ---- */
html body .layadmin-user-login { background: var(--sj-paper) url("/assets/img/paper-texture-v1.png") 0 0 / 640px 640px !important; }
html body .layadmin-user-login-main { border: 1.5px solid var(--sj-ink); border-radius: 12px; box-shadow: 6px 6px 0 var(--sj-ink); background: #fff; overflow: hidden; }
html body .layadmin-user-login-header > div { color: var(--sj-ink) !important; font-weight: 900 !important; font-size: 22px !important; letter-spacing: -0.02em; }
html body .layadmin-user-login-header > div::before { content: ""; display: inline-block; width: 34px; height: 34px; vertical-align: -9px; margin-right: 10px; border-radius: 8px; background: var(--sj-coral) url("/assets/brand/favicon.svg") center / 34px no-repeat; border: 1.5px solid var(--sj-ink); box-shadow: 2px 2px 0 var(--sj-ink); }
html body .layadmin-user-login .layui-input { border: 1.5px solid var(--sj-ink); border-radius: 6px; padding-left: 40px; }
html body .layadmin-user-login .layadmin-user-login-icon { color: var(--sj-muted); }
html body .layadmin-user-login .layui-btn, html body .layadmin-user-login .layui-btn-fluid { background: var(--sj-green) !important; color: var(--sj-ink) !important; height: 44px; line-height: 40px; font-size: 15px; font-weight: 900; }
html body .layadmin-user-login-codeimg { border: 1.5px solid var(--sj-ink); border-radius: 6px; }
html body .layadmin-user-login-footer, html body .layadmin-user-login-footer a { color: var(--sj-muted); }

/* ---- 侧栏 Logo：图标 + SHOUJIA ---- */
html body .layui-layout-admin .layui-logo { display: flex !important; align-items: center; justify-content: center; gap: 8px; padding: 0 !important; }
html body .layui-layout-admin .layui-logo span { font-size: 0 !important; line-height: 0; }
html body .layui-layout-admin .layui-logo span::before { content: ""; display: inline-block; width: 26px; height: 26px; border-radius: 6px; background: var(--sj-coral) url("/assets/brand/favicon.svg") center / 26px no-repeat; border: 1.5px solid var(--sj-yellow); box-shadow: 2px 2px 0 rgba(255,216,61,.9); vertical-align: middle; }
html body .layui-layout-admin .layui-logo span::after { content: "SHOUJIA"; font-size: 12px; font-weight: 900; letter-spacing: .06em; color: var(--sj-yellow); margin-left: 8px; vertical-align: middle; }
/* 卡片内链接、次级文字 */
html body .layui-card-body a { color: var(--sj-blue); font-weight: 600; }
html body .layui-card-body .layuiadmin-span-color a { color: var(--sj-blue); }
