@charset "utf-8";
/** 本文件仅保留：1) 页面主题变量（.store-page 变量块） 2) 页面专属样式 3) 与公共层不同的覆盖规则。
 * 其余公共样式已统一抽取至 inc_style.css（全站公共样式表，先于本文件加载）。*/
.store-page {
  --builder-blue: #7c3aed;
  --builder-blue-dark: #5b21b6;
  --builder-cyan: #a78bfa;
  /*主题色派生变量：供 inc_style.css 公共样式层通过 var() 引用（与本页主题色一一对应，勿删）*/
  --builder-hero-a: #f8fbff;
  --builder-hero-b: #edf5ff;
  --builder-hero-c: #f5faff;
  --builder-grid-rgb: 109, 88, 173;
  --builder-glow-one-rgb: 139, 92, 246;
  --builder-glow-one-alpha: .16;
  --builder-glow-two-rgb: 196, 181, 253;
  --builder-glow-two-alpha: .18;
  --builder-blue-rgb: 124, 58, 237;
  --builder-demo-a: #7c3aed;
  --builder-demo-b: #a78bfa;
  --builder-cta-a: #6d28d9;
  --builder-cta-b: #7c3aed;
  --builder-cta-c: #a78bfa;
  --builder-shadow-rgb: 36, 69, 125;
  --builder-tpl-glow-a-rgb: 124, 58, 237;
  --builder-tpl-glow-a-alpha: .08;
  --builder-period-line-rgb: 75, 167, 239;
  --builder-tab-active: #7c3aed;
  --builder-device-a: #a78bfa;
  --builder-device-b: #7c3aed;
  --builder-device-c: #4c1d95;
  --builder-ink: #121d35;
  --builder-muted: #65738b;
  --builder-line: #e4eaf3;
  --builder-soft: #f6f9fe;
  color: var(--builder-ink);
  overflow: clip;
}
.store-page .builder-hero { display: flex; flex-direction: column; min-height: calc(100vh - var(--tncms-header-height, 4.375rem)); min-height: calc(100svh - var(--tncms-header-height, 4.375rem)); }
.store-page .builder-hero .container { flex: 1; display: flex; flex-direction: column; }
.store-page .builder-hero .row { flex: 1; padding-top: 0; align-items: center; }
.store-stage { position: relative; display: flex; flex: 1; gap: 0.875rem; margin: 0.875rem; overflow: hidden; }
.store-shop { display: flex; width: 56%; flex: 0 0 56%; flex-direction: column; overflow: hidden; border: 1px solid #e4dfef; border-radius: 0.75rem; background: #fff; box-shadow: 0 0.75rem 1.75rem rgba(64, 42, 121, .1); }
.store-shop-head { display: flex; height: 2.5rem; flex: 0 0 2.5rem; align-items: center; justify-content: space-between; padding: 0 0.875rem; border-bottom: 1px solid #f0ecf7; }
.store-shop-head b { display: flex; align-items: center; gap: 0.375rem; color: #263751; font-size: .68rem; }
.store-shop-head b i { color: var(--builder-blue); font-size: .78rem; }
.store-shop-head-acts { display: flex; align-items: center; gap: 0.625rem; color: #8a99af; font-size: .62rem; }
.store-shop-banner { position: relative; display: flex; flex: 0 0 auto; flex-direction: column; align-items: flex-start; margin: 0.75rem 0.75rem 0; padding: 0.812rem 0.938rem; overflow: hidden; border-radius: 0.625rem; background: linear-gradient(140deg, #a78bfa, #7c3aed 55%, #4c1d95); color: #fff; }
.store-shop-banner small { font-size: .5rem; font-weight: 700; letter-spacing: .12em; opacity: .85; }
.store-shop-banner strong { margin-top: 0.375rem; font-size: 1.05rem; line-height: 1.35; }
.store-shop-banner em { margin-top: 0.562rem; padding: 0.25rem 0.75rem; border-radius: 1rem; background: #fff; color: var(--builder-blue); font-size: .55rem; font-style: normal; font-weight: 700; }
.store-shop-banner-art { position: absolute; right: 0.938rem; bottom: 0.625rem; font-size: 2.6rem; opacity: .3; }
.store-shop-grid { display: grid; flex: 0 0 auto; grid-template-columns: repeat(4, 1fr); gap: 0.5rem; padding: 0.75rem 0.75rem 0; }
.store-shop-grid span { display: flex; flex-direction: column; align-items: center; gap: 0.312rem; padding: 0.562rem 0.25rem; border-radius: 0.5rem; background: #f7f5fc; color: #4a5b74; font-size: .5rem; }
.store-shop-grid i { display: flex; width: 1.625rem; height: 1.625rem; align-items: center; justify-content: center; border-radius: 50%; background: linear-gradient(140deg, #a78bfa, #7c3aed); color: #fff; font-size: .75rem; }
.store-shop-list { display: flex; flex: 1; flex-direction: column; gap: 0.5rem; margin: 0.75rem 0.75rem 0; overflow: hidden; }
.store-shop-list > span { display: flex; align-items: center; gap: 0.625rem; padding: 0.5rem 0.625rem; border: 1px solid #f0ecf7; border-radius: 0.5rem; background: #fff; }
.store-shop-list i { display: flex; width: 2.125rem; height: 2.125rem; flex: 0 0 2.125rem; align-items: center; justify-content: center; border-radius: 0.375rem; background: #f1ebfd; color: var(--builder-blue); font-size: .85rem; }
.store-shop-list div { display: flex; min-width: 0; flex: 1; flex-direction: column; gap: 0.125rem; }
.store-shop-list b { overflow: hidden; color: #2b3c56; font-size: .55rem; text-overflow: ellipsis; white-space: nowrap; }
.store-shop-list small { color: #9aa5b5; font-size: .48rem; }
.store-shop-list em { color: #ff5a3c; font-size: .62rem; font-style: normal; font-weight: 700; }
.store-shop-tabbar { display: flex; height: 2.375rem; flex: 0 0 2.375rem; align-items: center; justify-content: space-around; margin-top: 0.75rem; border-top: 1px solid #f0ecf7; background: #fbfaff; }
.store-shop-tabbar span { display: flex; flex-direction: column; align-items: center; gap: 0.125rem; color: #9aa5b5; font-size: .44rem; }
.store-shop-tabbar i { font-size: .68rem; }
.store-shop-tabbar span.active { color: var(--builder-blue); }
.store-side { display: flex; min-width: 0; flex: 1; flex-direction: column; gap: 0.75rem; }
.store-side-card { border: 1px solid #e4dfef; border-radius: 0.625rem; background: #fff; box-shadow: 0 0.5rem 1.25rem rgba(64, 42, 121, .08); }
.store-card-pos { display: flex; flex: 0 0 auto; flex-direction: column; padding: 0.812rem 0.875rem; }
.store-card-pos header { display: flex; align-items: center; gap: 0.375rem; color: #65738b; font-size: .55rem; font-weight: 700; }
.store-card-pos header i { color: var(--builder-blue); font-size: .68rem; }
.store-card-pos strong { margin-top: 0.375rem; color: #15213a; font-size: 1.35rem; }
.store-card-pos > span { margin-top: 0.25rem; color: #16a34a; font-size: .5rem; }
.store-card-pos em { margin-top: 0.562rem; padding: 0.312rem 0; border-radius: 0.312rem; background: var(--builder-blue); color: #fff; font-size: .55rem; font-style: normal; text-align: center; box-shadow: 0 0.375rem 0.875rem rgba(124, 58, 237, .3); }
.store-card-book, .store-card-member { display: flex; flex: 0 0 auto; align-items: center; gap: 0.625rem; padding: 0.625rem 0.75rem; }
.store-card-book > i, .store-card-member > i { display: flex; width: 1.875rem; height: 1.875rem; flex: 0 0 1.875rem; align-items: center; justify-content: center; border-radius: 0.5rem; background: #f1ebfd; color: var(--builder-blue); font-size: .85rem; }
.store-card-book div, .store-card-member div { display: flex; min-width: 0; flex: 1; flex-direction: column; gap: 0.125rem; }
.store-card-book b, .store-card-member b { color: #2b3c56; font-size: .55rem; }
.store-card-book span, .store-card-member span { overflow: hidden; color: #8a96a8; font-size: .48rem; text-overflow: ellipsis; white-space: nowrap; }
.store-card-book em { flex: 0 0 auto; padding: 0.25rem 0.562rem; border-radius: 1rem; background: rgba(124, 58, 237, .1); color: var(--builder-blue); font-size: .5rem; font-style: normal; font-weight: 700; }
.store-page .builder-section-head p { margin: 0; color: var(--builder-muted); font-size: 1rem; line-height: 1.85; }
.store-page .capability-card h3 { margin-bottom: 0.812rem; font-size: 1.08rem; font-weight: 700; }
.store-page .capability-card p { max-width: 27.5rem; margin: 0; color: var(--builder-muted); font-size: .84rem; line-height: 1.85; }
.store-page .workflow-steps h3 { margin: 0.062rem 0 0.438rem; font-size: 1rem; }
.store-page .workflow-steps p { margin: 0; color: var(--builder-muted); font-size: .82rem; }
.store-page .scenario-card { position: relative; height: 100%; min-height: 23.125rem; padding: 1.875rem 1.688rem; overflow: hidden; border: 1px solid #e1e7f0; border-radius: 0.938rem; background: #fff; transition: transform .25s, box-shadow .25s; }
.store-page .scenario-card:hover { transform: translateY(-0.375rem); box-shadow: 0 1.125rem 2.375rem rgba(36,67,113,.09); }
.store-page .scenario-card > span { position: absolute; top: 1.188rem; right: 1.375rem; color: #edf1f7; font-size: 2.6rem; font-weight: 800; }
.store-page .scenario-card > i { display: flex; width: 3rem; height: 3rem; align-items: center; justify-content: center; margin: 1.125rem 0 2.062rem; border-radius: 0.812rem; background: #edf3ff; color: var(--builder-blue); font-size: 1.25rem; }
.store-page .scenario-card p { min-height: 3.25rem; margin: 0.75rem 0 1.562rem; color: var(--builder-muted); font-size: .82rem; line-height: 1.7; }
.store-page .scenario-card li { position: relative; margin-top: 0.688rem; padding-left: 0.938rem; color: #52627a; font-size: .77rem; }
.store-page .scenario-card li::before { content: ''; position: absolute; top: .55em; left: 0; width: 0.312rem; height: 0.312rem; border-radius: 50%; background: var(--builder-blue); }
.store-page .builder-scenario-tabs button::before { content: counter(builder-scenario-tab, decimal-leading-zero); display: grid; width: 2.5rem; height: 2.5rem; place-items: center; border: 1px solid #d5dce7; border-radius: .75rem; background: rgba(255,255,255,.78); color: #8b95a5; font-size: .6875rem; font-weight: 750; letter-spacing: .06em; transition: inherit; }
.store-page .builder-scenario-tabs button.active { border-color: #111a2d; background: #111a2d; color: #fff; box-shadow: 0 1rem 2rem rgba(20,35,61,.18); }
.store-page .service-item { display: flex; height: 100%; gap: 0.938rem; padding: 1.438rem; border: 1px solid rgba(213,224,239,.9); border-radius: 0.812rem; background: rgba(255,255,255,.78); }
.store-page .service-item > i { display: flex; width: 2.5rem; height: 2.5rem; flex: 0 0 2.5rem; align-items: center; justify-content: center; border-radius: 0.625rem; background: #e9f0ff; color: var(--builder-blue); font-size: 1rem; }
.store-page .service-item h3 { margin: 0.062rem 0 0.438rem; font-size: .9rem; }
.store-page .service-item p { margin: 0; color: var(--builder-muted); font-size: .73rem; line-height: 1.6; }
@media (max-width: 991.98px) {
  .store-page .builder-hero .row { padding-top: 1.25rem; }
}
@media (max-width: 767.98px) {
  .store-page .builder-hero .row { padding-top: .5rem; }
  .store-stage { gap: 0.625rem; margin: 0.625rem; }
  .store-shop-banner strong { font-size: .9rem; }
  .store-shop-list > span:nth-child(n+2) { display: none; }
  .store-card-pos strong { font-size: 1.1rem; }
}
@media (max-width: 479.98px) {
  .store-stage { margin: 0.5rem; }
  .store-shop { width: 100%; flex-basis: 100%; }
  .store-side { display: none; }
  .store-shop-grid span { font-size: .46rem; }
  .store-page .scenario-card { min-height: 21.562rem; }
}
@media (prefers-reduced-motion: reduce) {
  .store-page .capability-card, .store-page .scenario-card, .store-page .function-card, .store-page .builder-hero-actions .btn { transition: none; }
}
/*Product functions: align with the light, alternating mini-program feature showcase.*/
.store-page .builder-function-heading h2 { margin-top: 1.35rem; font-size: clamp(2.25rem,3.7vw,3.5rem); line-height: 1.32; }
/*Product function scenes: one shared visual system, six function-specific stories.*/
/*Typography and spacing shared with the mini-program product page.*/
.store-page .builder-section-head p { color: var(--builder-muted); font-size: 1rem; line-height: 1.8; }
.store-page .capability-card h3 { margin: 0 0 1rem; font-size: 1.3rem; line-height: 1.4; }
.store-page .capability-card p { font-size: .95rem; line-height: 1.8; }
.store-page .workflow-steps h3 { font-size: 1.1rem; line-height: 1.45; }
.store-page .workflow-steps p { font-size: .9rem; line-height: 1.75; }
.store-page .scenario-card h3 { font-size: 1.3rem; line-height: 1.4; }
.store-page .scenario-card p { font-size: .92rem; line-height: 1.8; }
.store-page .scenario-card li { font-size: .82rem; line-height: 1.7; }
.store-page .service-item h3 { font-size: 1.05rem; line-height: 1.45; }
.store-page .service-item p { font-size: .82rem; line-height: 1.75; }
.store-page .builder-function-heading h2 { margin: 1.25rem 0 1rem; font-size: clamp(2rem,3.5vw,3.25rem); line-height: 1.2; }
@media (max-width:767.98px) {
  .store-page .capability-card h3,.store-page .scenario-card h3 { font-size: 1.2rem; }
}
/*核心能力：以独立主题色区分能力，并沿用商城卡片的聚焦交互*/
.store-page .store-capability-card { --cap-color: var(--builder-blue); --cap-soft: #edf4ff; --cap-shadow: rgba(41,109,238,.18); cursor: pointer; border: 1px solid #d8dee8; border-color: color-mix(in srgb,var(--cap-color) 28%,#d8dee8); outline: none; background: linear-gradient(150deg,#fff,var(--cap-soft)); box-shadow: 0 .75rem 2rem rgba(33,48,74,.075),inset 0 0 0 1px rgba(255,255,255,.56); transition: transform .28s ease,box-shadow .28s ease,border-color .28s ease,background .28s ease; }
.store-page .builder-capabilities .row>div:nth-child(4n+2) .store-capability-card { --cap-color: #6b63e8; --cap-soft: #f3f1ff; --cap-shadow: rgba(107,99,232,.18); }
.store-page .builder-capabilities .row>div:nth-child(4n+3) .store-capability-card { --cap-color: #e8508d; --cap-soft: #fff1f7; --cap-shadow: rgba(232,80,141,.18); }
.store-page .builder-capabilities .row>div:nth-child(4n+4) .store-capability-card { --cap-color: #20a779; --cap-soft: #eefbf6; --cap-shadow: rgba(32,167,121,.18); }
.store-page .store-capability-card::before { content: ""; position: absolute; top: 0; right: 0; left: 0; height: .24rem; background: var(--cap-color); opacity: 0; transform: scaleX(.32); transition: opacity .25s ease,transform .3s ease; }
.store-page .store-capability-card::after { content: ""; position: absolute; top: -4.5rem; right: -4.5rem; width: 9rem; height: 9rem; border: 1.4rem solid var(--cap-color); border-radius: 50%; opacity: .035; transition: opacity .25s ease,transform .35s ease; }
.store-page .store-capability-index { position: absolute; z-index: 1; top: 1.8rem; right: 1.75rem; color: var(--cap-color); font-size: .7rem; font-weight: 800; letter-spacing: .12em; opacity: .5; transition: opacity .25s ease; }
.store-page .store-capability-card .capability-icon { position: relative; z-index: 1; background: var(--cap-soft); color: var(--cap-color); transition: color .25s ease,background .25s ease,transform .25s ease; }
.store-page .store-capability-card h3,
.store-page .store-capability-card p { position: relative; z-index: 1; }
.store-page .store-capability-card .capability-tags { z-index: 1; }
.store-page .store-capability-card .capability-tags span { border-color: color-mix(in srgb,var(--cap-color) 20%,#dfe7f2); background: var(--cap-soft); color: var(--cap-color); transition: background .25s ease,color .25s ease,border-color .25s ease; }
.store-page .store-capability-state { position: absolute; z-index: 2; top: 1.65rem; right: 1.45rem; display: flex; align-items: center; gap: .25rem; padding: .35rem .55rem; border-radius: 2rem; background: var(--cap-color); color: #fff; font-size: .57rem; font-style: normal; font-weight: 700; opacity: 0; transform: translateY(-.35rem); transition: opacity .25s ease,transform .25s ease; }
.store-page .store-capability-card:hover,
.store-page .store-capability-card:focus-visible,
.store-page .store-capability-card.is-selected { border-color: var(--cap-color); border-color: color-mix(in srgb,var(--cap-color) 58%,white); background: linear-gradient(150deg,#fff 15%,var(--cap-soft)); box-shadow: 0 1.35rem 3rem var(--cap-shadow),inset 0 0 0 1px rgba(255,255,255,.48); transform: translateY(-.55rem); }
.store-page .store-capability-card:hover::before,
.store-page .store-capability-card:focus-visible::before,
.store-page .store-capability-card.is-selected::before { opacity: 1; transform: scaleX(1); }
.store-page .store-capability-card:hover::after,
.store-page .store-capability-card:focus-visible::after,
.store-page .store-capability-card.is-selected::after { opacity: .07; transform: scale(1.08); }
.store-page .store-capability-card.is-selected .capability-icon { background: var(--cap-color); color: #fff; transform: rotate(-4deg) scale(1.04); }
.store-page .store-capability-card.is-selected .capability-tags span { border-color: transparent; background: var(--cap-color); color: #fff; }
.store-page .store-capability-card.is-selected .store-capability-index { opacity: 0; }
.store-page .store-capability-card.is-selected .store-capability-state { opacity: 1; transform: none; }
@media (prefers-reduced-motion:reduce) {
  .store-page .store-capability-card,
  .store-page .store-capability-card::before,
  .store-page .store-capability-card::after { transition: none; }
}
/*适用场景 Tab：与轻站、商城统一的编号与粗体 Chevron*/
.store-page .builder-scenario-tabs button::before { width: 2.75rem; height: 2.75rem; border-radius: .875rem; }
.store-page .builder-scenario-tabs button.active { border-color: var(--scenario-tab-dark); background: var(--scenario-tab-dark); box-shadow: 0 1rem 2.25rem rgba(20,35,61,.18); }
/** 大屏适配（原 channel_highres.css 本页专属部分；置于文件末尾以保持最后的覆盖顺序）*/
@media (min-width: 992px) {
  .store-page .builder-hero { min-height: clamp(40rem, 72vh, 44rem); }
}
@media (min-width: 1400px) {
  .store-page .builder-hero { min-height: var(--tncms-product-hero-height); }
}
@media (min-width: 1400px) and (max-height: 899.98px) {
  .store-page .builder-hero { min-height: clamp(39rem, calc(100svh - 4.375rem), 42rem); }
  .store-page .builder-hero .row { padding-top: .75rem; }
}
@media (max-width: 767.98px) {
  .store-page .builder-section-head p { display: none; }
}
