/* 风情小鸟电影网 — 暮色窗沿配色 + 三带窗沿版式 */
:root{
  --ink:#13302f; --ink-deep:#0a1b1b; --sand:#f4ecdd; --paper:#fbf6ec;
  --red:#b24a30; --moss:#5f7347; --gold:#c08b32; --grey:#5e716f;
  --line:#d6c9b0; --shade:#ece0cc;
  --f-head:"Songti SC","STSong","Noto Serif SC",Georgia,"Times New Roman",serif;
  --f-body:"Hiragino Sans GB","Heiti SC","Microsoft YaHei","Segoe UI",Arial,sans-serif;
  --f-mono:Menlo,"Courier New",monospace;
  --measure:64ch;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:var(--f-body);font-size:16.5px;line-height:1.85;
}
img,svg{max-width:100%}
.art{display:block;width:100%;height:auto;margin:1.1rem 0}
.art.logo{width:66px;height:auto;margin:0;flex:0 0 auto}
.art.tick{width:20px;height:20px;margin:0;flex:0 0 auto}
a{color:var(--red);text-decoration:none;border-bottom:1px solid rgba(178,74,48,.35)}
a:hover{border-bottom-color:var(--red)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,
textarea:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.skip{position:absolute;left:-9999px;top:0}
.skip:focus{left:8px;top:8px;background:var(--ink);color:var(--sand);padding:.5rem .8rem;z-index:30}

/* ── 顶部窗楣 ───────────────────────────────── */
.sill{background:var(--ink);color:var(--sand);border-bottom:4px solid var(--gold)}
.sill-in{max-width:1400px;margin:0 auto;padding:.9rem 1rem;display:flex;flex-wrap:wrap;
  align-items:center;gap:.75rem 1rem}
.brand{display:flex;align-items:center;gap:.6rem;color:var(--sand);border:0;min-width:0}
.brand:hover{border:0}
.brand b{font-family:var(--f-head);font-size:1.22rem;font-weight:700;letter-spacing:.01em;
  line-height:1.3}
.brand span.tag{display:block;font-family:var(--f-body);font-size:.74rem;color:var(--gold);
  letter-spacing:.14em;font-weight:400}
.sill form{display:flex;gap:.4rem;margin-left:auto;min-width:0;flex:1 1 220px;max-width:420px}
.sill input[type=search]{flex:1 1 auto;min-width:0;padding:.5rem .7rem;border:1px solid var(--grey);
  border-radius:3px;background:var(--paper);color:var(--ink);font:inherit;font-size:.95rem}
.sill button{flex:0 0 auto;padding:.5rem .9rem;border:1px solid var(--gold);background:var(--gold);
  color:var(--ink-deep);border-radius:3px;font:inherit;font-size:.95rem;cursor:pointer}
.sill button:hover{background:#d49c3c}

/* ── 三带版式 ───────────────────────────────── */
.shell{max-width:1400px;margin:0 auto;padding:1.2rem 1rem 3rem;
  display:grid;grid-template-columns:minmax(0,1fr);gap:1.6rem}
.rail{min-width:0}
.rail h2,.side h2{font-family:var(--f-head);font-size:.95rem;letter-spacing:.16em;
  color:var(--grey);margin:0 0 .5rem;font-weight:700}
.chips{display:flex;flex-wrap:wrap;gap:.45rem;padding:.1rem 0 .55rem;margin:0;list-style:none}
.chips li{flex:0 0 auto}
.chips a{display:block;padding:.35rem .78rem;border:1px solid var(--line);border-radius:999px;
  background:var(--sand);color:var(--ink);font-size:.92rem;white-space:nowrap}
.chips a[aria-current=page]{background:var(--ink);color:var(--sand);border-color:var(--ink)}
main{min-width:0}
.side{min-width:0;display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}
@media(min-width:860px){
  .shell{grid-template-columns:214px minmax(0,1fr);gap:2rem}
  .rail{position:sticky;top:1rem;align-self:start}
  .chips{display:block;overflow:visible;padding:0}
  .chips li+li{margin-top:.3rem}
  .chips a{border-radius:3px;border-left:3px solid var(--line);border-top:0;border-right:0;
    border-bottom:0;background:transparent;padding:.34rem .6rem;white-space:normal}
  .chips a[aria-current=page]{background:var(--shade);color:var(--ink);border-left-color:var(--red)}
  .side{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
}
@media(min-width:1140px){
  .shell{grid-template-columns:214px minmax(0,1fr) 252px}
  .side{grid-template-columns:minmax(0,1fr);align-self:start;position:sticky;top:1rem}
}

/* ── 正文排版 ───────────────────────────────── */
.crumb{font-size:.86rem;color:var(--grey);margin:0 0 .7rem;line-height:1.7}
.crumb a{color:var(--grey);border-bottom-color:rgba(94,113,111,.4)}
.crumb span[aria-current]{color:var(--ink)}
h1{font-family:var(--f-head);font-size:clamp(1.55rem,5.2vw,2.3rem);line-height:1.34;
  margin:.1rem 0 .6rem;font-weight:700;overflow-wrap:anywhere}
.nb{white-space:nowrap;overflow-wrap:normal}
.lede{font-size:1.06rem;color:#30403d;border-left:4px solid var(--gold);padding-left:.9rem;
  margin:0 0 1.4rem}
article,.prose{max-width:var(--measure)}
main h2{font-family:var(--f-head);font-size:1.34rem;margin:2.1rem 0 .6rem;line-height:1.45;
  padding-bottom:.3rem;border-bottom:1px solid var(--line)}
main h2 .num{font-family:var(--f-head);color:var(--gold);margin-right:.45rem}
main h3{font-family:var(--f-head);font-size:1.1rem;margin:1.5rem 0 .4rem}
main p{margin:0 0 1rem}
main ul,main ol{margin:0 0 1.1rem;padding-left:1.4rem}
main li{margin-bottom:.45rem}
main strong{color:var(--ink-deep)}
i.term{font-style:normal;border-bottom:1px dashed var(--moss);color:var(--moss)}
figure{margin:1.3rem 0}
figcaption{font-size:.87rem;color:var(--grey);line-height:1.65;margin-top:.35rem}

/* 窗沿笔记 pull-aside */
.sillnote{background:var(--sand);border-left:4px solid var(--red);padding:.85rem 1rem;
  margin:1.4rem 0;border-radius:0 5px 5px 0}
.sillnote .hd{display:flex;align-items:center;gap:.45rem;font-family:var(--f-head);
  font-weight:700;margin-bottom:.3rem}
.sillnote p{margin:0 0 .5rem}
.sillnote p:last-child{margin:0}

.notice{background:#fdf3e3;border:1px solid var(--gold);border-left-width:5px;
  padding:.8rem 1rem;margin:1.2rem 0;border-radius:3px;font-size:.95rem}
.notice b{color:var(--ink-deep)}
.notice>b:first-child{color:var(--red)}

/* 卡片 */
.cards{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;margin:1.2rem 0;padding:0;
  list-style:none}
@media(min-width:620px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1140px){.cards.three{grid-template-columns:repeat(3,minmax(0,1fr))}}
.cards>li{min-width:0}
.card{display:block;min-width:0;height:100%;background:var(--sand);border:1px solid var(--line);
  border-radius:5px;padding:.9rem 1rem;border-bottom-width:1px}
a.card{color:var(--ink)}
a.card:hover{border-color:var(--red);background:#f7efe1}
.card h3{font-family:var(--f-head);font-size:1.07rem;margin:0 0 .35rem;line-height:1.45}
.card p{margin:0;font-size:.93rem;color:#3c4b48}
.card .kick{display:block;font-size:.75rem;letter-spacing:.14em;color:var(--moss);
  margin-bottom:.3rem}
.box{background:var(--sand);border:1px solid var(--line);border-radius:5px;padding:.9rem 1rem}
.box h3{font-family:var(--f-head);font-size:1rem;margin:0 0 .5rem}
.box ul{margin:0;padding-left:1.2rem;font-size:.92rem}
.box li{margin-bottom:.35rem}
.box p{margin:0 0 .5rem;font-size:.92rem}
.dims{list-style:none;margin:0;padding:0;font-size:.92rem}
.dims li{display:flex;justify-content:space-between;gap:.7rem;border-bottom:1px dotted var(--line);
  padding:.28rem 0}
.dims li>span{flex:0 0 auto;white-space:nowrap}
.dims b{text-align:right;min-width:0}
.dims b{font-weight:600;color:var(--moss)}

/* 表格降级 */
.scrollx{overflow-x:auto;margin:1.2rem 0;border:1px solid var(--line);border-radius:5px}
table{border-collapse:collapse;width:100%;min-width:480px;font-size:.93rem;background:var(--sand)}
th,td{border-bottom:1px solid var(--line);padding:.5rem .7rem;text-align:left;vertical-align:top}
th{background:var(--shade);font-family:var(--f-head);white-space:nowrap}
caption{caption-side:bottom;font-size:.85rem;color:var(--grey);padding:.5rem .7rem;text-align:left}

/* ── 工具表单 ───────────────────────────────── */
.tool{background:var(--sand);border:1px solid var(--line);border-radius:6px;padding:1rem;
  margin:1.3rem 0}
.tool label{display:block;font-size:.92rem;font-weight:600;margin:.7rem 0 .25rem}
.tool input[type=text],.tool input[type=search],.tool textarea,.tool select{
  width:100%;min-width:0;padding:.5rem .6rem;
  border:1px solid var(--grey);border-radius:3px;font:inherit;font-size:.96rem;background:var(--paper);
  color:var(--ink)}
.tool textarea{min-height:5.5rem;resize:vertical;line-height:1.7}
.tool input[type=range]{width:100%;min-width:0;accent-color:var(--red)}
.row{display:grid;grid-template-columns:minmax(0,1fr);gap:.2rem 1rem}
@media(min-width:620px){.row.two{grid-template-columns:repeat(2,minmax(0,1fr))}}
.btns{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}
button.go,button.alt{padding:.5rem 1rem;border-radius:3px;font:inherit;font-size:.95rem;cursor:pointer}
button.go{background:var(--ink);color:var(--sand);border:1px solid var(--ink)}
button.go:hover{background:#1c4341}
button.alt{background:transparent;color:var(--ink);border:1px solid var(--grey)}
button.alt:hover{border-color:var(--ink)}
.slider-val{float:right;font-family:var(--f-mono);font-size:.88rem;color:var(--red)}
.msg{margin:.9rem 0 0;padding:.6rem .8rem;border-radius:3px;font-size:.93rem;display:none}
.msg.show{display:block}
.msg.good{background:#e9efdf;border:1px solid var(--moss);color:#36452a}
.msg.bad{background:#f8e3dc;border:1px solid var(--red);color:#7c2d19;font-weight:600}
.score{font-family:var(--f-head);font-size:2.3rem;color:var(--red);line-height:1.2}
.bars{list-style:none;margin:1rem 0 0;padding:0}
.bars li{margin-bottom:.5rem;font-size:.9rem}
.bars .track{display:block;background:#fff;border:1px solid var(--line);border-radius:2px;
  height:14px;margin-top:.15rem;overflow:hidden}
.bars .fill{display:block;height:100%;background:var(--moss)}
.noteitem{background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--moss);
  border-radius:3px;padding:.65rem .8rem;margin-bottom:.6rem}
.noteitem h4{font-family:var(--f-head);font-size:1rem;margin:0 0 .25rem}
.noteitem .meta{font-size:.8rem;color:var(--grey);font-family:var(--f-mono)}
.noteitem p{margin:.35rem 0 .5rem;font-size:.93rem;white-space:pre-wrap}
.empty{color:var(--grey);font-size:.93rem}

/* 搜索结果 */
.results{list-style:none;margin:1.2rem 0 0;padding:0}
.results li{border-bottom:1px solid var(--line);padding:.75rem 0}
.results h3{font-family:var(--f-head);font-size:1.06rem;margin:0 0 .2rem}
.results p{margin:0;font-size:.92rem;color:#3c4b48}
.results .path{font-family:var(--f-mono);font-size:.78rem;color:var(--grey)}
.hitcount{font-size:.93rem;color:var(--moss);font-weight:600;margin:.8rem 0 0}
.taglist{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;margin:.6rem 0 0;padding:0}
.taglist button{padding:.28rem .7rem;border:1px solid var(--line);background:var(--paper);
  border-radius:999px;font:inherit;font-size:.86rem;cursor:pointer;color:var(--ink)}
.taglist button[aria-pressed=true]{background:var(--moss);border-color:var(--moss);color:#fff}

/* ── 页脚 ───────────────────────────────────── */
footer.foot{background:var(--ink-deep);color:#c8d3d0;margin-top:2rem;
  border-top:4px solid var(--moss)}
.foot-in{max-width:1400px;margin:0 auto;padding:1.5rem 1rem 2rem;display:grid;
  grid-template-columns:minmax(0,1fr);gap:1.2rem}
@media(min-width:760px){.foot-in{grid-template-columns:1.3fr repeat(2,minmax(0,1fr))}}
.foot h2{font-family:var(--f-head);font-size:.95rem;letter-spacing:.14em;color:var(--gold);
  margin:0 0 .5rem}
.foot ul{list-style:none;margin:0;padding:0;font-size:.92rem}
.foot li{margin-bottom:.35rem}
.foot a{color:#e3dac8;border-bottom-color:rgba(227,218,200,.3)}
.foot p{margin:0 0 .6rem;font-size:.9rem;line-height:1.75}
.foot .fine{color:#8b9a97;font-size:.83rem}
.foot .flogo{display:flex;align-items:center;gap:.6rem;margin-bottom:.6rem}
.foot .flogo b{font-family:var(--f-head);color:var(--sand);font-size:1.05rem}
