.tiktok-vm-container{max-width:900px;margin:30px auto;padding:16px;background:#fff;border-radius:10px;box-shadow:0 2px 12px rgba(0,0,0,0.07);font-family:sans-serif;}
.tiktok-vm-container section{margin-bottom:32px;}
.tiktok-vm-auth{text-align:center;}
.tiktok-vm-btn{background:#fe2c55;color:#fff;border:none;padding:10px 24px;border-radius:5px;cursor:pointer;font-size:16px;transition:background .2s;}

.tiktok-doc-link{display:inline-block;margin-left:5px;color:#1d9bf0;text-decoration:none;vertical-align:middle;}

.tiktok-doc-link:hover{color:#0c7abf;text-decoration:underline;}
.tiktok-vm-btn:hover{background:#d91b46;}
#tiktok-vm-upload-form{display:flex;flex-direction:column;gap:15px;}
#tiktok-vm-upload-form input[type="file"]{width:100%;}
#tiktok-vm-upload-form input[type="text"]{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;}
#tiktok-vm-upload-form button{width:100%;max-width:200px;margin-top:10px;}
#tiktok-vm-upload-status{margin-top:12px;color:#fe2c55;font-weight:bold;}
.tiktok-vm-privacy-settings{background:#f8f8f8;border-radius:8px;padding:15px;margin:10px 0;}
.tiktok-vm-privacy-settings h4{margin-top:0;margin-bottom:12px;font-size:16px;color:#333;}
.tiktok-vm-form-group{margin-bottom:10px;}
.tiktok-vm-form-group label{display:block;margin-bottom:5px;font-size:14px;}
.tiktok-vm-form-group select{width:100%;max-width:300px;padding:8px;border:1px solid #ddd;border-radius:4px;-webkit-appearance:none;appearance:none;}

/* 视频网格样式 */
#tiktok-vm-videos-grid, #tiktok-vm-trending-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 20px;
  margin-top: 20px;
}

.tiktok-vm-video-item {
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  transition: transform 0.2s;
}

.tiktok-vm-video-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 5px 15px rgba(0,0,0,0.15);
}

.tiktok-vm-video-item img {
  width: 100%;
  aspect-ratio: 9/16;
  object-fit: cover;
  display: block;
}

.tiktok-vm-title {
  padding: 10px;
  font-weight: bold;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.tiktok-vm-time {
  padding: 0 10px 10px;
  font-size: 12px;
  color: #888;
}

.tiktok-vm-link {
  display: block;
  text-align: center;
  padding: 8px;
  background: #fe2c55;
  color: white;
  text-decoration: none;
  font-weight: bold;
  transition: background 0.2s;
}

.tiktok-vm-link:hover {
  background: #d91b46;
  color: white;
}

/* 特殊样式用于Terms of Service和Privacy Policy链接 */
.tiktok-vm-policy-message .tiktok-vm-link,
.tiktok-vm-auth-policy .tiktok-vm-link {
  display: inline;
  padding: 0;
  background: transparent;
  color: #1d9bf0;
  font-weight: bold;
  text-decoration: underline;
  margin: 0 2px;
}

.tiktok-vm-policy-message .tiktok-vm-link:hover,
.tiktok-vm-auth-policy .tiktok-vm-link:hover {
  background: transparent;
  color: #0c7abf;
  text-decoration: underline;
}
.tiktok-vm-form-group input[type="checkbox"]{margin-right:8px;vertical-align:middle;}
/* 标签切换样式 */
.tiktok-vm-tabs {
  display: flex;
  border-bottom: 1px solid #ddd;
  margin-bottom: 20px;
}

.tiktok-vm-tab-btn {
  padding: 10px 20px;
  background: none;
  border: none;
  border-bottom: 3px solid transparent;
  cursor: pointer;
  font-weight: bold;
  transition: all 0.2s;
}

.tiktok-vm-tab-btn.active {
  border-bottom-color: #fe2c55;
  color: #fe2c55;
}

.tiktok-vm-tab-btn:hover {
  background: #f8f8f8;
}
.tiktok-vm-video-item{background:#fafbfc;border-radius:8px;padding:10px;box-shadow:0 1px 4px rgba(0,0,0,0.04);text-align:center;transition:box-shadow .2s;}
.tiktok-vm-video-item:hover{box-shadow:0 2px 8px rgba(0,0,0,0.09);}
.tiktok-vm-video-item img{width:100%;height:120px;object-fit:cover;border-radius:6px;-ms-touch-action:manipulation;touch-action:manipulation;}
.tiktok-vm-title{font-weight:600;margin:8px 0 4px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}
.tiktok-vm-time{font-size:13px;color:#888;}
.tiktok-vm-link{display:inline-block;margin-top:6px;color:#fe2c55;text-decoration:none;}
/* 确保通用链接样式不会覆盖特定链接样式 */
.tiktok-vm-auth-policy a.tiktok-vm-link{display:inline;margin-top:0;padding:0;background:transparent;color:#1d9bf0;font-weight:bold;text-decoration:underline;margin:0 2px;}
.tiktok-vm-auth-policy a.tiktok-vm-link:hover{background:transparent;color:#0c7abf;text-decoration:underline;}
.tiktok-vm-link:hover{text-decoration:underline;}
@media (max-width:600px){
  .tiktok-vm-container{padding:6px;}
  #tiktok-vm-videos-grid{grid-template-columns:1fr;gap:10px;}
  #tiktok-vm-upload-form{flex-direction:column;align-items:stretch;gap:7px;}
  .tiktok-vm-btn{width:100%;}
  .tiktok-vm-btn-center{max-width:100%;}
  .tiktok-vm-policy-links{flex-direction:column;gap:4px;}
}

/* 添加浏览器兼容性样式 */
html {
  -webkit-text-size-adjust:100%;
  -moz-text-size-adjust:100%;
  text-size-adjust:100%;
}

/* 添加mask属性的浏览器兼容性 */
.tiktok-vm-icon {
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}
.tiktok-vm-btn-center{display:flex;justify-content:center;align-items:center;margin:0 auto;box-shadow:0 2px 8px rgba(254,44,85,0.13);font-weight:600;letter-spacing:0.5px;padding:0;}
.tiktok-vm-policy-links{margin-top:14px;text-align:center;display:flex;justify-content:center;gap:10px;flex-wrap:wrap;}
.tiktok-vm-auth-card{background:#fff;border-radius:16px;box-shadow:0 4px 24px rgba(0,0,0,0.10);padding:38px 32px 28px 32px;max-width:370px;margin:38px auto 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;}
.tiktok-vm-auth-header{display:flex;flex-direction:column;align-items:center;margin-bottom:18px;}
.tiktok-vm-auth-logo{width:48px;height:48px;margin-bottom:10px;}
.tiktok-vm-auth-title{font-size:1.45rem;font-weight:700;margin-bottom:0;color:#222;letter-spacing:0.5px;}
.tiktok-vm-auth-status{margin-bottom:10px;min-height:22px;font-size:15px;color:#fe2c55;font-weight:500;}
.tiktok-vm-btn-lg{font-size:18px;padding:13px 0;border-radius:8px;font-weight:700;box-shadow:0 2px 12px rgba(254,44,85,0.13);margin:18px auto 12px auto;transition:box-shadow .2s,background .2s;display:flex;justify-content:center;align-items:center;width:auto;max-width:280px;}
.tiktok-vm-btn-lg:hover{box-shadow:0 4px 18px rgba(254,44,85,0.18);background:#d91b46;}
.tiktok-vm-auth-policy{margin-top:10px;text-align:center;font-size:13px;color:#666;line-height:1.7;max-width:320px;margin-left:auto;margin-right:auto;}
.tiktok-vm-token-info{margin-bottom:8px;}
@media (max-width:600px){
  .tiktok-vm-auth-card{padding:18px 6px 18px 6px;max-width:98vw;}
  .tiktok-vm-btn-lg{font-size:16px;padding:11px 0;margin:14px auto 10px auto;}
  .tiktok-vm-btn-center{max-width:100%;padding:0;}
}
.tiktok-vm-btn-auth-center{display:flex !important;justify-content:center !important;align-items:center !important;width:100% !important;margin:0 auto !important;text-align:center !important;}
.tiktok-vm-btn-auth-center .tiktok-vm-btn{margin:0 auto !important;display:block !important;float:none !important;}
.tiktok-vm-btn-auth-center .tiktok-vm-btn-lg{margin:0 auto !important;display:block !important;float:none !important;max-width:280px !important;width:100% !important;}