:root{
  --c-primary:#0D1B2A;
  --c-secondary:#2EC4B6;
  --c-bg:#E0E1DD;
  --c-accent:#2EC4B6;
  --radius:4px;
  --shadow-strong:0 10px 30px -8px rgba(13,27,42,.45),0 2px 6px rgba(13,27,42,.18);
  --shadow-soft:0 18px 40px -14px rgba(13,27,42,.55),0 3px 10px rgba(13,27,42,.2);
  --gap-m:14px;
  --gap-d:20px;
  --sec-m:48px;
  --sec-d:72px;
  --text:#16222F;
  --text-soft:#41525F;
  --line:#C3C7C4;
  --card-bg:#F4F5F2;
}
*{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth}
body{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  font-size:15.5px;
  line-height:1.72;
  color:var(--text);
  background:var(--c-bg);
  -webkit-font-smoothing:antialiased;
}
img{width:100%;height:100%;object-fit:cover;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}
h1,h2,h3{color:var(--c-primary);line-height:1.3}
p{margin-bottom:12px}
p:last-child{margin-bottom:0}
.wrap{
  max-width:1240px;
  margin:0 auto;
  padding:0 20px;
}
@media(min-width:720px){.wrap{padding:0 32px}}
@media(min-width:1100px){.wrap{padding:0 40px}}

/* ===== 顶部品牌区 ===== */
.topbar{
  background:var(--c-primary);
  border-bottom:3px solid var(--c-secondary);
  position:relative;
}
.topbar::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(120deg,rgba(46,196,182,.18),transparent 55%);
  pointer-events:none;
}
.navrow{
  display:flex;align-items:center;gap:16px;
  min-height:62px;position:relative;z-index:2;
}
.brand{
  font-weight:800;font-size:19px;letter-spacing:.5px;color:#fff;
  display:flex;align-items:center;gap:8px;flex-shrink:0;
}
.brand b{
  display:inline-block;background:var(--c-secondary);color:var(--c-primary);
  padding:2px 7px;border-radius:var(--radius);font-size:14px;
}
.mainnav{display:none;gap:4px;margin-left:6px}
.mainnav a{
  color:#D7E3E0;font-size:14px;padding:9px 12px;border-radius:var(--radius);
  transition:background .18s,color .18s;
}
.mainnav a:hover,.mainnav a:focus-visible{background:rgba(46,196,182,.2);color:#fff}
.searchbox{margin-left:auto;display:flex;align-items:center;gap:8px}
.searchbox input{
  width:130px;height:40px;border-radius:var(--radius);
  border:1.5px solid rgba(46,196,182,.5);background:rgba(255,255,255,.08);
  color:#fff;padding:0 12px;font-size:14px;font-family:inherit;
  transition:border-color .18s,width .2s;
}
.searchbox input::placeholder{color:#9FB6B2}
.searchbox input:focus{outline:none;border-color:var(--c-accent);width:170px;background:rgba(255,255,255,.14)}
.searchbox button{
  height:40px;padding:0 16px;border:none;border-radius:var(--radius);
  background:var(--c-secondary);color:var(--c-primary);
  font-weight:700;font-size:14px;font-family:inherit;cursor:pointer;
  transition:filter .18s,transform .1s;
}
.searchbox button:hover{filter:brightness(1.08)}
.searchbox button:active{transform:scale(.97)}
.menubtn{
  width:44px;height:42px;border-radius:var(--radius);border:1.5px solid rgba(46,196,182,.5);
  background:transparent;color:#fff;font-size:18px;cursor:pointer;display:flex;
  align-items:center;justify-content:center;font-family:inherit;
}
.menubtn:focus-visible{outline:2px solid var(--c-accent);outline-offset:2px}
.mobilenav{display:none;padding-bottom:14px;position:relative;z-index:2}
.mobilenav.open{display:block}
.mobilenav a{
  display:block;color:#D7E3E0;font-size:15px;padding:11px 4px;
  border-bottom:1px solid rgba(255,255,255,.1);
}
.mobilenav a:last-child{border-bottom:none}
@media(min-width:900px){
  .mainnav{display:flex}
  .menubtn{display:none}
  .searchbox input{width:200px}
  .searchbox input:focus{width:240px}
  .navrow{min-height:68px}
}

/* ===== 面包屑 ===== */
.crumbs{
  padding:20px 0 4px;font-size:13.5px;color:var(--text-soft);
  display:flex;flex-wrap:wrap;align-items:center;gap:6px;
}
.crumbs a{color:var(--c-primary);border-bottom:1px solid transparent}
.crumbs a:hover{border-bottom-color:var(--c-secondary)}
.crumbs span.sep{color:#8B9A98}
.crumbs [aria-current]{color:var(--c-primary);font-weight:700}

/* ===== Hero（stacked：上方通栏海报条 + 下方居中文案） ===== */
.hero{
  margin-top:16px;border-radius:var(--radius);overflow:hidden;
  border:2px solid var(--c-primary);box-shadow:var(--shadow-strong);
  background:var(--c-primary);position:relative;
}
.hero-banner{
  position:relative;height:190px;overflow:hidden;
  background:linear-gradient(135deg,#0D1B2A,#123A46 55%,#2EC4B6);
}
.hero-banner img{opacity:.55}
.hero-banner::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(13,27,42,.15),rgba(13,27,42,.92));
}
.hero-body{
  position:relative;z-index:2;padding:24px 20px 30px;text-align:center;color:#E9F4F2;
}
.hero-tags{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:16px}
.tag{
  display:inline-block;font-size:13px;line-height:1.4;padding:4px 11px;
  border-radius:var(--radius);border:1.5px solid var(--c-secondary);
  color:var(--c-secondary);background:rgba(46,196,182,.1);
}
.tag.solid{background:var(--c-secondary);color:var(--c-primary);font-weight:700;border-color:var(--c-secondary)}
h1{
  font-size:34px;line-height:1.24;letter-spacing:-.5px;color:#fff;
  margin-bottom:16px;font-weight:800;
}
.hero-hook{
  max-width:640px;margin:0 auto 16px;font-size:15.5px;line-height:1.75;color:#C9DBD8;
}
.hero-meta{
  display:flex;flex-wrap:wrap;gap:10px 22px;justify-content:center;
  font-size:13.5px;color:#A9C3BF;margin-bottom:22px;
}
.hero-meta b{color:var(--c-secondary);font-size:15px}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:46px;padding:10px 24px;border-radius:var(--radius);
  font-size:14px;font-weight:700;font-family:inherit;cursor:pointer;
  border:2px solid transparent;transition:filter .18s,transform .1s,background .18s,color .18s;
  text-align:center;
}
.btn-primary{background:var(--c-secondary);color:var(--c-primary);border-color:var(--c-secondary)}
.btn-primary:hover{filter:brightness(1.1)}
.btn-primary:active{transform:scale(.98)}
.btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.6)}
.btn-ghost:hover{background:rgba(255,255,255,.12);border-color:#fff}
.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible{
  outline:2px solid var(--c-accent);outline-offset:2px;
}
@media(min-width:720px){
  .hero-banner{height:250px}
  .hero-body{padding:32px 40px 40px}
  h1{font-size:46px}
  .hero-hook{font-size:16.5px}
}
@media(min-width:1100px){
  .hero-banner{height:290px}
  h1{font-size:56px}
}

/* ===== 通用栏目 ===== */
section{margin-top:var(--sec-m)}
@media(min-width:900px){section{margin-top:var(--sec-d)}}
.sec-head{margin-bottom:20px}
.sec-head h2{
  font-size:24px;line-height:1.3;margin-bottom:8px;display:flex;align-items:center;gap:10px;
}
.sec-head h2::before{
  content:"";width:6px;height:22px;background:var(--c-secondary);border-radius:2px;display:inline-block;
}
.sec-desc{font-size:14.5px;color:var(--text-soft);line-height:1.7;max-width:78ch}
@media(min-width:900px){
  .sec-head h2{font-size:29px}
  .sec-desc{font-size:15px}
}

/* ===== 分类导航 ===== */
.cat-scroll{
  display:flex;gap:var(--gap-m);overflow-x:auto;padding:2px 2px 12px;
  scrollbar-width:thin;-webkit-overflow-scrolling:touch;
}
.cat-card{
  flex:0 0 200px;background:var(--card-bg);border:2px solid var(--c-primary);
  border-radius:var(--radius);padding:16px 18px;box-shadow:var(--shadow-strong);
  transition:transform .18s,border-color .18s;cursor:pointer;
}
.cat-card:hover{transform:translateY(-3px);border-color:var(--c-secondary)}
.cat-card h3{font-size:17px;margin-bottom:6px}
.cat-card p{font-size:13.5px;line-height:1.6;color:var(--text-soft);margin:0}
@media(min-width:720px){
  .cat-scroll{display:grid;grid-template-columns:repeat(3,1fr);overflow:visible}
  .cat-card{flex:none}
}
@media(min-width:1100px){.cat-scroll{grid-template-columns:repeat(6,1fr)}.cat-card{padding:18px}}

/* ===== 剧集卡片网格 ===== */
.grid{display:grid;gap:var(--gap-m);grid-template-columns:repeat(2,1fr)}
@media(min-width:720px){.grid{grid-template-columns:repeat(3,1fr);gap:var(--gap-d)}}
@media(min-width:1100px){.grid{grid-template-columns:repeat(4,1fr)}}
.card{
  background:var(--card-bg);border:2px solid var(--c-primary);border-radius:var(--radius);
  box-shadow:var(--shadow-strong);display:flex;flex-direction:column;overflow:hidden;
  transition:transform .18s,box-shadow .18s,border-color .18s;
}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-soft);border-color:var(--c-secondary)}
.cover{position:relative;aspect-ratio:3/4;background:#1A2B3A;overflow:hidden}
.cover .badge{
  position:absolute;left:10px;top:10px;z-index:2;
  background:var(--c-secondary);color:var(--c-primary);
  font-size:12.5px;font-weight:700;padding:3px 9px;border-radius:var(--radius);
}
.cover .ep{
  position:absolute;right:10px;bottom:10px;z-index:2;
  background:rgba(13,27,42,.85);color:#E0E1DD;font-size:12.5px;padding:3px 8px;border-radius:var(--radius);
}
.card-body{padding:16px 16px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.card-body h3{font-size:17px;line-height:1.4}
.card-body h3 a:hover{color:#127A72}
.card-body .hook{font-size:13.5px;line-height:1.65;color:var(--text-soft);margin:0;flex:1}
.card-tags{display:flex;flex-wrap:wrap;gap:6px}
.card-tags .tag{font-size:12.5px;padding:2px 8px;color:#127A72;border-color:#9FD8D2;background:rgba(46,196,182,.12)}
.card-foot{
  display:flex;align-items:center;justify-content:space-between;gap:8px;
  font-size:13px;color:var(--text-soft);border-top:1px dashed var(--line);padding-top:10px;
}
.card-foot a{color:#0D1B2A;font-weight:700;font-size:13.5px}
.card-foot a:hover{color:#127A72}

/* ===== 剧情简介 & 看点 ===== */
.story-box{
  background:var(--card-bg);border:2px solid var(--c-primary);border-radius:var(--radius);
  box-shadow:var(--shadow-strong);padding:22px 20px;
}
@media(min-width:900px){.story-box{padding:32px 36px}}
.story-box p{font-size:15.5px;line-height:1.8;color:var(--text)}
.highlights{display:grid;gap:var(--gap-m);margin-top:20px}
@media(min-width:720px){.highlights{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.highlights{grid-template-columns:repeat(3,1fr)}}
.hl{
  border:1.5px solid var(--c-secondary);border-left:5px solid var(--c-secondary);
  border-radius:var(--radius);padding:14px 16px;background:#EDF3F1;
}
.hl b{display:block;font-size:14px;color:#0D1B2A;margin-bottom:4px}
.hl span{font-size:13.5px;line-height:1.65;color:var(--text-soft)}

/* ===== 人物关系 ===== */
.people{display:grid;gap:var(--gap-m);grid-template-columns:repeat(2,1fr)}
@media(min-width:900px){.people{grid-template-columns:repeat(4,1fr);gap:var(--gap-d)}}
.person{
  background:var(--card-bg);border:2px solid var(--c-primary);border-radius:var(--radius);
  box-shadow:var(--shadow-strong);overflow:hidden;text-align:center;
  transition:transform .18s,border-color .18s;
}
.person:hover{transform:translateY(-3px);border-color:var(--c-secondary)}
.avatar{aspect-ratio:1/1;overflow:hidden;background:#1A2B3A}
.person-body{padding:14px 12px 16px}
.person-body h3{font-size:16.5px;margin-bottom:4px}
.person-body em{font-style:normal;font-size:12.5px;color:#127A72;display:block;margin-bottom:6px}
.person-body p{font-size:13.5px;line-height:1.6;color:var(--text-soft);margin:0}

/* ===== 追剧队列 ===== */
.queue-head{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px}
.queue-count{
  display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:700;
  background:var(--c-primary);color:#fff;padding:6px 14px;border-radius:var(--radius);
}
.queue-count b{color:var(--c-secondary);font-size:16px}
.ep-list{display:flex;flex-direction:column;gap:var(--gap-m)}
.ep{
  display:flex;flex-wrap:wrap;align-items:center;gap:12px;
  background:var(--card-bg);border:2px solid var(--c-primary);border-radius:var(--radius);
  box-shadow:var(--shadow-strong);padding:16px 18px;
  transition:border-color .18s,background .18s;
}
.ep.selected{border-color:var(--c-secondary);background:#EAF5F3}
.ep-no{
  flex:0 0 54px;height:54px;border-radius:var(--radius);
  background:var(--c-primary);color:var(--c-secondary);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  font-weight:800;font-size:15px;line-height:1.2;
}
.ep-no small{font-size:11.5px;font-weight:500;color:#9FB6B2}
.ep-main{flex:1 1 240px;min-width:180px}
.ep-main h3{font-size:16.5px;margin-bottom:4px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.ep-main h3 .tag{font-size:12px;padding:1px 7px}
.ep-main p{font-size:13.5px;line-height:1.6;color:var(--text-soft);margin:0}
.ep-meta{font-size:12.5px;color:#5F7175;flex:0 0 auto}
.ep-btn{
  flex:0 0 auto;min-height:42px;padding:9px 18px;border-radius:var(--radius);
  border:2px solid var(--c-primary);background:var(--c-primary);color:#fff;
  font-size:13.5px;font-weight:700;font-family:inherit;cursor:pointer;
  transition:background .18s,color .18s,border-color .18s;
}
.ep-btn:hover{background:var(--c-secondary);color:var(--c-primary);border-color:var(--c-secondary)}
.ep.selected .ep-btn{background:transparent;color:#0D1B2A;border-color:var(--c-secondary)}
.ep-extra{display:none}
.ep-list.expanded .ep-extra{display:flex}
.more-row{margin-top:18px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}

/* ===== 栏目：横向滚动条 / 标签云 / 列表 ===== */
.rail{display:flex;gap:var(--gap-m);overflow-x:auto;padding-bottom:12px;-webkit-overflow-scrolling:touch}
.rail .mini{
  flex:0 0 220px;background:var(--card-bg);border:2px solid var(--c-primary);
  border-radius:var(--radius);box-shadow:var(--shadow-strong);overflow:hidden;
  transition:transform .18s,border-color .18s;
}
.rail .mini:hover{transform:translateY(-3px);border-color:var(--c-secondary)}
.mini .cover{aspect-ratio:16/10}
.mini-body{padding:14px 15px 16px}
.mini-body h3{font-size:16px;margin-bottom:6px}
.mini-body p{font-size:13.5px;line-height:1.6;color:var(--text-soft);margin:0 0 8px}
.mini-body .tag{font-size:12px;padding:2px 8px;color:#127A72;border-color:#9FD8D2;background:rgba(46,196,182,.12)}
@media(min-width:900px){
  .rail{display:grid;grid-template-columns:repeat(3,1fr);overflow:visible}
  .rail .mini{flex:none}
}

.cloud{display:flex;flex-wrap:wrap;gap:10px}
.cloud a{
  display:inline-block;font-size:13.5px;padding:7px 14px;border-radius:var(--radius);
  border:1.5px solid var(--c-primary);background:var(--card-bg);color:var(--c-primary);
  transition:background .18s,color .18s,border-color .18s;
}
.cloud a:hover{background:var(--c-secondary);border-color:var(--c-secondary);color:var(--c-primary)}

.listbox{
  background:var(--card-bg);border:2px solid var(--c-primary);border-radius:var(--radius);
  box-shadow:var(--shadow-strong);overflow:hidden;
}
.listbox li+li{border-top:1px solid var(--line)}
.listbox a{
  display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:15px 18px;
  transition:background .18s;
}
.listbox a:hover{background:#EAF5F3}
.listbox .idx{
  flex:0 0 30px;height:30px;border-radius:var(--radius);background:var(--c-primary);
  color:var(--c-secondary);font-size:13px;font-weight:800;
  display:flex;align-items:center;justify-content:center;
}
.listbox .t{font-size:15.5px;font-weight:700;color:var(--c-primary);flex:1 1 160px}
.listbox .d{font-size:13.5px;color:var(--text-soft);flex:1 1 220px}

/* ===== 剧情脉络（时间轴） ===== */
.timeline{position:relative;padding-left:26px;margin-top:6px}
.timeline::before{
  content:"";position:absolute;left:8px;top:6px;bottom:6px;width:3px;
  background:linear-gradient(180deg,var(--c-secondary),rgba(46,196,182,.15));
  border-radius:2px;
}
.tl-item{position:relative;padding:0 0 22px 4px}
.tl-item:last-child{padding-bottom:0}
.tl-item::before{
  content:"";position:absolute;left:-24px;top:6px;width:13px;height:13px;
  border-radius:50%;background:var(--c-bg);border:3px solid var(--c-secondary);
}
.tl-item h3{font-size:16.5px;margin-bottom:4px}
.tl-item p{font-size:13.5px;line-height:1.65;color:var(--text-soft);margin:0}

/* ===== 相关推荐 ===== */
.rel-grid{display:grid;gap:var(--gap-m);grid-template-columns:1fr}
@media(min-width:720px){.rel-grid{grid-template-columns:repeat(2,1fr);gap:var(--gap-d)}}
@media(min-width:1100px){.rel-grid{grid-template-columns:repeat(3,1fr)}}
.rel{
  display:flex;gap:14px;background:var(--card-bg);border:2px solid var(--c-primary);
  border-radius:var(--radius);box-shadow:var(--shadow-strong);padding:14px;
  transition:transform .18s,border-color .18s;
}
.rel:hover{transform:translateY(-3px);border-color:var(--c-secondary)}
.rel .cover{flex:0 0 92px;aspect-ratio:3/4;border-radius:var(--radius);overflow:hidden;position:static}
.rel-body{flex:1;min-width:0}
.rel-body h3{font-size:16.5px;margin-bottom:5px}
.rel-body p{font-size:13.5px;line-height:1.6;color:var(--text-soft);margin:0 0 8px}
.rel-body .tag{font-size:12px;padding:2px 8px;color:#127A72;border-color:#9FD8D2;background:rgba(46,196,182,.12)}
.rel-body a.kw{font-size:12.5px;color:#0D1B2A;border-bottom:1.5px solid var(--c-secondary);display:inline-block;margin-top:8px}

/* ===== FAQ ===== */
.faq{display:flex;flex-direction:column;gap:var(--gap-m)}
.faq details{
  background:var(--card-bg);border:2px solid var(--c-primary);border-radius:var(--radius);
  box-shadow:var(--shadow-strong);overflow:hidden;
}
.faq details[open]{border-color:var(--c-secondary)}
.faq summary{
  cursor:pointer;padding:16px 18px;font-size:15.5px;font-weight:700;color:var(--c-primary);
  list-style:none;display:flex;align-items:center;gap:10px;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{
  content:"+";flex:0 0 22px;height:22px;border-radius:var(--radius);
  background:var(--c-secondary);color:var(--c-primary);font-size:15px;font-weight:800;
  display:flex;align-items:center;justify-content:center;transition:transform .18s;
}
.faq details[open] summary::before{content:"−"}
.faq .ans{padding:0 18px 18px 50px;font-size:14px;line-height:1.75;color:var(--text-soft)}

/* ===== 友情链接 ===== */
.friendlink{margin-top:var(--sec-m)}
@media(min-width:900px){.friendlink{margin-top:var(--sec-d)}}
.friendlink h2{font-size:22px;margin-bottom:8px}
.friendlink p{font-size:14px;color:var(--text-soft);margin-bottom:14px}
.fl-grid{display:flex;flex-wrap:wrap;gap:10px}
.fl-grid a{
  font-size:13.5px;padding:6px 13px;border-radius:var(--radius);
  border:1.5px solid var(--c-primary);background:var(--card-bg);color:var(--c-primary);
  transition:background .18s,color .18s,border-color .18s;
}
.fl-grid a:hover{background:var(--c-secondary);border-color:var(--c-secondary);color:var(--c-primary)}
@media(min-width:900px){.friendlink h2{font-size:26px}}

/* ===== 页脚 ===== */
footer{
  margin-top:var(--sec-m);padding-top:52px;
  background:var(--c-primary);color:#C9DBD8;
  border-top:4px solid var(--c-secondary);
}
@media(min-width:900px){footer{margin-top:var(--sec-d)}}
.foot-grid{display:grid;gap:26px;grid-template-columns:1fr}
@media(min-width:720px){.foot-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.foot-grid{grid-template-columns:1.4fr 1fr 1fr 1fr}}
.foot-grid h3{font-size:15px;color:#fff;margin-bottom:12px;letter-spacing:.4px}
.foot-grid p{font-size:13px;line-height:1.75;color:#A9C3BF}
.foot-grid ul li{margin-bottom:8px}
.foot-grid ul a{font-size:13px;color:#C9DBD8;transition:color .18s}
.foot-grid ul a:hover{color:var(--c-secondary)}
.foot-bottom{
  margin-top:34px;border-top:1px solid rgba(255,255,255,.14);
  padding:22px 0 30px;
}
.foot-nav{display:flex;flex-wrap:wrap;gap:8px 18px;margin-bottom:14px}
.foot-nav a{font-size:13px;color:#C9DBD8}
.foot-nav a:hover{color:var(--c-secondary)}
.copy{font-size:12.5px;line-height:1.7;color:#93AEAA;margin-bottom:10px}
.record{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;font-size:12.5px}
.record a{color:#A9C3BF;font-size:12.5px}
.record a:hover{color:var(--c-secondary)}
.totop{
  display:inline-flex;align-items:center;gap:6px;min-height:42px;padding:9px 18px;
  border-radius:var(--radius);border:1.5px solid var(--c-secondary);
  background:transparent;color:var(--c-secondary);font-size:13.5px;font-weight:700;
  font-family:inherit;cursor:pointer;transition:background .18s,color .18s;
}
.totop:hover{background:var(--c-secondary);color:var(--c-primary)}
.totop-row{margin-top:16px}
.empty-note{
  font-size:13.5px;color:#0D1B2A;background:#D6EDEA;border-left:4px solid var(--c-secondary);
  padding:10px 14px;border-radius:var(--radius);display:none;
}
.empty-note.show{display:block}
.filter-bar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}
.chip{
  font-size:13.5px;padding:8px 16px;border-radius:var(--radius);cursor:pointer;
  border:1.5px solid var(--c-primary);background:var(--card-bg);color:var(--c-primary);
  font-family:inherit;min-height:42px;transition:background .18s,color .18s,border-color .18s;
}
.chip:hover{border-color:var(--c-secondary)}
.chip.active{background:var(--c-primary);color:var(--c-secondary);border-color:var(--c-primary);font-weight:700}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none!important;animation:none!important}
}