/* ============================================
   抖映风 原创样式 - sairnjsz.cn
   配色方案：珊瑚粉 #FF6B8A + 深莓紫 #4A1942 + 暖金 #F5A623
   ============================================ */

/* === Reset & Base === */
*,*::before,*::after{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;color:#2d2d3a;line-height:1.7;background:#fefbfc}
a{color:#FF6B8A;text-decoration:none;transition:color .2s}
a:hover{color:#e0456a}
img{max-width:100%;height:auto;display:block}
ul{list-style:none}

/* === Container === */
.tx-container{max-width:1240px;margin:0 auto;padding:0 20px}

/* === Header === */
.tx-header{position:sticky;top:0;z-index:1000;background:linear-gradient(135deg,#4A1942 0%,#2d1035 100%);box-shadow:0 2px 20px rgba(74,25,66,.3);padding:12px 0}
.tx-header-inner{display:flex;align-items:center;justify-content:space-between;max-width:1240px;margin:0 auto;padding:0 20px}
.tx-logo img{height:44px;width:auto}
.tx-nav ul{display:flex;gap:6px}
.tx-nav a{color:#f0d6ee;padding:8px 14px;border-radius:20px;font-size:.9rem;transition:all .25s}
.tx-nav a:hover,.tx-nav a.active{background:rgba(255,107,138,.25);color:#fff}
.tx-search-box{display:flex;gap:0}
.tx-search-box input{padding:8px 14px;border:none;border-radius:20px 0 0 20px;background:rgba(255,255,255,.15);color:#fff;width:180px;font-size:.85rem;outline:none}
.tx-search-box input::placeholder{color:rgba(255,255,255,.5)}
.tx-search-box button{padding:8px 16px;border:none;border-radius:0 20px 20px 0;background:#FF6B8A;color:#fff;cursor:pointer;font-size:.85rem;transition:background .2s}
.tx-search-box button:hover{background:#e0456a}

/* === Hero === */
.tx-hero{position:relative;min-height:520px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.tx-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:brightness(.45)}
.tx-hero-content{position:relative;z-index:2;text-align:center;color:#fff;padding:60px 20px}
.tx-hero h1{font-size:2.6rem;font-weight:800;margin-bottom:16px;text-shadow:0 2px 12px rgba(0,0,0,.4)}
.tx-hero-sub{font-size:1.1rem;max-width:700px;margin:0 auto 24px;opacity:.92;line-height:1.8}
.tx-hero-stats{display:flex;gap:32px;justify-content:center;margin-bottom:28px}
.tx-hero-stats span{font-size:.95rem}
.tx-hero-stats strong{display:block;font-size:1.5rem;color:#FF6B8A}
.tx-btn-primary{display:inline-block;padding:14px 36px;background:linear-gradient(135deg,#FF6B8A,#F5A623);color:#fff;border-radius:30px;font-size:1rem;font-weight:600;transition:transform .2s,box-shadow .2s}
.tx-btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(255,107,138,.4);color:#fff}

/* === Section Common === */
.tx-section{padding:64px 0}
.tx-section:nth-child(even){background:#faf5f7}
.tx-section-title{font-size:1.9rem;font-weight:700;text-align:center;color:#4A1942;margin-bottom:12px}
.tx-section-desc{text-align:center;color:#6b5570;max-width:680px;margin:0 auto 40px;font-size:.95rem}

/* === Video Grid === */
.tx-video-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.tx-video-card{border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 4px 16px rgba(74,25,66,.08);transition:transform .25s,box-shadow .25s}
.tx-video-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(255,107,138,.15)}
.tx-video-card a{color:inherit}
.tx-thumb-wrap{position:relative;padding-top:56.25%;background:#f0e6ee}
.tx-thumb-wrap img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tx-play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:48px;height:48px;background:rgba(255,107,138,.85);border-radius:50%;display:flex;align-items:center;justify-content:center}
.tx-play-icon::after{content:'';border-left:16px solid #fff;border-top:10px solid transparent;border-bottom:10px solid transparent;margin-left:4px}
.tx-duration{position:absolute;bottom:8px;right:8px;background:rgba(0,0,0,.75);color:#fff;padding:2px 8px;border-radius:4px;font-size:.75rem}
.tx-video-info{padding:14px}
.tx-video-info h3{font-size:.9rem;font-weight:600;margin-bottom:6px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tx-video-meta{font-size:.78rem;color:#8a7090;margin-bottom:4px}
.tx-video-meta span{margin-right:12px}
.tx-video-tag{font-size:.75rem;color:#FF6B8A}

/* === Media Grid === */
.tx-media-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.tx-media-item{background:#fff;padding:28px;border-radius:12px;border-left:4px solid #FF6B8A;box-shadow:0 2px 12px rgba(74,25,66,.06);transition:box-shadow .2s}
.tx-media-item:hover{box-shadow:0 8px 24px rgba(255,107,138,.12)}
.tx-media-item h3{font-size:1.05rem;color:#4A1942;margin-bottom:10px}
.tx-media-item p{font-size:.88rem;color:#5a4560;line-height:1.7;margin-bottom:12px}
.tx-tag{display:inline-block;padding:3px 10px;background:#fce8ee;color:#FF6B8A;border-radius:12px;font-size:.75rem;margin-right:6px}

/* === AI Grid === */
.tx-ai-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.tx-ai-item{text-align:center;padding:32px 20px;background:#fff;border-radius:16px;box-shadow:0 4px 16px rgba(74,25,66,.06);transition:transform .2s}
.tx-ai-item:hover{transform:translateY(-4px)}
.tx-ai-icon{font-size:2.4rem;margin-bottom:14px}
.tx-ai-item h4{font-size:1rem;color:#4A1942;margin-bottom:8px}
.tx-ai-item p{font-size:.85rem;color:#6b5570;line-height:1.6}

/* === Community Grid === */
.tx-community-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.tx-community-item{padding:28px;background:#fff;border-radius:12px;box-shadow:0 2px 12px rgba(74,25,66,.06)}
.tx-community-item h4{font-size:1.05rem;margin-bottom:10px;color:#4A1942}
.tx-community-item p{font-size:.88rem;color:#5a4560;line-height:1.7}

/* === Expert Grid === */
.tx-expert-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}
.tx-expert-card{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 4px 20px rgba(74,25,66,.08);transition:transform .2s}
.tx-expert-card:hover{transform:translateY(-3px)}
.tx-expert-card img{width:100%;height:180px;object-fit:cover}
.tx-expert-card h4{padding:16px 20px 4px;font-size:1rem;color:#4A1942}
.tx-expert-card p{padding:0 20px;font-size:.85rem;color:#5a4560;line-height:1.6}
.tx-expert-awards{color:#F5A623!important;font-size:.82rem!important;margin-top:8px}
.tx-expert-actions{padding:12px 20px 20px;display:flex;gap:10px}
.tx-btn-sm{display:inline-block;padding:6px 16px;background:#FF6B8A;color:#fff;border-radius:16px;font-size:.8rem;transition:background .2s}
.tx-btn-sm:hover{background:#e0456a;color:#fff}
.tx-btn-outline{background:transparent;border:1px solid #FF6B8A;color:#FF6B8A}
.tx-btn-outline:hover{background:#FF6B8A;color:#fff}

/* === Partners === */
.tx-partner-wall{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-bottom:48px}
.tx-partner-logo{padding:12px 24px;background:#fff;border:1px solid #f0e6ee;border-radius:8px;font-size:.9rem;color:#6b5570;transition:border-color .2s}
.tx-partner-logo:hover{border-color:#FF6B8A}
.tx-howto{background:#fff;padding:36px;border-radius:14px;box-shadow:0 4px 16px rgba(74,25,66,.06)}
.tx-howto h3{text-align:center;color:#4A1942;margin-bottom:24px;font-size:1.2rem}
.tx-steps{display:flex;gap:20px;justify-content:center}
.tx-step{text-align:center;flex:1;max-width:200px}
.tx-step span{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;background:linear-gradient(135deg,#FF6B8A,#F5A623);color:#fff;border-radius:50%;font-weight:700;margin-bottom:10px}
.tx-step p{font-size:.85rem;color:#5a4560}

/* === Reviews === */
.tx-review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.tx-review-item{background:#fff;padding:24px;border-radius:12px;box-shadow:0 2px 12px rgba(74,25,66,.06)}
.tx-review-stars{color:#F5A623;font-size:1.1rem;margin-bottom:10px}
.tx-review-item p{font-size:.85rem;color:#5a4560;line-height:1.7;margin-bottom:10px}
.tx-review-item span{font-size:.8rem;color:#8a7090}
.tx-review-date{display:block;margin-top:4px;font-size:.75rem;color:#aaa}

/* === FAQ === */
.tx-faq-list{max-width:800px;margin:0 auto}
.tx-faq-item{background:#fff;margin-bottom:14px;border-radius:10px;padding:20px 24px;box-shadow:0 2px 10px rgba(74,25,66,.05)}
.tx-faq-item h3{font-size:1rem;color:#4A1942;margin-bottom:8px;cursor:pointer}
.tx-faq-item p{font-size:.88rem;color:#5a4560;line-height:1.7}

/* === Contact === */
.tx-contact-grid{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:start}
.tx-contact-info h4{font-size:1.2rem;color:#4A1942;margin-bottom:14px}
.tx-contact-info h5{font-size:1rem;color:#4A1942;margin:16px 0 8px}
.tx-contact-info p{font-size:.88rem;color:#5a4560;margin-bottom:6px}
.tx-contact-qr{display:flex;gap:24px}
.tx-qr-item{text-align:center}
.tx-qr-item img{width:160px;height:160px;border-radius:8px;margin-bottom:8px}
.tx-qr-item p{font-size:.82rem;color:#6b5570}

/* === Share === */
.tx-share{text-align:center;padding:40px 0}
.tx-share h3{color:#4A1942;margin-bottom:16px}
.tx-share-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.tx-share-btn{padding:10px 20px;border-radius:20px;font-size:.85rem;color:#fff;transition:opacity .2s}
.tx-share-btn:hover{opacity:.85;color:#fff}
.tx-share-wechat{background:#07c160}
.tx-share-weibo{background:#e6162d}
.tx-share-douyin{background:#111}
.tx-share-bilibili{background:#00a1d6}
.tx-share-qq{background:#12b7f5}

/* === Footer === */
.tx-footer{background:#2d1035;color:#d4b8d0;padding:48px 0 0}
.tx-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:32px;padding-bottom:32px;border-bottom:1px solid rgba(255,255,255,.1)}
.tx-footer-brand img{height:38px;width:auto;margin-bottom:12px}
.tx-footer-brand p{font-size:.85rem;line-height:1.7;margin-bottom:8px}
.tx-footer-contact{font-size:.8rem;opacity:.8}
.tx-footer-nav h5{color:#FF6B8A;margin-bottom:12px;font-size:.9rem}
.tx-footer-nav a{color:#d4b8d0;font-size:.84rem;display:block;padding:4px 0;transition:color .2s}
.tx-footer-nav a:hover{color:#fff}
.tx-footer-qr{text-align:center}
.tx-footer-qr img{width:100px;height:100px;border-radius:6px;margin-bottom:6px}
.tx-footer-qr p{font-size:.78rem}
.tx-footer-bottom{text-align:center;padding:20px 0;font-size:.8rem;opacity:.7}

/* === Video Play Page === */
.tx-video-player{width:100%;max-width:900px;margin:0 auto;padding:24px 20px}
.tx-video-player video{width:100%;border-radius:12px;background:#000}
.tx-video-player h1{font-size:1.5rem;color:#4A1942;margin:20px 0 10px}
.tx-video-player .tx-video-desc{font-size:.9rem;color:#5a4560;line-height:1.7}
.tx-breadcrumb{padding:14px 0;font-size:.84rem;color:#8a7090}
.tx-breadcrumb a{color:#FF6B8A}

/* === Inner Pages === */
.tx-page-hero{background:linear-gradient(135deg,#4A1942,#2d1035);color:#fff;padding:60px 20px;text-align:center}
.tx-page-hero h1{font-size:2rem;margin-bottom:10px}
.tx-page-hero p{font-size:1rem;opacity:.85}
.tx-page-content{max-width:900px;margin:0 auto;padding:40px 20px}
.tx-page-content h2{font-size:1.4rem;color:#4A1942;margin:28px 0 12px}
.tx-page-content h3{font-size:1.15rem;color:#4A1942;margin:20px 0 10px}
.tx-page-content p{font-size:.92rem;color:#3d3050;line-height:1.8;margin-bottom:14px}
.tx-page-content ul{padding-left:20px;margin-bottom:14px}
.tx-page-content li{font-size:.9rem;color:#5a4560;margin-bottom:6px;list-style:disc}

/* === Lazy placeholder === */
.lazy{opacity:0;transition:opacity .4s}
.lazy.loaded{opacity:1}

/* === Responsive === */
@media(max-width:1024px){
  .tx-video-grid{grid-template-columns:repeat(3,1fr)}
  .tx-media-grid{grid-template-columns:repeat(2,1fr)}
  .tx-ai-grid{grid-template-columns:repeat(2,1fr)}
  .tx-expert-grid{grid-template-columns:repeat(2,1fr)}
  .tx-review-grid{grid-template-columns:repeat(2,1fr)}
  .tx-footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .tx-header-inner{flex-wrap:wrap;gap:10px}
  .tx-nav ul{flex-wrap:wrap;gap:4px}
  .tx-nav a{padding:6px 10px;font-size:.82rem}
  .tx-search-box{width:100%;order:3}
  .tx-search-box input{flex:1;width:auto}
  .tx-hero{min-height:400px}
  .tx-hero h1{font-size:1.8rem}
  .tx-hero-stats{flex-direction:column;gap:12px}
  .tx-video-grid{grid-template-columns:repeat(2,1fr);gap:14px}
  .tx-media-grid{grid-template-columns:1fr}
  .tx-ai-grid{grid-template-columns:1fr 1fr}
  .tx-community-grid{grid-template-columns:1fr}
  .tx-expert-grid{grid-template-columns:1fr}
  .tx-review-grid{grid-template-columns:1fr}
  .tx-steps{flex-direction:column;align-items:center}
  .tx-contact-grid{grid-template-columns:1fr}
  .tx-contact-qr{justify-content:center}
  .tx-footer-grid{grid-template-columns:1fr}
  .tx-section{padding:40px 0}
  .tx-section-title{font-size:1.5rem}
}
@media(max-width:480px){
  .tx-video-grid{grid-template-columns:1fr}
  .tx-ai-grid{grid-template-columns:1fr}
  .tx-hero h1{font-size:1.4rem}
  .tx-hero-sub{font-size:.9rem}
}
