/* weiba-dongman.cn — 动画史时间轴 */
:root{
  --bg:#17120e;
  --bg2:#1f1813;
  --card:#271e18;
  --line:#3c2e24;
  --fg:#ece0cc;
  --dim:#a89582;
  --rust:#c75a3c;
  --brass:#d9a441;
  --serif:"Songti SC","Noto Serif CJK SC","Source Han Serif SC",Georgia,serif;
  --sans:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,sans-serif;
  --mono:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--bg);color:var(--fg);font-family:var(--sans);
  line-height:1.82;font-size:16px;overflow-x:hidden;
}
img,svg{max-width:100%;height:auto}
a{color:var(--brass)}
a:hover{color:#f0c268}

.wrap{width:100%;max-width:960px;margin:0 auto;padding:0 18px}

.perf{
  height:14px;width:100%;
  background:repeating-linear-gradient(90deg,transparent 0 14px,#0c0907 14px 24px);
  border-top:1px solid #0c0907;border-bottom:1px solid #0c0907;
}
.band{background:var(--bg2)}
.band-in{padding:22px 18px 24px}
.slug{margin:0 0 .5rem;font-family:var(--mono);font-size:.74rem;letter-spacing:.3em;color:var(--rust)}
h1{
  margin:0;font-family:var(--serif);font-weight:700;
  font-size:clamp(1.7rem,7vw,3.1rem);line-height:1.2;color:var(--fg);letter-spacing:.03em;
}
.h1-seg{
  display:block;margin-top:.5rem;font-family:var(--sans);font-weight:500;
  font-size:clamp(.85rem,3vw,1.05rem);color:var(--brass);letter-spacing:.05em;
}
.band-lede{margin:1rem 0 0;color:var(--dim)}

h2{
  font-family:var(--serif);font-size:clamp(1.1rem,4vw,1.4rem);
  margin:0 0 .7rem;color:var(--brass);font-weight:700;
}
.sr-head{font-size:.86rem;color:var(--dim);font-family:var(--mono);letter-spacing:.2em;margin-bottom:1rem}
p{margin:0 0 .85rem}

.level{
  margin:1.7rem 0;padding:18px 18px 10px;background:var(--bg2);
  border:1px solid var(--line);border-left:4px solid var(--rust);
}
.level p:last-child{margin-bottom:.85rem}

.finder{margin:1.7rem 0;padding:16px 18px;background:var(--card);border:1px solid var(--line)}
.f3{display:grid;grid-template-columns:1fr;gap:12px}
.fcell{display:flex;flex-direction:column;gap:5px;min-width:0}
.fcell label{font-size:.8rem;color:var(--dim);letter-spacing:.06em}
.fcell input,.fcell select{
  width:100%;min-width:0;background:#120e0b;color:var(--fg);
  border:1px solid #4a3a2d;border-radius:3px;padding:9px 10px;font-size:1rem;
  font-family:var(--sans);
}
.fcell input:focus,.fcell select:focus{outline:2px solid var(--brass);outline-offset:1px}
.hits{margin:.8rem 0 0;font-family:var(--mono);font-size:.84rem;color:var(--rust)}

ol.tl{list-style:none;margin:0 0 2rem;padding:0 0 0 0;position:relative}
ol.tl::before{
  content:"";position:absolute;left:8px;top:6px;bottom:6px;width:2px;
  background:linear-gradient(180deg,var(--rust),var(--line));
}
ol.tl li{position:relative;padding:0 0 20px 30px}
ol.tl li::before{
  content:"";position:absolute;left:2px;top:12px;width:14px;height:14px;
  border-radius:50%;background:var(--bg);border:3px solid var(--brass);
}
ol.tl li.k-tech::before{border-color:var(--rust)}
ol.tl li.k-biz::before{border-color:#7f9a6a}
.yr{
  display:inline-block;font-family:var(--mono);font-size:1.05rem;color:var(--brass);
  letter-spacing:.04em;
}
.badges{display:inline-flex;flex-wrap:wrap;gap:6px;margin-left:10px;vertical-align:middle}
.bd{
  font-size:.7rem;font-family:var(--mono);padding:1px 7px;border:1px solid var(--line);
  color:var(--dim);background:var(--bg2);letter-spacing:.04em;
}
.bd.rg{color:var(--brass);border-color:#5a4530}
.ttl{
  display:block;margin:.25rem 0 .2rem;font-family:var(--serif);font-size:1.06rem;
  font-weight:700;color:var(--fg);line-height:1.45;
}
.dsc{margin:0;font-size:.93rem;color:var(--dim)}
.tl-empty{padding:18px 0 18px 30px;color:var(--rust)}

.pair{margin:.6rem 0 0}
.pair dt{font-family:var(--serif);font-weight:700;color:var(--brass);margin-top:1rem;font-size:1.02rem}
.pair dd{margin:.25rem 0 0;color:var(--dim);font-size:.94rem}

.src{margin:.4rem 0 .6rem;padding-left:1.15em;color:var(--dim);font-size:.9rem}
.src li{margin-bottom:.5rem}

.tail{background:var(--bg2);margin-top:1.6rem;color:var(--dim);font-size:.88rem}
.tail .wrap{padding-top:18px;padding-bottom:34px}
.tail p{margin:0 0 .35rem}

/* 404 */
.nope{padding:2.6rem 0 3.8rem}
.nope-num{font-family:var(--mono);font-size:clamp(2.8rem,15vw,5.6rem);color:var(--line);margin:0;line-height:1;letter-spacing:.08em}
.nope ul{padding-left:1.15em;color:var(--dim)}

@media (min-width:640px){
  .f3{grid-template-columns:1.6fr 1fr 1fr}
  ol.tl li{padding-left:36px}
}
@media (min-width:900px){
  .band-in{padding:30px 18px 32px}
  .level{padding:24px 26px 16px}
}
