:root{--bg:#0A0A0A;--card:#161616;--gold:#D4AF37;--text:#fff;--muted:#9a9a9a;--line:rgba(212,175,55,.28);--danger:#e5675b}
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--bg);color:var(--text);font-family:Inter,"Noto Sans SC","Source Han Sans SC","思源黑体","PingFang SC","Microsoft YaHei",sans-serif;font-weight:400}
h1,h2,h3,h4{font-weight:700;margin:0}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}

/* 左侧竖排侧边栏 */
.sidebar{position:fixed;left:0;top:0;bottom:0;width:232px;background:linear-gradient(180deg,#1a1405 0%,#0d0b05 40%,#0A0A0A 100%);border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:30}
.brand{padding:22px 20px 18px;border-bottom:1px solid var(--line)}
.logo{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#f3d77a,#b8901f);color:#0A0A0A;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:15px}
.brand h1{font-size:16px;color:var(--gold);margin-top:10px;line-height:1.4}
.brand small{color:var(--muted);font-size:12px;font-weight:400}
.menu{flex:1;overflow-y:auto;padding:12px 10px}
.menu a{display:block;padding:10px 14px;margin-bottom:2px;border-radius:8px;font-size:14px;color:#d8d8d8;border-left:3px solid transparent;transition:.2s}
.menu a:hover{background:rgba(212,175,55,.08);color:var(--gold)}
.menu a.active{background:rgba(212,175,55,.16);color:var(--gold);font-weight:700;border-left-color:var(--gold)}
.side-foot{padding:14px;border-top:1px solid var(--line);font-size:13px;color:var(--muted);text-align:center}
.side-foot .btn{display:block;width:100%;text-align:center}

/* 主区域与顶部通栏 */
.main{margin-left:232px;min-height:100vh}
.topbar{position:sticky;top:0;z-index:20;height:68px;display:flex;align-items:center;gap:20px;padding:0 36px;background:rgba(10,10,10,.95);border-bottom:1px solid var(--line);backdrop-filter:blur(6px)}
.search{flex:1;position:relative}
.search input{width:100%;height:44px;border-radius:22px;background:var(--card);border:1px solid var(--line);padding:0 20px 0 48px;font-size:15px;outline:none;transition:.2s}
.search input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(212,175,55,.15)}
.search svg{position:absolute;left:17px;top:12px;width:20px;height:20px;stroke:var(--gold);fill:none;stroke-width:2}
.who{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--muted);white-space:nowrap}
.who b{color:var(--gold);font-weight:600}
.content{padding:28px 36px 56px}
.crumb{font-size:13px;color:var(--muted);margin-bottom:10px}
.crumb a{color:var(--gold)}
.crumb a:hover{text-decoration:underline}
.page-title{font-size:26px;margin-bottom:20px}
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:6px;flex-wrap:wrap}
.footer{text-align:center;color:#555;font-size:12px;padding:32px 0 8px}

.burger{display:none;flex:none;width:40px;height:40px;border:1px solid var(--line);border-radius:8px;background:var(--card);padding:10px 9px;flex-direction:column;justify-content:space-between}
.burger span{display:block;height:2px;background:var(--gold);border-radius:2px}
.scrim{display:none}
.menu-admin{margin-top:10px;padding-top:10px;border-top:1px dashed var(--line)}
.menu-admin button{display:block;width:100%;text-align:left;background:none;border:0;padding:9px 14px;border-radius:8px;color:var(--gold);font-size:13px}
.menu-admin button:hover{background:rgba(212,175,55,.1)}
.mode{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;border:1px solid var(--line);color:var(--muted)}
.mode.on{color:#0A0A0A;background:var(--gold);border-color:var(--gold);font-weight:700}

/* 移动端：侧栏改为抽屉 */
@media(max-width:900px){
  .sidebar{transform:translateX(-100%);transition:transform .25s;width:240px;z-index:60}
  body.nav-open .sidebar{transform:none}
  body.nav-open .scrim{display:block;position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:55}
  .main{margin-left:0}
  .burger{display:flex}
  .topbar{padding:0 14px;gap:10px}
  .content{padding:18px 14px 40px}
  .who .hide-sm{display:none}
  .search input{font-size:14px;padding-left:42px}
  .page-title{font-size:21px}
}
