/* 自动生成：主站 index.html 右侧快捷侧边栏(side-dock) + 页脚(site-footer)
  来源 css/style.css，全部加 .ws-embed 作用域，供 WordPress 主题页脚复用。
  请勿手改，改完主站样式后重新运行生成脚本。 */
.ws-embed { margin:0; background:var(--color-bg); color:var(--color-text);
  font:400 16px/1.75 var(--font-sans); -webkit-font-smoothing:antialiased; }
.ws-embed *,.ws-embed *:before,.ws-embed *:after { box-sizing:border-box; }
.ws-embed a { color:inherit; text-decoration:none; }
.ws-embed img { display:block; max-width:100%; height:auto; }
.ws-embed svg { display:block; }
.ws-embed p,.ws-embed h1,.ws-embed h2,.ws-embed h3,.ws-embed h4,.ws-embed h5 { margin:0; }
.ws-embed h1,.ws-embed h2,.ws-embed h3 { font-weight:700; }
.ws-embed ul,.ws-embed ol { margin:0; padding:0; list-style:none; }
.ws-embed button { border:0; cursor:pointer; color:inherit; font:inherit; }

.ws-embed {
  --color-primary:#B51F24; --color-primary-hover:#94171C; --color-secondary:#2E2421;
  --color-accent:#997445; --color-bg:#FAF7F2; --color-surface:#FFFFFF;
  --color-section-cream:#FBF3E6; --color-section-rose:#F8E9E7;
  --color-text:#292321; --color-text-secondary:#655D58; --color-inverse:#FFFFFF;
  --color-border:#E2DAD2; --color-control-border:#84766C; --color-focus:#9A431C;
  --color-success:#206348; --color-success-bg:#ECF5EE;
  --color-pending:#805600; --color-pending-bg:#FFF5D6;
  --color-error:#A51D2D; --color-error-bg:#FFF0F1;
  --font-sans:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",system-ui,sans-serif;
  --font-number:Arial,Helvetica,system-ui,sans-serif;
  --space-1:4px; --space-2:8px; --space-3:12px; --space-4:16px; --space-6:24px;
  --space-8:32px; --space-12:48px; --space-16:64px; --space-20:80px; --space-24:96px;
  --container:1280px; --gutter:48px; --section-space:96px;
  --radius-button:6px; --radius-card:8px; --radius-image:12px;
  --header-height:80px; --ease:cubic-bezier(.2,.65,.3,1);
}

.ws-embed .container {
  width:min(var(--container),calc(100% - var(--gutter)*2)); margin-inline:auto;
}

.ws-embed .caption, .ws-embed figcaption {
  font-size:14px; line-height:1.6;
}

.ws-embed .text-link {
  display:inline-flex; align-items:center; gap:20px; min-height:44px; font-weight:600; color:var(--color-primary);
}

.ws-embed .text-link span:last-child {
  transition:transform .2s var(--ease);
}

.ws-embed .text-link:hover {
  text-decoration:underline; text-underline-offset:5px;
}

.ws-embed .text-link:hover span:last-child {
  transform:translate(2px,-2px);
}

.ws-embed .intro .text-link {
  margin-top:20px;
}

.ws-embed .value-copy>.text-link {
  margin-top:16px;
}

.ws-embed .value-photo figcaption {
  display:flex; justify-content:space-between; padding-top:16px; color:var(--color-text-secondary); gap:12px;
}

.ws-embed .evidence-strip .text-link {
  font-size:14px; margin-left:auto; white-space:nowrap;
}

.ws-embed .visitor-photo figcaption {
  margin-top:16px; color:var(--color-text-secondary);
}

.ws-embed .section-heading .text-link {
  margin-top:20px;
}

.ws-embed .zone-map figcaption {
  margin-top:12px; color:var(--color-text-secondary); font-size:12px; text-align:right;
}

.ws-embed .dark-section .section-top>p, .ws-embed .dark-section .caption {
  color:rgba(255,255,255,.7);
}

.ws-embed .dark-section .text-link {
  color:white;
}

.ws-embed .forum-photo figcaption {
  color:rgba(255,255,255,.65); margin-top:16px;
}

.ws-embed .speaker-note .text-link {
  margin-top:16px; font-size:14px;
}

.ws-embed .history-panel figcaption {
  color:var(--color-text-secondary); margin-top:12px;
}

.ws-embed .history-copy .text-link {
  margin-top:20px;
}

.ws-embed .story-list .text-link {
  font-size:14px; margin-top:12px;
}

.ws-embed .venue-box .text-link {
  background:none; padding:0; font-size:14px; margin-top:12px;
}

.ws-embed .final-choices .caption {
  font-size:11px; letter-spacing:.1em; color:rgba(255,255,255,.75);
}

.ws-embed .site-footer {
  background:rgb(166,20,27); color:#fff; padding-top:44px;
}

.ws-embed .site-footer .container {
  max-width:1040px;
}

.ws-embed .footer-grid {
  display:grid; grid-template-columns:1.5fr .7fr .8fr 1.2fr .7fr; gap:36px; padding-bottom:36px;
}

.ws-embed .footer-brand>img {
  width:180px; height:auto; filter:brightness(0) invert(1);
}

.ws-embed .footer-brand>p {
  color:rgba(255,255,255,.82); margin-top:24px;
}

.ws-embed .footer-brand .caption {
  font-size:12px; line-height:1.55; color:rgba(255,255,255,.72); margin-top:28px; max-width:320px;
}

.ws-embed .footer-column {
  display:flex; flex-direction:column; align-items:flex-start;
}

.ws-embed .footer-column h2 {
  font-size:15px; line-height:1.6; font-weight:600; margin-bottom:20px; letter-spacing:0; color:#fff;
}

.ws-embed .footer-column>a {
  min-height:40px; display:flex; align-items:center; font-size:14px; color:rgba(255,255,255,.82);
}

.ws-embed .footer-column>a:hover {
  color:#FFE3A3;
}

.ws-embed .footer-contact .caption {
  display:block; font-size:15px; color:rgba(255,255,255,.72); margin-bottom:5px;
}

.ws-embed .footer-grid .footer-contact>a {
  min-height:0;
}

.ws-embed .footer-contact .phone {
  font:400 15px/1.6 var(--font-sans); color:#fff; margin-bottom:6px; white-space:nowrap;
}

.ws-embed .footer-contact .text-link {
  margin-top:0; font-size:15px; color:#fff;
}

.ws-embed .footer-bottom {
  display:flex; gap:24px; justify-content:space-between; border-top:1px solid rgba(255,255,255,.2); padding-block:24px; font-size:11px; color:rgba(255,255,255,.72);
}

.ws-embed .footer-bottom>div {
  display:flex; gap:20px; flex-wrap:wrap;
}

.ws-embed .official-links .text-link {
  font-size:14px;
}

@media (min-width:1600px) {
  .ws-embed {
    --container:1440px; --gutter:64px; --section-space:112px;
  }
}

@media (max-width:1199px) {
  .ws-embed {
    --header-height:72px; --section-space:72px;
  }

  .ws-embed .footer-grid {
    grid-template-columns:1.4fr .8fr .9fr; gap:32px;
  }

  .ws-embed .footer-contact {
    grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; align-items:center; row-gap:6px;
  }

  .ws-embed .footer-contact h2 {
    grid-column:1/-1; margin-bottom:12px;
  }

  .ws-embed .footer-contact .phone {
    margin:0;
  }

  .ws-embed .footer-contact .text-link {
    grid-column:1/-1;
  }

  .ws-embed .footer-bottom {
    flex-wrap:wrap; font-size:11px;
  }
}

@media (min-width:768px) and (max-width:1023px) {
  .ws-embed {
    --gutter:32px; --section-space:64px;
  }

  .ws-embed .evidence-strip .text-link {
    margin-left:0;
  }
}

@media (max-width:767px) {
  .ws-embed {
    --header-height:64px; --gutter:20px; --section-space:56px;
  }

  .ws-embed .intro .text-link {
    margin-top:12px;
  }

  .ws-embed .value-photo figcaption {
    padding-top:12px; font-size:11px;
  }

  .ws-embed .evidence-strip .text-link {
    margin-left:0;
  }

  .ws-embed .visitor-photo figcaption {
    font-size:11px; margin-top:12px;
  }

  .ws-embed .zone-map figcaption {
    font-size:11px; text-align:left;
  }

  .ws-embed .section-heading .text-link {
    margin-top:12px;
  }

  .ws-embed .section-heading>p.caption {
    font-size:12px; margin-top:12px;
  }

  .ws-embed .forum-photo figcaption {
    font-size:11px; margin-top:12px;
  }

  .ws-embed .section-foot .caption {
    font-size:12px;
  }

  .ws-embed .section-foot .text-link {
    margin-top:12px; font-size:14px;
  }

  .ws-embed .directory-note .text-link {
    font-size:14px;
  }

  .ws-embed .schedule-panel .caption {
    font-size:14px;
  }

  .ws-embed .speaker-note .text-link {
    margin-top:12px;
  }

  .ws-embed .history-panel figcaption {
    font-size:11px;
  }

  .ws-embed .history-copy .text-link {
    margin-top:12px; font-size:14px;
  }

  .ws-embed .story-list .text-link {
    margin-top:8px;
  }

  .ws-embed .site-footer {
    padding-top:40px;
  }

  .ws-embed .footer-grid {
    grid-template-columns:1fr 1fr; gap:32px 24px; padding-bottom:32px;
  }

  .ws-embed .footer-brand {
    grid-column:1/-1;
  }

  .ws-embed .footer-brand>img {
    width:160px;
  }

  .ws-embed .footer-brand>p {
    margin-top:20px; font-size:15px;
  }

  .ws-embed .footer-brand .caption {
    margin-top:16px; font-size:12px;
  }

  .ws-embed .footer-column h2 {
    font-size:14px; margin-bottom:12px;
  }

  .ws-embed .footer-column>a {
    min-height:44px;
  }

  .ws-embed .footer-contact {
    grid-template-columns:1fr; border-top:1px solid var(--color-border); padding-top:24px;
  }

  .ws-embed .footer-contact h2 {
    margin-bottom:16px;
  }

  .ws-embed .footer-contact .phone {
    margin-bottom:6px;
  }

  .ws-embed .footer-contact .text-link {
    margin-top:0;
  }

  .ws-embed .footer-bottom {
    display:block; padding-block:20px 28px; line-height:1.8;
  }

  .ws-embed .footer-bottom>div {
    display:flex; flex-direction:column; gap:4px; margin:12px 0;
  }
}

@media (max-width:389px) {
  .ws-embed {
    --section-space:48px;
  }
}

@media (max-width:767px) {
  .ws-embed .fact-label, .ws-embed .hero-photo figcaption, .ws-embed .value-photo figcaption, .ws-embed .visitor-photo figcaption, .ws-embed .forum-photo figcaption, .ws-embed .history-panel figcaption, .ws-embed .stat p span, .ws-embed .section-heading>p.caption, .ws-embed .section-foot .caption, .ws-embed .activity-title small, .ws-embed .date-tabs button small, .ws-embed .story-meta, .ws-embed .case-evidence>p:last-child, .ws-embed .schedule-fields span, .ws-embed .footer-brand .caption {
    font-size:14px;
  }

  .ws-embed .footer-bottom {
    font-size:12px;
  }

  .ws-embed .value-photo figcaption {
    flex-wrap:wrap; gap:4px 16px;
  }
}

.ws-embed .selection-poster figcaption {
  margin-top:10px; color:#DDD0C4;
}

.ws-embed .selection-feature .text-link {
  margin-top:16px;
}

.ws-embed .moment-lightbox figcaption {
  position:absolute; right:80px; bottom:20px; left:80px; color:rgba(255,255,255,.76); text-align:center; font-size:13px;
}

.ws-embed .footer-phone-secondary {
  margin:0 0 16px;
}

@media (max-width:767px) {
  .ws-embed .moment-lightbox figcaption {
    right:52px; bottom:28px; left:52px;
  }
}

.ws-embed .side-dock {
  position:fixed; top:50%; right:0; z-index:40; display:grid; transform:translateY(-50%); background:#fff; border:1px solid var(--color-border); border-right:0; border-radius:16px 0 0 16px; box-shadow:0 12px 32px rgba(23,18,16,.13);
}

.ws-embed .side-dock__item {
  --dock-accent:#E8503F; position:relative; display:grid; justify-items:center; gap:8px; width:66px; padding:14px 4px; background:#fff; color:var(--color-text); text-align:center; transition:background .2s var(--ease),color .2s var(--ease);
}

.ws-embed .side-dock__item:first-child {
  border-radius:16px 0 0 0;
}

.ws-embed .side-dock__item:last-child {
  border-radius:0 0 0 16px;
}

.ws-embed .side-dock__item+.side-dock__item {
  border-top:1px solid #F1E8E1;
}

.ws-embed .side-dock__item:hover, .ws-embed .side-dock__item:focus-visible {
  background:var(--color-primary); color:#fff;
}

.ws-embed .side-dock__item--violet {
  --dock-accent:#A855F7;
}

.ws-embed .side-dock__icon {
  display:grid; place-items:center; width:40px; height:40px; border-radius:50%; background:var(--dock-accent); color:#fff; transition:background .2s var(--ease),color .2s var(--ease);
}

.ws-embed .side-dock__item:hover .side-dock__icon, .ws-embed .side-dock__item:focus-visible .side-dock__icon {
  background:#fff; color:var(--color-primary);
}

.ws-embed .side-dock__icon svg {
  width:22px; height:22px; fill:currentColor; stroke:none;
}

.ws-embed .side-dock__label {
  font-size:13px; font-weight:500; line-height:1.25; letter-spacing:-.02em; white-space:nowrap;
}

.ws-embed .side-dock__panel {
  position:absolute; top:50%; right:calc(100% + 12px); z-index:1; min-width:186px; max-width:280px; padding:16px 18px; border-radius:var(--radius-card); background:#fff; color:var(--color-text); box-shadow:0 14px 34px rgba(23,18,16,.2); text-align:left; opacity:0; visibility:hidden; transform:translate(8px,-50%); transition:opacity .18s var(--ease),transform .18s var(--ease),visibility .18s;
}

.ws-embed .side-dock__panel:after {
  content:""; position:absolute; top:50%; right:-6px; width:12px; height:12px; margin-top:-6px; background:#fff; transform:rotate(45deg);
}

.ws-embed .side-dock__panel b {
  display:block; margin-bottom:6px; font-size:15px;
}

.ws-embed .side-dock__panel span {
  display:block; font-size:13px; line-height:1.6; color:var(--color-text-secondary);
}

.ws-embed .side-dock__item:hover .side-dock__panel, .ws-embed .side-dock__item:focus-visible .side-dock__panel {
  opacity:1; visibility:visible; transform:translate(0,-50%);
}

.ws-embed .side-dock__panel--qr {
  width:max-content; min-width:0; max-width:none; padding:14px; text-align:center;
}

.ws-embed .side-dock__panel--qr img {
  width:196px; height:auto; max-width:none; margin:0 auto;
}

.ws-embed .side-dock__panel--qr span {
  margin-top:10px; color:var(--color-text);
}

.ws-embed .side-dock__panel--phone {
  width:max-content; min-width:0; max-width:none; padding:14px 18px;
}

.ws-embed .side-dock__panel--phone span {
  font:600 18px/1.4 var(--font-number); color:var(--color-primary); white-space:nowrap; letter-spacing:.02em;
}

@media (max-width:1199px) {
  .ws-embed .side-dock {
    border-radius:14px 0 0 14px;
  }

  .ws-embed .side-dock__item {
    width:58px; padding:12px 3px; gap:6px;
  }

  .ws-embed .side-dock__item:first-child {
    border-radius:14px 0 0 0;
  }

  .ws-embed .side-dock__item:last-child {
    border-radius:0 0 0 14px;
  }

  .ws-embed .side-dock__label {
    font-size:12px;
  }

  .ws-embed .side-dock__icon {
    width:36px; height:36px;
  }

  .ws-embed .side-dock__icon svg {
    width:20px; height:20px;
  }

  .ws-embed .side-dock__panel--qr img {
    width:164px;
  }
}

@media (max-width:767px) {
  .ws-embed .side-dock {
    border-radius:12px 0 0 12px;
  }

  .ws-embed .side-dock__item {
    width:56px; padding:10px 3px; gap:5px;
  }

  .ws-embed .side-dock__item:first-child {
    border-radius:12px 0 0 0;
  }

  .ws-embed .side-dock__item:last-child {
    border-radius:0 0 0 12px;
  }

  .ws-embed .side-dock__label {
    font-size:12px; letter-spacing:-.02em;
  }

  .ws-embed .side-dock__icon {
    width:32px; height:32px;
  }

  .ws-embed .side-dock__icon svg {
    width:18px; height:18px;
  }

  .ws-embed .side-dock__panel {
    min-width:0; width:auto; max-width:calc(100vw - 80px); padding:12px;
  }

  .ws-embed .side-dock__panel b {
    font-size:14px;
  }

  .ws-embed .side-dock__panel span {
    font-size:12px;
  }

  .ws-embed .side-dock__panel--qr img {
    width:min(196px,40vw);
  }
}
