@charset "UTF-8";
/* 寻花论坛 静态站样式（依据参考站设计系统重建，浅色底） */

:root{
  --bg:#dee2e6;
  --surface:#f8f9fa;
  --surface-2:#e9ecef;
  --surface-3:#ffffff;
  --chrome:#343a40;
  --chrome-2:#272c31;
  --chrome-text:rgba(255,255,255,.72);
  --chrome-text-strong:#ffffff;
  --chrome-line:rgba(255,255,255,.1);
  --chip-hover:rgba(31,73,119,.55);
  --chip-active:rgba(31,73,119,.78);
  --text:#212529;
  --text-lede:#2f363c;
  --text-mute:#525c66;
  --text-soft:#3c444c;
  --line:#ced4da;
  --line-soft:#e2e6ea;
  --primary:#1f4977;
  --primary-dark:#173659;
  --accent:#1f4977;
  --accent-ink:#ffffff;
  --white:#ffffff;
  --tag-line:#868e96;
  --notice-good-ink:#0c4218;
  --notice-good-bg:#d1e5d5;
  --notice-good-line:#bedbc4;
  --notice-note-ink:#093e46;
  --notice-note-bg:#cfe4e7;
  --notice-note-line:#bcd9dd;
  --notice-warn-ink:#7d5b28;
  --notice-warn-bg:#fbf0d8;
  --notice-warn-line:#f0dfb8;
  --grad-head-from:#e9ecef;
  --grad-head-to:#f8f9fa;
  --grad-tab-from:#f8f9fa;
  --grad-tab-to:#ffffff;
  --foot-ink:#aeb6bd;
  --foot-link:#d6dbe0;
  --foot-mute:#9aa3ab;
  --radius:4px;
  --shadow:2px 2px 3px rgba(173,181,189,.35);
  --shadow-crumb:1px 1px 2px rgba(233,236,239,.7);
  --container:1140px;
  --cta-face:#1b2444;
  --cta-face-2:#242a33;
  --cta-ink:#e9eeff;
  --cta-wash:rgba(255,206,150,.3);
  --cta-trail-w:linear-gradient(90deg,rgba(255,255,255,0),#dbe7ff);
  --cta-trail-r:linear-gradient(270deg,rgba(226,96,122,0),#e2607a);
  --cta-shadow:0 12px 26px rgba(19,26,42,.45);
  --cta-shadow-hover:0 14px 30px rgba(19,26,42,.55);
  --cta-shadow-active:0 7px 16px rgba(19,26,42,.5);
  --cta-text-shadow:0 1px 8px rgba(0,0,0,.6);
  --focus-ring:#ffe0b0;
}

html{font-size:16px;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}

body{
  margin:0;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei","微软雅黑","Hiragino Sans GB","Helvetica Neue",Arial,sans-serif;
  font-size:16px;
  line-height:1.7;
  color:var(--text);
  background-color:var(--bg);
  padding-bottom:156px;
  overflow-wrap:anywhere;
}

h1{font-size:30px;line-height:1.3;margin:0 0 14px;font-weight:700}
h2{font-size:22px;line-height:1.35;margin:0 0 12px;font-weight:600}
h3{font-size:18px;line-height:1.45;margin:0 0 10px;font-weight:600}
h4{font-size:16px;line-height:1.5;margin:0 0 8px;font-weight:600}

p{margin:0 0 14px}
ul,ol{margin:0 0 14px;padding-left:22px}
li{margin-bottom:6px}
a{color:var(--primary);text-decoration:none}
a:hover,a:focus{color:var(--primary-dark);text-decoration:underline}
img{max-width:100%;height:auto}
hr{border:0;border-top:1px solid var(--line);margin:22px 0}
table{border-collapse:collapse;width:100%}
th,td{text-align:left;vertical-align:top;padding:9px 12px;border-bottom:1px solid var(--line-soft)}
th{background:var(--surface-2);color:var(--text-soft);font-weight:600;white-space:nowrap}
strong{font-weight:700}
small{font-size:13px}

.container{max-width:var(--container);margin:0 auto;padding:0 15px}

/* 顶部 */
.site-header{background:var(--chrome);color:var(--surface-2);padding:10px 0}
.site-header .container{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px}
.brand{display:inline-flex;align-items:center;gap:9px;color:var(--chrome-text-strong);font-size:19px;font-weight:700;text-decoration:none;letter-spacing:.5px}
.brand:hover,.brand:focus{color:var(--chrome-text-strong);text-decoration:none}
.brand img{display:block;height:28px;width:auto}
.site-nav{display:flex;flex-wrap:wrap;gap:2px;margin:0;padding:0;list-style:none}
.site-nav a{display:block;padding:7px 14px;border-radius:var(--radius);color:var(--chrome-text);font-size:15px;text-decoration:none}
.site-nav a:hover,.site-nav a:focus{background:var(--chip-hover);color:var(--chrome-text-strong);text-decoration:none}
.site-nav a[aria-current="page"]{background:var(--chip-active);color:var(--chrome-text-strong);font-weight:600}

/* 底部 */
.site-footer{background:var(--chrome-2);color:var(--foot-ink);font-size:14px;padding:26px 0 22px;margin-top:22px}
.site-footer a{color:var(--foot-link)}
.site-footer a:hover,.site-footer a:focus{color:var(--chrome-text-strong)}
.site-footer .foot-brand{display:inline-block;font-size:17px;font-weight:700;color:var(--chrome-text-strong);margin-bottom:10px;text-decoration:none}
.foot-groups{display:flex;flex-wrap:wrap;gap:6px 0;margin:6px 0 12px}
.foot-groups ul{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0;padding:0;list-style:none}
.foot-groups li{margin:0}
.foot-line{margin:0;color:var(--foot-mute);line-height:1.65}

/* 卡片 */
.card{background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:16px}
.card-header{padding:11px 15px;border-bottom:1px solid var(--line-soft);background-image:linear-gradient(0deg,var(--grad-head-from),var(--grad-head-to));color:var(--text-soft);font-size:15px;font-weight:600}
.card-body{padding:15px}
.card-body > :last-child{margin-bottom:0}
.card-foot{padding:11px 15px;border-top:1px solid var(--line-soft);font-size:14px;color:var(--text-mute)}

/* 提示条 */
.notice{border:1px solid;border-radius:var(--radius);padding:11px 15px;margin-bottom:16px;font-size:15px}
.notice p:last-child{margin-bottom:0}
.notice--good{color:var(--notice-good-ink);background-color:var(--notice-good-bg);border-color:var(--notice-good-line)}
.notice--note{color:var(--notice-note-ink);background-color:var(--notice-note-bg);border-color:var(--notice-note-line)}
.notice--warn{color:var(--notice-warn-ink);background-color:var(--notice-warn-bg);border-color:var(--notice-warn-line)}

/* 栏目条 */
.section-bar{display:flex;flex-wrap:wrap;gap:2px;padding:8px 10px 0;margin:0;list-style:none}
.section-bar a{display:block;padding:8px 15px;border:1px solid transparent;border-bottom:0;border-radius:3px 3px 0 0;color:var(--text-mute);font-size:15px;text-decoration:none}
.section-bar a:hover,.section-bar a:focus{background:var(--surface-3);border-color:var(--line-soft);color:var(--primary);text-decoration:none}
.section-bar a[aria-current="page"]{background-image:linear-gradient(0deg,var(--grad-tab-from),var(--grad-tab-to));border-color:var(--line);color:var(--primary);font-weight:600}

/* 标签页 */
.tabs{display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none}
.tabs li{margin:0}
.tab{font:inherit;font-size:15px;color:var(--text-mute);background:var(--surface-3);border:1px solid var(--line-soft);border-radius:3px 3px 0 0;padding:8px 15px;cursor:pointer}
.tab:hover{border-color:var(--line);color:var(--primary)}
.tab[aria-selected="true"]{background-image:linear-gradient(0deg,var(--grad-tab-from),var(--grad-tab-to));border-color:var(--line);border-bottom-color:var(--surface);color:var(--primary);font-weight:600}
.tabpanel{padding-top:4px}
.tabs-ready .tabpanel{display:none}
.tabs-ready .tabpanel.is-active{display:block}

/* 帖子行 */
.thread-list{margin:0;padding:0;list-style:none}
.thread{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--line-soft)}
.thread:last-child{border-bottom:0;padding-bottom:0}
.thread-list > .thread:hover{background-color:var(--surface-3)}
.avatar{flex:0 0 38px;width:38px;height:38px;background:var(--primary);color:var(--accent-ink);display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700}
.thread-main{flex:1 1 auto;min-width:0}
.thread-title{margin:0 0 4px;font-size:16px;font-weight:600;line-height:1.55}
.thread-title a{color:var(--text)}
.thread-title a:hover,.thread-title a:focus{color:var(--primary)}
.thread-meta{margin:0;font-size:13px;color:var(--text-mute);display:flex;flex-wrap:wrap;gap:4px 12px}
.tag{display:inline-block;font-size:13px;color:var(--text-mute);margin-right:6px}
.badge{display:inline-block;font-size:12px;line-height:1.6;padding:1px 9px;border-radius:10px;background:var(--primary);color:var(--accent-ink);white-space:nowrap}
.badge--soft{background:var(--surface-2);color:var(--text-soft);border:1px solid var(--line)}

/* 面包屑 */
.crumb{margin:0 0 16px;padding:9px 15px;background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--radius);font-size:14px;color:var(--text-mute);box-shadow:var(--shadow-crumb)}
.crumb ol{display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none}
.crumb li{margin:0}
.crumb li + li::before{content:"/";margin:0 8px;color:var(--line)}

/* 两栏布局 */
.layout{display:flex;flex-wrap:wrap;gap:0 16px;align-items:flex-start}
.layout > .col-main{flex:1 1 660px;min-width:0}
.layout > .col-side{flex:0 0 300px;max-width:100%}

/* 正文块 */
.content > :last-child{margin-bottom:0}
.lede{font-size:17px;color:var(--text-lede)}
.flat-list{margin:0 0 14px;padding:0;list-style:none}
.flat-list li{margin-bottom:9px;padding-left:18px;position:relative}
.flat-list li::before{content:"";position:absolute;left:2px;top:11px;width:6px;height:6px;border-radius:50%;background:var(--primary)}
.grid-two{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 14px}
.grid-two > div{flex:1 1 260px;background:var(--surface-3);border:1px solid var(--line-soft);border-radius:var(--radius);padding:13px 15px}
.grid-two h3{margin-bottom:6px}
.grid-two p:last-child{margin-bottom:0}
.data-table{overflow-x:auto;margin:0 0 14px}
.data-table table{min-width:560px;font-size:15px}
.faq{margin:0;padding:0;list-style:none}
.faq > li{margin-bottom:16px}
.faq > li:last-child{margin-bottom:0}
.faq h3{margin-bottom:6px}
.faq p:last-child{margin-bottom:0}
.kv{margin:0 0 14px;padding:0;list-style:none}
.kv li{display:flex;flex-wrap:wrap;gap:4px 10px;padding:8px 0;border-bottom:1px solid var(--line-soft);margin:0}
.kv li:last-child{border-bottom:0}
.kv b{flex:0 0 128px;color:var(--text-soft);font-weight:600}
.kv span{flex:1 1 240px;min-width:0}
.side-list{margin:0;padding:0;list-style:none}
.side-list li{margin:0;border-bottom:1px solid var(--line-soft)}
.side-list li:last-child{border-bottom:0}
.side-list a{display:block;padding:9px 0;font-size:15px;color:var(--text)}
.side-list a:hover,.side-list a:focus{color:var(--primary)}
.side-note{font-size:14px;color:var(--text-mute)}
.muted{color:var(--text-mute)}
.nowrap{white-space:nowrap}
.callout{margin:0 0 14px;padding:13px 15px;background:var(--surface-2);border-radius:var(--radius);font-size:15px}
.callout p:last-child{margin-bottom:0}

.skip-link{position:absolute;left:-9999px;top:0;background:var(--surface-3);color:var(--primary);padding:10px 16px;z-index:120}
.skip-link:focus{left:8px;top:8px}

/* 唯一的底部寻芳 CTA（固定在视口底部水平中心） */
.site-cta{
  position:fixed;
  z-index:100;
  left:50%;
  bottom:64px;
  transform:translateX(-50%);
  width:min(560px,calc(100% - 32px));
  box-sizing:border-box;
  padding:15px 24px 42px;
  display:block;
  text-align:center;
  color:var(--cta-ink);
  text-decoration:none;
  font-size:17px;
  font-weight:700;
  letter-spacing:.5px;
  border-radius:12px;
  background:linear-gradient(180deg,var(--cta-face) 0 44%,var(--cta-face-2) 44% 100%);
  overflow:hidden;
  box-shadow:var(--cta-shadow);
}
.site-cta:hover,.site-cta:focus,.site-cta:focus-visible{
  color:var(--chrome-text-strong);
  text-decoration:none;
  box-shadow:var(--cta-shadow-hover);
}
.site-cta:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}
.site-cta:active{box-shadow:var(--cta-shadow-active)}
.site-cta b{position:relative;z-index:3;display:block;text-shadow:var(--cta-text-shadow)}
.site-cta .trail{position:absolute;font-style:normal;height:5px;border-radius:3px;background-image:var(--cta-trail-w);animation:cta-drift 2.6s cubic-bezier(.2,.7,.3,1) infinite}
.site-cta .trail.w{left:-30%;width:28%;bottom:15px}
.site-cta .trail.r{right:-30%;width:24%;bottom:26px;background-image:var(--cta-trail-r);animation-delay:-1.3s;animation-direction:reverse}
.site-cta::after{
  content:"";
  position:absolute;
  left:9%;right:9%;bottom:0;height:34px;
  background:radial-gradient(58% 118% at 50% 100%,var(--cta-wash) 0%,rgba(255,206,150,0) 72%);
  opacity:0;
  pointer-events:none;
  animation:cta-glow 2.6s cubic-bezier(.2,.7,.3,1) infinite;
}
@keyframes cta-drift{
  0%,46%{transform:translateX(0);opacity:.72}
  64%{transform:translateX(330%);opacity:1}
  82%,100%{transform:translateX(330%);opacity:0}
}
@keyframes cta-glow{
  0%,40%{opacity:0}
  58%{opacity:.5}
  80%,100%{opacity:0}
}

/* 平板与移动端 */
@media (max-width:992px){
  .layout > .col-side{flex:1 1 100%}
  .site-header .container{gap:6px 14px}
  .site-nav{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}
  .site-nav li{flex:0 0 auto}
}
@media (max-width:768px){
  h1{font-size:26px}
  h2{font-size:20px}
  .card-body{padding:13px}
}

@media (max-width:640px){
  body{padding-bottom:150px}
  .site-cta{left:12px;right:12px;transform:none;width:auto;bottom:calc(48px + env(safe-area-inset-bottom));font-size:16px;padding:14px 18px 40px}
  .avatar{flex:0 0 34px;width:34px;height:34px;font-size:15px}
  .kv b{flex:0 0 100%}
}

@media (prefers-reduced-motion:reduce){
  .site-cta .trail,.site-cta::after{animation:none}
  .site-cta::after{opacity:.26}
}
