:root{
  --bg:#0B0A12;--bg2:#100E1A;--card:#13111C;--line:#262236;--line2:#3A3550;
  --fg:#ECE8F2;--soft:#B9B3C8;--muted:#A9A3B8;--accent:#C0213C;--gold:#D4AF6A;--goldline:rgba(212,175,106,.18);
  --serif:'Noto Serif SC','Songti SC','SimSun',serif;
  --sans:'Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif;--latin:'Cinzel',serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.75 var(--sans)}
a{color:var(--fg);text-decoration:none}a:hover{color:#E8C77E}
button,input{font:inherit}button{cursor:pointer}
img{display:block;max-width:100%}
[hidden]{display:none!important}
.wrap{max-width:1240px;margin:0 auto;padding-left:32px;padding-right:32px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.skip-link{position:fixed;top:8px;left:16px;z-index:100;padding:10px 20px;background:var(--bg2);border:1px solid var(--gold);transform:translateY(-160%)}
.skip-link:focus{transform:none}
:is(a,button,input):focus-visible{outline:2px solid var(--gold);outline-offset:5px}
header{position:relative;z-index:3;border-bottom:1px solid var(--goldline);background:rgba(11,10,18,.82)}
header .wrap{padding-top:14px;padding-bottom:14px;display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}
.logo{display:flex;align-items:center;gap:12px;min-height:44px}
.logo svg{flex-shrink:0}
.logo span{font-family:var(--serif);font-size:20px;font-weight:700;letter-spacing:.06em}
nav{display:flex;flex-wrap:wrap;gap:2px}
nav a{padding:0 14px;min-height:44px;display:flex;align-items:center;gap:8px;font-size:15px}
nav .return-link{color:var(--gold);margin-left:8px;border-left:1px solid var(--goldline);padding-left:22px}
.eyebrow{margin:0;font-family:var(--latin);font-size:12px;letter-spacing:.28em;color:var(--gold)}
.h2{margin:0;font-family:var(--serif);font-size:32px;line-height:1.5;font-weight:700;letter-spacing:.06em}
.sec-head{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;justify-content:space-between;margin-bottom:34px}
.sec-head>div{display:flex;flex-direction:column;gap:8px}
.section-note{margin:0;color:var(--muted);font-family:var(--serif);font-size:14px;letter-spacing:.08em}

/* 两行文字介绍，与首页保持相同的字体和配色。 */
.archive-intro{padding-top:64px;padding-bottom:58px}
.archive-intro h1{display:table;margin:0 0 16px;font:700 clamp(34px,4.5vw,64px)/1.3 var(--serif);letter-spacing:.08em;
  background:linear-gradient(100deg,#FFFFFF 0%,#EADFFF 28%,#C9B4F0 46%,#FFF3DA 52%,#E7A9C4 62%,#EADFFF 80%,#FFFFFF 100%);background-size:220% 100%;
  -webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 22px rgba(160,120,230,.28)) drop-shadow(0 2px 2px rgba(20,12,40,.6));animation:fxShine 9s ease-in-out infinite}
.archive-intro h1 span{font-family:var(--latin);font-weight:500;letter-spacing:.04em}
.archive-intro p{margin:0;font-size:clamp(12px,3.4vw,16px);line-height:1.9;color:var(--soft)}
.btn{min-height:48px;padding:0 24px;display:inline-flex;align-items:center;justify-content:center;gap:20px;border-radius:2px;font:500 14px var(--serif);letter-spacing:.1em;transition:background .2s,box-shadow .2s,border-color .2s}
.btn-primary{background:linear-gradient(135deg,rgba(150,40,80,.85),rgba(104,48,128,.85));border:1px solid rgba(232,190,215,.35);color:#F6EAF2}
.btn-primary:hover{color:white;filter:brightness(1.12)}
.btn-ghost{border:1px solid rgba(217,192,138,.45);color:#E8DCC0;background:rgba(40,28,70,.35)}
.btn-ghost:hover{color:#F3E8CC;background:rgba(60,42,96,.45)}

.archive-status{position:relative;border-top:1px solid var(--goldline);border-bottom:1px solid var(--goldline);background:linear-gradient(90deg,rgba(60,20,40,.3),rgba(14,12,22,.95) 35%,rgba(40,24,70,.3))}
.archive-status .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;padding-top:22px;padding-bottom:22px}
.status-stamp{font:10px var(--latin);letter-spacing:.22em;padding:6px 12px;color:#F3E2B0;border:1px solid rgba(212,175,106,.4);background:rgba(125,30,55,.35)}
.archive-status p{margin:0;font-size:13px;color:var(--muted)}
.archive-updated time{color:var(--gold)}
.archive-status p b{font-family:var(--serif);font-weight:500;color:#E8DCC0;margin-left:10px}
.status-line{height:15px;width:1px;background:var(--goldline)}
.status-number{margin-left:auto;font-size:12px;color:var(--muted);white-space:nowrap}
.status-number b{font:18px var(--latin);color:#E8DCC0;margin-right:5px}.status-number i{font-style:normal;padding:0 12px;color:var(--line2)}

.directory{padding-top:76px;padding-bottom:86px;scroll-margin-top:22px}
.directory-layout{display:grid;grid-template-columns:225px minmax(0,1fr);gap:36px}
.directory-aside{align-self:start}
.aside-heading{display:flex;justify-content:space-between;align-items:center;margin:0 0 18px;font:14px var(--serif);letter-spacing:.08em;color:#D9D0E5}
.aside-heading span{font:9px var(--latin);letter-spacing:.2em;color:#8D819F}
.category-list{display:flex;flex-direction:column;gap:6px}
.category{position:relative;display:flex;align-items:center;gap:13px;min-height:53px;width:100%;padding:0 14px;background:transparent;border:1px solid transparent;color:var(--soft);text-align:left;font-size:14px;transition:background .2s,border-color .2s,color .2s}
.category svg{width:19px;height:19px;flex-shrink:0;stroke:currentColor;stroke-width:1.2}
.category-icon{width:19px;font-size:23px;line-height:1;text-align:center;color:var(--gold)}
.category-count{margin-left:auto;font:12px var(--latin);color:#8E839F}
.category:hover{color:#E8DCC0;background:rgba(212,175,106,.035)}
.category.active{color:#F3E2B0;border-color:rgba(212,175,106,.23);background:linear-gradient(90deg,rgba(115,36,65,.25),rgba(56,33,71,.22))}
.category.active::before{content:"";position:absolute;inset:9px auto 9px -1px;width:2px;background:var(--gold)}
.category.active .category-count{color:var(--gold)}
.aside-note{margin-top:30px;padding-top:26px;border-top:1px solid var(--goldline);color:var(--muted);font:12px/2 var(--serif)}
.aside-note>span{color:var(--gold);font-size:20px}.aside-note p{margin:10px 0 0}
.search-form{display:flex;align-items:center;gap:12px;min-height:52px;padding:0 17px;border:1px solid var(--line2);background:rgba(19,17,28,.8);border-radius:2px;transition:border-color .2s}
.search-form:focus-within{border-color:var(--gold)}
.search-form>svg{width:19px;height:19px;flex-shrink:0;stroke:var(--gold);stroke-width:1.3}
.search-form input{min-width:0;width:100%;height:50px;color:var(--fg);border:0;background:transparent;font-size:14px;outline:none}
.search-form input::placeholder{color:#9A8FA9}.search-form input:focus-visible{outline:none}
.search-form input::-webkit-search-cancel-button{-webkit-appearance:none}
.search-reset{width:32px;min-height:36px;flex-shrink:0;background:transparent;border:0;color:var(--gold);font-size:23px}
.results-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:19px 0 15px;font-size:12px;color:var(--muted)}
.results-head p{margin:0}.results-head>span{white-space:nowrap}.results-head i{display:inline-block;width:5px;height:5px;background:#8B6F42;border-radius:50%;vertical-align:middle;margin-right:5px}
.resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.resource-card{position:relative;display:flex;flex-direction:column;min-height:223px;padding:23px 24px 18px;border:1px solid var(--line);border-radius:2px;background:linear-gradient(145deg,rgba(63,40,78,.13),transparent 75%),var(--card);box-shadow:0 10px 32px rgba(0,0,0,.17);transition:border-color .25s,transform .25s}
.resource-card:hover{border-color:rgba(212,175,106,.38);transform:translateY(-3px)}
.resource-top{display:flex;justify-content:space-between;align-items:center;min-height:23px;margin-bottom:20px}
.resource-tag{font-size:11px;color:#D7BB83;letter-spacing:.08em}
.resource-no{font:24px var(--latin);color:rgba(212,175,106,.28);line-height:1}
.resource-card h3{margin:0 0 10px;font:700 20px/1.5 var(--serif);letter-spacing:.03em}
.resource-card>p{margin:0 0 22px;font-size:13px;line-height:1.85;color:var(--soft)}
.resource-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;padding-top:13px;border-top:1px solid rgba(58,53,80,.6);font-size:11px;letter-spacing:.06em;color:#A79AB8}
.pending{padding:1px 8px;border:1px solid rgba(212,175,106,.2);border-radius:2px;color:#CBB78F;font-size:10px}
.live{padding:1px 8px;border:1px solid rgba(212,175,106,.45);border-radius:2px;color:#F3E2B0;font-size:10px;background:rgba(212,175,106,.1)}
a.resource-card{color:var(--fg)}
a.resource-card:hover{color:#E8C77E}
a.resource-card:hover h3{color:#F3E2B0}

/* 文章卡：与 PVP 首页 .post 一致（阴影、悬浮、阅读全文由 fx.css 补足） */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),360px));justify-content:start;gap:28px}
.post{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:3px;overflow:hidden;transition:border-color .2s,transform .2s}
.post:hover{border-color:#4A4466;transform:translateY(-2px)}
.cover{position:relative;aspect-ratio:16/9;overflow:hidden;background:#1A1726}
.cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.invasion-cover{aspect-ratio:1045/369;background:#121019}
.invasion-cover::before{display:none}
.invasion-cover img{object-fit:contain;object-position:center;padding:0;image-rendering:auto;z-index:1}
.pve .post:hover .invasion-cover img{transform:none}
.cover::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(19,17,28,.85) 0%,rgba(19,17,28,0) 55%)}
.post-body{padding:20px 22px 24px;display:flex;flex-direction:column;gap:12px;flex:1}
.tags{display:flex;flex-wrap:wrap;gap:6px}
.tags span{font-size:12px;padding:2px 8px;border:1px solid var(--line2);border-radius:2px;color:var(--soft)}
.post h3{margin:0;font-family:var(--serif);font-size:21px;font-weight:700;line-height:1.45}
.post-foot{margin-top:auto;padding-top:10px;display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--muted);border-top:1px solid #221F30}
.post-foot .gold{color:var(--gold)}
.post-author{margin:0;color:var(--soft);font-size:13px;line-height:1.6}
.directory-note{margin:22px 0 0;color:var(--muted);font-size:12px;line-height:1.9}
.empty-state{min-height:350px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px;text-align:center;border:1px dashed var(--line2);background:var(--card)}
.empty-state>span{font-size:40px;color:var(--gold)}.empty-state h3{font:500 22px var(--serif);margin:15px 0 8px}.empty-state p{font-size:13px;color:var(--muted);margin:0 0 24px}

footer{border-top:1px solid var(--goldline);background:#08070D}
footer .wrap{padding-top:28px;padding-bottom:28px;display:flex;flex-wrap:wrap;gap:12px 32px;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted)}
footer a{display:flex;align-items:center;min-height:44px;color:var(--muted)}

@media(max-width:1000px){.directory-layout{grid-template-columns:195px minmax(0,1fr);gap:24px}.resource-card{padding:20px}.status-number{display:none}}
@media(max-width:760px){
  .archive-intro{padding-top:42px;padding-bottom:38px}
  .directory{padding-top:52px;padding-bottom:58px}.directory-layout{display:block}.directory-aside{margin-bottom:24px}
  .aside-heading,.aside-note{display:none}.category-list{flex-direction:row;flex-wrap:wrap;gap:8px}.category{width:auto;min-height:44px;padding:0 13px;gap:8px;font-size:13px;background:rgba(19,17,28,.75);border-color:var(--line)}
  .category svg,.category-icon,.category-count{display:none}.category.active::before{inset:auto 12px -1px;width:auto;height:2px}
  .archive-status .wrap{gap:10px 18px;padding-top:18px;padding-bottom:18px}.archive-status p{font-size:12px}.status-line{display:none}
}
@media(max-width:640px){
  .wrap{padding-left:20px;padding-right:20px}.logo span{font-size:18px}.logo{gap:10px}
  .pve header .wrap{flex-direction:column;align-items:flex-start;gap:2px}.pve nav{max-width:100%;margin:0;gap:0;overflow:visible;flex-wrap:wrap}
  .pve nav a{padding:0 10px;font-size:12px;min-height:38px}.pve nav a:first-child{padding-left:0}.pve nav .return-link{margin-left:4px;padding-left:13px}
  .btn{padding:0 17px;font-size:13px;gap:12px}
  .archive-status .wrap{gap:8px 14px}.status-stamp{font-size:9px;padding:5px 8px}.archive-status p:last-of-type{width:100%;padding-top:2px}
  .sec-head{margin-bottom:24px}.h2{font-size:28px}.section-note{font-size:12px}
  .resource-grid{grid-template-columns:1fr;gap:16px}.resource-card{min-height:208px;padding:22px}.resource-top{margin-bottom:17px}.resource-card h3{font-size:20px}
  .resource-card>p{margin-bottom:20px}.results-head{font-size:11px}.search-form{padding:0 13px}.search-form input{font-size:13px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
