﻿*{box-sizing:border-box}
body{margin:0;font-family:"Microsoft YaHei","PingFang SC",sans-serif;background:#fff;color:#1f3152;line-height:1.78}
img{display:block;max-width:100%;border-radius:22px}
a{color:inherit;text-decoration:none}
.container{width:min(1140px,calc(100% - 32px));margin:0 auto}
.site-header{background:rgba(7,26,58,.97);border-bottom:1px solid rgba(255,255,255,.08)}
.header-shell,.quick-nav,.hero-grid,.split-grid,.cta-row,.shield-top,.shield-grid{display:flex}
.header-shell,.hero-grid,.split-grid{align-items:center;justify-content:space-between;gap:28px}
.header-shell{padding:18px 0}
.brand-logo,.logo-wrap,.header-logo,.nav-brand{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:6px 14px;border-radius:12px;background:#10172a;text-decoration:none;line-height:1;flex-shrink:0}
.site-logo,.brand-logo img,.logo-wrap img,.header-logo img,.nav-brand img,.logo img{display:block;width:auto;height:auto;max-height:36px;max-width:190px;object-fit:contain}
.quick-nav{gap:18px;flex-wrap:wrap;color:#c7daf7;font-size:14px}
.hero,.tips-section,.check-section,.device-section,.faq-section,.search-section,.cta-section{padding:72px 0}
.hero{background:linear-gradient(180deg,#071a3a 0%,#14315f 100%);color:#e9f1ff}
.hero-copy,.hero-visual,.text-col{flex:1}
.hero-visual{display:grid;gap:18px}
.eyebrow{margin:0 0 12px;color:#93e7b9;font-weight:700;letter-spacing:.08em}
h1,h2,h3{margin-top:0;line-height:1.3}
h1{margin-bottom:18px;font-size:clamp(34px,5vw,48px);color:#fff}
h2{margin-bottom:22px;font-size:30px;color:#19365d}
.cta-row{gap:14px;flex-wrap:wrap;margin-top:24px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;font-weight:700}
.btn-primary{background:#2b9565;color:#fff}
.btn-secondary{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.16)}
.shield-card,.tips-grid article,.note-shell,.faq-grid article,.cta-card{border-radius:24px;border:1px solid #d9e5f5;background:#fff;box-shadow:0 14px 36px rgba(20,44,88,.10)}
.shield-card,.note-shell,.faq-grid article,.cta-card,.tips-grid article{padding:24px}
.shield-card{color:#1a365c}
.shield-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}
.shield-top span,.num{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-weight:700}
.shield-top span{min-height:34px;padding:0 14px;background:#e8fff1;color:#268454}
.shield-grid{gap:14px;flex-wrap:wrap}
.shield-grid div{flex:1 1 calc(50% - 14px);padding:16px;border-radius:18px;background:#f4f9ff}
.tips-grid,.faq-grid,.search-tags{display:grid;gap:18px}
.tips-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.num{width:44px;height:44px;background:#14315f;color:#fff;margin-bottom:14px}
.note-shell{background:linear-gradient(135deg,#fff 0%,#f3f8ff 100%)}
.note-list{margin:18px 0 0;padding-left:18px}
.faq-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.search-tags{grid-template-columns:repeat(3,minmax(0,1fr))}
.search-tags span{padding:14px 18px;border-radius:999px;background:#eef4ff;color:#2258a7;text-align:center}
.cta-card{text-align:center;background:linear-gradient(135deg,#16335d 0%,#2f5d96 100%);color:#fff}
.cta-card h2,.cta-card p{color:#fff}
.cta-card .btn-primary{margin-top:10px;background:#fff;color:#16335d}
@media (max-width:900px){.header-shell,.hero-grid,.split-grid{flex-direction:column;align-items:stretch}.tips-grid,.faq-grid,.search-tags{grid-template-columns:1fr 1fr}.shield-grid{display:grid;grid-template-columns:1fr 1fr}}
@media (max-width:640px){.hero,.tips-section,.check-section,.device-section,.faq-section,.search-section,.cta-section{padding:56px 0}.tips-grid,.faq-grid,.search-tags,.shield-grid{grid-template-columns:1fr}}
/* v11 visual repair */
* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  overflow-x: hidden;
}

img,
picture,
svg {
  max-width: 100%;
}

img {
  height: auto;
  display: block;
}

figure {
  margin: 0;
}

.hero img,
.hero-media img,
.hero-visual img,
.hero-side img,
.hero-right img,
.hero-card img,
.brand-card img,
.visual img,
.visual-card img,
.media-card img,
.image-card img,
.device-card img,
.phone-card img,
.feature-image img,
.section-image img,
.mockup img,
.showcase img,
.panel img,
.split-panel img,
.mobile-section img,
.mobile-grid img,
.split-layout img,
.relation-layout img,
.notice-layout img,
.types-layout img,
.guide-grid img,
.club-grid img {
  width: 100%;
  max-width: 100%;
  height: auto;
  object-fit: contain;
  object-position: center;
}

.hero-media,
.hero-visual,
.hero-side,
.hero-right,
.hero-card,
.brand-card,
.visual,
.visual-card,
.media-card,
.image-card,
.device-card,
.phone-card,
.feature-image,
.section-image,
.mockup,
.showcase,
.panel,
.split-panel,
.mobile-section,
.mobile-grid,
.split-layout,
.relation-layout,
.notice-layout,
.types-layout,
.guide-grid,
.club-grid {
  min-width: 0;
  overflow: hidden;
}

.hero-media img,
.hero-visual img,
.hero-side img,
.hero-right img,
.visual-card img,
.media-card img,
.image-card img,
.device-card img,
.phone-card img,
.brand-card img,
.hero-card img {
  max-height: 520px;
  margin-left: auto;
  margin-right: auto;
}

.phone-card img,
.device-card img,
.mobile-panel img,
.mobile-section img,
.mobile-grid img {
  max-height: 460px;
  width: auto;
  margin-left: auto;
  margin-right: auto;
}

.banner img,
.hero-banner img,
.cover img {
  width: 100%;
  max-height: 460px;
  object-fit: cover;
  object-position: center;
}

.site-logo,
.brand-logo img,
.logo-wrap img,
.header-logo img,
.nav-brand img,
.logo img {
  width: auto;
  max-height: 36px;
  object-fit: contain;
}

/* v11 text column repair */
.container,
.wrap,
.wrapper,
.frame,
.shell,
.page-wrap,
.section-inner,
.hero-inner,
.content-wrap {
  width: min(1120px, calc(100% - 40px));
  margin-left: auto;
  margin-right: auto;
}

.hero-grid,
.hero-layout,
.hero-shell,
.hero-wrap,
.split,
.two-col,
.content-grid,
.feature-grid,
.info-grid,
.panel-grid,
.route-grid,
.device-grid,
.card-grid,
.split-grid,
.split-layout,
.relation-grid,
.relation-layout,
.mobile-grid,
.steps-layout,
.types-layout,
.roles-layout,
.notice-layout,
section .section-grid,
.guide-grid,
.club-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.9fr);
  gap: clamp(24px, 4vw, 56px);
  align-items: center;
}

.hero-grid > *,
.hero-layout > *,
.hero-shell > *,
.hero-wrap > *,
.split > *,
.two-col > *,
.content-grid > *,
.feature-grid > *,
.info-grid > *,
.panel-grid > *,
.route-grid > *,
.device-grid > *,
.card-grid > *,
.split-grid > *,
.split-layout > *,
.relation-grid > *,
.relation-layout > *,
.mobile-grid > *,
.steps-layout > *,
.types-layout > *,
.roles-layout > *,
.notice-layout > *,
.section-grid > *,
.guide-grid > *,
.club-grid > * {
  min-width: 0;
}

p,
li,
.card,
.step-card,
.info-card,
.feature-card,
.copy,
.text,
.section-copy,
.hero-copy,
.text-col,
.hero-panel,
.hero-left,
.relation-copy,
.notice-copy,
.steps-copy {
  writing-mode: horizontal-tb;
  white-space: normal;
  word-break: normal;
  overflow-wrap: break-word;
  line-height: 1.75;
}

.step-card,
.info-card,
.feature-card,
.route-card,
.check-card,
.faq-card,
.panel,
.card,
.center-card,
.flow-card,
.warn-card,
.index-card,
.dashboard-card,
.settings-card,
.member-board,
.lobby-panel {
  min-width: 0;
}

.side-steps,
.steps-rail,
.right-rail,
.timeline-rail,
.flow-steps,
.trophy-list,
.notice-list,
.guide-list {
  width: 100%;
  max-width: 360px;
  justify-self: end;
}

.side-steps .step-card,
.steps-rail .step-card,
.right-rail .step-card,
.timeline-rail .step-card,
.flow-steps > *,
.trophy-list > *,
.notice-list > *,
.guide-list > * {
  width: 100%;
  min-width: 220px;
}

@media (max-width: 900px) {
  .hero-grid,
  .hero-layout,
  .hero-shell,
  .hero-wrap,
  .split,
  .two-col,
  .content-grid,
  .feature-grid,
  .info-grid,
  .panel-grid,
  .route-grid,
  .device-grid,
  .card-grid,
  .split-grid,
  .split-layout,
  .relation-grid,
  .relation-layout,
  .mobile-grid,
  .steps-layout,
  .types-layout,
  .roles-layout,
  .notice-layout,
  section .section-grid,
  .guide-grid,
  .club-grid {
    grid-template-columns: 1fr;
  }

  .side-steps,
  .steps-rail,
  .right-rail,
  .timeline-rail,
  .flow-steps,
  .trophy-list,
  .notice-list,
  .guide-list {
    max-width: none;
    justify-self: stretch;
  }

  .side-steps .step-card,
  .steps-rail .step-card,
  .right-rail .step-card,
  .timeline-rail .step-card,
  .flow-steps > *,
  .trophy-list > *,
  .notice-list > *,
  .guide-list > * {
    min-width: 0;
  }
}

