*{
    margin: 0;
	padding: 0;
	box-sizing: border-box;
	text-decoration: none;
}
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: normal;
  src: local('Roboto Light'), local('Roboto-Light'), url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmEU9fBBY.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B9, U+2DE0-2DFF, U+A640-A69F;
}
body{
    margin: 0;
	-webkit-text-size-adjust: none;
    line-height: 1;
    font-family: "Roboto","microsoft yahei";
	font-weight: normal;

}
.main-lf {
	float: left;
}

.main-rt {
	float: right;
}

.main-flex {
	display: flex;
}

.main-fd {
	flex-direction: column;
}

.main-aic {
	align-items: center;
}

.main-jcc {
	justify-content: center;
}

.main-f1 {
	flex: 1;
}

.main-f2 {
	flex: 2;
}

.main-f3 {
	flex: 3;
}
.app-page{
	max-width: 800px;
	margin: auto;
}
.page-bottom {
    border-radius: 5px;
    border: 1px solid #d1d1d1;
    text-align: center;
    background: #007eff;
    line-height: 45px;
    color: #fff; 
    margin: 20px;
}
.page-automation{
	background: #0f9d58;
}
.app-title {
    text-align: center;
    line-height: 35px;
    color: #000;
    font-size: 16px;
}
.app-tab-li {
    text-align: center;
    line-height: 35px;
	color: #333;
}
.tab_active {
    color: #007eff;
}
.app-tab {
    border-bottom: 0.5px solid #d1d1d1;
}
.page-input {
    padding: 10px;
    border-bottom: 0.5px solid #d1d1d1;
}
.page-send {
    background: #3290f1;
    line-height: 30px;
    color: #fff;
    font-size: 14px;
    text-align: center;
    margin: 10px 35px;
    border-radius: 5px;
}
.page-ul-li {
    position: relative;
    overflow: hidden;
	min-height: 100px
}
video.video-show {
    width: 100%;
}
.page-cus {
    float: left;
    width: 50%;
    padding: 10px;
    border-radius: 10px;
    overflow: hidden;
}
.video-li-video iframe {
    width: 100%;
}
.app-login{
	margin: 15px;
	font-size: 16px;
}
.app-login-con{
	margin: 0 5px;
}
.app-login-font{
	color: #007eff;
}
.app-register{
	color: #333;
}
.login-title {
    font-size: 25px;
    text-align: center;
    margin: 15px;
    padding: 20px 0;
}
.login-input {
    margin: 15px;
}
.login-font {
    font-size: 16px;
    color: #333;
    margin-right: 5px;
}
input.login_inp {
    padding: 10px 5px;
}
.login-botton {
    margin: 20px;
    text-align: center;
    line-height: 40px;
    background: #3290f1;
    color: #fff;
    border-radius: 5px;
    font-size: 14px;
}
textarea.word-title {
    width: 100%;
    line-height: 20px;
    margin-top: 10px;
    padding: 5px;
	border-radius: 5px;
}
.page-txt-font {
    margin-right: 5px;
}
.radio-option {
	font-size: 14px;
    margin-right: 10px;
	margin-top: 10px;
	float: left;
	display: flex;
	gap: 10px;
}
.page-txt {
    margin: 15px;
    overflow: hidden;
}
.upload-area {
  border: 2px dashed #ccc;
  border-radius: 8px;
  padding: 20px;
  text-align: center;
  cursor: pointer;
  transition: all 0.3s;
  margin-bottom: 15px;
}
.upload-area:hover {
  border-color: #4285f4;
  background-color: #f8f9fa;
}
.upload-icon {
  font-size: 48px;
  color: #4285f4;
  margin-bottom: 10px;
}
.progress-container {
  margin-top: 15px;
  height: 8px;
  background-color: #f0f0f0;
  border-radius: 4px;
  overflow: hidden;
}
.progress-bar {
  height: 100%;
  background-color: #4285f4;
  transition: width 0.3s;
}
.file-info {
  margin-top: 10px;
  font-size: 14px;
  color: #666;
}
.error-message {
  color: #d93025;
  margin-top: 10px;
  font-size: 14px;
}
.success-message {
  color: #0f9d58;
  margin-top: 10px;
  font-size: 14px;
}
.hidden-input {
  display: none;
}

.select-bg {
    background: #00000073;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 998;
}
.select-con {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    height: 500px;
    z-index: 999;
    background: #fff;
    padding: 10px;
    border-radius: 5px 5px 0 0;
}

img.select-con-close-img {
    margin: 0 0 5px 5px;
    width: 16px;
}
.app-back-img{
	width: 16px;
}
.page-li-cus {
    border: 1px solid #d1d1d1;
    width: 47%;
    height: 180px;
    float: left;
    margin: 5px;
    background: #e9e9e9;
    border-radius: 5px;
    line-height: 180px;
    text-align: center;
}
img.select-con-img {
    width: 100%;
    vertical-align: middle;
}
.select-con-ul {
    margin: 10px;
    overflow-y: scroll;
    height: 440px;
} 
.select_active{
	border: 1px solid #4285f4;
}
input.select-right {
    width: 120px;
    text-align: center;
    line-height: 35px;
}
.page-txt-right {
    cursor: pointer;
}
/* 为只读输入框设置样式 */
.page-txt-right input[readonly] {
    background-color: #f5f5f5; /* 可选背景色 */
    cursor: pointer;
	border: 0
}
.speed-font-red {
    color: red;
    font-size: 12px;
    float: right; 
	line-height: 16px;
}
.page-width-height{
	margin-top: 5px;
}
.loading{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2998;
	background: #00000073;
}
.app-loading-img{
	width: 35px;
}
.loading-font{
	position: fixed;
	top:45%;
	left: 0;
	right: 0;
	z-index: 2999;
	text-align: center;
	color: #fff;
	font-size: 14px;
}
.loading-font p{
	color: #fff;
	margin-top: 10px;
}
.upload {
    padding: 10px 0;
    border: 1px solid #d1d1d1;
    overflow: hidden;
}
.upload-tab {
    border-bottom: 1px solid #d1d1d1;
}
.upload-con {
    margin: 10px;
}
.toast{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	text-align: center;
	padding: 15px;
	line-height: 20px;
	background: #00000073;
	z-index: 1998;
}
.toast-font{
	color: red;
	font-size: 14px;
}
.toast-ok-font{
	color: #fff;
	font-size: 14px;
}
.page-null{
	padding: 10px;
	font-size: 14px;
	text-align: center;
	color: #333;
}

.search-title {
    text-align: center;
    font-size: 18px;
    margin: 15px 0;
	font-weight: 500;
}
.search-con {
    margin: 10px;
    overflow: hidden;
}
.search-con-title {
    font-size: 16px;
    margin-bottom: 5px;
}
input.search-con-input {
    width: 100%;
    line-height: 20px;
	padding: 5px;
}
.page-video {
    float: left;
    width: 50%;
}
.video-preview-url {
    margin: 5px;
    border: 1px solid #d1d1d1;
    height: 200px;
    border-radius: 5px;
    float: left;
    background: #e9e9e9;
    line-height: 180px;
    text-align: center;
}
img.video-con-img {
    width: 100%;
    vertical-align: middle;
}
img.app-bofang-img {
    width: 50px;
}
.page-li-video {
    overflow: hidden;
    position: relative;
}
img.app-bofang-img {
    width: 50px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -25px;
    margin-left: -25px;
}
.video-download {
    text-align: center;
    margin: 5px auto 10px;
    font-size: 14px;
    color: #4285f4;
}
.video-ai-botton{
	font-size: 14px;
	color: #4285f4;
	margin: 5px 10px 10px 0;
	padding: 8px 15px;
}
.video-bg {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #00000070;
    z-index: 998;
}
.video-con {
    position: fixed;
    z-index: 999;
    width: 100%;
    min-height: 600px;
    top: 5%;
    background: #fff;
    border-radius: 5px;
}
.select-con-top {
    margin: 10px;
}
video.video-con-video {
    width: 98%;
    margin: 5px 1%;
}
.video-con-div {
    position: relative;
    overflow: hidden;
}
audio.audio-player {
    width: 100%;
}
.search-s-title {
    font-size: 16px;
    margin: 10px;
}
.video-s {
    margin: 10px;
}
.video-s-title {
    font-size: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid #d1d1d1;
}

.video-li-title {
    font-size: 14px;
    margin: 10px 5px;
	line-height: 20px;
}
.video-li {
    padding-bottom: 15px;
    border-bottom: 1px solid #ddd;
}
.subtitle-section {
  margin-top: 20px;
  padding: 15px;
  background: #f8f9fa;
  border-radius: 8px;
  border: 1px solid #e9ecef;
}

.subtitle-title {
  font-weight: bold;
  margin-bottom: 15px;
  color: #495057;
  font-size: 16px;
  border-bottom: 2px solid #007bff;
  padding-bottom: 5px;
}

.subtitle-content {
  margin-bottom: 15px;
  max-height: 300px;
  overflow-y: auto;
}

.subtitle-item {
  padding: 10px;
  margin-bottom: 8px;
  background: white;
  border-radius: 5px;
  border-left: 4px solid #007bff;
}

.subtitle-time {
  font-size: 12px;
  color: #6c757d;
  margin-bottom: 5px;
}

.subtitle-text {
  margin-bottom: 5px;
  line-height: 1.4;
}

.subtitle-translation {
  color: #28a745;
  font-style: italic;
  border-top: 1px dashed #dee2e6;
  padding-top: 5px;
}

.subtitle-actions {
  display: flex;
  gap: 10px;
  margin-top: 15px;
  flex-wrap: wrap;
}

.subtitle-action-btn {
  padding: 8px 16px;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  font-size: 14px;
  transition: all 0.3s;
}

.subtitle-original-btn {
  background: #007bff;
  color: white;
}

.subtitle-dual-btn {
  background: #28a745;
  color: white;
}

.subtitle-action-btn:hover {
  opacity: 0.9;
  transform: translateY(-2px);
}

.subtitle-result {
  margin-top: 20px;
}

.subtitle-result-label {
  font-weight: bold;
  margin-bottom: 10px;
  color: #495057;
}

.no-subtitles {
  text-align: center;
  color: #6c757d;
  padding: 20px;
  font-style: italic;
}

.clip-subtitle-section {
  margin-top: 15px;
  padding: 12px;
  background: #fff3cd;
  border-radius: 6px;
  border: 1px solid #ffeaa7;
}

.clip-info {
  margin-bottom: 10px;
  margin-top: 10px;
  font-weight: bold;
  color: #495057;
}

.time-display {
  font-family: monospace;
}
.orientation-selection {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 10px;
}

.orientation-select {
	padding: 6px 12px;
	border: 1px solid #ddd;
	border-radius: 4px;
	background: white;
}

.orientation-label {
	font-weight: bold;
	color: #495057;
}

.video-orientation-badge {
	display: inline-block;
	padding: 2px 8px;
	background: #007bff;
	color: white;
	border-radius: 12px;
	font-size: 12px;
	margin-left: 8px;
}

.portrait-badge {
	background: #28a745;
}

.landscape-badge {
	background: #007bff;
}
/* 新增Toast样式 */
.toast {
  position: fixed;
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1000;
  min-width: 300px;
  max-width: 80%;
  padding: 12px 20px;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  opacity: 0;
  visibility: hidden;
}

.toast.show {
  opacity: 1;
  visibility: visible;
}

.toast-success {
  background-color: #f0f9f4;
  border: 1px solid #b8e6c8;
  color: #0d6832;
}

.toast-error {
  background-color: #fef2f2;
  border: 1px solid #fecaca;
  color: #991b1b;
}

.toast-warning {
  background-color: #fffbeb;
  border: 1px solid #fed7aa;
  color: #92400e;
}

.toast-info {
  background-color: #eff6ff;
  border: 1px solid #bfdbfe;
  color: #1e40af;
}

.toast-icon {
  margin-right: 8px;
  font-size: 18px;
}

.toast-close {
  margin-left: auto;
  background: none;
  border: none;
  font-size: 16px;
  cursor: pointer;
  opacity: 0.7;
}

.toast-close:hover {
  opacity: 1;
}
.pip-page {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	height: 600px;
	overflow-y: auto;
	z-index: 999;
	background: #fff;
	padding: 10px;
	border-radius: 5px 5px 0 0;
}
.select-bg-1 {
    background: #00000073;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1998;
}
.select-con-1 {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    height: 500px;
    z-index: 1999;
    background: #fff;
    padding: 10px;
    border-radius: 5px 5px 0 0;
}
/* 画中画相关样式 */
.pip-result-section {
  margin-top: 20px;
  padding: 15px;
  background: #f8f9fa;
  border-radius: 8px;
  border: 1px solid #e9ecef;
}

.subtitle-pip-btn {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
}

.subtitle-pip-btn:hover {
  background: linear-gradient(135deg, #5a6fd8 0%, #6a4190 100%);
}

/* 画中画面板样式优化 */
.pip-page-video {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}

.video-Auto {
  flex: 1;
  min-width: 300px;
}

.pip-loading {
  text-align: center;
  padding: 20px;
  color: #666;
}

.pip-result {
  flex: 1;
  min-width: 300px;
}
.video-s-end{
    padding: 10px;
    background: #9edbff;
}

/* ========== 优化后的标签页样式 ========== */
.tabs-header {
  display: flex;
  background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
  border-radius: 12px 12px 0 0;
  padding: 4px 4px 0;
  margin: 0 15px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
  position: relative;
}

.tabs-header::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, #dee2e6 50%, transparent 100%);
}

.tab-button {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 14px 20px;
  background: rgba(255,255,255,0.7);
  border: none;
  border-radius: 8px 8px 0 0;
  cursor: pointer;
  font-size: 15px;
  font-weight: 600;
  transition: all 0.3s ease;
  color: #666;
  margin: 0 2px;
  position: relative;
}

.tab-button:hover {
  color: #495057;
  transform: translateY(-1px);
}

.tab-button.active {
  background: white;
  color: #1890ff;
  box-shadow: 0 -2px 10px rgba(0,0,0,0.08);
}

.tab-button.active::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 10%;
  right: 10%;
  height: 3px;
  background: linear-gradient(90deg, #1890ff, #52c41a);
  border-radius: 3px 3px 0 0;
}

.tab-icon {
  font-size: 16px;
  transition: transform 0.3s ease;
}

.tab-button:hover .tab-icon {
  transform: scale(1.1);
}

.tab-button.active .tab-icon {
  transform: scale(1.15);
}

.tab-text {
  position: relative;
  z-index: 1;
}

.tab-badge {
  background: #ff4d4f;
  color: white;
  border-radius: 10px;
  padding: 2px 8px;
  font-size: 12px;
  min-width: 20px;
  text-align: center;
}

.tab-button.active .tab-badge {
  background: #1890ff;
}

/* ========== 内容区域视觉优化 ========== */
.tab-content {
  margin: 0 15px 20px;
  background: white;
  border-radius: 0 0 12px 12px;
  box-shadow: 0 4px 20px rgba(0,0,0,0.1);
  overflow: hidden;
  animation: fadeIn 0.3s ease-in-out;
}

/* 搜索结果区域特定样式 */
.tab-content[data-tab="results"] {
  border-top: 3px solid #1890ff;
}

/* 已下载视频区域特定样式 */
.tab-content[data-tab="downloaded"] {
  border-top: 3px solid #52c41a;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* ========== 视频项布局优化 ========== */
.video-search-item {
  display: flex;
  align-items: flex-start;
  padding: 16px;
  border-bottom: 1px solid #f0f0f0;
  transition: background-color 0.3s;
  gap: 16px;
}

.video-search-item:hover {
  background-color: #fafafa;
}

.video-thumbnail {
  flex-shrink: 0;
  width: 240px;
  height: 135px;
  border-radius: 8px;
  overflow: hidden;
  position: relative;
}

.thumbnail-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.thumbnail-img:hover {
  transform: scale(1.05);
}

.video-duration {
  position: absolute;
  bottom: 5px;
  right: 5px;
  background: rgba(0, 0, 0, 0.8);
  color: white;
  padding: 2px 6px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 500;
}

.video-search-info {
  flex: 1;
  min-width: 0;
}

.video-search-info h4 {
  margin: 0 0 8px 0;
  font-size: 16px;
  line-height: 1.4;
  color: #1a1a1a;
  font-weight: 600;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.video-meta-info {
  margin-bottom: 8px;
  font-size: 13px;
  color: #666;
}

.channel-name {
  font-weight: 500;
  color: #065fd4;
}

.publish-time {
  margin-left: 10px;
  color: #888;
}

.video-stats {
  margin-bottom: 8px;
  font-size: 13px;
  color: #666;
}

.video-stats span {
  margin-right: 12px;
}

.video-description {
  font-size: 13px;
  color: #666;
  line-height: 1.4;
  margin: 8px 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.video-search-actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.video-checkbox {
  width: 18px;
  height: 18px;
  cursor: pointer;
}

/* ========== 批量操作区域优化 ========== */
.search-results-controls {
  display: flex;
  gap: 12px;
  margin: 20px 16px;
  padding: 16px;
  background: #f8f9fa;
  border-radius: 8px;
  border: 1px solid #e9ecef;
  align-items: center;
  flex-wrap: wrap;
}

.batch-control-btn {
  padding: 8px 16px;
  border: 1px solid #d9d9d9;
  background: white;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.3s;
  font-size: 14px;
}

.batch-control-btn:hover {
  border-color: #1890ff;
  color: #1890ff;
}

.batch-download-btn {
  padding: 10px 20px;
  background: linear-gradient(135deg, #1890ff, #096dd9);
  color: white;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  font-size: 14px;
  font-weight: 600;
  transition: all 0.3s;
}

.batch-download-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(24, 144, 255, 0.4);
}

.single-download-btn {
  background: #007bff;
  color: white;
  border: none;
  border-radius: 6px;
  padding: 8px 16px;
  cursor: pointer;
  font-size: 14px;
  transition: all 0.3s;
}

.single-download-btn:hover {
  background: #0056b3;
  transform: translateY(-2px);
}

/* ========== 其他优化样式 ========== */
.search-help {
    margin: 5px 10px;
}
.help-content {
    line-height: 20px;
}
/* 用户意图输入框样式 */
.user-intent-input {
	min-height: 60px;
    resize: vertical;
    line-height: 1.4;
    width: 100%;
    padding: 5px;
}

/* 智能分析按钮样式 */
.intelligent-btn {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
    margin-left: 8px;
	color: #fff;
	border-radius: 5px;
}

.intelligent-btn:hover {
    background: linear-gradient(135deg, #5a6fd8 0%, #6a4190 100%) !important;
}

/* 分析模式选择区域样式 */
.analysis-mode-section {
    margin-top: 15px;
    padding: 15px;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    background-color: #f9f9f9;
}

.analysis-start-btn {
    margin-top: 15px;
    background-color: #1890ff;
}

.analysis-start-btn:hover {
    background-color: #40a9ff;
}

/* 帮助说明样式 */
.search-help {
    margin-top: 10px;
}

.help-details {
    border: 1px solid #d9d9d9;
    border-radius: 4px;
    padding: 8px;
}

.help-details summary {
    cursor: pointer;
    font-weight: bold;
    color: #1890ff;
}

.help-content {
    margin-top: 10px;
    padding: 10px;
    background: white;
    border-radius: 4px;
    font-size: 12px;
    line-height: 1.5;
}

.help-content ul {
    margin: 5px 0;
    padding-left: 20px;
}

.help-content li {
    margin: 3px 0;
}

.app-header {
  position: sticky;
  top: 0;
  background: white;
  z-index: 100;
  box-shadow: 0 2px 10px rgba(0,0,0,0.1);
  padding: 10px 0;
}

.search-card {
  background: white;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  margin: 15px;
  padding: 15px;
}

.search-btn {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  border-radius: 8px;
  font-weight: 600;
  margin-top: 20px;
  padding: 12px;
  transition: all 0.3s;
}

.search-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(102, 126, 234, 0.4);
}

.results-section, .downloaded-section {
  margin: 15px;
}

.video-list {
  display: grid;
  gap: 20px;
}

.video-li {
  background: white;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  padding: 20px;
  transition: all 0.3s;
}

.video-li:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 25px rgba(0,0,0,0.12);
}

.video-con-video-container {
  border-radius: 8px;
  overflow: hidden;
  margin: 10px 0;
}

.video-con-video {
  border-radius: 8px;
  width: 100%;
  max-height: 400px;
}

.region-options, .duration-options {
  flex-wrap: wrap;
  gap: 10px;
}

/* 状态指示器 */
.status-success {
  color: #28a745;
  font-weight: 600;
  padding: 4px 8px;
  background: #d4edda;
  border-radius: 4px;
}

.status-failed {
  color: #dc3545;
  font-weight: 600;
  padding: 4px 8px;
  background: #f8d7da;
  border-radius: 4px;
}

/* 加载动画优化 */
.loading {
  display: flex;
  align-items: center;
  justify-content: center;
}

.loading-font {
  background: rgba(0,0,0,0.8);
  padding: 30px;
  border-radius: 12px;
  backdrop-filter: blur(10px);
}

/* 改进的卡片阴影和过渡 */
.video-s, .analysis-mode-section, .clip-subtitle-section {
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
  border-radius: 8px;
  transition: all 0.3s ease;
}

/* ========== 响应式设计优化 ========== */
@media (max-width: 768px) {
  .app-page {
    padding: 0 10px;
  }
  
  .search-card, .results-section, .downloaded-section {
    margin: 10px 0;
  }
  
  .search-results-controls {
    flex-direction: column;
  }
  
  .batch-control-btn, .batch-download-btn {
    width: 100%;
    text-align: center;
  }
  
  .video-search-item {
    flex-direction: column;
    align-items: stretch;
  }
  
  .video-thumbnail {
    width: 100%;
    height: 200px;
    margin-bottom: 10px;
  }
  
  .video-search-actions {
    width: 100%;
    flex-direction: row;
    justify-content: space-between;
    margin-top: 15px;
  }
  
  .tabs-header {
    flex-direction: column;
    padding: 12px 12px 0;
    border-radius: 16px 16px 0 0;
  }
  
  .tab-button {
    padding: 14px 16px;
    margin: 0 0 4px 0;
    border-radius: 12px 12px 0 0;
    justify-content: flex-start;
  }
  
  .tab-button.active::after {
    bottom: 0;
    left: 0;
    transform: none;
    width: 4px;
    height: 100%;
    border-radius: 12px 0 0 12px;
  }
  
  .tab-text {
    flex: 1;
  }
}

/* 深色模式支持 */
@media (prefers-color-scheme: dark) {
  .tabs-header {
    background: linear-gradient(135deg, #2d3748 0%, #4a5568 100%);
  }
  
  .tab-button {
    color: #a0aec0;
  }
  
  .tab-button:hover {
    color: #e2e8f0;
  }
  
  .tab-button.active {
    color: #ffffff;
    background: rgba(45, 55, 72, 0.8);
  }
}

/* 加载状态 */
.tab-button.loading {
  pointer-events: none;
  opacity: 0.7;
}

.tab-button.loading .tab-icon {
  animation: spin 1s linear infinite;
}

@keyframes spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

/* 焦点状态 */
.tab-button:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(74, 144, 226, 0.3);
}
/* 片段设置样式 */
.clip-setting {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 10px;
}

.setting-item {
  display: flex;
  align-items: center;
  gap: 10px;
}

.setting-select {
  padding: 8px 12px;
  border: 1px solid #ddd;
  border-radius: 4px;
  background: white;
  min-width: 120px;
}

.setting-input {
  padding: 8px 12px;
  border: 1px solid #ddd;
  border-radius: 4px;
  background: white;
  width: 120px;
}

.custom-duration {
  margin-top: 10px;
  padding: 10px;
  background: #f9f9f9;
  border-radius: 4px;
  border-left: 3px solid #4CAF50;
}

/* 响应式调整 */
@media (max-width: 768px) {
  .clip-setting {
    flex-direction: column;
    gap: 10px;
  }
  
  .setting-item {
    flex-direction: column;
    align-items: flex-start;
  }
  
  .setting-select,
  .setting-input {
    width: 100%;
  }
}